1.82 (2009-01-05)
* NEW FEATURES
------------
* Add new hooks for user functions, for simple @-commands, and at the start and
end of special regions.
* BUG FIXES
---------
* Tests are now more cross-platform and more tolerant of missing optional
dependencies.
* Don't use unidecode on unicode characters that are known not to have a good
transliteration. This corresponds with characters with an @-command that
don't have a transliteration, like @exclamdown...
* Misc minor bug fixes.
1.80 (2009-01-01)
* NEW FEATURES
------------
* handle @alias, @quote*, @guillem*, @textdegree, @allowcodebreaks,
@fonttextsize, @hyphenation, @click, @clickstyle, @click, @arrow,
@clicksequence, @geq, @leq, @*headingmarks, @*footingmarks, @smallquotation,
@ogonek.
Handle @columnfractions and row prototypes in @multitable better.
* @documentlanguage is used to set the language each time it is seen (except
if the language was set on the command line).
* new option --css-ref, generate reference to a CSS URL.
* new option --transliterate-file-names, produce file names in ASCII
transliteration (set in the default case).
* use accesskey and rel attributes, use link element if set in the init file.
* use node id as targets for sections.
* COMPATIBILITY
-------------
* the API for the formatting of menus completly changed. $simple_menu_link
is removed, everything should be done in $menu_link.
* change handling of @detailmenu and menu comments, with (among other changes)
the menu function reference replaced by the menu_command function reference
also handling @detailmenu.
* tex4ht.init now may use a different external program for @tex and for
@math, and therefore the configuration variables were doubled and
their name changed.
* change in the interface, a new function reference print_element_header
has been added, that should print the heading navigation of an element.
Previously it was done in print_section.
* change in the normal_text function reference API, now there is an
input variable true if in simple text.
* change in the menu_entry and simple_menu_entry function reference API,
the name is always assed, and a new argument tells if there was an
explicit name.
* change in unknown function reference API, now there is a pass argument
to be able to handle unknown macros in other passes than the last.
Report from Reinhold Kainhofer.
* in table_item the text is not formatted with the format command,
the text_formatted argument is.
* definition index entries are now formatted with $definition_index_entry,
not with $definition_category anymore.
* $Texi2HTML::THISDOC{copying} is now $Texi2HTML::THISDOC{copying_comment}.
* TOC_LIST_ATTRIBUTE is now called NO_BULLET_LIST_ATTRIBUTE.
* TOC_LIST_STYLE is now called NO_BULLET_LIST_STYLE.
* changes in command line switches to synchronize with makeinfo:
--number becomes --number-sections
--separated-footnotes becomes --footnote-style
--sec-nav becomes --header
--Verbose becomes --verbose
--lang becomes --document-language
* everything before @setfilename is not outputted, like makeinfo. The previous
behaviour can be restored with $IGNORE_BEFORE_SETFILENAME = 0;
* Now there is an argtype possibility for definition specification
and the arg meaning changed. The whole definition parsing is now more
like makeinfo.
* internal_ref and external_ref don't change inforef to xref anymore.
* change in the heading API. THIS_HEADER is not used anymore.
New function reference, element_heading to format a node or a section
heading, including navigation and label. Accordingly, print_Top and
one_section don't print the element header anymore. Also it is
reported if the element is a new element, is the main element and
more arguments, and top element heading is always done in heading.
* print_element_header and print_navigation now return their result.
* new argument for print_misc and print_misc_header, the misc page name.
* printindex is called if it appears, even if the index is not defined or
there are no index entries.
* image API completly changed. The current behaviour is not stable, so
is not documented.
* new argument (@@-command name) for quotation and quotation_prepend_text.
* image file paths are not completed anymore in the default case. The previous
behaviour can be restored with $COMPLETE_IMAGE_PATHS set to true.
* there is a new 'style' key in $complex_format_map, to be able to
differentiate complex formats inheriting fonts and code_style (like
@format, @display).
* $EXTENSION should be undef if one doesn't want an extension to be added.
* THISDOC{'title'} and similar are now for @title since only one @title
should appear in the document. @settitle is tried first to set fulltitle.
* Configuration variables are not modified anymore, instead the variable
value is put in $Texi2HTML::THISDOC{'VAR'}. This is the case for
DO_CONTENTS, DO_SCONTENTS, CSS_LINES, BODYTEXT, DOCUMENT_DESCRIPTION,
DOCUMENT_ENCODING, IN_ENCODING, ENCODING_NAME, OUT_ENCODING.
For example, if $CSS_LINES is defined, the value is put in
$Texi2HTML::THISDOC{'CSS_LINES'} which is used for formatting, and if
$CSS_LINES is not defined, $Texi2HTML::THISDOC{'CSS_LINES'} is
autodetected.
* When there is no section and $USE_NODES is not set don't split by node.
This behaviour and the previous aren't documented, so it could change
in the future.
* BUG FIXES
---------
* --no-monolithic is reenabled.
* @, followed by an argument without brace is now handled. Report from
Jorge Barros de Abreu.
* @, is kept with --macro-expand.
* @math is more compatible with makeinfo/texi2dvi when no external program
is used. Using tex4ht for html generation should also lead to a correct
result.
* Handle right @end block commands followed by something else than a
spacing character.
* Remove trailing end of line in @html block.
* @itemize should produce bullets by default. Report from Reinhold Kainhofer.
* handle frame files like other files. Report from Reinhold Kainhofer.
1.78 (2007-06-05)
* NEW FEATURES
------------
* Transliterate accented characters in file names. Use Text::Unidecode
if detected.
* Handle @frenchspacing, @tie, @indent, @setcontentsaftertitlepage,
@setshortcontentsaftertitlepage and the obsolete @allow-recursion
and @quote-arg.
* With book style the Table of Contents is put where it is set.
* Use more numeric entities, especially for accented letters.
* The `examples' directory now contains an init file for Mediawiki output.
Mediawiki is the GPL'd wiki used by Wikipedia.
* new init file tex4ht.init. With this init file, httex or htlatex from
tex4ht is used to format @tex and @math.
* Init files now have a chance to override all file names, rather than just
page names.
* Put the images under a double licence by adding back their original GPL
licence.
* If SIMPLE_MENU is true the menu is simply enclosed in a preformatted
environment.
* The user can bypass the texi2html functions and provide his own function
to do things similar that what is done for interfacing with LaTeX2HTML
or tex4ht.
* LaTeX2HTML stuff is moved out of texi2html.pl, to T2h_l2h.pm.
* Add $USER and $DATE variables to override the defaults detected for the
footer.
* COMPATIBILITY
-------------
* $TOP_FILE and $TOC_FILE are only set if set by the user. The elements
file names are in the hash reference $Texi2HTML::THISDOC{'filename'}
for use in init files.
* The API for image, normal_text, paragraph and node_file_name has changed.
* The $ENCODING variable is deprecated, replaced by $ENCODING_NAME
and $OUT_ENCODING.
* utf8 is used as default out file encoding. This should allow for utf8
translations for languages which cannot use @-commands for non ascii
characters.
* Use entities for ``, '', ---, -- and quotes used for some formatting
@-commands if $USE_ISO is set.
* don't set unset MENU-ENTRY-NAME if it is similar with the NODE-NAME,
it is useless as it is a construct that shouldn't happen.
* avoid menu entry and description redundancy in the formatting function
and not in the main program.
* accept - in @-command names (compatibility with makeinfo)
* in user-defined macro arguments a comma in brace is escaped (compatibility
with makeinfo from texinfo 4.8.90)
* don't add the section title to the html title when the document isn't split
* BUG FIXES
---------
* When the file extension is set to the empty string, a trailing `.' will not
be automatically added to file names.
* The texi2html script is now created by make and not configure.
* It is possible to build the translation files from outside of the
build directory.
* When configure detects that no Data::Dumper is present, the build scripts
will simply copy the files instead of breaking.
* remove handling of quotation second arg, quotation has only one arg.
* handle nested ifset/ifclear.
* Improved handling of @sc and @centerchap.
* More flexible normal_text.
* style_stack really contains the formatting @-commands.
* caching of html generated by latex2html reenabled.
* when not split and no section navigation is output, the about page and
navigation direction are not output for all the elements.
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
1.76 (February 3 2005)
* BUG FIXES
---------
* Perl no longer needs to be installed at build time, but when it is not, the
path to `perl' that will be used at run time must be passed to the
`configure' script.
1.74 (January 31 2005)
* COMPATIBILITY
-------------
* The argument on def like commands line (@deffn and friends) may be
bracketed, therefore there is no difference between this element and
others. There is no need of items with { in front in the %def_map
anymore.
* NEW FEATURES
------------
* More @-commands are available to the user, that were ignored before.
Most of these @-commands are those related with structure or printed
output.
* BUG FIXES
---------
* many deffn and friends line parsing bugs fixed.
1.72 (December 29 2004)
* NEW FEATURES
------------
* Handle texinfo 4.7 constructs:
@caption, @shortcaption, @ordf, @ordm, @registeredsymbol, @deftypecv,
@LaTeX, @indicateurl, @docbook, @ifdocbook, @ifnotdocbook, @comma,
@headitem, @quotation second arg, @acronym second arg.
@url is now a synonym for @uref. @ at the end of a @def* line continues the
line.
Handle texinfo 4.8 constructs:
@abbr, @slanted, @euro and @sansserif.
* Cross refs are done according to the specification presented in the texinfo
manual in the node HTML Xref.
* BUG FIXES
---------
* Re enable compatibility with perl older that 5.6.
1.70 (March 24 2004)
* BUG FIXES
---------
* use i18n files even when translations.pl is not included. Include
translations.pl.
* COMPATIBILITY
-------------
* install html manual in $datadir/texinfo/html.
[changed in pkgsrc to $datadir/doc/texi2html]
* NEW FEATURES
------------
* Add a spec file, usefull to build a rpm.
* FOR DEVELOPERS
--------------
* Standardized on Autoconf 2.59 & Automake 1.8.3
1.68 (March 20 2004)
* COMPATIBILITY
-------------
* When the manual is split the default is to put resulting files in a
directory with name the manual file basename (previously they were left in
the current directory). To avoid that, call texi2html with '-output .'.
* The main configuration files are now ./Config, ~/.texi2html/Config,
$sysconfdir/texi2html/Config and last $datadir/texi2html/Config. They are
sourced in that order.
In the future `/etc/texi2htmlrc' and `~/.texi2htmlrc' will no longer be
sourced and any existing site or user configuration should be moved to the
new locations if you wish it to be used by newer versions of Texi2HTML.
* Translation files are now stored in $datadir/texi2html/i18n/*,
$sysconfdir/texi2html/i18n/*, ~/.texi2html/i18n/*, and sourced in that order.
The translated strings are now associated with the english strings.
Please see the documentation for the format of the new translation files.
* First index page is the first page with a non empty index (with @printindex).
* The glossary and bibliography terms aren't searched anymore. You should use
@macro to simulate these features (look at Tests/macros/glossary.texi for
an example).
* We've standardized on GNU-style `--' prefixed long options, rather than the
old single-dash prefixed long options in the help, but the single-dash style
is still accepted on the command line for the time being.
We also changed `_' to `-' in option names.
* @setref handling is removed as the right corresponding @-command is @anchor.
* No more global variables outside of namespaces.
Global variables are now in the Texi2HTML namespace.
leading T2H_ is stripped from variable, hashes and array names. You should
change your variable names for the new release. As the global variables
(%THISDOC, $THIS_SECTION...) are in the Texi2HTML namespace you should use,
for example, $Texi2HTML::THISDOC{'fulltitle'} now.
functions from the main program should now be qualified in the main
namespace. t2h_ is stripped from the function names too.
t2h_anchor is now a function reference in init file, and thus should
be called like &$anchor(...).
toc file and main file are arguments for print_frame, overview lines are
arguments for print_toc_frame (instead of global variables).
* $THISPROG, $T2H_HOMEPAGE, $T2H_AUTHORS, $T2H_TODAY, $T2H_USER are now
values associated with the following keys in %Texi2HTML::THISDOC:
`program', `program_homepage', `today', `user'.
* Changes in the function reference used for the page layout:
print_section don't do the end of page or section anymore (except when
split at node), end_section does the end of a section, and print_*_footer
does the end of page.
the print_*_header, print_*_footer... functions take a ref on the buttons
array as argument, instead of using the $T2H_BUTTONS global variable.
Have a look at the texi2html.init file to update your configuration files.
* T2H_InitGlobals is not used anymore. Use the function reference init_out
to define $BODYTEXT dynamically and %Texi2HTML::THISDOC values in
print_page_foot and about_body to recreate the address instead of the
$T2H_ADDRESS.
You can have a look at program_string in texi2html.init which recreates
the address. $T2H_ADDRESS isn't used anymore.
* variables for latex2html are not in texi2html init file anymore but in
l2h.init.
* don't expand @ifinfo regions by default.
* option --output obsoletes -out_file and -subdir. It is the same than
--out_file when output is not split, and the same than --subdir when it is
split.
* If not split, the resulting file has a leading directory, and the directory
doesn't exist, it is created.
* If a directory creation fails the program aborts.
* Don't use T2H_CENTER_IMAGE, @center should be used.
* the init_out function redefines dynamically %NAVIGATION_TEXT, %BUTTONS_GOTO
and $BODYTEXT. You should redefine the hash values in that function. If you
want to reuse the values of the default values set by init_out,
you could do something like:
my $default_init_out = $init_out;
$init_out = \&makeinfo_like_init_out;
sub makeinfo_like_init_out()
{
my $encoding = &$default_init_out();
$NAVIGATION_TEXT{'Following'} = ' > ';
return $encoding;
}
* NEW FEATURES
------------
* Many changes towards output of stricter HTML.
* initialization files for html 3.2, xhtml, html 4.0 with inline style,
no header, utf8 characters outputted, makeinfo style, book style, conversion
to chm files and conversion to roff. Initialization files are searched
in ./, ~/.texi2html, $sysconfdir/texi2html and last $datadir/texi2html.
The file names are html32.init, xhtml.init, inlinestyle.init,
noheaders.init, utf8.init, makeinfo.init, book.init, chm.init and roff.init.
* The test suite is much more comprehensive and uses validate and tidy to
assess the correctness of the HTML.
* Handling of @html, @verbatim, @verb, @sp, @=, @copying, @insertcopying,
@cartouche, @titlefont, @dircategory, @direntry, @shorttitlepage, @\,
@afourlatex, @afourwide, @firstparagraphindent, @exampleindent, @novalidate,
@definfoenclose, @kbdinputstyle, @centerchap, @documentdescription,
@documentencoding, @contents, @shortcontents, @verbatiminclude.
* With --no-validate node cross-reference validation is suppressed (like
@novalidate).
* --expand may be specified more than once such that more than one additional
region could be expanded. --noexpand does the reverse. --iftex, --ifinfo...
and --no-ifinfo... can be used instead.
* add http-equiv="Content-Type" tag for the charset declaration.
* HTML formatting is isolated in customizable functions located in the
initialization files.
* menu comments are in a preformatted context.
* Any combination of caps for `top' leads to the top node.
* @ref{(perl)Top} leads to a ref to the info manual.
* References to external manual in @ref and menus are links to the html
pages (with the same convention than makeinfo --html use).
--html-xref-prefix is the base dir for external manual references.
* With --node-files do a file per node which can be used as a target for
cross references from other manuals (including manuals generated with
makeinfo --html).
* With --use-nodes nodes are sectionning commands whe they are not associated
with a structuring command.
* With --toc-links create links from headings to toc entries.
* distinct directions (next, prev...) for nodes and sections, more directions.
* split at chapter, section or for every node.
* new possibilities for buttons. If this is a ref to a scalar, the text
appears in navigation. If it is an array, the first element is a direction
used for the href, the second element is a scalar ref for the text.
* With --noseparated-footnotes the footnotes are in the same page than the
text.
* %NO_TEXI hash similar with %HREF but without texinfo commands,
%THISDOC{'title_no_texi'}
* "-U value" does the same than "@clear value".
* -P option prepends directory for include files before the document directory.
* -macro-expand generates a file with expanded macros and @include.
* pass $L2H_HTML_VERSION for the html version to latex2html.
* support for css. The --css-include option does the same than in makeinfo
(parse the file, and echo the @import part before the texi2html css rules,
the rules part after the texi2html css rules).
The texi2html css commands may be customized too.
* Text before the first @node or sectionning command is part of the first
section unless -ignore-preamble-text is set.
* if `-' is given to the -output option, output on STDOUT.
* Add images from the Singular project.
* All the strings appearing in the HTML are internationalized.
* centering and flushing is really handled.
* Format titlepage (even though the formatted text isn't used by default).
* Handle all the encodings perl knows about.
* BUG FIXES
---------
* @multitable size determination, out of bounds columns ignored.
* In @table and @itemize, @item is replaced by the @-command argument.
* nested @-commands are better handled.
* in index keys @-commands are replaced by the right symbols.
* files are omitted in hrefs when they points to the same file.
* $value{_title}... are expanded during HTML generation.
* @H{a} leads to a'' and not á
* cedilla are accepted in node names.
* Any characters are accepted in menu comments.
* frame target is the top file, and not the toc file.
* rewriting of the @macro code completely. This likely fixed some bugs but
this hasn't been verified by running the new, more complex test cases
against the old code.
* rewriting of the document structure resolution.
unnumbered regions are at the right level and splitted indices don't break
the document structure anymore.
index entries and footnotes are more precisely located.
* @-commands ignored are ignored with the line, the arg or following spaces
like makeinfo does.
* FOR DEVELOPERS
--------------
* Standardized on Autoconf 2.59 & Automake 1.8.2
* The --enable-maintainer-mode option is now required by configure to enable
what is considered the maintainer-specific portions of Makefiles. This
includes the portions which automatically rebuild the configure and build
files (configure, aclocal, Makefile.in, etc) when configure.in or other
dependencies are changed.
* The config is in the Texi2HTML::Config namespace. The latex2html related
functions are in the Texi2HTML::LaTeX2HTML namespace. The
internationalization functions are in the Texi2HTML::I18n namespace in
T2h_i18n.pm.
1.66 (June 8 2002)
* Many bug fixes.
1.65 (August 26 2001)
* Many bug fixes.
* The operation of the previously broken << (FastBack) and >> (FastForward)
buttons has changed slightly. FastBack now returns to the beginning of the
current chapter and FastForward now jumps to the beginning of the next
chapter.
* New handling of command line options:
- can be abbreviated to shortest unique prefix
-help now works and is up-to-date
* New customization variable:
$T2H_HREF_DIR_INSTEAD_FILE:
if set (e.g., to index.html) replace hrefs to this file
(i.e., to index.html) by ./
* New command-line option:
-toc_file FILE
for those who want the TOC to be in FILE
* New customization variables:
$T2H_SPLIT_INDEX [default: = 100]
index pages are split at next letter, if more than that many entries
$T2H_NODE_NAME_IN_MENU [default = 0]
for enforcing node names in meny entries
$T2H_AVOID_MENU_REDUNDANCY [default = 1]
to avoid display of duplicate meny entry information
$T2H_INDEX_CHAPTER [default = '']
if set, use chapter of this name for 'Index' Button in
navigation bars, else use first chapter whose name matches
"index" (case insensitive).
$T2H_TOP_HEADING [ default = '']
if non-empty, and no heading is in Top node, then use this as heading
for top node/section; otherwise, use @settitle, @shorttitle.
* index generation: observes typesetting in fixed-width font, @ftable,
@vtable implemented
* By default, $T2H_TOP_FILE is not set, and so $docu_name.html is used.
* Added T2H_print_chapter_header, T2H_print_chapter_footer for more
fine-grained control of T2H_SPLIT eq 'chapter', added option
-section_navigation, $T2H_SECTION_NAVIGATION to supress output of
navigation panels per section
* naming scheme and calling convention of customizable subs changed:
prefix T2H_, call &$T2H_, assignment $T2H_<name> = \&T2H_DEFAULT_<name>
* Initialization as suggested by Peter Moulder:
1. /usr/local/etc/texi2htmlrc (or whatever given by --sysconfdir to
configure)
2. $HOME/.texi2htmlrc
3. command-line options, including -init_file
where later options override previous ones.
* Automatic node pointer creation added
* @enddots, @exclamdown, @pounds, and relatives added.
* primitve foreign language support
* support of all "Umlaute"
* anchors, macros
* latex2html incooperation
* customizable page layout (texi2html.init)
* index as table with corresponding sections
In the vast majority of cases, nothing has changed (i.e. .tgz, .tar.gz,
and .tar.bz2).
EXTRACT_USING_PAX can be set as before.
For custom extractions, instead of using EXTRACT_BEFORE_ARGS,
EXTRACT_AFTER_ARGS and EXTRACT_CMD, simply set EXTRACT_CMD to be the
command needed to decompress and extract the lements from the archive.
${DOWNLOADED_DISTFILE} can be used to reference the distfile(s).
e.g. for compressed shars, where previously there was:
EXTRACT_CMD= ${GZCAT}
EXTRACT_BEFORE_ARGS=
EXTRACT_AFTER_ARGS= |sh
now use:
EXTRACT_CMD= ${GZCAT} ${DOWNLOADED_DISTFILE} | ${SH}
- New, optional Makefile variable HOMEPAGE, specifies a URL for
the home page of the software if it has one.
- The value of HOMEPAGE is used to add a link from the
README.html files.
- pkglint updated to know about it. The "correct" location for
HOMEPAGE in the Makefile is after MAINTAINER, in that same
section.