mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2024-10-05 21:15:45 +00:00
d5f5648b37
We use cargo vendor to generate a .cargo/config file and the vendor directory. Vendoring allows us to lock our dependencies and to modify them easily from the top level Cargo.toml. We vendor all dependencies, including the crates.io ones, which allows for network isolated builds. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> |
||
---|---|---|
.. | ||
examples | ||
src | ||
.cargo-checksum.json | ||
appveyor.yml | ||
Cargo.toml | ||
CHANGELOG.md | ||
LICENSE | ||
README.md | ||
rustfmt.toml |
atty
are you or are you not a tty?
install
Add the following to your Cargo.toml
[dependencies]
atty = "0.2"
usage
extern crate atty;
use atty::Stream;
fn main() {
if atty::is(Stream::Stdout) {
println!("I'm a terminal");
} else {
println!("I'm not");
}
}
testing
This library has been unit tested on both unix and windows platforms (via appveyor).
A simple example program is provided in this repo to test various tty's. By default.
It prints
$ cargo run --example atty
stdout? true
stderr? true
stdin? true
To test std in, pipe some text to the program
$ echo "test" | cargo run --example atty
stdout? true
stderr? true
stdin? false
To test std out, pipe the program to something
$ cargo run --example atty | grep std
stdout? false
stderr? true
stdin? true
To test std err, pipe the program to something redirecting std err
$ cargo run --example atty 2>&1 | grep std
stdout? false
stderr? false
stdin? true
Doug Tangren (softprops) 2015-2017