Skip to content

pyout/pyout

Repository files navigation

pyout: Terminal styling for structured data

image

image

image

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

Status

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.

License

pyout is under the MIT License. See the COPYING file.