#table #terminal #ascii #pretty #pretty-print #cli

text-tables

A terminal/text table prettifier with no dependencies

7 releases

Uses old Rust 2015

0.3.1 Mar 3, 2019
0.3.0 Mar 3, 2019
0.2.3 Feb 27, 2018
0.1.0 Feb 27, 2018

#1661 in Text processing

Download history 34/week @ 2024-03-08 24/week @ 2024-03-15 26/week @ 2024-03-22 59/week @ 2024-03-29 68/week @ 2024-04-05 69/week @ 2024-04-12 38/week @ 2024-04-19 41/week @ 2024-04-26 16/week @ 2024-05-03 29/week @ 2024-05-10 37/week @ 2024-05-17 32/week @ 2024-05-24 55/week @ 2024-05-31 142/week @ 2024-06-07 139/week @ 2024-06-14 111/week @ 2024-06-21

456 downloads per month
Used in github-analytics

MIT/Apache

8KB
113 lines

Text-tables

This library provides very simple table printing using text characters. It has no dependencies besides std. I'm interested in making it no_std if this is possible, contributions welcome!

Licensed under MIT or Apache-2.0 at your discretion. Message me if this isn't sufficient.

Example

extern crate text_tables;

use std::str;
use std::io;

fn main() {
    // can be vec or slices
    let data = [["A", "2x2"], ["pretty", "table"]];
    // we can either render to an array...
    let mut out = Vec::new();
    text_tables::render(&mut out, data).unwrap();
    println!("{}", str::from_utf8(&out).unwrap());
    // ...or we can use `Write` streams directly
    text_tables::render(&mut io::stdout(), data).unwrap();
}

outputs

+--------+-------+
| A      | 2x2   |
+--------+-------+
| pretty | table |
+--------+-------+

lib.rs:

A small library for pretty-printing tables in monospace text.

Example

let data = [["Some", "printable"], ["data", "fields"]];
let mut out = Vec::new();
text_tables::render(&mut out, data).unwrap();
println!("{}", ::std::str::from_utf8(&out).unwrap());

No runtime deps