HTML::FormatText::Links(3) 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.


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 <>.