[tz] TZ file comments UTF-8? Bastardized HTML?
Steffen Daode Nurpmeso
sdaoden at gmail.com
Mon Jan 14 18:10:31 UTC 2013
Russ Allbery <rra at stanford.edu> wrote:
|Steffen "Daode" Nurpmeso <sdaoden at gmail.com> writes:
|> Russ Allbery <rra at stanford.edu> wrote:
|
|>|If you do decide to use POD, you may want to pick a different letter than
|>|I, since I<> is already a POD formatting code (for italics). D<> is safe
|>|to use; there's no existing formatting code.
|
|> Well, that was just what came to my mind on saturday.
|> Maybe U<> (for URL)? It seems unused.
|
|Yup, that would work.
(Updated it already.)
|> I also can hardly imagine that spreading formatting tags will be
|> accepted by the actual tz maintainer(s), since otherwise they
|> might have done it 15 years ago.
|
|True. :)
|
|> I think the script can easily get extended by another mode which simply
|> takes an encoding name and reads text from STDIN/file, converting to tz
|> database-style comment output along the way; i.e., HTML entities. It
|> would have to decode HTML entities to E<>, which should work, then?
|> Shouldn't be that hard either.
|
|Yup, that would also work and wouldn't be too difficult, since E<> takes
|the same values as HTML entities.
|
|> ..Well i think for L<> to work the way you show it above the POD parser
|> must be adjusted; or we need to use special tags and make POD treat them
|> as links.
|
|You mean the L<anchor|http://www.example.com/> form? No, that's just
Weeeeeelll ... this indeed works for newer perl(1)s!
I first got stuck since the laptop hardware driving OS has 5.8.9
and 5.10.0 installed, and those do not support L<TEXT|scheme:>:
But note that there is no corresponding "L<text|scheme:...>"
syntax, for various reasons.
(But the VM-based loved one with 5.16.1 got it right.)
|standard POD; any POD parser will handle that out of the box. Or do you
|mean not emitting the contents of U<> and D<>? that would indeed require
|some tweaks, but not very difficult ones.
|
|> I haven't yet used POD any more sophisticated than this:
|
|> use Pod::Text;
|> my $parser = Pod::Text->new(loose => 1, indent => 0, width => 72);
|> $parser->parse_from_file($0, '-');
|
|> and of course normal module documentation, so some hints how to do
|> the required task would be appreciated.
|
|Basically, you tell Pod::Simple that you accept some additional formatting
|codes with:
|
| $parser->accept_codes(qw(D U));
.. and this one is unknown to Pod::Simple there, too.
|and then add new cmd_d and cmd_u subs that do whatever they should do with
|the contents. I can explain more if anyone is interested in going this
|direction.
Well it sounds pretty much straightforward and tofu-y for a new
perl(1), but it seems 5.14 is required to get access for both
features, and 5.12 for using L<text|scheme:> alone.
Thus i think htwork.pl would have to work as an intermediate
filter that converts from a(n almost unmodified) tz database file
into an array of lines that could then be fed into a POD parser
(via ->parse_lines()), and from then on the options are pretty
versatile.
I.e., the script, if converted to <|> (| is ALT-7 on a german Mac
keyboard btw. :/), must be prepared to convert this to something
perl(1) version dependent. I really don't think it can assume
a v5.14.
But hey - thanks for these pointers!
|> It of course all stands and falls with wether these adjustments
|> will be acceptable for the tz database as such.
|> I'm not planning to fork the project.
|
|Indeed.
My offer still holds.
|--
|Russ Allbery (rra at stanford.edu) <http://www.eyrie.org/~eagle/>
--steffen
More information about the tz
mailing list