Skeeve has asked for the wisdom of the Perl Monks concerning the following question:
Hi
I had the requirement to build a text table with Template::Toolkit. It's for the purpose of sending tabular data in a plain text mail.
As I couldn't find any module, I built my own TextTable filter.
An example table could look like this:
[% FILTER $TextTable %] >>ID<<|<<Name<<|>>Value>> ------+--------+--------- <<1>><<Bank ABC>><<5,740.00>> <<2>><<Super Fund>><<12,280.00>> <<1003>><<Big Savings Bank>><<430.00>> [% END %]
And the result would be
ID | Name | Value ----+----------------+--------- 1 |Bank ABC | 5,740.00 2 |Super Fund |12,280.00 1003|Big Savings Bank| 430.00
- The << and >> in the header line define the alignment of the columns.
- Spaces before and/or after the header texts define the alignment of the headlines. Centered is the default.
- The separators are defined in the headline as well. Everything not between the << and >> is a separator.
- The second line, if it does not contain any << and >>, is a rule. The first character will be the standard, the second will be used for "crossings".
- The << and >> in the columns surround the values.
My Filter Plugin simply parses the text and translates it into Text::Table code.
I'm wondering whether or not the plugin could be useful for others, so my questions are:
- Did I reinvent the wheel?
- Do you have any suggestions for enhancements?
- What do I have to do to make it a CPAN moduke?
Thanks for your attention.
s$$([},&%#}/&/]+}%&{})*;#$&&s&&$^X.($'^"%]=\&(|?*{%
+.+=%;.#_}\&"^"-+%*).}%:##%}={~=~:.")&e&&s""`$''`"e
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Template::Toolkit and Text::Table
by Marshall (Canon) on Feb 06, 2020 at 10:11 UTC | |
by Skeeve (Parson) on Feb 06, 2020 at 11:39 UTC | |
by Marshall (Canon) on Feb 08, 2020 at 05:16 UTC | |
Re: Template::Toolkit and Text::Table
by Anonymous Monk on Feb 05, 2020 at 22:41 UTC | |
Re: Template::Toolkit and Text::Table
by Anonymous Monk on Feb 06, 2020 at 14:22 UTC |
Back to
Seekers of Perl Wisdom