5 releases
0.2.3 | Aug 22, 2024 |
---|---|
0.2.2 | Jul 31, 2024 |
0.2.1 | Jun 7, 2024 |
0.2.0 | Feb 2, 2024 |
0.1.0 | Jan 20, 2024 |
#190 in Command-line interface
3,166 downloads per month
Used in 2 crates
(via terminal-colorsaurus)
43KB
905 lines
terminal-trx
Pronounced: Terminal T-Rex 🦖
Provides a handle to the terminal of the current process that is both readable and writable.
Example
use terminal_trx::terminal;
use std::io::{BufReader, BufRead as _, Write as _};
let mut terminal = terminal().unwrap();
write!(terminal, "hello world").unwrap();
let mut reader = BufReader::new(&mut terminal);
let mut line = String::new();
reader.read_line(&mut line).unwrap();
Docs
Wishlist
These are some features that I would like to include in this crate, but have not yet had the time to implement. Anyone is welcome to create a PR :)
- Add integration tests.
- Share the
Terminal
instance (likestdout
,stderr
,stdin
in the standard library do). (Is this a good idea?) - Support enabling raw mode on MSYS/Cygwin.
Inspiration
This crate draws inspiration from many great resources, such as:
- This Gist by Tavian Barnes
- nix-ptsname_r-shim
License
Licensed under either of
- Apache License, Version 2.0 (license-apache.txt or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (license-mit.txt or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions
Dependencies
~0–8.5MB
~64K SLoC