Documentation ¶
Overview ¶
Package asciitable implements a simple ASCII table formatter for printing tabular values into a text terminal.
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Column ¶
type Column struct { Title string MaxCellLength int FootnoteLabel string // contains filtered or unexported fields }
Column represents a column in the table.
type Table ¶
type Table struct {
// contains filtered or unexported fields
}
Table holds tabular values in a rows and columns format.
func MakeHeadlessTable ¶
MakeHeadlessTable creates a new instance of the table without any column names. The number of columns is required.
func MakeTable ¶
MakeTable creates a new instance of the table with given column names. Optionally rows to be added to the table may be included.
Example ¶
// Create a table with three column headers. t := MakeTable([]string{"Token", "Type", "Expiry Time (UTC)"}) // Add in multiple rows. t.AddRow([]string{"b53bd9d3e04add33ac53edae1a2b3d4f", "auth", "30 Aug 18 23:31 UTC"}) t.AddRow([]string{"5ecde0ca17824454b21937109df2c2b5", "node", "30 Aug 18 23:31 UTC"}) t.AddRow([]string{"9333929146c08928a36466aea12df963", "trusted_cluster", "30 Aug 18 23:33 UTC"}) // Write the table to stdout. fmt.Println(t.AsBuffer().String())
Output:
func MakeTableWithTruncatedColumn ¶
func MakeTableWithTruncatedColumn(columnOrder []string, rows [][]string, truncatedColumn string) Table
MakeTableWithTruncatedColumn creates a table where the column matching truncatedColumn will be shortened to account for terminal width.
func (*Table) AddFootnote ¶
AddFootnote adds a footnote for referencing from truncated cells.
func (*Table) IsHeadless ¶
IsHeadless returns true if none of the table title cells contains any text.
func (*Table) SortRowsBy ¶
SortRowsBy sorts the table rows with the given column indices as the sorting key, optionally performing a stable sort. Column indices out of range are ignored - it is the caller's responsibility to ensure the indices are in range.