tabview

Python curses command line CSV and tabular data viewer

Showing:

Popularity

Downloads/wk

0

GitHub Stars

425

Maintenance

Last Commit

1yr ago

Contributors

14

Package

Dependencies

0

License

MIT

Categories

Readme

.. image:: https://img.shields.io/github/release/tabviewer/tabview.svg :target: https://pypi.python.org/pypi/tabview/ :alt: Latest Version

.. image:: https://img.shields.io/pypi/pyversions/tabview.svg    :target: https://pypi.python.org/pypi/tabview/ :alt: Supported Python versions

.. image:: https://img.shields.io/pypi/l/tabview.svg :target: https://pypi.python.org/pypi/tabview/ :alt: License

.. image:: https://sourcegraph.com/github.com/TabViewer/tabview/-/badge.svg :target: https://sourcegraph.com/github.com/Tabviewer/tabview

.. image:: https://img.shields.io/travis/TabViewer/tabview.svg :target: https://travis-ci.org/TabViewer/tabview

Tabview

This project is functional but future development will be sporadic and limited. For a more fully featured CSV viewer/spreadsheet app check out the Visidata project <https://github.com/saulpw/visidata>_.

View a CSV file in a spreadsheet-like display.

Posted by Scott Hansen firecat4153@gmail.com

Original code forked from: http://www.amk.ca/files/simple/tabview.txt

Contributed by A.M. Kuchling <amk@amk.ca>

Other Contributors:

+ Matus Gura <matus.gura@gmail.com>
+ Nathan Typanski <ntypanski@gmail.com>
+ Sébastien Celles <s.celles@gmail.com>
+ Yuri D'Elia <wavexx@thregr.org>

The highlighted position is shown in the top-left corner of the screen; next to it are shown the contents of that cell.

Features:

  • Python 3.4+
  • Spreadsheet-like view for easily visualizing tabular data
  • Vim-like navigation (h,j,k,l, g(top), G(bottom), 12G goto line 12, m - mark, ' - goto mark, etc.)
  • Toggle persistent header row
  • Sort ascending or descending by any column. Dynamically change column width and gap
  • Sort in 'natural order' to improve numeric sorting
  • Full-text incremental search, n and p to cycle between search results
  • 'Enter' to view the full cell contents
  • Yank cell contents to the clipboard
  • File can be reloaded in-place if the data changes.
  • F1 or ? for keybindings
  • Can also use from python command line to visualize any tabular data (e.g. list-of-lists)
  • See the screenshots directory for some pictures.

Requires:

  • Python 3.4+
  • Xsel or xclip (Optional - only required for 'yank' to clipboard)

Installation:

  • pip install tabview OR
  • # python setup.py install OR
  • $ python setup.py install --user OR
  • Archlinux AUR package <https://aur.archlinux.org/packages/tabview-git/>_

Usage:

  • From command line:

    .. code:: python

    tabview tabview --start_pos 6,5 tabview +6:5 (equivalent to previous usage) tabview --encoding iso8859-1 +6:

  • From python command line to view an object

    .. code:: python

      import tabview as t
      a = [["a","b","c"], ["d","e","f"]]
      t.view(a)
    
  • From python command line to view a file

    .. code:: python

      import tabview as t
      t.view(<filename>, start_pos=(60,40))
    
  • Using as the pager for MySQL. Set these options in ~/.my.cnf::

    pager=tabview -d '\t' --quoting QUOTE_NONE -
    silent
    

Tests:

  • python tests/test_tabview.py

Keybindings:

========================== ================================================= F1 or ? Show this list of keybindings Cursor keys or h,j,k,l Move the highlighted cell, scrolling if required. Q or q Quit Home, ^, Ctrl-a Move to the start of this line End, $, Ctrl-e Move to the end of this line [num]| Goto column , or first column if num not given PgUp/PgDn or J/K Move a page up or down H,L Page left or right g Goto top of current column [num]G Goto line or bottom of current column if num not given Ctrl-g Show file/data information Insert or m Memorize this position Delete or ' Return to memorized position (if any) Enter View full cell contents in pop-up window. / Search n Next search result p Previous search result t Toggle fixed header row < > Decrease/Increase column width (all columns) , . Decrease/Increase column width (current column) - + Decrease/Increase column gap s Sort the table by the current column (ascending) S Sort the table by the current column (descending) a 'Natural Sort' the table (ascending) A 'Natural Sort' the table (descending) # Sort numerically by the current column (ascending) @ Sort numerically by the current column (descending) r Reload file/data. Also resets sort order y Yank cell contents to the clipboard (requires xsel or xclip) [num]c Toggle variable column width mode (mode/max), or set width to [num] [num]C Maximize current column, or set width to [num] [num] Skip to (nth) change in row value (backward) [num]] Skip to (nth) change in row value (forward) [num]{ Skip to (nth) change in column value (backward) [num]} Skip to (nth) change in column value (forward) ========================== =================================================

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100