A survey of table rendering packages
So far I've found:
o Any::Renderer
o Data::Formatter::Text
o Data::Tab
o Data::Table
o Data::Tabulate
o Gapp
o HTML::Table
o HTML::Tabulate
o LaTeX::Table
o PDF::Table
o PDF::TableX
o PDF::Report::Table
o Table::Simple
o Term::TablePrint
o Text::ANSITable
o Text::ASCIITable
o Text::CSV
o Text::FormatTable
o Text::MarkdownTable
o Text::SimpleTable
o Text::Table
o Text::Table::Tiny
o Text::TabularDisplay
o Text::Tabulate
o Text::UnicodeBox::Table
o Text::UnicodeTable::Simple
o Tie::Array::CSV
Any others?
I'm also aware of Data::Serializer, and that there are many more such modules, but here I'm just interested in table-oriented ones.
$many x $thanx to all who replied here or via email.
I'm a fan of https://metacpan.org/pod/Text::ASCIITable
If Text::CSV counts, you might also be interested in Tie::Array::CSV (my own). Then again, I'm not sure I would count it.
For big tables: https://metacpan.org/pod/Term::TablePrint
Text::UnicodeBox::Table originated at Shutterstock a few years ago and is used in the Perl-based MySQL command-line client App::AltSQL. I’ve only personally used it as a user of
altsql
, but it works well for that. It doesn’t always use the correct column width for full-width or zero-width characters, but I doubt that most of the CPAN solutions do.Please add Text::MarkdownTable!
there are several packages to add tables to PDF::API2 documents:
https://metacpan.org/pod/PDF::Table
https://metacpan.org/pod/PDF::TableX
https://metacpan.org/pod/PDF::Report::Table
Tickit has a table rendering widget as well (and it should support fullwidth/halfwidth chars happily enough, let me know if you find input it doesn't render correctly!):
https://metacpan.org/pod/Tickit::Widget::Table
(not much use unless you're already using https://metacpan.org/pod/Tickit of course)
There's my own Data::Dumper::Table though it's a pretty thin wrapper around Text::Table.
HTML::QuickTable