Initial vendor packages

Signed-off-by: Valentin Popov <valentin@popov.link>
This commit is contained in:
2024-01-08 01:21:28 +04:00
parent 5ecd8cf2cb
commit 1b6a04ca55
7309 changed files with 2160054 additions and 0 deletions

14
vendor/console/examples/colors.rs vendored Normal file
View File

@ -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()
);
}

17
vendor/console/examples/colors256.rs vendored Normal file
View File

@ -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!();
}
}
}

30
vendor/console/examples/cursor_at.rs vendored Normal file
View File

@ -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();
}

33
vendor/console/examples/term.rs vendored Normal file
View File

@ -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();
}