pyout
is a Python package that defines an interface for writing structured records as a table in a terminal. It is being developed to replace custom code for displaying tabular data in in ReproMan and DataLad. See the Examples folder for how to get started.
A primary goal of the interface is the separation of content from style and presentation. Current capabilities include
- automatic width adjustment and updating of previous values
- styling based on a field value or specified interval
- defining a transform function that maps a raw value to the displayed value
- defining a summary function that generates a summary of a column (e.g., value totals)
- support for delayed, asynchronous values that are added to the table as they come in
This package is currently in early stages of development. While it should be usable in its current form, it may change in substantial ways that break backward compatibility, and many aspects currently lack polish and documentation.
pyout
requires Python 3 (>= 3.7). It is developed and tested in GNU/Linux environments and is expected to work in macOS environments as well. There is currently very limited Windows support.
pyout
is under the MIT License. See the COPYING file.