Skip to content
/ tv Public

📺(tv) Tidy Viewer is a cross-platform CLI csv pretty printer that uses column styling to maximize viewer enjoyment.

License

Notifications You must be signed in to change notification settings

alexhallam/tv

Repository files navigation

Rust

Tidy Viewer (tv)

Tidy Viewer (tv) is a csv pretty printer that uses column styling to maximize viewer enjoyment.

tv

Installation

  1. Cargo Install

The following will install from the crates.io source.

cargo install tidy-viewer
sudo cp /home/ubuntu/.cargo/bin/tidy-viewer /usr/local/bin/.

For convenience add the alas alias tv='tidy-viewer' to bashrc.

echo `alias tv='tidy-viewer'` >> `~/.bashrc`
  1. Install from source

The current version is alpha. I do not plan to push to crates.io until this is more polished. If you would like to try this in its raw state install rust and follow the steps below.

  1. Clone repo
  2. cargo build --release
  3. cp binary to bin
  4. Add alias tv='tidy-viewer' to ~/.bashrc
git clone https://github.com/alexhallam/tv
cd tv
cargo build --release
sudo cp ./target/release/tv /usr/local/bin/.
echo `alias tv='tidy-viewer'` >> `~/.bashrc`

Example

# Download the diamonds data
wget https://raw.githubusercontent.com/tidyverse/ggplot2/master/data-raw/diamonds.csv

# pipe 35 records to tv
cat diamonds.csv | head -n 35 | tv

Rules

Float

Print only the first three digits. The first three digits represent > 99.9% the value of a number.

Tools to pair with tv

tv is a good compliment to command line data manipulation tools. I have listed some tools that I like to use with tv.

xsv - Command line csv data manipulation. Rust

csvtk - Command line csv data manipulation. Go

tsv-utils - Command line csv data manipulation toolkit. D

q - Command line csv data manipulation query-like. Python

miller - Commane line data manipulaiton, statistics, and more. C

xsv - a command line program for indexing, slicing, analyzing, splitting and joining CSV files

tsv-utils - command line utilities for tabular data files

q - q is a command line tool that allows direct execution of SQL-like queries on CSVs/TSVs

miller - Miller is like awk, sed, cut, join, and sort for data formats such as CSV, TSV, tabular JSON and positionally-indexed.

Tools similar to tv

column Comes standard with linux.

Inspiration

pillar - R's tibble like formatting