summaryrefslogtreecommitdiff
path: root/vendor/console/examples
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/console/examples
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/console/examples')
-rw-r--r--vendor/console/examples/colors.rs14
-rw-r--r--vendor/console/examples/colors256.rs17
-rw-r--r--vendor/console/examples/cursor_at.rs30
-rw-r--r--vendor/console/examples/term.rs33
4 files changed, 94 insertions, 0 deletions
diff --git a/vendor/console/examples/colors.rs b/vendor/console/examples/colors.rs
new file mode 100644
index 0000000..69c51fd
--- /dev/null
+++ b/vendor/console/examples/colors.rs
@@ -0,0 +1,14 @@
+use console::style;
+
+fn main() {
+ println!(
+ "This is red on black: {:010x}",
+ style(42).red().on_black().bold()
+ );
+ println!("This is reversed: [{}]", style("whatever").reverse());
+ println!("This is cyan: {}", style("whatever").cyan());
+ eprintln!(
+ "This is black bright: {}",
+ style("whatever").for_stderr().bright().black()
+ );
+}
diff --git a/vendor/console/examples/colors256.rs b/vendor/console/examples/colors256.rs
new file mode 100644
index 0000000..60acb88
--- /dev/null
+++ b/vendor/console/examples/colors256.rs
@@ -0,0 +1,17 @@
+use console::style;
+
+fn main() {
+ for i in 0..=255 {
+ print!("{:03} ", style(i).color256(i));
+ if i % 16 == 15 {
+ println!();
+ }
+ }
+
+ for i in 0..=255 {
+ print!("{:03} ", style(i).black().on_color256(i));
+ if i % 16 == 15 {
+ println!();
+ }
+ }
+}
diff --git a/vendor/console/examples/cursor_at.rs b/vendor/console/examples/cursor_at.rs
new file mode 100644
index 0000000..9a1bb3d
--- /dev/null
+++ b/vendor/console/examples/cursor_at.rs
@@ -0,0 +1,30 @@
+extern crate console;
+
+use std::io;
+use std::thread;
+use std::time::Duration;
+
+use console::{style, Term};
+
+fn write_chars() -> io::Result<()> {
+ let term = Term::stdout();
+ let (heigth, width) = term.size();
+ for x in 0..width {
+ for y in 0..heigth {
+ term.move_cursor_to(x as usize, y as usize)?;
+ let text = if (x + y) % 2 == 0 {
+ format!("{}", style(x % 10).black().on_red())
+ } else {
+ format!("{}", style(x % 10).red().on_black())
+ };
+
+ term.write_str(&text)?;
+ thread::sleep(Duration::from_micros(600));
+ }
+ }
+ Ok(())
+}
+
+fn main() {
+ write_chars().unwrap();
+}
diff --git a/vendor/console/examples/term.rs b/vendor/console/examples/term.rs
new file mode 100644
index 0000000..a0637f7
--- /dev/null
+++ b/vendor/console/examples/term.rs
@@ -0,0 +1,33 @@
+use std::io::{self, Write};
+use std::thread;
+use std::time::Duration;
+
+use console::{style, Term};
+
+fn do_stuff() -> io::Result<()> {
+ let term = Term::stdout();
+ term.set_title("Counting...");
+ term.write_line("Going to do some counting now")?;
+ term.hide_cursor()?;
+ for x in 0..10 {
+ if x != 0 {
+ term.move_cursor_up(1)?;
+ }
+ term.write_line(&format!("Counting {}/10", style(x + 1).cyan()))?;
+ thread::sleep(Duration::from_millis(400));
+ }
+ term.show_cursor()?;
+ term.clear_last_lines(1)?;
+ term.write_line("Done counting!")?;
+ writeln!(&term, "Hello World!")?;
+
+ write!(&term, "To edit: ")?;
+ let res = term.read_line_initial_text("default")?;
+ writeln!(&term, "\n{}", res)?;
+
+ Ok(())
+}
+
+fn main() {
+ do_stuff().unwrap();
+}