groundwork for complex flags
This commit is contained in:
parent
766b07c1f4
commit
f8e02e06fb
4 changed files with 89 additions and 4 deletions
63
src/complex.rs
Normal file
63
src/complex.rs
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
use std::process::exit;
|
||||||
|
|
||||||
|
use crate::color::*;
|
||||||
|
use crate::draw;
|
||||||
|
use crate::flag;
|
||||||
|
use crate::variant;
|
||||||
|
|
||||||
|
pub fn progress() {
|
||||||
|
let philadelphia = variant::philadelphia();
|
||||||
|
let trans = flag::transgender();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// everything below this point is in alphabetical order
|
||||||
|
|
||||||
|
pub fn aroace() {
|
||||||
|
let aro = flag::aromantic();
|
||||||
|
let ace = flag::asexual();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn demiromantic() {
|
||||||
|
let green = rgb(0x3DA542);
|
||||||
|
let gray = rgb(0xD2D2D2);
|
||||||
|
|
||||||
|
// WHITE×2 / green / gray×2 vert
|
||||||
|
// BLACK triangle cutin
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn demisexual() {
|
||||||
|
let purple = rgb(0x832FA8);
|
||||||
|
let grey = rgb(0x7B868C);
|
||||||
|
|
||||||
|
// WHITE×2 / green / grey×2 vert
|
||||||
|
// BLACK triangle cutin
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn intersex() -> Colors {
|
||||||
|
let yellow = rgb(0xFFDA00);
|
||||||
|
let purple = rgb(0x7A00AC);
|
||||||
|
|
||||||
|
let stripe = draw::BLOCK.repeat(9);
|
||||||
|
let part = draw::BLOCK.repeat(4);
|
||||||
|
|
||||||
|
println!(
|
||||||
|
"{yellow}{stripe}\n{part}{purple}{}O{}{yellow}{part}\n{stripe}{RESET}",
|
||||||
|
yellow.0.bg_string(),
|
||||||
|
RESET.0.bg_str()
|
||||||
|
);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn polyamorous() {
|
||||||
|
let blue = rgb(0x019FE3);
|
||||||
|
let magenta = rgb(0xE50051);
|
||||||
|
let purple = rgb(0x340C46);
|
||||||
|
let yellow = rgb(0x00FCBF);
|
||||||
|
|
||||||
|
// blue / magenta / purple vert
|
||||||
|
// WHITE isosceles cutin with yellow heart pointed right
|
||||||
|
}
|
||||||
|
|
|
@ -10,7 +10,9 @@ use termion::{
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::color::{ RESET, Colors };
|
use crate::color::{ RESET, Colors };
|
||||||
use crate::flag::BLOCK;
|
|
||||||
|
pub static BLOCK: &str = "█";
|
||||||
|
pub static UHALF: &str = "▀";
|
||||||
|
|
||||||
pub fn full(colors: Colors) {
|
pub fn full(colors: Colors) {
|
||||||
let mut stdout = io::stdout().into_raw_mode().unwrap();
|
let mut stdout = io::stdout().into_raw_mode().unwrap();
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
|
|
||||||
use crate::color::*;
|
use crate::color::*;
|
||||||
|
|
||||||
pub static BLOCK: &str = "█";
|
|
||||||
|
|
||||||
pub fn pride() -> Colors {
|
pub fn pride() -> Colors {
|
||||||
let red = rgb(0xE50000);
|
let red = rgb(0xE50000);
|
||||||
let orange = rgb(0xFF8D00);
|
let orange = rgb(0xFF8D00);
|
||||||
|
|
24
src/main.rs
24
src/main.rs
|
@ -3,6 +3,7 @@ use std::process::exit;
|
||||||
use pico_args::Arguments;
|
use pico_args::Arguments;
|
||||||
|
|
||||||
mod color;
|
mod color;
|
||||||
|
mod complex;
|
||||||
mod draw;
|
mod draw;
|
||||||
mod flag;
|
mod flag;
|
||||||
mod variant;
|
mod variant;
|
||||||
|
@ -46,6 +47,8 @@ fn main() {
|
||||||
=> variant::gilbert_baker(),
|
=> variant::gilbert_baker(),
|
||||||
Some("philadelphia")
|
Some("philadelphia")
|
||||||
=> variant::philadelphia(),
|
=> variant::philadelphia(),
|
||||||
|
// Some("progress")
|
||||||
|
// => complex::progress(),
|
||||||
_
|
_
|
||||||
=> flag::pride()
|
=> flag::pride()
|
||||||
}
|
}
|
||||||
|
@ -64,12 +67,21 @@ fn main() {
|
||||||
Some("asexual" | "ace")
|
Some("asexual" | "ace")
|
||||||
=> flag::asexual(),
|
=> flag::asexual(),
|
||||||
|
|
||||||
|
// Some("aroace" | "aromantic-asexual")
|
||||||
|
// => complex::aroace(),
|
||||||
|
|
||||||
Some("bigender")
|
Some("bigender")
|
||||||
=> flag::bigender(),
|
=> flag::bigender(),
|
||||||
|
|
||||||
Some("bisexual" | "bi")
|
Some("bisexual" | "bi")
|
||||||
=> flag::bisexual(),
|
=> flag::bisexual(),
|
||||||
|
|
||||||
|
// Some("demiromantic")
|
||||||
|
// => flag::demiromantic(),
|
||||||
|
|
||||||
|
// Some("demisexual")
|
||||||
|
// => flag::demisexual(),
|
||||||
|
|
||||||
Some("genderfluid")
|
Some("genderfluid")
|
||||||
=> flag::genderfluid(),
|
=> flag::genderfluid(),
|
||||||
|
|
||||||
|
@ -79,6 +91,9 @@ fn main() {
|
||||||
Some("gendervoid")
|
Some("gendervoid")
|
||||||
=> flag::gendervoid(),
|
=> flag::gendervoid(),
|
||||||
|
|
||||||
|
Some("intersex")
|
||||||
|
=> complex::intersex(),
|
||||||
|
|
||||||
Some("lesbian")
|
Some("lesbian")
|
||||||
=> flag::lesbian(),
|
=> flag::lesbian(),
|
||||||
|
|
||||||
|
@ -91,6 +106,9 @@ fn main() {
|
||||||
Some("pansexual" | "pan")
|
Some("pansexual" | "pan")
|
||||||
=> flag::pansexual(),
|
=> flag::pansexual(),
|
||||||
|
|
||||||
|
// Some("poly" | "polyamorous" | "polyamory")
|
||||||
|
// => complex::polyamorous(),
|
||||||
|
|
||||||
_ => { help_text(); exit(1) }
|
_ => { help_text(); exit(1) }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -125,17 +143,21 @@ fn list_text() {
|
||||||
println!(" agender agender pride flag");
|
println!(" agender agender pride flag");
|
||||||
println!(" aro, aromantic aromantic pride flag");
|
println!(" aro, aromantic aromantic pride flag");
|
||||||
println!(" ace, asexual asexual pride flag");
|
println!(" ace, asexual asexual pride flag");
|
||||||
|
// println!(" aroace aromantic/asexual pride flag");
|
||||||
println!(" bigender bigender pride flag");
|
println!(" bigender bigender pride flag");
|
||||||
println!(" bi, bisexual bisexual pride flag");
|
println!(" bi, bisexual bisexual pride flag");
|
||||||
|
// println!(" demiromantic demiromantic pride flag");
|
||||||
|
// println!(" demisexual demisexual pride flag");
|
||||||
println!(" gay, pride six-color rainbow flag");
|
println!(" gay, pride six-color rainbow flag");
|
||||||
println!(" genderfluid genderfluid pride flag");
|
println!(" genderfluid genderfluid pride flag");
|
||||||
println!(" genderqueer genderqueer pride flag");
|
println!(" genderqueer genderqueer pride flag");
|
||||||
println!(" gendervoid gendervoid pride flag");
|
println!(" gendervoid gendervoid pride flag");
|
||||||
|
// println!(" intersex intersex pride flag");
|
||||||
println!(" lesbian lesbian pride flag");
|
println!(" lesbian lesbian pride flag");
|
||||||
println!(" multigender multigender pride flag");
|
println!(" multigender multigender pride flag");
|
||||||
println!(" nb, nonbinary nonbinary pride flag");
|
println!(" nb, nonbinary nonbinary pride flag");
|
||||||
println!(" pan, pansexual pansexual pride flag");
|
println!(" pan, pansexual pansexual pride flag");
|
||||||
// println!(" progress progress arrow flag");
|
// println!(" poly, polyamorous polyamorous pride flag");
|
||||||
println!(" trans, transgender transgender pride flag");
|
println!(" trans, transgender transgender pride flag");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue