Crate nls_term_grid
source ·Expand description
§nls_term_grid
This library arranges textual data in a grid format similar to ls
This library is extracted from nls-ls v0.4.0.
The Grid API and Implementation is inspired by ogham/term_grid
§Example
use nls_term_grid::{Grid, Direction, Alignment};
type GridCell = nls_term_grid::GridCell<String>;
let cells: [GridCell; 15] = [
GridCell::from(String::from("file10")),
GridCell::from(String::from("file20")),
GridCell::from(String::from("file3")),
GridCell::from(String::from("file400")),
GridCell::from(String::from("file5")),
GridCell::from(String::from("file100")),
GridCell::from(String::from("file2")),
GridCell::from(String::from("file30")),
GridCell::from(String::from("file4")),
GridCell::from(String::from("file500")),
GridCell::from(String::from("file1")),
GridCell::from(String::from("file200")),
GridCell::from(String::from("file300")),
GridCell::from(String::from("file40")),
GridCell::from(String::from("file50")),
];
let grid = Grid::new(" ", Direction::LeftToRight, &cells);
let display = grid.fit_into_width(35).unwrap();
assert_eq!(
display.to_string(),
"file10 file20 file3 file400\n\
file5 file100 file2 file30\n\
file4 file500 file1 file200\n\
file300 file40 file50\n"
);
Structs§
- The displayable represntation of
Grid
- The main struct used to format GridCells in a grid like format similar to
ls
- A textual string containing its display width and alignment
Enums§
- Indicates alignment of contents when padding is required
- Indicates direction GridCells should be written in