termini

Crates.iotermini
lib.rstermini
version1.0.0
sourcesrc
created_at2022-10-06 15:43:21.913186
updated_at2023-05-02 21:49:10.035674
descriptionMinimal terminfo libary.
homepage
repositoryhttps://github.com/pascalkuthe/termini
max_upload_size
id681422
size49,241
Pascal Kuthe (pascalkuthe)

documentation

README

termini - minimal terminfo

crates.io crates.io

termini is a Rust library that provides access to the terminfo database.

Some highlights of termini include:

  • supports extended capabilities
  • easy to audit (single dependency, < 1k LOC)
  • stability (extensively fuzzed to ensure absence of panics)
  • tested on a wide array of terminfo databases

terminis main differentiating characteristic is that it's focused on providing a very minimal functionality. termini only has a single dependency (home to query the home directory) and has less than 1k LOC. This means that it's easy to maintain/audit, doesn't introduce additional dependencies/compiletime and has a smaller surface area for bugs.

terminis parser has been extensively fuzzed with cargo-fuzz to ensure that no panics occur even for fully malformed input. Furthermore, termini is tested with a large array of compiled terminifo data to ensure it produces the correct results.

Acknowledgements

During the implementation of this crate, the following code was used as reference:

Commit count: 8

cargo fmt