Author image Kevin Ryde
and 1 contributors


HTML::FormatText::Links - format HTML as plain text using links


 use HTML::FormatText::Links;
 $text = HTML::FormatText::Links->format_file ($filename);
 $text = HTML::FormatText::Links->format_string ($html_string);

 $formatter = HTML::FormatText::Links->new (rightmargin => 60);
 $tree = HTML::TreeBuilder->new_from_file ($filename);
 $text = $formatter->format ($tree);


HTML::FormatText::Links turns HTML into plain text using the links program.

The module interface is compatible with formatters like HTML::FormatText, but all parsing etc is done by links. See HTML::FormatExternal for the formatting functions and options, all of which are supported by HTML::FormatText::Links, with the following caveats.

leftmargin, rightmargin

In past versions of links without the -html-margin option you always get an extra 3 spaces within the requested left and right margins.

input_charset, output_charset

An output charset requires Links 2.0 or higher (or some such version), and as of 2.2 the output cannot be UTF-8 (though the input can be). Various unicode inputs are turned into reasonable output though, for example smiley face U+263A becomes ":-)".

Links can be a bit picky about its charset names. This module attempts to ease that by for instance turning "latin-1" (not accepted) into "latin1" (which is accepted). A full "ISO-8859-1" etc is accepted too.


HTML::FormatExternal, links(1)



Copyright 2008, 2009, 2010, 2013, 2015 Kevin Ryde

HTML-FormatExternal is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

HTML-FormatExternal is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with HTML-FormatExternal. If not, see