aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/input.rs27
1 files changed, 27 insertions, 0 deletions
diff --git a/examples/input.rs b/examples/input.rs
new file mode 100644
index 0000000..e63787b
--- /dev/null
+++ b/examples/input.rs
@@ -0,0 +1,27 @@
+fn main() {
+ let (mut input, _raw) = textmode::blocking::Input::new();
+ for arg in std::env::args().skip(1) {
+ match arg.as_str() {
+ "--disable-utf8" => input.parse_utf8(false),
+ "--disable-ctrl" => input.parse_ctrl(false),
+ "--disable-meta" => input.parse_meta(false),
+ "--disable-special-keys" => input.parse_special_keys(false),
+ "--disable-single" => input.parse_single(false),
+ _ => panic!("unknown arg {}", arg),
+ }
+ }
+
+ loop {
+ let key = input.read_key().unwrap();
+ if let Some(key) = key {
+ print!("{:?}: ", key);
+ let bytes = key.into_bytes();
+ print!("{:?}\r\n", bytes);
+ if bytes.contains(&3) {
+ break;
+ }
+ } else {
+ break;
+ }
+ }
+}