All Projects → clap-rs → term_size-rs

clap-rs / term_size-rs

Licence: other
Functions for determining terminal sizes in Rust

Programming Languages

rust
11053 projects
HTML
75241 projects

Projects that are alternatives of or similar to term size-rs

react-native-dimension
A React Native Dimension for Responsive Layout
Stars: ✭ 31 (-24.39%)
Mutual labels:  dimensions
Randomly-Adding-Anything
No description or website provided.
Stars: ✭ 42 (+2.44%)
Mutual labels:  dimensions
InlineDimens
Android dimension types as inline classes with easy conversions.
Stars: ✭ 54 (+31.71%)
Mutual labels:  dimensions
dimcli
Python client and CLI for scientometrics and research analytics using the Dimensions API.
Stars: ✭ 32 (-21.95%)
Mutual labels:  dimensions
fastimage
Find the type or size of an image
Stars: ✭ 31 (-24.39%)
Mutual labels:  dimensions
morton-nd
A header-only compile-time Morton encoding / decoding library for N dimensions.
Stars: ✭ 78 (+90.24%)
Mutual labels:  dimensions
dimensions-api-lab
Research data analytics tutorials using the Dimensions Analytics API
Stars: ✭ 68 (+65.85%)
Mutual labels:  dimensions
Image Size
Node module for detecting image dimensions
Stars: ✭ 1,539 (+3653.66%)
Mutual labels:  dimensions

term_size

Crates.io Crates.io license license Coverage Status Join the chat at https://gitter.im/kbknapp/term_size-rs

Linux: Build Status Windows: Build status

A Rust library to enable getting terminal sizes and dimensions

Documentation

Maintenance status

This crate is no longer maintained. It works fine, but the maintainers don't have time and willingness to work on it or review future PRs anymore.

Consider using terminal_size instead.

Usage

First, add the following to your Cargo.toml:

[dependencies]
term_size = "1"

Next, add this to your crate root:

extern crate term_size;

To get the dimensions of your terminal window, simply use the following:

fn main() {
  if let Some((w, h)) = term_size::dimensions() {
    println!("Width: {}\nHeight: {}", w, h);
  } else {
    println!("Unable to get term size :(")
  }
}

License

Copyright Benjamin Sago, Kevin Knapp, and term_size contributors.

Licensed under either of

at your option. 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.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Minimum Version of Rust

term_size will officially support current stable Rust, minus two releases, but may work with prior releases as well. For example, current stable Rust at the time of this writing is 1.22.1, meaning term_size is guaranteed to compile with 1.20.0 and newer.

At the 1.23.0 stable release, term_size will be guaranteed to compile with 1.21.0 and newer, etc.

Upon bumping the minimum version of Rust (assuming it's within the stable-2 range), it must be clearly annotated in the CHANGELOG.md

Breaking Changes

term_size takes a similar policy to Rust and will bump the major version number upon breaking changes with only the following exceptions:

  • The breaking change is to fix a security concern
  • The breaking change is to be fixing a bug (i.e. relying on a bug as a feature)
  • The breaking change is a feature isn't used in the wild, or all users of said feature have given approval prior to the change
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].