tabular package provides a Golang library for storing data in a table
consisting of rows and columns. Sub-packages provide for rendering such a
table as a terminal box-table (line-drawing with UTF-8 box-drawing in various
styles, or ASCII), as HTML, or as CSV data.
The core data model is designed to be extensible and powerful, letting such
a table be embedded in various more sophisticated models. (Eg, core of a
spreadsheet). Cells in the table contain arbitrary data and possess metadata
in the form of "properties", modelled after the
A table can be created from the base package and then populated, before being passed to any of the renderers, or a table can be directly created using a sub-package, such that you probably won't need to import the base package directly.
An overview guide to the codebase can be found in the Overview.md
See the examples for a gentler introduction.
This package should be installable in the usual
go get manner.
This software is under a MIT-type license.
When embedding into another tool, Go Modules support is able to report on the
version numbers of all dependencies with
go version -m $cmdname; to support
your own version reporting framework,
returns a slice of strings (including API versions and the value of the
LinkerSpecifiedVersion top-level variable).
This package uses semantic versioning.
Note that Go only supports the most recent two minor versions of the language; for the purposes of semver, we do not consider it a breaking change to add a dependency upon a language or standard library feature supported by all currently-supported releases of Go.
Projects using Tabular
- character — Unicode character lookups and manipulations