The SimpleTableGenerator package

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

Pass a 2D-list of strings and get a single string with table contents.


[Skip to ReadMe]

Properties

Versions0.2.0.0, 0.2.0.0
Change logNone available
Dependenciesbase (>=4.8 && <5), split (==0.2.*) [details]
LicenseGPL-3
Authorklntsky
Maintainerklntsky@openmailbox.org
CategoryText
Source repositoryhead: git clone git://github.com/8084/SimpleTableGenerator.git
UploadedWed Feb 22 19:05:10 UTC 2017 by klntsky

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for SimpleTableGenerator-0.2.0.0

[back to package description]

SimpleTableGenerator

About

This library is for drawing text tables.

Pass a 2D-list of strings representing cells and get a single string with table contents.

makeDefaultSimpleTable :: [[String]] -> String

Newlines are supported.

Basic usage

putStrLn $ makeDefaultSimpleTable [["1","2","3"], ["One","Two","Three"], ["First", "Second"]]
┌───────┬────────┬───────┐
│ 1     │ 2      │ 3     │
├───────┼────────┼───────┤
│ One   │ Two    │ Three │
├───────┼────────┼───────┤
│ First │ Second │       │
└───────┴────────┴───────┘

Advanced usage

You can configure the table by constructing SimpleTableConfig and passing it to makeSimpleTable.

putStrLn $ makeSimpleTable simpleTableConfig {
    tableBorders = "+++++++++-|",
    colMinWidths  = [3, 4],
    rowMinHeights = [2],
    padFunction   = simpleTableLeftPad,
    cellPadFunction = simpleTableBottomPad,
    horizontalPadding = 0,
    verticalPadding = 1,
    paddingStr = ".,`"
    } [["a"], ["b", "c"]]
+---+----+
|.,`|.,`.|
|.,a|.,`.|
|.,`|.,`.|
|.,`|.,`.|
+---+----+
|.,`|.,`.|
|.,b|.,`c|
|.,`|.,`.|
+---+----+

Check out the docs for more info.