GUI presentation of data
An application insipired by PowerShell’s Out-GridView .
Implemented on Gnome using GTK
Input is passed via STDIN or via filenames in argument. Every file is assigned a window and a thread in charge of reading that file and parsing it.
Also check out my post on it: http://blog.backslasher.net/open-gridview.html
Since we rely on Gtk, we need the python GTK bindings (PyGobject). Compiling it as a Python package is annoying, so it’s better to install the Distro-provided package (e.g. in Ubuntu - python-gi)
Either pipe input, or supply it as files.
Default parser is autosplit (re.split) with \s+ as separator
Change parser with --parser
Change separator where applicable using --separator
Column names are usually inferred from input. Use --headers to override.
Columns can be discarded by specifying an empty name, like --headers important,,also
Column types are usually inferred from first item in input. If overriding headers, follow a name with colons to force a specific type, like --headers col,othercol:int,thirdcol
These different types of input formatting are currently supported:
- autosplit (default), which uses re.split to create different columns from every row.
Default separator is \s+ which is good for space-separated items.
Separator can contains capturing groups for interesting results
csv, with configurable column separators
line_json, where every line is considered a single JSON object (Line delimited JSON)
Items are displayed immediately when parsed
- Clipboard support. Copies as CSV to allow easy pasting in spreadsheet software
- Simple text filtering
- act as pipeline middle (and not just terminator), meaning that you can select items and click “OK” to make it send the items to STDOUT
- Support advanced filtering (e.g. regex, specific columns)
- Support hiding and re-ordering columns
- show progress icon when stdin isn’t EOF yet