Current File : //proc/thread-self/root/kunden/usr/share/doc/texinfo/ChangeLog |
2019-09-23 Gavin Smith <gavinsmith0123@gmail.com>
6.7.
* configure.ac, NEWS, util/texi2dvi, util/texi2pdf,
doc/refcard/txirefcard.tex: version
2019-09-23 Gavin Smith <gavinsmith0123@gmail.com>
Avoid gcc warnings about strncat.
* install-info/install-info.c (split_entry, format_entry):
Replace some calls to strncat with strcat. This avoids a
"'strncat' specified bound 2 equals source length
[-Wstringop-overflow=]" warning with gcc 8.
2019-09-21 YOKOTA Hiroshi <yokota.hgml@gmail.com> (tiny change)
Japanese language support changes.
* doc/short-sample-ja.texi: Include version.texi.
* doc/Makefile.am: Install texinfo-ja.tex.
* doc/texinfo.tex: Support Lua 5.3+ number syntax
Lua 5.3 and newer supports floating point number.
But some old code doesn't know that Lua supports floating point numbers.
This patch avoids some unexpected floating point numbers in Lua
code.
* doc/txi-ja.tex: Update LuaTeX hack
"comment" command is now unified to "c" command.
Origin of this hack:
https://ja.osdn.net/projects/luatex-ja/ticket/36096
* doc/info-fr.texi: Change encoding to UTF-8.
* doc/info-fr.texi, doc/info-stnd.texi, doc/short-sample-ja.texi:
Do not wrap @top node in @ifnottex.
2019-09-19 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.6.92
* configure.ac: version
2019-09-17 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.6.91
* configure.ac: version
2019-09-08 Gavin Smith <gavinsmith0123@gmail.com>
Fix LuaTeX errors in anchors.
* doc/texinfo.tex (\pdfescstr) [LuaTeX]:
Change definition of PDFescstr so to only output tokens of
catcode 10 or 12 back into TeX. This is intended to prevent
errors when using @-commands inside anchors, reported by Didier
Verna.
2019-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Plaintext.pm (_convert) <menu_entry_node>:
Put a pending space in the output so it is not included in the
node name when INFO_SPECIAL_CHARS_QUOTE is set. Faulty menu in
output reported by Didier Verna.
2019-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\atdummies, \definedummies): Define \& and
\ampchar as dummies so they are written properly to the index
files. Report from Didier Verna.
2019-08-19 Eli Zaretskii <eliz@gnu.org>
* info/pcterm.c (kill): Don't use RETSIGTYPE, it is no longer
defined by config.h.
2019-08-18 Gavin Smith <gavinsmith0123@gmail.com>
Fix @value in index entry.
* doc/texinfo.tex (\dummyvalue): Use \string\value instead of
\noexpand\value. This means that a backslash is correctly used
as the escape character in the output, rather than an at sign.
2019-08-18 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo-tex-test.texi (Test of macros with @ in index):
Comment out, as it doesn't work with \ as the index file escape
character.
2019-08-18 gettextize <bug-gnu-gettext@gnu.org>
* gnulib/m4/gettext.m4: Upgrade to gettext-0.20.1.
* gnulib/m4/intlmacosx.m4: Upgrade to gettext-0.20.1.
* gnulib/m4/nls.m4: Upgrade to gettext-0.20.1.
* gnulib/m4/po.m4: Upgrade to gettext-0.20.1.
* gnulib/m4/progtest.m4: Upgrade to gettext-0.20.1.
* configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.20.
2019-08-18 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (default_contents): Use
<a rel="index"> for links to index nodes.
* NEWS: Mention change.
2019-08-18 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: Remove announcement of use of @ as escape character in
index files.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
Use "rel" attribute to indicate index nodes.
* tp/Texinfo/Convert/HTML.pm (_convert_menu_entry_type):
If the target node in a menu entry is an index node, then set
the "rel" attribute on the <a> element to "index". Remove
commented-out code.
* NEWS: Mention change.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
Mark index nodes.
* tp/Texinfo/ParserNonXS.pm (_parse_texi) <line commands>,
* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_line_command):
If @printindex is seen, record that the current node is an index
node by setting the "isindex" extra value.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Minimum): Put .texi first in the list and
remove footnote about preferring the "longer extensions".
Automake warns if .texi is not used. Report from Дилян Палаузов
<dilyan.palauzov@aegee.org>.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (GNU Sample Texts): Mention UPDATED-MONTH
variable in version.texi. Report from Дилян Палаузов
<dilyan.palauzov@aegee.org>.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (GNU Sample Texts): Link to "Texinfo" node of
Automake manual directly. Report from Дилян Палаузов
<dilyan.palauzov@aegee.org>.
2019-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Beginning and Ending a File): Minor grammar
fix. Report from TonyMc <afmcc@btinternet.com>.
2019-07-26 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Node Menu Illustration): Minor grammar fix.
Report from Дилян Палаузов <dilyan.palauzov@aegee.org>.
2019-07-11 Gavin Smith <gavinsmith0123@gmail.com>
* util/texi2html: Remove file. It has not worked for a long
time due to invoking texi2any incorrectly. Report from Adam
Spiers.
2019-06-14 Patrice Dumas <pertusus@free.fr>
Do not output HTML target when there is only one element in file
* tp/Texinfo/Convert/HTML.pm (count_elements_in_filename, command_href,
output): add 'elements_in_file_count' to converter object, set equal
to 'file_counters' to record and keep the information of the number
of elements in files.
Add count_elements_in_filename() to return this number.
Do not output an HTML target for hrefs to elements (elements are nodes
in most cases) when there is only one element in the href destination
file.
2019-06-01 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\printindex): Remove \message printing
informative statement. Report from Karl Berry.
2019-05-18 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex: Specify "@set txiindexescapeisbackslash" in
order to use backslashes in index files by default.
2019-05-18 Arnold D. Robbins <arnold@skeeve.com>
* doc/texinfo.tex (\definedummies): Define \subentry as a dummy.
(\indexwriteseealso, \indexwriteseeentry): Fix writing
'seeentry' and 'seealso' commands for when backslash is the
escape.
2019-05-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Do not use a staging directory to
remove CVS and .svn directories, as we don't use CVN or SVN.
2019-05-09 Gavin Smith <gavinsmith0123@gmail.com>
* util/htmlxref.cnf: Add eww. From Tsuyoshi Kitamoto
<tsuyoshi.kitamoto@gmail.com>.
2019-05-06 Gavin Smith <gavinsmith0123@gmail.com>
Fix finding translation files in out-of-source build.
* tp/Texinfo/ModulePath.pm.in ($builddir, $srcdir):
Save builddir instead of srcdir.
* tp/Texinfo/XSLoader.pm: Pass on $Texinfo::ModulePath::builddir
to XS modules.
* tp/Texinfo/XS/parsetexi/api.c (init),
* tp/texi2any.pl: When looking for the directory containing the
translation files, check in $Texinfo::ModulePath::builddir and
nowhere else.
2019-05-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/t/stdout.sh,
* tp/tests/t/stdout_split.sh: Remove tests.
2019-05-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/Makefile.am (copy-tests): Do not try to make target
in subdirectory.
2019-05-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/94htmlxref.t: Remove a ".texi" suffix given as the manual
argument to an xref command.
2019-05-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/30sectioning.t: Remove a ".texi" suffix given as the
manual argument to an xref command.
2019-05-05 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (_external_node_href): Do not strip
off an arbitrary extension from the name of an external manual -
only strip of ".info". Ludovico Courtès reported that
extensions were being used to distinguish translations of
manuals into other languages.
2019-04-28 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/Makefile.am
(XSParagraph_la_LDFLAGS, Parsetexi_la_LDFLAGS):
Put $(LTLIBINTL) and $(LTLIBICONV) in here. Remove $(TERMLIBS)
which was not used.
Attempt to fix building under Cygwin, which Hans-Bernhard Bröker
reported was broken.
2019-04-28 Gavin Smith <gavinsmith0123@gmail.com>
Set TEXI2DVI in Makefile.
* doc/Makefile.am: Set TEXI2DVI to use the texi2dvi in the
Texinfo sources rather than an installed one.
2019-04-27 Gavin Smith <gavinsmith0123@gmail.com>
Ignore spaces before @seeentry, @seealso and @sortas.
* tp/Texinfo/ParserNonXS.pm (_parse_texi): Split off an ignored
spaces element if one of these commands is seen.
* tp/Texinfo/XS/parsetexi/parser.c
(isolate_last_space_menu_entry_node, isolate_trailing_space):
Rename and add a parameter.
(process_remaining_on_line): After these commands are seen, call
isolate_trailing_space.
* tp/t/09indices.t (subentry_and_sortas): New test.
This allows these commands to occur at the end of index commands
without trailing spaces being present in the output.
2019-04-27 Gavin Smith <gavinsmith0123@gmail.com>
"See also" index entries for DocBook output.
* tp/Texinfo/Convert/DocBook.pm (_index_entry):
Output <see> or <seealso> elements if @seeentry or @seealso
directives were given for the index entry.
2019-04-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/ParserNonXS.pm (_enter_index_entry),
* tp/Texinfo/XS/parsetexi/indices.c (enter_index_entry),
* tp/Texinfo/XS/parsetexi/api.c (build_single_index_data):
Always create index entry object but do not add it to array of
entries for the index if there was a @seeentry or @seealso.
2019-04-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/parsetexi/indices.c (enter_index_entry): Skip if
'seeentry' or 'seealso' was recorded.
* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace):
Record values of 'seeentry' and 'seealso' the same way as for
'sortas'. Ignore spaces following these commands.
* tp/Texinfo/XS/parsetexi/command_data.txt: Add 'seeentry',
'seealso'. Remove comments referring to line numbers in Common.pm.
2019-04-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%in_index_commands, %brace_commands):
Add 'seeentry', 'seealso'. These are handled the same way as
'sortas'.
* tp/Texinfo/ParserNonXS.pm (%command_ignore_space_after):
Add 'seeentry', 'seealso'.
(_parse_texi) <close brace>: Record values of 'seeentry' and
'seealso' in extra hash the same way as for 'sortas'.
(_enter_index_entry): Skip the index entry if there is a
'seeentry' or 'seealso' directive.
* tp/Texinfo/Convert/Plaintext.pm (_convert): Do not warn about
unhandled commands if a 'seeentry' or 'seealso' directive is
present.
* tp/t/09indices.t (seeentry): Add test.
2019-04-21 Gavin Smith <gavinsmith0123@gmail.com>
Remove TOP_NODE_FILE.
* doc/texinfo.texi (HTML Customization Variables): Remove
TOP_NODE_FILE.
* tp/Texinfo/Common.pm (@variable_string_settables):
Remove TOP_NODE_FILE.
* tp/Texinfo/Convert/Converter.pm (_top_node_filename):
Do not look at TOP_NODE_FILE.
* tp/Texinfo/Convert/HTML.pm (%defaults): Use TOP_FILE instead
of TOP_NODE_FILE.
(_set_variables_texi2html): Do not override value of TOP_FILE to
an empty string.
* tp/init/chm.pm: Do not try to set TOP_NODE_FILE.
2019-04-03 Patrice Dumas <pertusus@free.fr>
Use EXTENSION instead of hardcoding html and add extension to TOP_NODE_FILE_TARGET
* tp/Texinfo/Convert/Converter.pm (_top_node_filename),
tp/Texinfo/Convert/HTML.pm (_set_root_commands_targets_node_files):
use EXTENSION instead of .html.
* tp/Texinfo/Convert/HTML.pm (%defaults, _external_node_href),
doc/texinfo.texi (TOP_NODE_FILE_TARGET): default is now index.html.
* tp/Texinfo/Convert/HTML.pm (_external_node_href): use
$external_file_extension instead of $extension to make clear that
it is not the same as EXTENSION.
* tp/t/init/t2h_singular.init (t2h_node_file_name): add that
function to replace .htm with .html for node files.
* tp/tests/tex_html/list-of-tests: update to match SHORTEXTN
removal.
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove some customization variables.
* tp/texi2any.pl (HTML Customization Variables):
Remove NODE_FILE_EXTENSION, SHORTEXTN.
(Other Customization Variables): Remove NODE_FILENAMES. Remove
mention of INPUT_ENCODING_NAME
* NEWS: Mention removal.
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove NODE_FILE_EXTENSION.
* tp/Texinfo/Convert/HTML.pm (%defaults):
(_set_root_commands_targets_node_files, _set_pages_files)
(_external_node_href, output),
* tp/Texinfo/Convert/Converter.pm (_set_pages_files, output)
(_top_node_filename)
Do not set or refer to NODE_FILE_EXTENSION. The extension for
html files will always be '.html'. Remove some commented-out
code.
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove SHORTEXTN.
* tp/Texinfo/Convert/HTML.pm (converter_initialize):
Do not check SHORTEXTN customization variable.
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove NODE_FILENAMES.
* tp/Texinfo/Convert/HTML.pm (output, %defaults, _set_pages_files),
* tp/Texinfo/Convert/Converter.pm (output, _top_node_filename)
(_set_pages_files): Do not set or refer to NODE_FILENAMES.
* tp/Texinfo/Convert/HTML.pm (_set_pages_files),
* tp/Texinfo/Convert/Converter.pm (_set_pages_files):
Remove code for naming output files with a number suffix (this
was the old texi2html behaviour).
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\defsl): Declare with OT1 encoding instead of
OT1TT to avoid pdftex warning about conflicting CMap's.
2019-04-12 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Preparing for TeX): Clearer wording
about where TeX finds input files. Report from Alan Mackenzie.
Update link to texinfo.tex. Do not discuss how to set
environment variables in csh.
2019-04-11 Arnold D. Robbins <arnold@skeeve.com>
* doc/texinfo.texi: Update chapter on Indexing to cover new
@seeentry, @seealso and @subentry commands. General smaller
revisions to that chapter.
2019-04-08 Gavin Smith <gavinsmith0123@gmail.com>
Make texi2dvi --tidy more reliable.
* util/texi2dvi (xref_files_save) [--tidy]: Check for auxiliary
files in the same directory as the input file, and remove them.
(cd_dir): Possibly make $in_dir absolute.
* NEWS: Mention texi2dvi changes.
2019-04-08 Gavin Smith <gavinsmith0123@gmail.com>
Do not change directory variables when changing directory.
* util/texi2dvi (cd_dir, cd_orig): Do not change variables
containing pathnames. Store a prefix to use with these
variables in $rel. If either the new directory or in_input is
absolute, change all the pathname variables to be absolute.
(xref_files_save, xref_files_changed): Prefix $work_bak with
$rel.
(run_tex, run_hevea): Prefix $in_input with $rel.
No functional changes intended. The code to add and remove the
prefix from all of the variables had tricky quoting. $rel is
only needed in a small number of places in functions called from
run_tex_suite.
2019-04-08 Gavin Smith <gavinsmith0123@gmail.com>
* util/texi2dvi (make_openout_test): Call make_tex_cmd before
cd_dir. This means that no calls to ensure_dir are called
between cd_dir and cd_orig.
2019-04-08 Gavin Smith <gavinsmith0123@gmail.com>
* util/texi2dvi (run_tex): Remove use of make_tex_cmd. I could
find nothing in make_tex_cmd that would change the result
between uses of run_tex.
(run_tex_suite): Move use of make_tex_cmd here.
2019-04-07 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (HTML Customization Variables): Remove text
"For HTML" from the description of each variable, as it is clear
that these variables are all for HTML.
2019-04-07 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (latex2html Customization Variables): New
node, split from 'HTML Customization Variables'.
2019-04-07 Gavin Smith <gavinsmith0123@gmail.com>
Remove @math and @tex as 'global commands.'
* tp/Texinfo/ParserNonXS.pm (%global_multiple_commands),
* tp/Texinfo/XS/parsetexi/api.c (build_global_info2),
* tp/Texinfo/XS/parsetexi/parser.c (register_global_command),
* tp/Texinfo/XS/parsetexi/parser.h (GLOBAL_INFO): Remove 'math'
and 'tex'.
Reverts change on 2019-04-01. Suggestion from Patrice.
2019-04-06 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\printindex): Give an error message with
\errmessage, instead of putting a message in the output
document, in order to give a hard failure in case an index file
has a backslash. Suggestion from Karl. Old index files will
still be upgraded by texi2dvi due to the previous change.
2019-04-06 Gavin Smith <gavinsmith0123@gmail.com>
* util/texi2dvi: If TeX exits with a bad status, do not quit
immediately: check if the xref files have changed. If they
have, the error might be corrected on subsequent runs. This is
intended to help with moving index files to use @ as the escape
character instead of \.
2019-04-03 Patrice Dumas <pertusus@free.fr>
use tree in HTML handlers to collect @-command to be processed
* tp/Texinfo/Convert/HTML.pm (run_stage_handlers): pass document
tree root.
* tp/Texinfo/Common.pm (collect_commands_in_tree): add.
* tp/init/tex4ht.pm (tex4ht_prepare), tp/init/latex2html.pm (l2h_process):
find the math and tex command using
Texinfo::Common::collect_commands_in_tree instead of relying
on having those commands collected by the parser.
2019-04-03 Gavin Smith <gavinsmith0123@gmail.com>
Optionally use backslash as index escape character.
* doc/texinfo.tex
(\doindwrite): If the user gave '@set txiindexescapeisbackslash',
then use \ as the escape character in the index file.
(\splitindexentry): Use \string to output \indexlbrace etc.
(\printindex): Under the same condition, read the sorted index
file with backslash as an escape character. Expand the advice
on how to print the indices properly.
2019-04-03 Gavin Smith <gavinsmith0123@gmail.com>
Do not output literal backslash character in index files.
* doc/texinfo.tex
(\splitindexentry): In the sort key, use '{@indexbackslash }'
for a backslash, instead of a backslash character.
(\initialglyphs): Recognize \indexbackslash.
(\doindwrite): Output a backslash character as '@backslashchar {}'.
(\definedummies): Define \backslashchar as a dummy.
* doc/texinfo-tex-test.texi (Test of certain characters in index):
Add more examples.
This is intended to make it more reliable for either backslash
or at sign to be used as the escape character in index files,
for use with old versions of texi2dvi. (This also allows
reading in old index files that used the \indexbackslash
sequence, although that is not very important.)
2019-04-03 Gavin Smith <gavinsmith0123@gmail.com>
* js/info.js (scan_toc): Use getElementById instead of
querySelector, as id's are unique. From Mathieu.
2019-04-02 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\urefallowbreak): Reduce stretch from 1fil to 4em.
This discourages breaking too early in the line.
2019-04-02 Gavin Smith <gavinsmith0123@gmail.com>
Support links between locally-installed manuals.
* js/info.js (external_manual_url_p): New function.
(fix_links): If a link to an external manual, open link in the
same browser tab.
(on_click): No special handling of links to external manuals.
This is intended to support links between locally-installed HTML
manuals. For this to work, links to other manuals must begin
with "../", so htmlxref.cnf would need to be overridden.
2019-04-02 Patrice Dumas <pertusus@free.fr>
Avoid side effects in HTML formatting fonctions that can be overriden
* tp/Texinfo/Convert/HTML.pm (_convert_heading_command,
_convert_menu_command, _convert): move code with side effects (setting
'seenmenus' and using 'seemenus' to add automatically a menu) out
of formatting functions that can be overriden by a user to main
converter function.
* tests/tex_html: regenerate formatting_singular tests that overrides
the menu formatting function.
2019-04-01 Patrice Dumas <pertusus@free.fr>
In _element_direction() output TOP_NODE_UP related infos even if element is not defined
* tp/Texinfo/HTML.pl (_element_direction): output
TOP_NODE_UP related infos even if element is not defined.
Explain in a comment when element is undef.
2019-04-01 Gavin Smith <gavinsmith0123@gmail.com>
Add @math and @tex as 'global commands.'
* tp/Texinfo/ParserNonXS.pm (%global_multiple_commands),
* tp/Texinfo/XS/parsetexi/api.c (build_global_info2),
* tp/Texinfo/XS/parsetexi/parser.c (register_global_command),
* tp/Texinfo/XS/parsetexi/parser.h (GLOBAL_INFO): Add 'math' and
'tex'.
* tp/init/latex2html.pm, tp/init/tex4ht.pm: Do not add values to
GLOBAL_COMMANDS.
Patrice Dumas reported that tex4ht.pm and latex2html.pm were
broken since the GLOBAL_COMMANDS array was removed as a
customization value for init files (on 2018-10-13).
2019-04-01 Gavin Smith <gavinsmith0123@gmail.com>
Make search-next and search-previous work for tree search.
* info/session.c (info_search_next, info_search_previous):
If there is an active tree search, carry on with it. This means
that the '}' and '{' keys can be used to go through the results
from a tree search (instead of 'M-}' and 'M-{').
(info_search_1): Disable any active tree search.
* NEWS: Mention change.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Remove XS po directory.
* tp/Texinfo/XS/po: Remove.
* tp/Texinfo/XS/configure.ac (AC_CONFIG_FILES): Remove
po/Makefile.in.
This keeps AM_GNU_GETTEXT in the XS subdirectory. Apparently
AM_PO_SUBDIRS is also still used, even there is no po
subdirectory.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Only use a single po directory.
* po/POTFILES.in: List parsetexi input files.
* po/Makevars (XGETTEXT_OPTIONS): Move options from
tp/Texinfo/XS/po/Makevars.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Find translation directory for parsetexi.
* tp/Texinfo/XS/parsetexi/api.c (find_locales_dir): New
function.
(init): Call it.
* NEWS: Mention change.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Pass on srcdir to XS modules.
* tp/Texinfo/ModulePath.pm.in ($srcdir): New variable.
(init) [uninstalled]: Set it.
* tp/Texinfo/XSLoader.pm: Pass on $Texinfo::ModulePath::srcdir
to XS modules.
* tp/Texinfo/XS/parsetexi/api.c (init): Save value of srcdir.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Output message if file ended inside Top node.
* doc/texinfo.tex (\omittopnode): Redefine @bye and put a
message in the output file to say the Top node was omitted.
This is most likely for short test files that consist only of a
Top node.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: Add some news items.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
Make texi2dvi --batch the default.
* util/texi2dvi: (batch): Remove variable.
(usage): Do not mention --batch.
(make_tex_command): Unconditionally run in batch mode.
(make_openout_test): Do not save and restore $batch.
(input_file_name_decode): Do not set $batch for AUC-Tex input.
(usage): Remove a comment about 'echo' compatibility.
2019-03-31 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Inserting Unicode): Include the IJ ligature
in the output. Do not say that a UTF-8 encoding must be
explicitly requested.
2019-03-30 Gavin Smith <gavinsmith0123@gmail.com>
Module search path changes (no functional changes intended).
* tp/texi2any.pl:
Only check if one variable has been substituted by the Makefile
to create this file. Do not set environment variables: only add
a directory to @INC so that Texinfo:ModulePath might be found.
Pass an 'updirs' argument into Texinfo::ModulePath.
* tp/Texinfo/ModulePath.pm.in (init): Change argument from
'uninstalled' to 'installed', so that the uninstalled case is
the default. Place code for using uninstalled files and
checking environment variables inside a conditional so it is
clearer when this code is used. Do not set any environment
variables: use them for input only.
2019-03-30 Gavin Smith <gavinsmith0123@gmail.com>
Introduce blank lines in test case.
* tp/t/converter_tests.t ($at_commands_in_refs_text): Introduce
blank lines in input Texinfo to avoid problems with varying line
break decisions due to different wcwidth implementations.
* tp/t/converters_tests.t (at_commands_in_refs): Do not skip.
(at_commands_in_refs_utf8): Do not skip this one either, since
we are now counting combining accents in the XS code as having
width.
2019-03-30 Gavin Smith <gavinsmith0123@gmail.com>
Skip tests instead of marking them as expected failures.
* tp/t/test_utils (test): If a test case is marked as 'todo',
always skip the test with 'skip' from Test::More, instead of
putting it inside a 'TODO' block. Remove some commented-out
code.
2019-03-30 Gavin Smith <gavinsmith0123@gmail.com>
Skip a test.
* tp/t/converters_tests.t (at_commands_in_refs): Skip plaintext
output until we can get consistent results on Solaris 10 and
Solaris 11.
2019-03-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl: Do not print errors from conversions.
2019-03-29 Gavin Smith <gavinsmith0123@gmail.com>
Use 'utf-8' instead of 'utf-8-strict' as name of encoding.
* tp/Texinfo/Common.pm (%default_parser_state_configuration)
(open_out, count_out): Use 'utf-8' instead of 'utf-8-strict' as
the name of the perl encoding.
* tp/Texinfo/ParserNonXS.pm (_open_in): Check for 'utf-8'
instead of 'utf-8-strict'. Add a missing closing parenthesis in
input filter declaration.
* tp/Texinfo/XS/parsetexi/parser.c (wipe_global_info):
Use 'utf-8' instead of 'utf-8-strict'.
On perl v5.8.4, there was an error 'Cannot find encoding
"utf-8-strict"'. (This version is used on the OpenCSW
buildfarm.)
2019-03-28 Arnold D. Robbins <arnold@skeeve.com>
* texinfo.tex: @see is now @seentry, per Gavin. Removed
spurious definition of \putwordSee.
2019-03-27 Patrice Dumas <pertusus@free.fr>
Set Top node Up per format and not in Structuring.
* tp/Texinfo/Common.pm, tp/Texinfo/Convert/Converter.pm: set
TOP_NODE_UP in converter defaults.
* tp/Texinfo/Structuring.pm, tp/Texinfo/Convert/HTML.pm,
tp/Texinfo/Convert/Info.pm, doc/texinfo.texi: do not set
the Top node Up in Structuring but in converters. Only use
TOP_NODE_UP and set an Up URL/name in HTML when TOP_NODE_UP_URL
is set and do not modify all the links of the TOP_NODE_UP,
only the Top node Up links.
2019-03-27 Patrice Dumas <pertusus@free.fr>
* tp/init/chm.pm, tp/init/latex2html.pm, tp/init/tex4ht.pm:
use __() from Texinfo::Common
2019-03-27 Gavin Smith <gavinsmith0123@gmail.com>
Fix test of XS modules.
* tp/Texinfo/XS/TestXS.pm: Declare init function as having a
single argument, and return a true value. Otherwise the test
for XS modules fails. Report from Patrice Dumas.
2019-03-27 Gavin Smith <gavinsmith0123@gmail.com>
Small changes.
* tp/Texinfo/XS/xspara.c (xspara_add_text): Add a comment.
* tp/tests/sectioning/Makefile.am: Do not try to distribute a
removed file.
* tp/Texinfo/XS/po/texinfo.pot: Untrack in git.
2019-03-27 Gavin Smith <gavinsmith0123@gmail.com>
Make test results consistent for older versions of perl.
* tp/Texinfo/Convert/Plaintext.pm (@U): Check argument to @U
before attempting to output the character. The check inside
eval doesn't work for old versions of perl. Trim down some
comments.
2019-03-25 Gavin Smith <gavinsmith0123@gmail.com>
Make test results consistent between XS and non-XS modules.
* tp/Texinfo/XS/xspara.c (xspara_add_text): Treat characters
with wcwidth 0 the same as those with wcwidth 1. This is wrong,
but gives consistency for the test results.
2019-03-24 Arnold D. Robbins <arnold@skeeve.com>
@see in index entries (experimental).
* doc/texinfo.tex
(\see, \putwordSee): Add default definitions for reading
in a sorted index file.
(\splitindexentry): Record value of any @see directive in
the index entry inside \pagenumbertext. Make @see expansion
empty when getting the sort key.
2019-03-24 Gavin Smith <gavinsmith0123@gmail.com>
* util/htmlxref.cnf: Update 'mit-scheme-imail'. From
Thérèse Godefroy.
2019-03-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/parsetexi/parser.c (wipe_global_info): Set
input_encoding_name as well as input_perl_encoding.
2019-03-24 Gavin Smith <gavinsmith0123@gmail.com>
Remove INPUT_PERL_ENCODING and INPUT_ENCODING_NAME as
customization variables.
* tp/Texinfo/Common.pm (%default_customization_values)
(@variable_string_settables): Remove INPUT_PERL_ENCODING and
INPUT_ENCODING_NAME.
* tp/Texinfo/Convert/Converter.pm (converter),
* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parse_texi_file),
Remove code propagating INPUT_PERL_ENCODING and
INPUT_ENCODING_NAME.
* tp/Texinfo/ParserNonXS.pm (%initialization_overrides):
Remove 'INPUT_ENCODING_NAME'.
* tp/Texinfo/ParserNonXS.pm (_open_in, _end_line, _parse_texi),
* tp/Texinfo/Convert/Converter.pm (converter),
* tp/Texinfo/Convert/IXIN.pm (output_ixin),
* tp/Texinfo/Structuring.pm (do_index_keys):
Do not use INPUT_PERL_ENCODING or INPUT_ENCODING_NAME: use the
'info' hash instead.
* tp/Texinfo/Common.pm (_convert_text_options),
* tp/Texinfo/Report.pm (gdt),
* tp/texi2any.pl:
Do not look use INPUT_ENCODING_NAME or INPUT_PERL_ENCODING.
* doc/texinfo.texi (Other Customization Variables):
Remove INPUT_PERL_ENCODING and INPUT_ENCODING_NAME. Remove
@ifnottex block around Top node.
This is an attempt at simplifying a complicated picture around
character encoding. These customization variables had little
use as the encoding is given as @documentencoding in the input.
2019-03-24 Gavin Smith <gavinsmith0123@gmail.com>
Use UTF-8 more consistently in test suite.
* tp/Texinfo/ParserNonXS.pm (parse_texi_file): Do not set
'input_encoding_name' and 'input_perl_encoding' here.
* tp/Texinfo/Common.pm (%default_parser_state_configuration):
Set 'input_encoding_name' and 'input_perl_encoding' here.
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
Make UTF-8 default input encoding for parsetexi.
* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parse_texi_file):
Propagate values of INPUT_PERL_ENCODING and INPUT_ENCODING_NAME.
* tp/Texinfo/XS/parsetexi/api.c (reset_parser_except_conf):
Call 'set_input_encoding' to use "utf-8" as the default.
* tp/Texinfo/XS/parsetexi/parser.c (wipe_global_info): Set
global_info.input_perl_encoding to "utf-8-strict".
This replicates changes made on 2019-02-23 and 2019-02-26.
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
@subentry in parsetexi.
* tp/Texinfo/XS/parsetexi/command_data.txt: Add subentry.
* tp/Texinfo/XS/parsetexi/handle_commands.c
(handle_line_commands) <@subentry>: Add section.
(handle_brace_commands) <@sortas>: Allow to occur inside @subentry.
* tp/Texinfo/XS/parsetexi/parser.c (check_valid_nesting): Allow
@subentry to occur inside most commands.
(process_remaining_on_line) <@-command>: Allow @subentry to
occur other than at the beginning of a line.
* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace)
<@sortas>: Record sort key on @subentry element.
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
Fix sort key for undefined @value.
* doc/texinfo.tex (\indexnofontsvalue): Place a % comment
character after the text for an undefined @value.
If this comment character isn't present and the @value is
followed by a space, the rest of the index sort key will be
discarded inside @eatspaces called from @splitindexentry. It
appears that @eatspaces does not cope with several spaces in a
row in its argument.
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
Add more tests of @value in index.
* doc/texinfo-tex-test.texi (Test of auxiliary files):
Add test of values in index entries containing underscores and
nested Texinfo commands. Add test of a @value that changes.
* doc/texinfo.tex (\expandablevalue): Remove obsolete comment.
@value in index entries is more reliable now that we use @ as
the escape character in index entries.
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
Remove apparently unused code.
* doc/texinfo.tex (\begindoublecolumns): Remove code that is
supposed to account for the output routine in
\begindoublecolumns being called twice in a row. It checks
whether \partialpage is void, but it appears that \partialpage
will always be void. \doublecolumnout, \balancecolumns and
\pagesofar all clear \partialpage with \unvbox, which I believe
covers all the cases. I was unable to get this code to run with
various tests. Remove references to long-lost test files.
(Removed code introduced on Jan 14 16:53:43 1999 according to
ChangeLog entry.)
2019-03-23 Gavin Smith <gavinsmith0123@gmail.com>
Ignore Top node a different way.
(\omittopnode): Change implementation so as to work when the
next node is hidden inside an included file.
(\nwnode, \up, \down): Remove these useless synonyms.
2019-03-22 Gavin Smith <gavinsmith0123@gmail.com>
Ignore Top node in texinfo.tex even without @ifnottex.
* doc/texinfo.tex (\omittopnode): New macro.
(\node): Call it.
2019-03-22 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\texinfoc): Remove.
(\scanmacro): Use \comment instead of \texinfoc. \comment has
the same meaning inside math mode as outside.
(\argremovecomment): Don't bother about @texinfoc.
2019-03-18 Gavin Smith <gavinsmith0123@gmail.com>
Pass on to XS modules whether uninstalled files should be used.
* tp/Texinfo/ModulePath.pm.in ($texinfo_uninstalled): New
variable.
(init): Set it if passed the right argument.
* tp/texi2any.pl: Pass on to Texinfo::ModulePath::init whether
uninstalled files should be used. Use the value of
$texinfo_uninstalled to decide where to look for locale files.
Remove some commented-out code and move a variable declaration
into a smaller block.
* tp/Texinfo/XSLoader.pm: Pass on
$Texinfo::ModulePath::texinfo_uninstalled to XS modules.
2019-03-17 Gavin Smith <gavinsmith0123@gmail.com>
Find translatable strings in parsetexi.
* tp/Texinfo/XS/po/Makevars (XGETTEXT_OPTIONS): Use line_error
and similar functions to mark translatable strings. (This
should maybe be done in the top-level po/Makevars instead.)
* tp/Texinfo/XS/parsetexi/errors.c (line_error_internal):
Pass message string to gettext function.
* tp/Texinfo/XS/po/POTFILES.in: List files containing
translatable strings.
2019-03-17 Gavin Smith <gavinsmith0123@gmail.com>
Add gettext to XS modules.
* tp/Texinfo/XS/parsetexi/Parsetexi.xs,
* tp/Texinfo/XS/parsetexi/api.c (init):
Add, to be called from Texinfo::XSLoader. Initialize gettext.
* tp/Texinfo/XS/parsetexi/api.c: Include libintl.h.
* tp/Texinfo/XS/configure.ac: Add AM_GNU_GETTEXT([external]).
* tp/Texinfo/XS/Makefile.am (AM_CPPFLAGS): Define DATADIR.
* tp/Texinfo/XS: Run 'gettextize'.
I do not know if '--po-dir=../../../po -f' should have been used
here - should we share the po directory with the top-level
project?
* tp/Texinfo/XS: Run 'aclocal -I gnulib/m4'.
* tp/Texinfo/XS/po/Makevars: Copy from Makevars.template. I'm
not sure if this will be used.
Changes made by gettextize:
* tp/Texinfo/XS/Makefile.am (SUBDIRS): Add po.
* tp/Texinfo/XS/configure.ac (AC_CONFIG_FILES): Add po/Makefile.in.
* tp/Texinfo/XS/gnulib/m4/gettext.m4: New file, from gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/iconv.m4: Upgrade to gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/lib-ld.m4: Upgrade to gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/lib-link.m4: Upgrade to gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/lib-prefix.m4: Upgrade to gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/nls.m4: New file, from gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/po.m4: New file, from gettext-0.19.8.
* tp/Texinfo/XS/gnulib/m4/progtest.m4: New file, from gettext-0.19.8.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
@seealso in index entries (experimental).
* doc/texinfo.tex
(\seealso, \putwordSeeAlso): Add default definitions for reading
in a sorted index file.
(\splitindexentry): Record value of any @seealso directive in
the index entry inside \pagenumbertext. Make @seealso expansion
empty when getting the sort key.
(\doindwrite): If \pagenumbertext set, use its contents instead
of \folio in the page number field.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo-tex-test.texi (Index subentries): New section.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Combine pdftex and XeTeX conditionals.
* doc/texinfo.tex (\ifpdforxetex): New conditional. Use it in
several places. This removes some code duplication.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Support @tertiary in sorted index file.
* doc/texinfo.tex (\indententry): New.
(\secondary, \tertiary): Use it.
(\entry): Fix case when there are no page numbers and no leaders
are being printed. Indent code that is outputting inside a box.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\printindex): Fix detection of backslash in
sorted index file.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Make @subentry the same level as index command in tree.
* tp/Texinfo/ParserNonXS.pm (_parse_texi) <@subentry>:
Call _end_line to avoid @subentry becoming a child of an index
command or another @subentry command.
This means that we convert back to Texinfo correctly without
misplacing spaces before the @subentry command.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused function.
* tp/Texinfo/Convert/Converter.pm (_register_command_arg): Remove.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Test of @subentry.
* tp/t/09indices.t (subentries): New test.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
@subentry in DocBook output.
* tp/Texinfo/Convert/DocBook.pm (_index_entry):
Possibly output index subentries inside <secondary> or
<tertiary> elements.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
@subentry in HTML output.
* tp/Texinfo/Convert/Converter.pm (convert_index_subentries): New.
* tp/Texinfo/Convert/HTML.pm (_convert_printindex_command): Use it.
* tp/Texinfo/Convert/Plaintext.pm (_printindex_formatted):
Inline code from convert_line and call convert_index_subentries.
2019-03-16 Gavin Smith <gavinsmith0123@gmail.com>
Start on supporting @subentry in parser and Info output.
* tp/Texinfo/Common.pm (%line_commands): Add 'subentry'.
* tp/Texinfo/ParserNonXS.pm
(%in_full_text_commands): Include 'subentry' so that @subentry
can appear inside an index command.
(%begin_line_commands): Allow @subentry to occur other than at
the beginning of a line.
(_is_index_element): New.
(_parse_texi): Use _is_index_element to check if we are in an
index command.
(_parse_texi) <line commands>: Handle @subentry. Check valid
nesting. Keep track of how many @subentry's have been used.
* tp/Texinfo/Convert/Plaintext.pm (_printindex_formatted): If
there are index subentries, add them to the end of the text of
the index entry, separated by commas.
This represents index subentries as a line command at the end of
the index entry. A second @subentry is nested inside the first.
2019-03-14 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/18itemize.t (table_in_itemize): New test.
2019-03-13 Gavin Smith <gavinsmith0123@gmail.com>
Examples of special characters in PDF destinations.
* doc/texinfo-tex-test.texi
(Test of characters in node names for PDF): New test.
2019-03-12 Gavin Smith <gavinsmith0123@gmail.com>
Only load lcircle10 if @cartouche is used.
* doc/texinfo.tex (\cartouchefontdefs): New macro. Put loading
lcircle10 font in here.
(\cartouche): Use it.
This is a similar approach to that used for @euro{}.
2019-03-11 Gavin Smith <gavinsmith0123@gmail.com>
Active backslash in \setupdatafile.
* doc/texinfo.tex (\setupdatafile): Make backslash active rather
than other. This means that a section title is printed
correctly with input like the following:
\input texinfo
@xrefautomaticsectiontitle on
@node One
@chapter One
One. @xref{Two}.
@node Two
@chapter Two \
@bye
Without this, the backslash typesets as quotation marks. Delete
an old comment stating that catcode other is needed for \csname
to work in \xrdef. Currently, \turnoffactive called in \xrdef
gives backslash the needed definition. In any case, backslashes
in node names appear to produce buggy PDF files in many cases.
* doc/texinfo.tex (\setupdatafile): Remove out-of-date comment
about why we do not support ^^ notation in auxiliary files.
2019-03-10 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo-tex-test.texi (Test of index widow elimination):
Comment out.
(No page number in index): New section.
2019-03-10 Gavin Smith <gavinsmith0123@gmail.com>
Remove code for preventing widowed index entries.
* doc/texinfo.tex
(\finishentry): Output the index entry directly to the current
vertical list instead of storing it in a box and then calling
\dotheinsertentrybox.
(\insertentrybox, \dotheinsertentrybox)
(\dotheinsertentryboxwithpenalty, \ourunvbox): Remove.
(\entry): No redefinition of \domark.
(\printindex): Do not redefine \dotheinsertentrybox. Read file
with \input instead of line-by-line with \read.
(\indexinputprocessing, \loopdo): Remove.
This code added an awful lot of complexity for not much benefit.
It is better to use the processes provided in TeX (\input and
\unvbox) where possible, instead of creating a separate version.
2019-03-10 Gavin Smith <gavinsmith0123@gmail.com>
Use <h5> for footnote labels.
* tp/Texinfo/Convert/HTML.pm (_convert_footnote_command): Use
<h5> instead of <h3> for the numbered footnote labels.
Jean-Christophe Helary reported that the <h3> level being used
was greater than that for the main footnotes heading, which was
only <h4>.
2019-03-10 Gavin Smith <gavinsmith0123@gmail.com>
Fix indentation of @table within @itemize.
* tp/Texinfo/Convert/Plaintext.pm (ensure_end_of_line):
Set 'counter' on top-most 'text_element_context' to zero. This
makes a @table be indented correctly within an @itemize and also
means an @item immediately following the @table is indented
properly. Report from Alan Mackenzie.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused backslash macros.
* doc/texinfo.tex (\rawbackslash): Remove. It appears to be
unnecessary as @t and @code work fine without it.
(\t, \tclose): Do not call \rawbackslash.
(\rawbackslashxx, \doublebackslash): Remove.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo-tex-test.texi (Index display): Use @ as the escape
character.
(@,c in macro argument): @, doesn't work any more in macro
argument due to changing the catcode of @.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\macroargctxt, \macrolineargctxt): Set
catcode of @ to other.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
Remove description of a bug fixed by the last change.
* doc/texinfo-tex-test.texi: Remove description of why a Texinfo
command inside an @example inside a macro didn't work. It works
now that @ is no longer an escape character when a macro body is
read. This means that \scantokens no longer sees any control
sequences in the macro body and does not insert extra spaces.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
No catcode changes in \scanmacro.
* doc/texinfo.tex (\scanmacro): Do not change catcode of @ or \.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
Fix marginindex flag.
(\doindwrite, \maybemarginindex): Move code to put index entry
in the margin to a new macro, and make it work again.
2019-03-09 Gavin Smith <gavinsmith0123@gmail.com>
Remove \indexdummies.
* doc/texinfo.tex (\indexdummies): Remove.
(\doindwrite): Call \atdummies instead of \indexdummies and move
the special definitions of \{ and \} here.
(\onepageout): Call \atdummies instead of \indexdummies.
2019-03-03 Gavin Smith <gavinsmith0123@gmail.com>
Use @ as escape character in index files.
* doc/texinfo.tex
(\indexdummies): Do not change \escapechar to backslash.
Call \otherbackslash in order to keep backslash as it is.
(\doindwrite, \indexnonalnumreappear):
Do not call \useindexbackslash or change the definition of \@.
(\indexbackslash, \useindexbackslash): Remove.
(\splitindexentry): Convert @@ and @atchar{} to {@indexatchar}.
texindex does not currently output given a sort key beginning
with @ as @initial{@@}, outputting @initial{@} instead.
(\onepageout): Remove comment about backslash in index files.
Call \turnoffactive instead of \normalturnoffactive in order to
output backslash as itself in index files.
(\printindex): Do not change catcode of \ or @.
(\printindex, \initialglyphs): Move setting \indexlbrace and
\indexrbrace to \initialglyphs, and add \indexatchar too. Do
not set \indexbackslash.
(\atdummies): Comment changed so as no longer to imply that the
aux and toc files are the only auxiliary files using @.
(\printindex): Cheeck first character of index file, and if it
is a backslash, skip reading the file.
* doc/texinfo-tex-test.texi (Test of certain characters in index):
New section.
* util/texi2dvi (index_file_p): Check for a @entry in index
files as well as \entry.
2019-03-03 Gavin Smith <gavinsmith0123@gmail.com>
Reset output routine correctly.
* doc/texinfo.tex (\defaultoutput): New token list, to contain
default output routine.
(\enddoublecolumns): Use it to correctly use \savetopmark in the
output routine after the output of an index is finished.
* doc/texinfo-tex-test.texi: Remove @bye line ending file by
mistake.
2019-03-03 Gavin Smith <gavinsmith0123@gmail.com>
No stretch around breakable characters in URL's.
* doc/texinfo.tex
(\urefprestretchamount, \urefpoststretchamount): Remove.
(\urefprestretch, \urefpoststretch): Remove. Replace calls with
\urefprebreak and \urefpostbreak.
(\urefallowbreak): New macro, to allow a ragged right break
within a URL.
* doc/texinfo-tex-test.texi (URL line breaking): New section.
This could lead to too much space being inserted, for example
around the two slashes in "http://". The ragged right break
prevents under-full or over-full boxes. (bug-texinfo, July 2018.)
2019-03-03 Gavin Smith <gavinsmith0123@gmail.com>
Tidy up index writing.
* doc/texinfo.tex (\dosubindwrite, \doindwrite): Rename.
(\doind, \dosubind): Make \dosubind call \doind, not vice versa.
Move definition of \dosubind nearer where it is used.
(\deffngeneral): Remove a comment.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
Implement index subentries in texinfo.tex.
* doc/texinfo.tex (\splitindexentry): New macro.
(\dosubindwrite): Call it to get the index text split up into
primary entry and possible secondary and further entries
separated by @subentry, as well as the index sort key. For one
subentry only, this is the same format as was output in the past
and recognized by the C implementation of texindex.
This feature is experimental.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
Change how marks are preserved.
* doc/texinfo.tex (\savemarks, \restoremarks): Remove. No
longer propagate marks by running an output routine. This could
lead to whatsits being thrown away in \restoremarks.
(\savedtopmark, \savetopmark, \iftopmarksaved): New. Save
\topmark only in \savedtopmark, a token list register.
(\gettopheadingmarks, \getcolormarks, \onepageout)
(\begindoublecolumns, \doublecolumnout):
Use \savetopmark instead.
The old behaviour made texinfo.tex less hackable, as simple
input like:
\input texinfo
@cindex dddddd
@cindex fff
@printindex cp
@bye
could lead to an empty *.cp file, which was confusing, even if
this kind of problem would never occur in real documents.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
Add test material for headings and footings.
* doc/texinfo-tex-test.texi (Headings and footings): New section.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
Rename \lastchapterdefs.
* doc/texinfo.tex:
(\lastchapterdefs, \currentchapterdefs)
(\lastsectiondefs, \currentsectiondefs)
(\lastcolordefs, \currentcolordefs)
(\lastsection, \currentsection):
Rename, as it is confusing to have both \lastchapterdefs and
\prevchapterdefs: both "last" and "previous" mean the same
thing.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
Fix @everyheadingmarks top.
* doc/texinfo.tex (\onepageout): Separate the code for setting
\headlinebox and \footlinebox. Otherwise, the definitions for
the footline would overwrite those for the headline, rendering
'@everyheadingmarks top' ineffective.
2019-03-02 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\chapmacro): Remove obsolete comment about
\setcontentsaftertitlepage.
2019-02-28 Gavin Smith <gavinsmith0123@gmail.com>
Remove obsolete and unused code.
* doc/texinfo.tex (\cindexsub): Remove. It has been in
texinfo.tex for a very long time but is not documented or
implemented in makeinfo.
2019-02-28 Gavin Smith <gavinsmith0123@gmail.com>
Better support for @sortas at end of index entry.
* doc/texinfo.tex (\dosubindwrite): Use \eatspaces to trim
leading and trailing spaces from the index entry. This means a
@sortas command can occur at the end of the index entry with a
space before it, and the space will be removed when writing to
the index file.
(\sortas): Expand to empty.
(\dosubind): Do not set \toks0: use a \def instead to store the
index entry text.
2019-02-26 Gavin Smith <gavinsmith0123@gmail.com>
Use UTF-8 input and output by default for Info.
* tp/Texinfo/ParserNonXS.pm (_open_in): New function.
(parse_texi_file),
(_end_line) <@include>: Use it.
(parse_texi_file): Set the input encoding on $self->{'info'}.
* tp/Texinfo/Convert/Unicode.pm (%extra_unicode_map): New hash,
to contain a subset of %unicode_map.
* tp/Texinfo/Convert/Plaintext.pm (converter_initialize):
If @documentencoding were not given and we are converting to
UTF-8, set 'no_extra_unicode' on the 'convert_text_options'
hash, and do not use any curly quotes for style commands.
* tp/Texinfo/Convert/Plaintext.pm (_process_text): Do not
convert `` into “, etc unless @documentencoding was in the
document.
* tp/Texinfo/Convert/Text.pm (brace_no_arg_command):
Check 'no_extra_unicode' in the options and if it is set,
exclude commands in %extra_unicode_map being output as non-ASCII
UTF-8 sequences.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (@titlepage): Remove documentation of
@setcontentsaftertitlepage.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused code.
* tp/Texinfo/Parser.pm (%tree_informations, duplicate_parser),
* tp/Texinfo/XS/parsetexi/Parsetexi.pm (duplicate_parser):
Remove unused.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
Make UTF-8 default input encoding.
* doc/texinfo.tex: Remove line setting catcodes of non-ASCII
characters to "other". Change a comment.
* tp/t/test_sort.t: Update results.
* tp/Texinfo/Common.pm (%default_customization_values)
<INPUT_ENCODING_NAME, INPUT_PERL_ENCODING>: Use UTF-8 by default.
* NEWS: Mention change.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
Avoid unnecessary change in test results.
* tp/Texinfo/Convert/HTML.pm: Add 'return undef' to end of
function. This stops an empty string being returned from the
sub for some reason. This led to a change in the results
for 'file_html' tests.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
Load more modules on demand.
* tp/Texinfo/Convert/Converter.pm: Use fewer "use" declarations.
(converter, sort_element_count): Use "require" statements
to load modules on demand. This cuts down the run time of
'texi2any --help' as it stops Texinfo::Parser being loaded
(about 0.6 sec -> 0.4 sec on my computer).
This change depends on the previous change for module
namespaces; otherwise, the Texinfo::Parser::parser subroutine
can't be called in texi2any.pl, as the wrong hash is being
referenced for %Texinfo::Parser::. This could be worked around
by putting the call within an 'eval' statement to delay the
choice of which namespace hash to use; however, this would be
too distracting if done too much.
2019-02-23 Gavin Smith <gavinsmith0123@gmail.com>
Avoid package typeglob assignment.
* tp/Texinfo/ParserNonXS.pm: Use "package Texinfo::Parser"
instead of "package Texinfo::ParserNonXS" and then aliasing the
package namespace hash with a typeglob assignment. Move
"use Texinfo::Report" earlier in file and remove lengthy
comment.
* tp/Texinfo/XS/parsetexi/Parsetexi.xs: Use "Texinfo::Parser"
instead of "Parsetexi" in MODULE and PACAKGE declarations.
Package typeglob assignment is not recommended in the Perl
documentation anywhere, and has confusing effects. It appears
that when a Perl source file is read, the symbols are
interpreted in terms of a particular package namespace hash.
This hash does not change if the package hash is later
reassigned, which can lead to undefined symbols, especially with
complicated situations when files "use" one another.
2019-02-19 Gavin Smith <gavinsmith0123@gmail.com>
Prefer @url in the documentation.
* doc/texinfo.texi (@url, @url Examples): Use @url consistently
and say that @uref is a synonym. Akim Demaille reported that a
confusing mixture of the two was being used.
2019-02-19 Gavin Smith <gavinsmith0123@gmail.com>
@documentencoding is not file-specific.
* tp/Texinfo/XS/parsetexi/input.c (input_encoding): New
variable.
(set_input_encoding, next_text):
Use that encoding instead of an encoding on the input stack.
(INPUT): Remove field 'encoding'.
(input_push, input_push_file): Update.
Eli Zaretskii reported that a @documentencoding command in an
@include'd file would not take effect outside of that file,
which was wrong for the Emacs manuals.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove noderename.cnf feature.
* tp/Texinfo/Common.pm (@variable_string_settables):
Remove 'RENAMED_NODES_DIRECTIONS', 'RENAMED_NODES_FILE'.
(collect_renamed_nodes, parse_renamed_nodes_file): Remove.
* tp/Texinfo/Convert/HTML.pm
(converter_initialize): Do not check Texinfo::Config::renamed_nodes.
(_file_header_informations): Change a comment.
(output): Do not call Texinfo::Common::collect_renamed_nodes.
Remove code dealing with renamed nodes.
(_parse_node_and_warn_external): Remove unused. This eliminates
the dependecy of Texinfo::Convert::HTML on Texinfo::Parser.
* tp/tests/Makefile.am: Remove code dealing with copying
renamednodes.cnf-ref.
* tp/tests/sectioning/renamednodes.cnf-ref: Remove.
* tp/tests/sectioning (equivalent_nodes_test_renamed_nodes): Remove.
* tp/tests/README: Update instructions for git.
* tp/t/92formatting.t (unknown_nodes_renamed): Remove.
* doc/texinfo.texi (Other Customization Variables)
<RENAMED_NODES_FILE, RENAMED_NODES_REDIRECTIONS>: Remove.
RENAMED_NODES_REDIRECTIONS was not actually used anywhere.
(HTML Xref Link Preservation): Remove node.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/test_utils.pl: Check if errors were output properly.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove some function checks.
* configure.ac: Remove AC_FUNC_STRCOLL.
(AC_CHECK_FUNCS): Do not check for bzero, getcwd, memset,
setvbuf or strchr.
* system.h: Never declare strcoll.
* info/dribble.c (open_dribble_file): Do not check HAVE_SETVBUF
or SETVBUF_REVERSED.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Do not check for some header files.
* configure.ac (AC_CHECK_HEADERS): Do not check for limits.h,
string.h, strings.h, sys/file.h, sys/stream.h or sys/ttold.h.
* system.h: Unconditionally include limits.h. Never include
sys/file.h.
* info/termdep.h: Do not try to include sys/ttold.h.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Do not check for fcntl.h or sys/fcntl.h.
* configure.ac (AC_CHECK_HEADERS): Do not check for fcntl.h or
sys/fcntl.h.
* system.h: Include fcntl.h unconditionally.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove BSD signals support.
* configure.ac: Do not check for sigblock or sigsetmask.
* info/signals.c: Do not check HAVE_SIGSETMASK.
(sigprocmask): Remove this replacement function.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove AC_REPLACE_FUNCS.
* configure.ac: Remove AC_REPLACE_FUNCS. This has likely been
unused since gnulib was integrated into the sources.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove 'termio' support.
* configure.ac: Do not check for termio.h or sys/ptem.h.
* info/termdep.h, info/terminal.c:
Remove all code for when termios.h is not present.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove obsolete configure checks.
* configure.ac: Remove AC_HEADER_STAT, AC_HEADER_STDC,
AC_TYPE_SIGNAL, AC_C_CONST, AC_STRUCT_TM, AC_FUNC_VPRINTF.
Remove commented-out use of AC_FUNC_SETVBUF_REVERSED.
* info/signals.c, info/terminal.c: Remove use of RETSIGTYPE for
signal handlers.
Some of these are noted in the autoconf or gnulib manuals as
being unnecessary.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Remove customization value OUT.
* tp/Texinfo/Common.pm (@command_line_settables),
* doc/texinfo.texi (Customization Variables and Options):
Remove 'OUT'.
* tp/texi2any.pl: Do not use 'OUT' as a customization variable
and use 'OUTFILE' instead to check if the name of the output
file has been given.
2019-02-17 Gavin Smith <gavinsmith0123@gmail.com>
Re-use open file descriptor.
* info/t/Init-test.inc: Change a comment.
* info/t: All tests: Use a file descriptor that is already open
to pass bytes to pseudotty instead of opening the FIFO again
every time.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
* configure.ac: Bump version to 6.6dev.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
6.6.
* configure.ac, NEWS, util/texi2dvi, util/texi2pdf,
doc/refcard/txirefcard.tex.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Update for git, no keyword expansion.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
Tweak index formatting.
* doc/texinfo.tex (\balancecolumns): Increase length that the
final column of an index can be without being split. Move some
code and add a comment.
(\doublecolumnout, \begindoublecolumns): Move a comment to where
it was supposed to be. Add another comment.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo-tex-test.texi (Multi-line macro argument):
Add note on how a bug might be fixed.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
Do not end a sentence after an inserted '.'.
* tp/Texinfo/Convert/Plaintext.pm (_convert) <ref commands>:
Do not end a sentence after an inserted '.' after @xref. @xref
can easily constitute only the first part of a sentence.
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
Documentation of @pxref.
* doc/texinfo.texi (@pxref): Do not encourage using @pxref
outside of parentheses. "see @ref" is often preferable to
"@pxref".
2019-02-16 Gavin Smith <gavinsmith0123@gmail.com>
Minor changes to info-stnd.texi.
* doc/info-stnd.texi
(Invoking Info): Use a consistent name for menu arguments.
(Moving the Cursor): Change 'imprinted on' to 'printed on'.
Move a footnote reference to the end of a sentence.
(Node Commands): Correct key used in description.
(The Echo Area) <printing characters>: Do not mention this
command, as self-inserting characters are inserted with a
different part of the code. Do not mention about checking
whether a Meta key is bound, as this only applies if ISO-Latin
is 'Off'.
<echo-area-complete>: SPC is not bound to this command any more.
<echo-area-possible-completions>: Merge text with documentation
of 'echo-area-complete'. '?' does not run this command any
more.
(Colors and Styles): Privilege American spelling of "color".
Fix typo ("a cross-references").
(Variables): Privilege American spelling of "behavior".
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.5.93.
* configure.ac: version
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
Be less optimistic about HTML 3.2 compatibility.
* doc/texinfo.texi (HTML Translation): Mention that <span> is
used. Mention that 'id' atttibute is used. Say that html32.pm
hasn't been tested recently.
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
Fix make update-po in out-of-source build.
* Makefile.am (update-po): Remove reference to $srcdir.
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
Use a single include directory in test suite.
* tp/t/include_reference: Move all files to tp/t/include.
* tp/Makefile.am,
* tp/t/test_utils.pl (test),
* tp/t/nodenormalization.t: Do not refer to tp/t/include_reference.
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
Use section names in generated HTML menus.
* tp/Texinfo/Structuring.pm (new_node_menu_entry): Add argument
saying whether to use the section name in the menu entry.
(menu_of_node, _menu_of_node): Rename.
(node_menu_of_node, section_menu_of_node): Two new functions
wrapping _menu_of_node.
* tp/Texinfo/Convert/HTML.pm (_convert_heading_command):
Call section_menu_of_node instead of menu_of_node.
* tp/Texinfo/Convert/Plaintext.pm (_convert): Call
node_menu_of_node instead of menu_of_node. This is the existing
behaviour.
* NEWS: Mention change.
* tp/Texinfo/Transformations.pm (complete_node_menu): Update.
2019-02-11 Gavin Smith <gavinsmith0123@gmail.com>
Advice on node names.
* doc/texinfo.texi (Node Names): Mention that HTML filenames are
based on the node names. Do not link to 'HTML Xref Link
Preservation' node.
(@anchor): Remove link to the same node.
2019-02-10 Robert Pluim <rpluim@gmail.com>
* doc/texinfo.texi (Inserting):
Document 'M-x texinfo-insert-dwim-@ref'.
2019-02-10 Gavin Smith <gavinsmith0123@gmail.com>
Deprecate MANUAL-noderename.cnf.
* tp/Texinfo/Common.pm (collect_renamed_nodes): Give a warning
if a renamed nodes file is being used.
* doc/texinfo.texi (HTML Xref Link Preservation),
* NEWS: Document deprecation.
2019-02-10 Gavin Smith <gavinsmith0123@gmail.com>
No special CSS for @small* commands.
* tp/Texinfo/Convert/HTML.pm
(%css_map): Remove css for @smallexample etc.
(%small_alias): New hash.
(_convert): Use %small_alias to treat e.g. @smallexample exactly
the same as @example, so that no extra CSS is needed.
(%default_commands_conversion): Do not add entries for some
@small* commands.
(_convert_quotation_command): Do not check if the passed command
name is different to 'quotation', as it will not be.
* doc/texinfo.texi (@small...): Do not say that @small...
commands produce a smaller font in HTML output.
* NEWS: Mention change.
2019-02-10 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi: Wrap introductory comment in @ifinfo block.
2019-02-10 Gavin Smith <gavinsmith0123@gmail.com>
No colon in HTML menus.
* tp/Texinfo/Convert/HTML.pm (%defaults) <MENU_ENTRY_COLON>:
Set to ''.
* doc/texinfo.texi (Other Customization Variables): Update.
* NEWS: Mention change.
2019-02-04 Gavin Smith <gavinsmith0123@gmail.com>
Do not install useless static libraries.
* tp/Texinfo/XS/Makefile.am (LT_INIT): Use option 'disable-static'.
* NEWS: Mention change.
Report from Eli Zaretskii.
2019-02-04 Gavin Smith <gavinsmith0123@gmail.com>
Remove parsetexi typemap.
* tp/Texinfo/XS/parsetexi/Parsetexi.xs,
* tp/Texinfo/XS/parsetexi/api.c (get_root): Remove, as it is
unused and relies on casting a pointer to an integer.
* tp/Texinfo/XS/parsetexi/typemap: Remove.
* tp/Texinfo/XS/Makefile.am (XSUBPPARGS): Remove reference to
typemap file.
(EXTRA_DIST): Distribute Parsetexi.xs.
Eli Zaretskii reported a warning "cast from pointer to integer
of different size" when compiling on MS-Windows.
2019-02-04 Gavin Smith <gavinsmith0123@gmail.com>
Fixes for MS-Windows.
* tp/Texinfo/XS/misc.c (xs_process_text): Add dTHX at start so
that realloc will work.
* tp/Texinfo/XS/parsetexi/command_data.awk:
Output "#undef CM_NONE" in command_ids.h.
* tp/Texinfo/XS/parsetexi/input.c (convert_to_utf8): Use
ICONV_CONST in a variable declaration.
All reported by Eli Zaretskii.
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.5.92.
* configure.ac: version
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
Improve txicmdcheck.
* doc/refcard/txicmdcheck: Special case for @& and @ampchar{}.
* doc/refcard/txirefcard.tex: Add commands we deliberately
ignored at the end of the file.
* doc/texinfo.texi (Command List): Add @&, @ampchar{}.
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
Automatically build pod2texi.1 man page.
* man/Makefile.am (pod2texi.1): Add rule.
* configure.ac: Check for pod2man with AM_MISSING_PROG.
* README-hacking: Remove instruction.
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Update.
2019-02-01 Werner Lemberg <wl@gnu.org>
* doc/texinfo.tex (\setupverbatim): Fix a comment.
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
Fix too wide space in @verbatiminclude.
* doc/texinfo.tex (\verbatiminclude): Confine the effect of
\indexnofonts to a group where the filename is read, as is done
in \include. Otherwise, there is an inappropriate definition of
'\ ' while the file is being input. Werner Lemberg reported
that a wider space would be output after a colon in a file input
with @verbatiminclude.
2019-02-01 Gavin Smith <gavinsmith0123@gmail.com>
Use 'id' instead of 'name'.
* js/info.js (add_header, scan_toc): Use 'id' instead of 'name'
attribute.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Inline test script.
* configure.ac: Load test module with "perl -e" instead of
running a separate script.
* tp/Texinfo/XS/fail.pl: Remove this short file.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Unify AM_CFLAGS for XS modules.
* tp/Texinfo/XS/Makefile.am (AM_CFLAGS): Put flags for C
compiler in here, rather than in target-specific variables.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Fix loading of XS module.
* tp/Texinfo/Conver/Paragraph.pm: Use 0 as the XS interface
version number instead of 1.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Reorganize parsetexi header files.
* tp/Texinfo/XS/parsetexi/tree_types.h,
* tp/Texinfo/XS/parsetexi/parser.h (GLOBAL_INFO): Move to
parser.h.
* tp/Texinfo/XS/parsetexi/extra.c (add_extra_index_entry):
Comment out function with preprocessor.
* tp/Texinfo/XS/parsetexi/indices.c (enter_index_entry): Don't
call add_extra_index_entry.
* tp/Texinfo/XS/parsetexi/tree_types.h,
* tp/Texinfo/XS/parsetexi/indices.c (INDEX_ENTRY_REF):
Move to indices.c.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Avoid a warning.
* tp/Texinfo/XS/configure.ac: Get perl conf value 'optimize'.
* tp/Texinfo/XS/Makefile.am (AM_CFLAGS): Add it. This can avoid
a preprocessor warning about -DFORTIFY_SOURCE.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Remove ununused output variable.
* tp/Texinfo/XS/configure.ac (XSPARAGRAPH_INTERFACE_VERSION):
Do not set with AC_SUBST. This was intended to be used when
building XSParagraph as a stand-alone module.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Use an m4 loop.
* tp/Texinfo/XS/configure.ac (lookup_perl_conf_values): New
macro, to use m4_foreach (from autoconf m4sugar) to look up
several values with lookup_perl_conf.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Do not require xsubpp.
* tp/Texinfo/XS/configure.ac: Check for xsubpp with
AM_MISSING_PROG instead of AC_PATH_PROG, as xsubpp is not
required unless a *.xs file is modified.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused type.
* tp/Texinfo/XS/parsetexi/tree_types.h (DEF_ARGS_EXTRA): Remove.
(Suggestion from Hans-Bernhard Bröker.)
(INDEX_ENTRY_REF): Update comment.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
Centralise parser configuration values.
* tp/texi2any.pl: Refer to %default_customization_values in
Texinfo::Common instead of Texinfo::Parser. Continues change
made on 2019-01-29.
2019-01-31 Gavin Smith <gavinsmith0123@gmail.com>
perldoc-all Makefile change
* contrib/perldoc-all/GNUmakefile: Change distclean target to
dist-hook to avoid deleting inappropriate files with distclean.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Continue search after a node wasn't found.
* info/session.c (info_search_internal): If a node couldn't be
found, go onto the next node.
This could happen if there was a comma in a node name.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove duplicate sub definition.
* Pod-Simple-Texinfo/pod2texi.pl (__): Remove definition as
there is already one exported by Texinfo::Common (for translated
strings).
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Try to fix contrib/perldoc-all.
* contrib/perldoc-all/gendocs-sh: Add, from gendocs.sh in gnulib
project.
* contrib/perldoc-all/Makefile.am: Access it instead of relying
on gendocs.sh being in path. Do not remove *.?? (intending to
remove auxiliary index files) as this may delete the *.tar.gz
file the user has just downloaded.
Keith Thompson reported problems with building Perl manuals with
this system.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Centralise parser configuration values.
* tp/Texinfo/ParserNonXS.pm,
* tp/Texinfo/Common.pm (%default_customization_values):
Move to Common.pm.
* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Use this hash instead of
having a separate copy for this module.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove 'parent_type' field.
* tp/Texinfo/XS/parsetexi/tree_types.h (ELEMENT):
Remove field 'parent_type'.
(enum route_element_type): Remove.
* tp/Texinfo/XS/parsetexi/end_line.c (end_line_starting_block)
(end_line),
* tp/Texinfo/XS/parsetexi/indices.c (wipe_index),
* tp/Texinfo/XS/parsetexi/api.c (build_perl_array)
(build_single_index_data): Check whether 'parent' is null to see
if an element is in tree. This should work for all elements
except the root of the tree.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove reference line numbers in parsetexi.
* tp/Texinfo/XS/parsetexi: Remove most of the comments with what
the line numbers were of the corresponding Perl code at the time
that parsetexi was first started. Leave some where more work
might be needed.
* tp/Texinfo/XS/parsetexi/main.c: Remove.
* tp/Texinfo/XS/parsetexi/Common.pm: Remove.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove old files from parsetexi subdirectory.
* tp/Texinfo/XS/parsetexi/complete_tree.pl,
* tp/Texinfo/XS/parsetexi/debug_perl.txt,
* tp/Texinfo/XS/parsetexi/makeinfo-debug.txt: Remove.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove relics of ExtUtils::MakeMaker build system.
* tp/Texinfo/XS/Makefile.PL,
* tp/Texinfo/XS/MANIFEST,
* tp/Texinfo/XS/prepare_standalone_perl_module.sh: Remove.
* tp/Texinfo/XS/Makefile.am (perl_specific_files): Remove.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove relics of ExtUtils::MakeMaker build system.
* tp/Makefile.PL, tp/MANIFEST: Remove.
* tp/maintain/MANIFEST_generated_files: Remove.
* tp/maintain/MANIFEST_perl_po: Remove.
* tp/maintain/prepare_perl_module_files.sh,
* tp/maintain/prepare_perl_standalone_module_archive.sh,
* tp/maintain/clean_perl_module_files.sh: Remove.
* tp/Makefile.am (MANIFEST, perl_specific_files): Remove.
This was for creating "standalone modules", but it is
out-of-date, doesn't work and has never been used.
2019-01-29 Gavin Smith <gavinsmith0123@gmail.com>
Remove test from 'many_input_files' subdirectory.
* tp/tests/many_input_files/indices.sh: Remove.
* tp/tests/indices/list_of_tests (index_table): New test to
partially replace indices.sh. Only one input file is tested.
This test tested that texi2any would work with several manuals
to process given to it on the command line. I suspect this
feature is rarely used. The extra complexity this gave to the
test suite is not worth it IMHO.
Now the many_input_files subdirectory only contains the
latex2html and tex4ht tests, which are not run by default.
I checks that the output for the index_table.texi file was the
same by checking the same files were output and that the
contents were the same, with a command like
for f in * ; do echo DIFF $f ;
diff $f ../../../many_input_files/indices_res/$f ; done
2019-01-28 Gavin Smith <gavinsmith0123@gmail.com>
Use 'id' instead of 'name' attribute.
* tp/Texinfo/Convert/HTML.pm (_convert_footnote_command),
(_default_contents):
Use 'id' instead of 'name' attribute on <a> tag.
2019-01-27 Gavin Smith <gavinsmith0123@gmail.com>
Comments in parsetexi header files.
* tp/Texinfo/XS/parsetexi: Add a brief comment at the start of
each header file.
* tp/Texinfo/XS/parsetexi/tree_types.h,
* tp/Texinfo/XS/parsetexi/conf.h (CONF): Move to conf.h.
* tp/Texinfo/XS/parsetexi/errors.c: Remove #define _GNU_SOURCE.
2019-01-27 Gavin Smith <gavinsmith0123@gmail.com>
Header file changes and small fixes for parsetexi.
* tp/Texinfo/XS/parsetexi/tree_types.h,
* tp/Texinfo/XS/parsetexi/macro.h (INFO_ENCLOSE, MACRO):
Move to text.h.
* tp/Texinfo/XS/parsetexi/close.c (close_command_cleanup): Fix
incorrect comparison of enum values.
* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace):
Remove an unused variable.
* tp/Texinfo/XS/parsetexi/tree_types.h,
* tp/Texinfo/XS/parsetexi/errors.h (enum error_type):
Move to text.h.
2019-01-26 Bruno Haible <bruno@clisp.org>
Fix test failures on HP-UX.
Reported by Richard Lloyd in
<https://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
* install-info/tests/ii-0041-test: Simulate zdiff.
* install-info/tests/ii-0050-test: Likewise.
2019-01-25 Gavin Smith <gavinsmith0123@gmail.com>
Make "texi2dvi --command" work without @setfilename in file.
* util/texi2dvi (insert_commands, usage): Insert commands given
with --command even if no @setfilename line is present.
* doc/texinfo.texi (Format with texi2dvi) <--command>: Remove
mention of @setfilename.
2019-01-25 Gavin Smith <gavinsmith0123@gmail.com>
Attempt to make test suite parallel safe.
* tp/maintain/regenerate_cmd_tests.sh: Use 'mkdir -p' instead
of testing whether directory exists.
* tp/tests/run_parser_all.sh: Use 'mkdir -p' instead of testing
if a directory exists. Do not delete a temporary directory at
the end. Redirect stdin with "exec" instead of just redirecting
a "while" loop in order to avoid problem with redirecting output
under Solaris 10 shell.
Andreas Schwab reported that the test suite was not parallel
safe.
2019-01-24 Gavin Smith <gavinsmith0123@gmail.com>
Pass on -D flags to texi2dvi.
* tp/texi2any.pl: If calling texi2dvi, only pass along the
values of flags before the file is parsed: not the values after
the file is parsed. These values might be wrong for the start
of the file.
Stefan Husmann found that the Tramp manual wouldn't build with
pretest texinfo-6.5.91
2019-01-20 Gavin Smith <gavinsmith0123@gmail.com>
Check for gawk version for rebuilding texindex.awk.
* configure.ac: Use AM_MISSING_PROG to look for gawk.
* texindex/Makefile.am (texindex.awk, ti.twjr): Use $(GAWK)
instead of $(AWK).
* texindex/jrtangle: Add a check for the version number of gawk
and, if too old, exit with status 63 in order to let the
"missing" script know it is too old.
Bruno Haible reported that the rule to regenerate texindex.awk
was being run on OpenBSD 6.3 where there was no gawk.
2019-01-16 Gavin Smith <gavinsmith0123@gmail.com>
Documentation of colons in index entries.
* doc/texinfo.texi (Index Commands):
Water down the proscription of colons in an index entry, as this
works with some Info readers.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Split code into separate file.
* tp/Texinfo/XS/parsetexi/conf.c: New file, along with header.
This helps us to avoid declaring the 'conf' variable in two
different header files.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Rearrange header files.
* tp/Texinfo/XS/parsetexi/debug.c: Include header file
containing declarations of functions in this file.
* tp/Texinfo/XS/parsetexi/end_line.c,
* tp/Texinfo/XS/parsetexi/separator.c: Remove an unnecessary #include.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused API functions.
* tp/Texinfo/XS/parsetexi/Parsetexi.xs (element_type_name)
(num_contents_children, num_args_children, contents_child_by_index):
Remove ununused XSUB's.
* tp/Texinfo/XS/parsetexi/api.c (num_contents_children)
(num_args_children): Remove unused.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Remove a generated comment.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Move function declarations to header file.
* tp/Texinfo/XS/parsetexi/Parsetexi.xs: Move function
declarations to header file, api.h. This means the compiler can
check the declarations are consistent with the definitions in
api.c.
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Remove an unnecessary #include.
* tp/Texinfo/XS/parsetexi/input.c,
* tp/Texinfo/XS/parsetexi/parser.c: Remove an unnecessary
#include "api.h".
2019-01-14 Gavin Smith <gavinsmith0123@gmail.com>
Move a function between files.
* tp/Texinfo/XS/parsetexi/api.c,
* tp/Texinfo/XS/parsetexi/parser.c (element_type_name): Move to
parser.c.
2019-01-13 Gavin Smith <gavinsmith0123@gmail.com>
Remove some unused variables.
* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace):
Remove some unused variables.
2019-01-13 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.5.91.
* configure.ac: version
2019-01-13 Gavin Smith <gavinsmith0123@gmail.com>
* info/man.c: Include stdio.h.
2019-01-12 Hans-Bernhard Bröker <HBBroeker@t-online.de> (tiny change)
Fix some warnings.
* tp/Texinfo/XS/parsetexi/close.c: Initialize a variable.
2019-01-12 Hans-Bernhard Bröker <HBBroeker@t-online.de> (tiny change)
Fix some warnings.
* tp/Texinfo/XS/parsetexi/end_line.c: Fix an unterminated
comment.
(check_empty_node): Avoid reaching end of undefined function.
* tp/Texinfo/XS/parsetexi/parser.c (register_global_command):
Add default cases.
* tp/Texinfo/XS/parsetexi/multitable.c (gather_previous_item):
Correct enum type in variable declaration.
2019-01-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused variables.
* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash),
* tp/Texinfo/XS/parsetexi/parser.c (register_global_command)
(process_remaining_on_line),
* tp/Texinfo/XS/parsetexi/convert.c (expand_cmd_args_to_texi),
* tp/Texinfo/XS/parsetexi/end_line.c (parse_line_command_args)
(end_line_starting_block, end_line_misc_line),
* tp/Texinfo/XS/parsetexi/macro.c (expand_macro_body),
* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_other_command),
* tp/Texinfo/XS/parsetexi/def.c (split_delimiters, split_def_args)
(parse_def): Remove declarations of unused variables.
2019-01-12 Gavin Smith <gavinsmith0123@gmail.com>
Remove an unused variable.
* tp/Texinfo/ParserNonXS.pm (_parse_texi): Remove an unused
variable.
2019-01-12 Gavin Smith <gavinsmith0123@gmail.com>
Add a default case.
* tp/Texinfo/XS/parsetexi/parser.c (process_remaining_on_line):
Add an empty default clause in switch block.
2019-01-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/parsetexi: Fix implicit function declarations.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Make Parsetexi XS module conditional on iconv.
* tp/Texinfo/XS/configure.ac: Add an AM_CONDITIONAL checking
whether gnulib found that iconv worked.
* tp/Texinfo/XS/Makefile.am: Make building Parsetexi module
conditional.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Set PERL_EXT_var in configure.ac.
* tp/Texinfo/XS/configure.ac,
* tp/Texinfo/XS/Makefile.am: Move setting of CFLAGS, CPPFLAGS
and LDFLAGS from PERL_EXT_CFLAGS, PERL_EXT_CPPFLAGS and
PERL_EXT_LDFLAGS from Makefile.am to configure.ac in order that
they are used during the Gnulib checks. Report from Bruno Haible.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
No buffering for pseudotty output.
* info/pseudotty.c: Set VMIN value on the c_cc array in the
termios structure to 1, meaning 'read' can return with a single
byte. (The default value on Solaris 10 was found to be 4, which
may be C-d for end-of-file.) Also set VTIME to 0.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Turn off canonical input processing in pseudotty.
* info/pseudotty.c [HAVE_TERMIOS_H]: Clear the ICANON and ECHO
flags.
In the test suite, if bytes were passed through the pseudotty
program before ginfo could make this change, they could be
subject to undesired processing. This was not apparent as info
treated '\n' the same as '\r'. This could be shown by using a
"dribble" file and inserting a "sleep" in one of the test scripts.
Tests were failing on Solaris 10 and Solaris 11 because bytes
that were supposed to be sent to ginfo were being buffered,
awaiting a newline.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Do not send debug output to infodebug file.
* info/session.c (vinfo_debug): Always sent debugging output to
stderr.
(close_debugfile, debug_file): Remove.
* doc/info-stnd.texi (Invoking Info): Update.
* NEWS: Mention change.
This is to make all the debugging output from info appear
together in a log files when output is diverted from a test
script.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Avoid possible infinite loop in info test suite.
* info/t/replace-viewed.sh: Replace a loop that waits for ginfo
to create a file with a "sleep" statement. If the file weren't
created, this would be an infinte loop.
2019-01-07 Gavin Smith <gavinsmith0123@gmail.com>
Remove useless code in info test suite.
* info/t/replace-viewed.sh,
* info/t/resize-in-completions: Do not check for a variable
having a value that no code sets it to. This has been the case
since the way the PID of the process was found changed.
2019-01-06 Gavin Smith <gavinsmith0123@gmail.com>
Fix info tests under Solaris.
* info/pseudotty.c [__sun]: Additionally perform a "ttycompat"
ioctl on the slave fd. This is what is done in the gnulib
openpty module. Since these ioctls were no longer guarded by
isatty, it would lead to some of the info tests failing. I
don't know under what conditions the ioctls are actually needed
under Solaris: possibly they aren't needed at all.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Include iconv.h unconditionally.
* tp/Texinfo/XS/parsetexi/input.c: Do not depend on HAVE_ICONV
for #include <iconv.h>. Use of iconv_t, iconv_open etc. later
on in the file is not conditional, and we don't have a way to
avoid using these. It's possible that gnulib set HAVE_ICONV to
0 because it found that iconv.h was buggy, even if it existed.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Don't use variable in SOURCES in Makefile.am.
* tp/Texinfo/XS/Makefile.am (Parsetexi_la_SOURCES, BUILT_SOURCES):
Write out "parsetexi" explicitly instead of hiding it inside $p.
Although the latter works with automake 1.16 (which we are
using), the OpenCSW buildbot still uses automake 1.15.1, leading
to build failures.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Integrate parsetexi with gnulib.
* tp/Texinfo/XS/parsetexi/input.c: Do not define ICONV_CONST.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Fall back to pure Perl module when TEXINFO_XS_PARSER is set.
* tp/Texinfo/Parser.pm, tp/Texinfo/ParserNonXS.pm: Rename file.
* tp/Texinfo/ParserNonXS.pm: Make module symbols available under
both Texinfo::Parser and Texinfo::ParserNonXS.
* tp/Texinfo/ModulePath.pm.in: If TEXINFO_XS_PARSER is not set,
load Texinfo/ParserNonXS.pm instead of Texinfo/Parser.pm.
* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Pass Texinfo::ParserNonXS
as a fallback module to Texinfo::XSLoader::init. Comment out
line to reset_parser in END block, as this won't work if
Texinfo::ParserNonXS is loaded.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Fix info test suite hang under HP-UX 11.31.
* info/pseudotty.c [HAVE_STROPTS_H]: Do not call isatty on
pseudoterminal file descriptor. Bruno Haible reported that this
made a test hang. Do not use HAVE_STROPTS_H condition: replace
with "#if defined(__hpux) || defined(__sun)", as is done in
gnulib. Remove some commented-out code.
* configure.ac (AC_CHECK_HEADERS): Do not check for stropts.h.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Improve XS loading error message.
* tp/Texinfo/XSLoader.pm: Improve error message in the case that
a module couldn't be loaded.
2019-01-05 Bruno Haible <bruno@clisp.org>
Fix build errors on AIX 7.1.
* info/Makefile.am (LDADD),
* install-info/Makefile.am (LDADD): Add $(LIBTHREAD).
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Check for Data::Dumper.
* configure.ac: Check for Data::Dumper as well as Encode. Bruno
Haible reported that Data::Dumper was missing on CentOS 7.3.
2019-01-05 Gavin Smith <gavinsmith0123@gmail.com>
Combine Makefiles for XS modules.
* tp/Texinfo/XS/configure.ac (AC_CONFIG_FILES): Remove Makefile
in parsetexi subdirectory.
* tp/Texinfo/XS/Makefile.am: Merge in contents of
tp/Texinfo/XS/parsetexi/Makefile.am.
* tp/Texinfo/XS/parsetexi/Makefile.am: Remove file.
This means that passing -lperl when linking will always be
conditional on HOST_NEEDS_NO_UNDEFINED.
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
pretest 6.5.90.
* configure.ac: version
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/parsetexi: Include config.h in all files.
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
Update texinfo-tex-test.texi.
* doc/texinfo-tex-test.texi (Final page of index hard to balance):
Update the description of what the output should look like.
(Changed on 2017-11-16).
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
* doc/Makefile.am (EXTRA_DIST): List texinfo-tex-test.WIDOWs.
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
Update copyright years.
* info/info.c (main),
* texindex/ti.twjr: 2019.
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
Prepare for pretest release.
* util/srclist-txi: Remove EMACSSRC.
Add a per-user override.
* util/srclist.txt: Remove info.texi, as this is not distributed
with Texinfo any more. Update to three-column format used now
by gnulib srclist-update. Update locations of automake files.
* README-hacking: Update instructions for git.
* configure.ac (TEXINFO_DTD_VERSION): Increase to 6.6.
* doc/refcard/txirefcard.tex: Update version and copyright year.
Document @& and @ampchar.
2019-01-04 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: automake 1.16.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Remove some obsolete or personal instructions.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/multiple-completions.sh: New test.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Fix unclosed @inlinefmtifelse.
* tp/Texinfo/XS/parsetexi/separator.c (handle_comma): If we run
out of input inside @inlinefmtifelse, exit the function. This
matches change to Perl code made on 2018-10-29.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Update instructions to use git.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Update gnulib.
* (top-level), tp/Texinfo/XS: Run gnulib-tool --add-import.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Remove documentation of \ifusebracesinindexes conditional.
* doc/texinfo.tex: Add a comment at definition of
\ifusebracesinindexes.
* doc/texinfo.texi: Remove use of \usebracesinindexestrue.
(Details of texindex): Remove the documentation of it.
* NEWS: Mention that this is not required any more.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Update refcard.
* doc/refcard/txirefcard.tex: @setfilename is no longer
mandatory. Do not mention @validatemenus or explicitly giving
@node pointers, as these are not very important features.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/Makefile.am: Update file list.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Finish removing 'FIX_TEXINFO'.
* tp/Texinfo/Common.pm (@variable_string_settables): Remove
'FIX_TEXINFO'.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Update NEWS.
* NEWS: Mention change to use 'id' attribute. Mention that
texi2any can pass flags set with -D on to TeX.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Remove SVN keyword.
* util/texi2dvi (version): Do not use '$Revision$' keyword as
this doesn't work with git.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Update instructions for git.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Ignore .git directories in dist-hook.
* Makefile.am (dist-hook),
* tp/Makefile.am (dist-hook),
* tp/tests/Makefile.am (dist-hook),
* tp/tests/contents/Makefile.am (dist-hook),
* tp/tests/coverage/Makefile.am (dist-hook),
* tp/tests/formatting/Makefile.am (dist-hook),
* tp/tests/indices/Makefile.am (dist-hook),
* tp/tests/layout/Makefile.am (dist-hook),
* tp/tests/many_input_files/Makefile.am (dist-hook),
* tp/tests/nested_formats/Makefile.am (dist-hook),
* tp/tests/sectioning/Makefile.am (dist-hook),
* tp/tests/tex_html/Makefile.am (dist-hook): Remove .git directories
instead of removing .svn directories.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Remove obsolete comment.
* util/texi2dvi: Remove comment about use of file descriptors
3 and 4. (See info node '(autoconf)File Descriptors'.) Remove
comment about EGREP variable alluding to the fact that the
'egrep' command is not in Posix.
2019-01-03 Gavin Smith <gavinsmith0123@gmail.com>
Remove texi2html and C makeinfo.
* makeinfo, texi2html: Remove subdirectories.
* Makefile.am (po-check): Update list of skipped subdirectories.
* README-hacking: Remove mention of these subdirectories.
2019-01-02 Gavin Smith <gavinsmith0123@gmail.com>
Remove unused variable in test suite.
* tp/maintain/regenerate_cmd_tests.sh: Do not set 'srcdir_test'
in generated test scripts, as this variable is no longer used
anywhere.
* tp/tests/run_parser_all.sh: Remove commented-out code.
2019-01-02 Gavin Smith <gavinsmith0123@gmail.com>
Remove commented-out code.
* tp/tests/parser-tests.sh: Remove commented-out code.
2019-01-02 Gavin Smith <gavinsmith0123@gmail.com>
Fix Makefile rule for out-of-source builds.
* tp/tests/many_input_files/Makefile.am
(copy-tests, copy-tex-html): Work properly in out-of-source builds.
2019-01-02 Per Bother <per@bothner.com>
Use 'id' attribute instead of 'name' on <a>.
* tp/Texinfo/Convert/HTML.pm:
(_convert_float_command, _convert_item_command)
(_convert_index_command, _contents_inline_element)
(_convert_element_type, _convert_heading_command):
Use '<span id>' instead of '<a name>'.
(_convert_printindex_command, _convert_def_line_type):
Add 'id' attribute to <th> and <dt> elements, and remove
<a name>.
The 'name' attribute of <a> to define a hyperlink target is
deprecated in the HTML 5 standards. 'id' for this purpose was
specified by HTML 4 (in 1997) and can be expected to be
supported by all browsers.
2019-01-01 Gavin Smith <gavinsmith0123@gmail.com>
Document SECTION_NAME_IN_TITLE.
* doc/texinfo.texi (HTML Customization Variables),
* NEWS: Document SECTION_NAME_IN_TITLE.
2019-01-01 Gavin Smith <gavinsmith0123@gmail.com>
New customization variable SECTION_NAME_IN_TITLE.
* tp/Texinfo/Common.pm (@variable_string_settables),
* tp/Texinfo/Convert/HTML.pm (%defaults):
Add SECTION_NAME_IN_TITLE.
* tp/Texinfo/Convert/HTML.pm (_file_header_information): For
split output, if SECTION_NAME_IN_TITLE is set, try to use the
argument of the chapter structuring command instead of @node for
the contents of <title>. Feature suggestion from Akim Demaille
(help-texinfo, Nov. 2018).
2019-01-01 Gavin Smith <gavinsmith0123@gmail.com>
Fix error message from texinfo-js.
* js/texinfo-js.in: Remove extra `-' from an error message.
Report from Stefan Husmann.
2018-12-31 Gavin Smith <gavinsmith0123@gmail.com>
Document 'TEXINFO_XS_PARSER'.
* NEWS: Mention the XS parser implementation.
* tp/Texinfo/Parser.pm: Note that this module can be overridden.
* doc/texinfo.texi (texi2any Environment Variables):
Add TEXINFO_XS_PARSER.
2018-12-29 Gavin Smith <gavinsmith0123@gmail.com>
Pass on -D to texi2dvi.
* tp/texi2any.pl: If calling texi2dvi, pass along the values of
any flags set with -D on the command line. Suggestion from
Olivier Dion.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Remove implementation of @cropmarks in texi2any.
* tp/Texinfo/Common.pm (%line_commands): Remove 'cropmarks'.
* tp/Texinfo/XS/parsetexi/command_data.txt: Remove cropmarks.
* tp/t/xml_tests.t (commands_and_spaces),
* tp/t/08misc_commands.t (also_not_line),
* tp/t/50value.t (value_in_misc_commands),
* tp/t/60macro.t (macro_in_misc_commands):
Remove @cropmarks from tests.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Remove documentation of @cropmarks command.
* doc/texinfo.texi (Cropmarks and Magnification, Magnification):
Rename and remove mention of @cropmarks.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Remove @cropmarks command.
* doc/texinfo.tex (\cropmarks, \ifcropmarks, \onepageout):
Remove implementation of @cropmarks.
* NEWS: Mention @cropmarks removal.
This command has hardly ever been used and it is questionable
whether it has worked correctly for many years. See bug-texinfo
discussion November 2018.
The code was introduced in 1986 by Pierre MacKay for use by
"Near East Publications".
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Tidy up info test suite infrastructure.
* info/t/Init-test.inc: Do not set GINFO_NAME variable as it is
not used. Do not set infodir variable. Do not try to set
srcdir, as it is already set. Change some shell variables to be
lower-case, to avoid confusion with variables exported to the
environment. Remove unused variable GINFO_OPTIONS.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Select correct cross-reference.
* info/session.c (info_menu_or_ref_item): If there is more than
one cross-reference in the line after the point and no
cross-reference contains the point, use the first
cross-reference after the point, not the last one in the line.
This means that the cross-reference that is highlighted as
"active" will be the one that is used.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Avoid memory leak for malformed files.
* info/nodes.c (info_load_file): Free 'contents' and 'encoding'
fields of file structure in case the node table couldn't be
built.
2018-12-28 Gavin Smith <gavinsmith0123@gmail.com>
Fix call to info_find_file.
* info/nodes.c (info_get_nodes_with_defaults): Restore the value
of the 'fullpath' field of a file structure before calling
info_find_file. Otherwise, info_find_file will not recognize
that a file has been loaded, and load it again. This can lead
to a file buffer being freed incorrectly in
gc_file_buffers_and_nodes, leading to a segmentation fault.
Segmentation fault reported by Keith Thompson.
2018-12-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Makefile.am (Makefile.docstr): Fix to work out-of-source.
2018-12-01 Gavin Smith <gavinsmith0123@gmail.com>
Fix info/t/all-only.sh test in out-of-source builds.
* info/dir.c (dir_entry_of_infodir): Prefix a non-absolute path
with "./" so that other parts of the code recognize it is the
full path.
2018-12-01 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: Development now uses git.
2018-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <inline conditionals>:
Avoid an infinite loop when skipping an unexpanded conditional
in case we run out of input.
* tp/t/55conditionals.t (inlineifset_false_not_closed): New test.
2018-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <@inlinefmtifelse>:
Avoid an infinite loop if there is no more input.
* tp/t/55conditionals.t
(inlineiffmtifelse_not_closed, inlineiffmtifelse_not_closed_two_arg)
(inlineiffmtifelse_not_closed_three_arg): New tests.
2018-10-28 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_check_line_directive): Fix code for
checking if input is coming from a file.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_next_text, _new_line): Do not pass
$current as an argument, as it is not used any more now the
check for the #line directive has been moved out.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/80include.t (cpp_lines): Add test of macro where a
line that looks like a #line directive is not the very first
line, as these may be treated differently by Parser.pm.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_check_line_directive, _save_line_directive)
(_next_text): Split out sub from _next_text.
(_parse_texi) <BEGIN LINE>: Call _check_line_directive and
_save_line_directive. The condition for #line being meaningful
is the same as what was in _next_text.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (#line directive) <CPP_LINE_DIRECTIVES>:
Add a missing ).
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (@obsolete_variables): Remove.
(obsolete_option): Remove.
(%customization_variable_classes): Remove 'obsolete_variables'.
* tp/texi2any.pl (set_from_init_file, set_from_cmdline),
* tp/Texinfo/Convert/Converter.pm (set_conf, force_conf):
Do not call Texinfo::Common::obsolete_option.
* NEWS: Mention that obsolete customization variables are no
longer recognized.
* tp/Texinfo/Parser.pm (_setup_parser): Do not look at
'INLINE_INSERTCOPYING'.
If more variables are deprecated, then it may be worth
reinstating some of this code.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_command_with_command_as_argument):
Remove code checking for a case where the command has two
elements in 'args', the first all whitespace, as this case never
seems to happen.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (@titlefont @center @sp):
Do not mention the possibility of using these outside of a title
page.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%in_index_commands): New hash,
containing only 'sortas'.
* tp/Texinfo/Parser.pm (%in_full_text_commands): Do not
specially remove 'sortas'.
(_setup_parser, _parse_command_line_args): Use
%in_simple_text_commands for the commands that may appear in
index commands. This was done until 2017-04-01.
(_parse_texi) <brace commands>: Move check for valid nesting of
@sortas here. Change error message to mention index entry.
2018-10-27 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <in heading commands>:
Do not set an 'invalid_nesting' value.
2018-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_check_valid_nesting): New sub, split
out from _parse_texi.
(_parser_texi): Call it.
(%in_full_line_commands): Remove useless variable, as the same
as %in_full_text_commands.
2018-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%in_full_text_commands): Do not
allow @indent, @noindent.
(%in_full_line_commands): No exception for @indent, @noindent.
* NEWS: Mention change in allowed nesting.
2018-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%simple_text_commands): Add all the
commands that have a number >= 1 as their argument type in
%brace_commands, except for inline conditional commands. This
includes @inforef which wasn't included before. This leaves
only @shortcaption and @math as explicitly listed commands.
2018-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%no_command_commands): Remove this list
of commands that shouldn't contain any other commands. Although
it is valid, it makes the picture of which commands can contain
others more complicated for the sake of only a few commands.
Introduced on 2016-07-09 for @errormsg and @U.
2018-10-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%brace_commands): Change meaning of 1
as a value. Now only commands that were in
%simple_text_commands in Parser.pm have 1. Use words as well as
numbers, as is done for %line_commands. Accent commands get
'accent'. Style commands get 'style'. Context brace commands
get 'context'. Various other brace commands get 'other'.
(_parse_line_command_args): Commands defined by @definfoenclose
get 'style'.
* tp/Texinfo/Parser.pm
(%simple_text_commands): Change initialising code to use
%brace_commands for some brace commands. This shortens a
seemingly arbitrary list.
(%full_text_commands): Update initialising code for new meaning
of %brace_commands.
(_parse_texi): Change two conditions to compare values of
%brace_commands hash, without needing to look at
%simple_text_commands. Remove an unnecessary conditional.
* tp/Texinfo/Parser.pm (_parse_texi),
* tp/Texinfo/Convert/Plaintext.pm (%brace_no_arg_commands):
Use "eq '0'" instead of "== 0" for %brace_commands values.
No functional changes intended. This brings the implementation
closer to the C version under tp/Texinfo/XS/parsetexi.
2018-10-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%simple_text_commands): Add 'sortas'.
(%full_text_commands): No special case for 'sortas'.
(_parse_texi) <@copying in @insertcopying>: Undefine a variable.
2018-10-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): Set
'comment_at_end' value on element instead of parent. As well as
gaining consistency with 'spaces_after_argument', this means
that a comment at the end of a brace command argument is not
lost or output at the wrong place. Add a comment noting that
comments should not be inside brace commands anyway.
* tp/Texinfo/Convert/TexinfoXML.pm (_convert_argument_and_end_line),
* tp/Texinfo/Convert/Texinfo.pm (convert, _expand_cmd_args_to_texi):
* tp/Texinfo/Convert/Converter.pm _expand_cmd_args_to_texi):
Access 'comment_at_end' in the new place.
2018-10-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm: Change 'same than' to 'same as' in
comments.
2018-10-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%simple_text_commands): Remove @ctrl.
(_end_line): Change a comment.
2018-10-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm,
* tp/Texinfo/Structuring.pm,
* tp/Texinfo/Transformations.pm,
* tp/Texinfo/Convert/Converter.pm,
* tp/Texinfo/Convert/DocBook.pm,
* tp/Texinfo/Convert/NodeNameNormalization.pm,
* tp/Texinfo/Convert/Plaintext.pm,
* tp/Texinfo/Convert/TexinfoXML.pm,
* tp/Texinfo/Convert/Text.pm,
* tp/Texinfo/Convert/TextContent.pm:
Change 'misc_line_arg' to 'line_arg'.
* tp/Texinfo/Parser.pm
(%begin_line_commands, %in_full_text_commands):
Initialising code changed.
* tp/Texinfo/Convert/Common.pm (@inline_types): Remove
'misc_command_arg', as no such element type is used anywhere.
The reason for this change is that "line command" is more
descriptive than "miscellaneous command". No functional changes
intended.
2018-10-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi): Check for unknown command
right after reading the command.
2018-10-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/list-of-tests
(node_footnote_end, node_footnote_use_node, node_footnote_separated)
(equivalent_nodes, equivalent_nodes_no_node)
(nodes_after_top_before_chapter)
(nodes_after_top_before_chapter_use_nodes_chapter)
(nodes_after_top_before_section)
(nodes_after_top_before_section_use_nodes)
(nodes_after_top_before_section_use_nodes_chapter)
(sectioning_frames, placed_things_before_element)
(more_sections_than_nodes, two_footnotes_in_nodes)
(two_footnotes_in_nodes_separated, top_node_up_implicit)
(top_node_up_explicit):
Remove tests.
* tp/t/96moresectioning.t: New test file. Add equivalent tests.
I checked the results were the same by running:
for T in \
node_footnote_end \
node_footnote_use_node \
node_footnote_separated \
equivalent_nodes \
equivalent_nodes_no_node \
nodes_after_top_before_chapter \
nodes_after_top_before_chapter_use_nodes_chapter \
nodes_after_top_before_section \
nodes_after_top_before_section_use_nodes \
nodes_after_top_before_section_use_nodes_chapter \
sectioning_frames \
placed_things_before_element \
more_sections_than_nodes \
two_footnotes_in_nodes \
two_footnotes_in_nodes_separated \
top_node_up_implicit \
top_node_up_explicit
do
echo TEST $T
(cd t/results/moresectioning/$T/res_html
for f in * ; do
echo diff $f
diff $f ../../../../../tests/sectioning/res_parser/$T/$f
done)
done
2018-10-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi):
Issue an error message right after checking for an invalid
nesting. This produces little functional change but is intended
to make the code easier to understand.
(_mark_and_warn_invalid): Remove.
2018-10-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_mark_and_warn_invalid): Do not set
'invalid_nesting'.
2018-10-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (find_innermost_accent_command):
Do not check for invalid nesting.
* tp/Texinfo/Convert/HTML.pm (_convert): Remove some
commented-out code.
* tp/t/accents.t (command in accent): Remove test.
2018-10-21 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: @ctrl removed.
* tp/Texinfo/Common.pm (%brace_commands, %deprecated_commands):
Remove @ctrl.
* tp/Texinfo/Convert/HTML.pm (_convert_ctrl_command): Remove.
* tp/Texinfo/Convert/Plaintext.pm (@asis_commands): Remove @ctrl.
* tp/t/03coverage_braces.t (ctrl): Remove test.
* tp/tests/coverage_macro.texi: Remove test of @ctrl.
(Karl, bug-texinfo 2012-04-01).
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%line_commands): Change a comment.
(%other_commands): Set from %in_heading_commands.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%other_commands): Remove 'itemx'.
@itemx is always a line command.
* tp/Texinfo/Parser.pm (_parse_texi) <misc commands>:
Only @item can sometimes be an 'other' command', not @itemx.
Error message for incorrectly nested @item or @itemx.
(_end_line): Add a check for an undefined value.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%line_commands): Add all the sectioning,
index and def commands.
* tp/Texinfo/Parser.pm (%misc_commands): Remove.
(%line_commands): Add.
(_setup_parser, simple_parser): Set 'line_commands' on parser
rather than 'misc_commands'.
(_end_line, _parse_texi, _parse): Update.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <misc commands>:
Deal with the commands that do not take a whole line as an
argument separately from those that do, using %other_commands
hash from Common.pm. Reinstate error message for @insertcopying
inside @copying.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_item_line_parent): If current element
is an @item or @itemx, do not check the parent of the parent of
the current element. This leads to a false positive for a
@table nested within an @enumerate. It is possible that this
was intended to account for the parent element being a
'table_term' element, but the condition is not met in the entire
test suite. (The false positive was not hit in practice due to
_item_container_parent being called before _item_line_parent.)
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%line_commands, %deprecated_commands):
Remove @quote-arg and @allow-recursion.
* NEWS: Mention this change.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%misc_commands)
(%line_commands, %other_commands): Split %misc_commands into two
hashes.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%misc_commands):
Change @insertcopying argument type from 'noarg' to 'skipline'.
* NEWS: Mention this change and the warning for @multitable.
2018-10-20 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <@multitable>: Give a warning
messaage for any @-command appearing on the multitable line
outside of a braced prototype.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/list-of-tests: Do not run every test
twice, once with '--html', once with '-c TEXI2HTML'. Only use
the latter.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Do not substitute a
"@PATH_SEPARATOR@" sequence in the list-of-tests files.
It is only used in one test so is not worth the complication.
* tp/tests/sectioning/list-of-tests (test_two_include):
Remove this test.
* tp/defs.in: Do not set PATH_SEPARATOR.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/list-of-tests:
(no_section_no_top, no_section_no_top_no_node)
(more_nodes_than_sections, one_node_no_node, one_node)
(no_node_chapter_split):
Remove. Similar tests exist under tp/t/30sectioning.t.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/defs.in: Do not set srcdir if it is already set.
"make distcheck" works again now.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/list-of-tests (test_two_include): Move an
input file to this directory.
2018-10-19 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl: Create the output directory for the test
before running the conversion. This means that if the test
needs to create output files, the directory to contain them will
exist. It didn't exist the first time a test file was run when
the very first test in the file needed to create output.
If there are conversion errors from texi2any, print them instead
of just printing a message "Warning: output generated".
2018-10-18 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests
(documentlanguage_set_option, documentlanguage_set_unknown):
(formatting_documentlanguage_set_option_info)
(formatting_split_for_format_not_split)
Remove.
* tp/t/92formatting.t: Add the same tests.
* tp/tests/formatting/list-of-tests
(simple_with_menu_docbook_info): Remove. This tested the
combination of "--docbook --info" which is equivalent to just
"--info".
2018-10-18 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Source 'defs' before setting
srcdir.
2018-10-18 Gavin Smith <gavinsmith0123@gmail.com>
* README: State that we may use a range like 2008-2010 in
listing copyright years. (The GNU maintainers guide requires
such a statement.)
2018-10-18 Gavin Smith <gavinsmith0123@gmail.com>
* tp/defs.in: Add srcdir.
* tp/maintain/all_tests.sh (generate): Run test scripts in srcdir.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (parse_node_manual): Don't lose a leading (
in the case of incorrectly nested parentheses.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (parse_node_manual): Set parent fields on
new elements.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (parse_node_manual): Overwrite the
contents array of the element in the main tree.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/06columnfractions.t (invalid): New test.
* tp/Texinfo/Parser.pm (_parse_line_command_args) <@columnfractions>:
Change regex for a valid column fraction.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_line_command_args) <@definfoenclose>:
Add new command to %brace_commands. This avoids having to check
whether a command has been added with @definfoenclose in several
places.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/09indices.t (def_existing_index): New test.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/55conditionals.t (false_format_not_closed): New test.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_expand_macro_arguments): Avoid using a
regex.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/60macro.t (empty_macro_argument): New test.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <@titlepage>: Do not save
'@author' as a global command.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_register_global_command): Remove an
argument. Callers updated.
2018-10-17 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (labels_information): Avoiding creating
'extra' hash by mistake.
2018-10-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm,
* tp/Texinfo/Common.pm (labels_information): Move to Common.pm
so that it can be called from tp/Texinfo/XS/parsetexi/Parsetexi.pm.
2018-10-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm,
* tp/Texinfo/Encoding.pm,
* tp/Texinfo/Parser.pm,
* tp/Texinfo/Report.pm,
* tp/Texinfo/Structuring.pm,
* tp/Texinfo/Transformations.pm,
* tp/Texinfo/Convert/Converter.pm
* tp/Texinfo/Convert/DocBook.pm,
* tp/Texinfo/Convert/HTML.pm,
* tp/Texinfo/Convert/IXIN.pm,
* tp/Texinfo/Convert/NodeNameNormalization.pm,
* tp/Texinfo/Convert/Plaintext.pm,
* tp/Texinfo/Convert/Texinfo.pm,
* tp/Texinfo/Convert/TexinfoSXML.pm,
* tp/Texinfo/Convert/TexinfoXML.pm,
* tp/Texinfo/Convert/Text.pm,
* tp/Texinfo/Convert/Unicode.pm:
Remove generated content such as "Mention other useful
documentation" and "Items to export into callers namespace by
default" (presumably from h2xs). Remove copyright and license
from POD section at ends of files, as the copyright statement is
at the beginning of each file. Update copyright years.
2018-10-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%global_multiple_commands): Remove 'author'.
(_register_global_command): No exception for 'author'.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/sectioning/list-of-tests,
* tp/tests/contents/list-of-tests,
* tp/tests/indices/list-of-tests,
* tp/tests/tex_htmlindices/list-of-tests,
Use -c instead of --set-customization-variable, for brevity.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/indices/list-of-tests
(split_chapter_index, index_split, index_split_nodes)
(index_no_node, nodes_before_top, nodes_before_top_nodes)
(nodes_before_top_no_nodes, nodes_before_top_and_sections_monolithic):
Remove tests.
* tp/t/95moreindices.t: Add the same tests.
I checked test results were unchanged by running commands like:
T=split_chapter_index
(cd t/results/moreindices/$T/res_html ; for f in * ; do \
echo diff $f ; \
diff $f ../../../../../tests/indices/res_parser/$T/$f ; \
done )
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/95moreindices.t: New test file.
* tp/t/95moreindices.t (double_index_entry): Add.
* tp/tests/indices/list-of-tests (double_index_entry): Remove.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests
(simplest_test_prefix, simplest_test_prefix_info)
(simplest_test_date_in_header, float_copying):
Remove.
* tp/t/92formatting.t: Add the same tests here.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests
(split_nocopying, split_nocopying_split): Remove.
* tp/t/92formatting.t
(split_nocopying, split_nocopying_split): Add.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/README: Add advice about out-of-source builds.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl: If -g flag is given to regenerate
reference test results, do so in srcdir rather than builddir.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests (direntry_dircategory_info_split):
Remove.
* tp/t/92formatting.t (direntry_dircategory_info_split): Add.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/Makefile.am (Makefile.onetst): Fix rule to work
in out-of-source builds.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests (defcondx_Dbar, defcondx_Ubar):
Remove.
* tp/t/92formatting.t (defcondx_Dbar, defcondx_Ubar): Add.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (%default_customization_values): Remove
'GLOBAL_COMMANDS' array as it is not used anywhere.
(_setup_parser): Do not access 'GLOBAL_COMMANDS' conf value.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Makefile.am: List files under tp/t/include_reference.
* tp/maintain/regenerate_file_lists.pl: Do not automatically
generate a list of these files.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/regenerate_file_lists.pl:
Do not generate the variable 'test_copied_include_files'.
Remove copyright notice from generated file as the year is
out-of-date.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl: Remove code copying 't/include_reference'
to build directory. Do not include any directories in the
current directory in the include path.
* tp/Makefile.am (all-local): Do not depend upon these copied files.
2018-10-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl, tp/t/nodenormalisation.t:
Put tp/t/include_reference in srcdir in include path.
* tp/t/80include.t (test_paths, test_include_directories):
Remove tests.
* tp/t/converters_tests.t (verbatiminclude_paths):
test_include_directories): Remove tests.
* tp/t/info_tests.t (image_file_search): Remove test.
test_include_directories): Remove tests.
* tp/maintain/regenerate_file_lists.pl: Do not generate rules to
copy files to tp/t/include_dir in build directory.
This avoids the hassle of copying all the include files to the
build directory for out-of-source builds and avoids the
confusion of which of "t/include", "t/include_dir" or
"t/include_reference" a test file is to be added to. This
feature of the test suite is not used enough IMHO to be worth
the complexity.
2018-10-09 Gavin Smith <gavinsmith0123@gmail.com>
* configure.ac: Remove AM_CONDITIONAL for TEXI2HTML.
* Makefile.am (dist-local): Remove reult for updating
translations for texi2html.
2018-10-08 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (_parse_htmlxref_files) [TEST]:
Strip leading directories from file name in order to have
reliable reference test results for out-of-source builds.
2018-10-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <@columnfractions>: Set the
'columnfractions' extra value to the element for the
@columnfractions command, rather than to the 'misc_args' array
of that element. This is to make a 'misc_args' array only
referenced by one element, which makes it possible to free the
memory properly in the C rewrite.
* tp/Texinfo/Convert/DocBook.pm (_convert),
* tp/Texinfo/Convert/HTML.pm (_convert_tab_command),
* tp/Texinfo/Convert/Plaintext.pm (_convert),
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Update.
2018-10-06 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/README: Add more advice.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl: Set 'TEST' to 1 for converters.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/htmlxref
* tp/tests/htmlxref-only_mono,
* tp/tests/htmlxref-only_split: Remove.
* tp/tests/Makefile.am: Remove rules for copying htmlxref.cnf to
the build directory.
* configure.ac (AC_CONFIG_FILES): Don't list Makefiles in
removed directories.
* autogen.sh: Excise htmlxref and coverage subdirectories.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/94htmlxref.t (htmlxref_only_mono, htmlxref_only_mono_nodes)
(htmlxref_only_split, htmlxref_only_split_nodes): Add.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/94htmlxref.t (htmlxref_nodes): Add test.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/94htmlxref.t: New file.
* tp/t/94htmlxref.t (htmlxref): New test.
* tp/Texinfo/Convert/HTML.pm [TEST]: If HTMLXREF is set, look
for file in various directories.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Converter/Converter.pm (%all_converter_defaults):
Remove 'htmlxref_files' and 'FIX_TEXINFO'. Add
'language_config_dirs'.
* tp/texi2any.pl: Do not set an 'htmlxref_files' configuration
value. Save the 'language_config_dirs' array in the converter
options.
* tp/Texinfo/Convert/HTML.pm (_load_htmlxref_files): Move code
here from texi2any.pl.
* tp/texi2any.pl, tp/Texinfo/Common.pm (locate_init_file):
Move to Common.pm.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl: Get class of converter from string value,
rather than calling ref on a subroutine. This subroutine would
actually be called, which is not the intention.
2018-09-30 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/layout/list-of-tests, tp/t/93layout.t
(navigation_section_no_header navigation_node_no_header)
(navigation_chapter_vertical navigation_section_vertical)
(navigation_node_vertical navigation_chapter_no_header_vertical)
(navigation_section_no_header_vertical)
(navigation_node_no_header_vertical):
Move tests to 93layout.t.
2018-09-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/93/layout.t: (navigation, navigation_no_header)
(navigation_vertical, navigation_no_header_vertical)
(navigation_chapter, navigation_section, navigation_node)
(navigation_chapter_no_header): New tests.
* tp/tests/layout/list-of-tests: Remove the same tests.
I checked the results were the same with a script like the
following:
OTHER=../../../../../tests/layout/res_parser
(for d in *[^.][^.][^.]? ; do echo "CHANGING TO $d" ; pushd \
$d/res_html ; for f in * ; do echo DIFFING $f ; diff $f \
$OTHER/$d/$f ; done ; popd ; done ) |& less
2018-09-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/93layout.t: New file.
* tp/t/93layout.t (no_monolithic): New test.
* tp/tests/layout/list-of-tests (no_monolithic): Remove test.
I checked the results were the same by running the following in
the results directory:
OTHER=../../../../../tests/layout/res_parser/no_monolithic
for f in * ; do diff $f $OTHER/$f ; done
2018-09-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (parse_node_manual):
Do not call trim_spaces_comment_from_content.
2018-09-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/layout/list-of-tests: Use -c instead of
--set-customization-variable in the interests of concision.
2018-09-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/init/chm.pm (chm_init): Do not refer to a 'misc_content' array.
2018-09-28 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/nested_formats/generate_all_texi.pl: Refer to
list-of-tests rather than tests-parser.txt.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line): Do not set 'misc_content'.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/Makefile.am (base_tests): Remove 'coverage'.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/coverage/formatting.texi
* tp/tests/coverage/simplest.texi
* tp/tests/coverage/f--ile.e--xt,
* tp/tests/coverage/f--ile.jpg: Move to t/tests/layout.
* tp/tests/layout/list-of-tests,
* tp/tests/tex_html/list-of-tests:
Reference formatting.texi in new location.
* tp/tests/layout/f--ile.gif,
* tp/tests/layout/f--ile.jpeg: Remove.
* tp/tests/coverage/list-of-tests (formatting): Test moved from
here, to:
* tp/tests/layout/list-of-tests (formatting): Here.
This leads to "simplest.texi" being included in the output of
some the 'formatting_regions' test, and different image files
being referenced in 'formatting_regions' and
'formatting_docbook'.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/coverage/list-of-tests (formatting): Test moved from
here, to:
* tp/tests/layout/list-of-tests (formatting): Here.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/Makefile.am: Do not generate 'coverage_macro-cr.texi'.
It doesn't appear to be used for anything.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (_copy_tree): Change a comment.
* tp/Texinfo/Structuring.pm (_print_root_command_texi),
* tp/Texinfo/Transformations.pm (insert_nodes_for_sectioning_commands)
(print_down_menus): Use 'args' instead of 'misc_content'.
* tp/Texinfo/Transformations.pm (fill_gaps_in_sectioning): Do
not set 'misc_content'.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Converter.pm
(_sectioning_command_normalized_filename),
* tp/Texinfo/Convert/DocBook.pm (_convert),
* tp/Texinfo/Convert/HTML.pm
(command_text _convert_quotation_command, output),
* tp/Texinfo/Convert/Info.pm (_info_header),
* tp/Texinfo/Convert/Plaintext.pm (_contents, _convert):
Use 'args' instead of 'misc_content'.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <misc command>:
Do not call _trim_spaces_comment_from_content. This leads to a
change in the 'misc_args' in a few cases of invalid nesting of
line commands.
(_trim_spaces_comment_from_content): Remove wrapper for
Texinfo::Common::trim_spaces_comment_from_content.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi): Remove a comment.
(_merge_text, _abort_empty_line, _parse_texi_regex): Add a
comment noting these subs have XS overrides.
(_gather_def_item, _close_commands, _end_line, _parse_texi)
(_gather_previous_item): Remove commented-out debugging
statements.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Delete 'staging_res' directories
once finished.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Don't store string
"raw_out_parser" in a variable.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Only use flags for latex2html in
the latex2html tests.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Put flags for latex2html inside a
variable so they are less distracting when reading the code.
Use -c instead of --set-customization-variable in the interests
of concision. Put code post-processing the output files in a
separate shell function.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <misc command with text argument>:
Do not call _trim_spaces_comment_from_content.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Remove some commented-out code.
2018-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* NEWS: Mention changes for newer versions of Perl.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list_of_tests
(texi_glossary, texi_bib_example, texi_cond, cond, cond_xml):
(cond_no-ifhtml_no-ifinfo_no-iftex, cond_ifhtml_ifinfo_iftex)
(cond_info, cond_info_no-ifhtml_no-ifinfo_no-iftex)
(cond_info_ifhtml_ifinfo_iftex): Removed.
* t/92formatting.t
(texi_glossary, texi_bib_example, texi_cond, cond, cond_xml):
(cond_no-ifhtml_no-ifinfo_no-iftex, cond_ifhtml_ifinfo_iftex)
(cond_info, cond_info_no-ifhtml_no-ifinfo_no-iftex)
(cond_info_ifhtml_ifinfo_iftex): Added.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (parse_texi_file): Save name of subdirectory
containing input file.
* tp/Texinfo/Common.pm (parse_renamed_nodes_file): Check for
noderename.cnf in subdirectory containing input file first.
* t/92formatting.t (unknown_nodes_renamed): Output a file for
the test and use a renamed nodes file. This restores an error
message that was present in the test this one replaced.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests
(unknown_nodes_renamed, one_line, empty): Remove.
* tp/t/92formatting.t
(unknown_nodes_renamed, one_line, empty): New tests.
* tp/maintain/regenerate_cmd_tests.sh: Wipe tests directory.
* tp/tests/README: Do not mention wiping tests directory.
Explain which other files to delete.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/92formatting.t: New file.
* tp/t/92formatting.t (one_line_no_content): New test.
* tp/tests/formatting/list-of-tests (one_line_no_content): Remove test.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/regenerate_cmd_tests.sh: Remove code dealing with
"texi" as a special test case name. Do not use separate '$arg'
and '$name' variables in the test scripts.
2018-09-23 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/PlainTexinfo.pm: Do not pass a
'FIX_TEXINFO' value into Texinfo.pm.
* tp/Texinfo/Convert/Texinfo.pm (convert, _expand_cmd_args_to_texi):
Remove '$fix' argument.
* tp/t/fix_texinfo.t: Remove test.
* doc/texinfo.texi (Other Customization Variables): Remove
'FIX_TEXINFO'.
* NEWS: 'FIX_TEXINFO' customization variable has been removed.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line): Reparent an empty argument
of a block command to the contents before possibly processing a
float command, instead of after.
(_parse_float_type): Allow args to be undefined. Do not use
_trim_spaces_comment_from_content.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_line_command_args): Do not call
_trim_spaces_comment_from_content.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): Isolate the last
space on a misc_line_arg if it has a 'type' set, including
'empty_line_after_command'.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): Simplify code by
taking out conditionals that are common to two blocks.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <@sortas>: Don't call
_trim_spaces_comment_from_content.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <@U>: Don't call
_trim_spaces_comment_from_content.
* t/02coverage.t (invalid_U): Add use of @U with whitespace
surrounding argument.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <@errormsg>: Don't call
_trim_spaces_comment_from_content.
* t/02coverage.t (test_errormsg): Add use of @errormsg with
whitespace surrounding error message.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <',' seen for inline commands>:
Use text in 'args' directly instead of calling
_trim_spaces_comment_from_content.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/run_parser_all.sh: Remove all code dealing with a
test case specially if its name was 'texi'.
* tp/tests/README: Don't mention a 'texi' special case.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests (texi_glossary):
Define test using '-c TEXINFO_OUTPUT_FORMAT=plaintexinfo'. This
leads to an extra error message due to more processing taking
place after '-c DUMP_TEXI=1' would have been processed.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/README: Explain how to run tests with run-parser-all.sh.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/formatting/list-of-tests
(texi_bib-example, texi_cond, texi_ignore_and_comments):
Define tests using '-c TEXINFO_OUTPUT_FORMAT=plaintexinfo'.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/nested_formats/list-of-tests (texi, texi_nested_formats):
Rename test and use '-c TEXINFO_OUTPUT_FORMAT=plaintexinfo' to
get a macro-expanded Texinfo output instead of using the special
test name "texi". This means that the output will have the
".txi" extension instead of "texi", and in the out_parser_info
directory, the output format will be info instead of texi.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl: Allow '-c TEXINFO_OUTPUT_FORMAT' to override
'-c TEXI2HTML'.
2018-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/tests/README: Update to mention list-of-tests file.
2018-09-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%no_brace_commands): Add '&'.
(%brace_commands): Add 'ampchar'.
* tp/Texinfo/Convert/Converter.pm
(%defaul_xml_commands_formatting): Add 'ampchar'.
* tp/Texinfo/Convert/TexinfoXML.pm (%commands_formatting): Add
'&', 'ampchar'.
* tp/Texinfo/Convert/Text.pm (%text_brace_no_arg_commands): Add
'ampchar'.
* tp/Texinfo/Convert/Unicode.pm (%unicode_map): Add 'ampchar'.
* tp/Texinfo/XS/misc.c (xs_parse_texi_regex),
* tp/Texinfo/Parser.pm (_parse_texi_regex): Include & as a
single letter command.
* tp/t/19def.t (ampchar): New test.
* util/texinfo.dtd: Add 'ampchar'.
* configure.ac (TEXINFO_DTD_VERSION): Increase to '6.4dev'.
* doc/texinfo.tex (\ampchar): Define.
* doc/texinfo.texi (Inserting an Ampersand): New section.
* NEWS: Mention @&, @ampchar{}.
2018-09-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi):
Do not set a 'spaces_after_command_elt' value.
(_abort_empty_line): Do not clear a 'spaces_before_argument_elt'
value.
* tp/Texinfo/XS/misc.c (xs_abort_empty_line): Make the same change.
2018-09-21 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_start_empty_line_after_command):
Do not set a 'spaces_after_command_elt' value.
(_abort_empty_line): Do not clear a 'spaces_after_command_elt' value.
* tp/Texinfo/XS/misc.c (xs_abort_empty_line): Make the same change.
2018-09-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/regenerate_cmd_tests.sh: Less indirection in test
scripts.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_remove_empty_content_arguments):
Remove function.
(_register_command_arg): Remove function.
(module documentation section): Remove mention of
'block_command_line_contents'.
(_end_line): Do not set or access 'block_command_line_contents'
extra value.
This is intended to simplify the parse tree. Reducing
duplication of information makes it easier to track what data
leads to output at later stages of processing. It reduces
memory use and may increase speed. It makes it easier to
inspect data structures that are "dumped" to a text stream. It
is also easier to handle memory allocation in a rewrite in
another programming language if the data structures are less
cyclic.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/91morecoverage.t: New file.
* tp/t/91morecoverage.t (texi_formatting, formatting_fr):
New tests.
* tp/tests/coverage/list-of_tests (texi, formatting_fr): Remove.
Moving some tests into the test framework under tp/t is intended
to reduce the running time for the tests.
* tp/tests/README: Add advice on deleting a test.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/README: Add a note about how to check test results.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/regenerate_cmd_tests.sh,
* tp/tests/run_parser_all.sh:
Rename file with the specifications of tests to be run from
'tests-parser.txt' to 'list-of-tests'.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/DocBook.pm (_convert):
Do not use the 'block_command_line_contents' array: use the
'args' array directly.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Plaintext.pm (_convert)
<@quotation, @item, @listoffloats>:
Do not use the 'block_command_line_contents' array: use the
'args' array directly.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (_quotation_arg_to_prepend):
Do not use the 'block_command_line_contents' array: use the
'args' array directly.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (_convert_item_line_command),
* tp/Texinfo/Convert/TexinfoXML.pm (_convert):
Do not use the 'block_command_line_contents' array: use the
'args' array directly.
* tp/Texinfo/Parser.pm (_end_line): Include an inserted
'command_as_argument' element in the 'args' with the type
'command_as_argument_inserted'.
* tp/Texinfo/Convert/Texinfo.pm (@ignored_types): Ignore
'command_as_argument_inserted'.
(_expand_cmd_args_to_texi): Avoid outputing a comma after an
ignored element.
* tp/Texinfo/Common.pm: Remove mention of
'block_command_line_contents' from a comment.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): Remove useless
argument. Callers updated.
(module documentation section): Remove mention of
'space_at_end_block_command'.
* tp/Texinfo/Convert/TexinfoXML.pm (_index_entry): Remove code
stripping final whitespace.
(_convert): Remove a commented-out statement for debugging.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): For all element
types except 'menu_entry_node', store trailing spaces as a
'spaces_after_argument' value. This was already done for
'brace_command_arg'.
* tp/Texinfo/Convert/Texinfo.pm (convert, _expand_cmd_args_to_texi):
Check for and output these spaces.
* tp/Texinfo/Convert/Converter.pm (_end_line_or_comment): Look
for these spaces in new location.
* tp/Texinfo/Convert/Converter.pm (_convert_argument_and_end_line):
Replace with two new subroutines, one in DocBook.pm, one in
TexinfoXML.pm. This allows end-of-line spaces to continue to be
ignored in DocBook output.
* tp/Texinfo/Convert/TexinfoXML.pm (_end_line_spaces): Check for
end-of-line spaces in new location.
(_convert): Check for and output 'spaces_after_argument' in a
few places.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_index_entry): Remove
trailing spaces from the text of an index entry.
2018-09-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert) <def line>: Remove
trailing spaces from bracketed terms.
2018-09-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Converter.pm (_end_line_or_comment): Do
not call _tree_without_comment.
* tp/Texinfo/Convert/TexinfoXML.pm (_texinfo_line):
Do not call _tree_without_comment.
* tp/Texinfo/Convert/Converter.pm (tree_without_comment): Remove.
2018-09-11 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): If @c or @comment
is the last in the line, remove it from the 'args' and store it
as 'comment_at_end' extra value.
* tp/Texinfo/Convert/TexinfoXML.pm ():
(_end_line_spaces): Do not handle the case of a comment being in
the 'args'.
(_convert) <@item or @itemx in @table>: Check for and output a
comment.
* tp/Texinfo/Convert/Converter.pm (_end_line_or_comment)
(_tree_without_comment, _convert_argument_and_end_line):
Meaning of arguments changed. Check for a comment in the new
location. Callers updated.
* tp/Texinfo/Convert/Texinfo.pm (_expand_cmd_args_to_texi):
Check for and output a comment.
2018-09-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <@multitable>:
Call _isolate_last_space.
2018-09-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_abort_empty_line): Always get the
element that refers to the space element through the 'command'
value. This saves the trouble of looking at $current,
$current->{'parent'}, $current->{'parent'}->{'parent'} etc.
Delete the 'spaces_after_command_elt' value properly.
(_parse_texi): Set 'command' on created
'empty_spaces_before_argument' elements.
* tp/Texinfo/XS/misc.c (xs_abort_empty_line): Make the same
change.
2018-09-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_start_empty_line_after_command):
Refer to spaces element at start of line as
'spaces_after_command_elt' instead of 'spaces_after_command'.
Refer back to the main element for the command as 'command'.
(_abort_empty_line): Use 'command' extra value to find an
element that refers to the spaces element
as 'spaces_after_command'. If found, change the reference to
the element to a reference to a simple string. This was already
done for 'spaces_before_argument_elt' but is now done for
'spaces_after_command_elt' too.
* tp/Texinfo/XS/misc.c (xs_abort_empty_line): Make the same change.
* tp/Texinfo/Structuring.pm (new_block_command),
* tp/Texinfo/Transformations (fill_gaps_sectioning):
Update to store spaces after the command in 'spaces_before_argument'.
* tp/Texinfo/Convert/TexinfoXML.pm (_leading_spaces, _convert):
Update to access 'spaces_after_command'.
* tp/Texinfo/Common.pm (move_index_entries_after_item):
Insert a newline in the 'spaces_before_argument' value if it is
present.
* tp/Texinfo/Convert/Texinfo.pm (_expand_cmd_args_to_texi):
Output a space in 'spaces_before_argument' if it is present.
* tp/t/collect_spaces.t: Test removed.
2018-09-02 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi, _close_brace_command),
* tp/Texinfo/Convert/Texinfo.pm (_expand_cmd_args_to_texi),
* tp/Texinfo/Convert/TexinfoXML.pm (_convert):
Save the delimiter character of @verb as the 'delimiter' extra
value, instead of putting in 'type'.
2018-09-02 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (module documentation): Update.
2018-09-02 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert),
* tp/Texinfo/Convert/DocBook.pm (_convert): Leave an
'empty_line_after_command' element alone just as
'empty_spaces_after_command' is left alone.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/regenerate_cmd_tests.sh: Do not print diffs if
perl exited with a non-zero exit status, as the diffs will be
out of date and this could hide a syntax error.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Update 'parent' on
elements of a 'def_aggregate'.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Leave an
'empty_line_after_command' element alone just as
'empty_spaces_after_command' is left alone.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/all_tests.sh <generate>: Use "set -e" to make
script stop if a test script stops.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Set 'parent' on
'def_aggregate' element.
2018-09-01 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def, _split_def_args)
(_split_delimiters): Set 'parent' on new elements.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line): Do not set 'def_args'
extra value.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert),
* tp/Texinfo/Convert/DocBook.pm (_convert): Use the def args in
the main tree instead of the 'def_args' extra array.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Include inserted content on
def line in main tree.
* tp/Texinfo/Convert/Texinfo.pm (convert): Ignore this inserted
content when converting back to Texinfo.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def, _split_def_args),
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Give inserted
elements at front of def line the types 'bracketed_inserted'
and 'spaces_inserted' instead of 'bracketed_def_content' and
'spaces'.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Text.pm (_convert),
* tp/Texinfo/Convert/Plaintext.pm (_convert),
* tp/Texinfo/Convert/HTML.pm (_convert_def_line_type):
Refer to 'def_parsed_hash' instead of 'def_args'.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (definition_arguments_content)
(definition_category): Refer to 'def_parsed_hash' instead
of 'def_args'.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Copy the element label in
a 'def_args' pair into the 'def_role' extra value on the
element.
2018-08-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Collect adjacent
non-whitespace elements into a 'def_aggregate' element and
make this change in the main tree as well as in the 'def_args'
array.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Use the same hashes in the
main tree as in the def_args array for the arguments on a
@def* line. This means that delimiter characters are in their
own elements now.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Change the type
of final spaces elements to 'spaces_at_end'. This leads to
the spaces being ignored in some output formats.
(_next_bracketed_or_word): Remove unused.
* tp/Texinfo/Convert/TexinfoXML.pm (_convert) <def commands>:
Strip off a final newline.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_split_delimiters): New function.
(_parse_def): Do not produce def_args array via an intermediate
array of a similar format. Use "map" with _split_delimiters to
place [](), in separate elements, before processing the
arguments on the line.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_def): Reorder some code.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_split_def_args): New function.
(_parse_def): Use "map" with _split_def_args to create the
array of def line contents. This does all at once what
_next_bracketed_or_word did across all the times it was called.
(_next_bracketed_or_word): Collect elements from the array that
has already been processed.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Structuring.pm (new_block_command)
* tp/Texinfo/Parser.pm (_parse_texi, _end_line):
Do not set 'command' extra value on 'empty_line_after_command'
or 'empty_spaces_after_command'.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Remove
conditional block that checks for a raw formatting command (e.g.
@html if --html is given to texi2any) that is being expanded.
It appears that this code is never executed as an earlier clause
of the "if" statement is executed if this format is being expanded.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <CLOSED raw>: Do
not add a 'command' extra value on the 'empty_line_after_command'.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_end_line) <after @end verbatim>:
Do not use 'command' extra value to check if we are after
@end verbatim.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl: Set top_srcdir as well as top_builddir in case
these are not defined. This compensates for a recent change in
Texinfo::ModulePath.
2018-08-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm
(parse_def): Split up text elements in the main tree into
separate elements. This means in most cases, the elements in
the 'def_args' hash and the elements in the main tree will be
the same. (The exceptions are when "(" or ")" is split into a
"delimiter" element in def_args, and when there is trailing
whitespace on a line before the LF.)
(next_bracketed_or_word): Include any trailing newline in the
returned values.
(parse_def): Avoid adding elements with a trailing newline to
'def_args'.
This change should only affect the main tree, not the value of
the 'def_args' hash, or the output from any of the converters.
It is intended to reduce duplication of information in the parse
tree, and to make handling of allocated memory simpler in the C
replacement for this module.
2018-08-23 Gavin Smith <gavinsmith0123@gmail.com>
* util/htmlxref.cnf: Remove gcj, info. Add cvs. Report from
Ineiev <ineiev@gnu.org> and Thérèse Godefroy <godef.th@free.fr>.
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/xspara.c (xs_unicode_text, xs_process_text):
Use static buffers to avoid memory leaks.
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/xspara.c (xspara_get_pending, xspara_add_pending_word)
xspara_end, xspara_add_next, xspara_add_text): Save storage for
text buffers in static variables to avoid memory leak.
* tp/Texinfo/XS/text.c (text_reset): New function.
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/misc.c (xs_parse_texi_regex): Retain all memory
allocated on the heap in static pointers. Perl does not free
them, as when SV's are initialized with sv_setpv, the data
pointed to is copied, not the pointer itself. This memory leak
is visible with valgrind, e.g. run TEXINFO_XS=debug PERL_DESTRUCT_LEVEL=2 valgrind --log-file=val.log --leak-check=full perl -w t/02coverage.t commands
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Makefile.am (EXTRA_DIST) Do not distribute tp/Makefile.PL
or tp/MANIFEST.
* tp/Texinfo/XS/Makefile.am: Do not distribute Makefile.PL,
MANIFEST or prepare_standalone_perl_module.sh.
This is to reduce confusion about whether these files are needed
for "make dist".
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/README: Clarify purpose of regenerate_file_lists.pl. Do
not mention prepare_perl_module_files.sh.
2018-08-16 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS: Run "gnulib --add-import strndup".
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS: Run "gnulib --add-import iconv".
* tp/Texinfo/XS: Run "gnulib --add-import strchrnul".
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS: Put subdirectories 'lib' and 'm4' inside new
subdirectory 'gnulib' (as is done in the top-level gnulib
import).
* tp/Texinfo/XS/Makefile.am (AM_CPPFLAGS, ACLOCAL_AMFLAGS, SUBDIRS)
(EXTRA_DIST),
* tp/Texinfo/XS/configure.ac (AC_CONFIG_MACRO_DIR, AC_CONFIG_FILES):
Update.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Makefile.am (AM_LOG_T_FLAGS): Remove -I flags.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XSLoader.pm (_find_file): Skip @INC hooks.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/configure.ac (AC_CONFIG_FILES):
Add parsetexi/Makefile.
* tp/Texinfo/XS/Makefile.am (SUBDIRS): Add parsetexi.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/ModulePath.pm.in: Add 'parsetexi' directory to
@INC.
<TEXINFO_XS_PARSER environment variable set>: Add a subroutine
to @INC to override Texinfo::Parser with Parsetexi.pm.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl <finding version number>: Refer to
Texinfo::Common instead of Texinfo::Parser.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl: Do not check for module files relative to the
installed location.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/ModulePath.pm.in: Do not account for the case of
one of $top_builddir and $top_srcdir being set but not the
other.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/Makefile.am: Do not install TestXS.pm, as this
is useless.
2018-08-15 Gavin Smith <gavinsmith0123@gmail.com>
* tp/texi2any.pl: Only call fileparse once (used for both
finding modules and translation files). Do not add a directory
to @INC that Texinfo::ModulePath takes care of adding. Add a
comment.
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* autogen.sh: Initialise tp/Texinfo/XS directory.
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* configure.ac (xs_srcdir): Update path from XS builddir to
srcdir.
* tp/Texinfo/XS/fail.pl: update path to TestXS module.
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/XS/Makefile.am (modulesdir): Change to new
location.
(CLEANFILES, EXTRA_DIST, xs_LTLIBRARIES): Add MiscXS files.
(MiscXS_la_CFLAGS): Define.
* tp/Texinfo/MiscXS/MiscXS.pm,
* tp/Texinfo/MiscXS/miscxs.h,
* tp/Texinfo/MiscXS/misc.c: Move to tp/Texinfo/XS.
* tp/Texinfo/MiscXS: Remove subdirectory.
* tp/Texinfo/ModulePath.pm.in: Refer to Texinfo/XS instead of
Texinfo/MiscXS.
* tp/Makefile.am (SUBDIRS, DIST_SUBDIRS): Remove Texinfo/MiscXS.
* configure.ac: Do not configure in tp/Texinfo/MiscXS.
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/XSParagraph, tp/Texinfo/XS:
Move subdirectory. This is intended to be a subdirectory for all
XS modules and to remove the duplication that exists between
tp/Texinfo/Convert/XSParagraph and tp/Texinfo/MiscXS.
* configure.ac,
* tp/Makefile.am,
* tp/Texinfo/Convert/Paragraph.pm,
* tp/Texinfo/ModulePath.pm.in,
* tp/Texinfo/XS/XSParagraph.xs,
* tp/Texinfo/XS/TestXS.pm:
Refer to Texinfo/XS subdirectory instead of
Texinfo/Convert/XSParagraph and namespaces beginning
"Texinfo::XS" instead of "Texinfo::Convert::XSParagraph".
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Init-test.inc: Do not check whether the terminal needs
to be reset with stty, because the command that caused this
problem ("read -t") is not being used any more.
2018-08-14 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/01use.t: Inline file tp/t/manual_tree.pl.
2018-08-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/ModulePath.pm.in (init): Remove subroutine
prototype.
* tp/Texinfo/ModulePath.pm.in (import): Wrap 'init' to allow
using module with "use Texinfo::ModulePath".
2018-08-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/01use.t, tp/t/02coverage.t, tp/t/03coverage_braces.t,
tp/t/04verb.t, tp/t/05paragraph.t,
tp/t/06columnfractions.t, tp/t/08misc_commands.t, tp/t/09indices.t,
tp/t/10menu.t, tp/t/16raw.t, tp/t/181quotation.t, tp/t/18itemize.t,
tp/t/19def.t, tp/t/20preformatted.t, tp/t/21multitable.t,
tp/t/22xtable.t, tp/t/25regions.t, tp/t/27float.t, tp/t/28heading.t,
tp/t/30sectioning.t, tp/t/50value.t, tp/t/55conditionals.t,
tp/t/57invalid_nestings.t, tp/t/58alias.t, tp/t/60macro.t,
tp/t/70value_and_macro.t, tp/t/80include.t, tp/t/accents.t,
tp/t/automatic_menus.t, tp/t/automatic_nodes.t, tp/t/collect_spaces.t,
tp/t/converters_tests.t, tp/t/do_master_menu.t, tp/t/docbook_tests.t,
tp/t/fix_texinfo.t, tp/t/html_tests.t, tp/t/index_before_item.t,
tp/t/info_tests.t, tp/t/languages.t, tp/t/nodenormalization.t,
tp/t/paragraph.t, tp/t/plaintext_tests.t,
tp/t/protect_character_in_texinfo.t, tp/t/reference_to_text_in_tree.t,
tp/t/test_brace_count.t, tp/t/test_fill_gaps_in_sectioning.t,
tp/t/test_is_content_empty.t,
tp/t/test_protect_hashchar_at_line_beginning.t, tp/t/test_sort.t,
tp/t/test_tree_copy.t, tp/t/xml_tests.t:
Add "use lib '.'" to add current working directory to @INC, the
Perl module include path. This directory is not present in @INC
in recent versions of Perl, which makes running tests from the
command-line (like "perl -w t/02coverage.t") difficult. Require
Texinfo::ModulePath to add all the other required directories to
@INC. As tp/Texinfo/ModulePath.pm is generated in the builddir,
this should work for out-of-source builds.
2018-08-13 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/01use.t: Use Texinfo::ModulePath.
2018-08-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (parser): Remove code allowing calling
this function in an object-oriented way.
2018-08-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (parser, duplicate_parser): Move code out
for duplicating an existing parser to a new function.
* tp/Texinfo/Convert/HTML.pm (output) <renamed nodes>: Call
'duplicate_parser'.
2018-08-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%default_parser_state_configuration):
Remove 'gettext' and 'pgettext'.
* tp/texi2any.pl ($parser_default_options): Remove 'gettext' and
'pgettext'.
* tp/Texinfo/Parser.pm (%parser_default_configration_subs):
(%parser_default_configration_no_subs): Remove. There are no
subroutines in the parser configuration any more.
(_setup_parser_default_configuration): Remove.
(parser, simple_parser): Call dclone directly instead of
_setup_parser_default_configuration. Do not check for CODE
values on the parser hash object when duplicating a parser.
(_setup_conf): Do not check for CODE values on the parser hash
object when copying a parser configuration.
(MODULE DOCUMENTATION SECTION): Remove mention of 'gettext'
configuration.
* tp/Texinfo/Common.pm (warn_unknown_language, warn_unknown_split):
Do not take a 'gettext' argument. Callers updated.
* tp/Texinfo/Report.pm (new): Do not set 'gettext' or 'pgettext'
on object.
* tp/Texinfo/Convert/Converter.pm (converter): Do not set
'gettext' or 'pgettext' on object.
2018-08-12 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (__, __p): Copy functions from
texi2any.pl. Place these in @EXPORT.
(%default_parser_state_configuration): Refer to __ and __p
for 'gettext' and 'pgettext' instead of stub functions.
* t/test_utils.pl: Call Locale::Messages::bindtextdomain for
'texinfo' domain as well as 'texinfo_document'.
* tp/texi2any.pl (__, __p): Remove definitions.
* tp/Texinfo/Report.pm (__, __p): Do not take a first argument
that is a parser object. Do not look at 'gettext' and
'pgettext' configuration values: call the functions in
Locale::Messages directly.
* tp/Texinfo/Common.pm,
* tp/Texinfo/Structuring.pm,
* tp/Texinfo/Parser.pm,
* tp/Texinfo/Convert/Converter.pm,
* tp/Texinfo/Convert/Docbook.pm,
* tp/Texinfo/Convert/HTML.pm,
* tp/Texinfo/Convert/IXIN.pm,
* tp/Texinfo/Convert/Info.pm,
* tp/Texinfo/Convert/Plaintext.pm,
* tp/Texinfo/Convert/TexinfoXML.pm:
Do not call __ or __p as methods on a parser object: use the
functions exported from Common.pm instead.
The only effect of this change should be in the test suite where
the default stub values for 'gettext' and 'pgettext' were used
for Texinfo. This should have no user-visible effect. The name
of the translation domain ("texinfo") is no longer set from the
name of the package in texi2any.pl, but this was already
hard-coded in Texinfo/Report.pm.
2018-08-10 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/test_utils.pl (test): Avoid method call syntax for
calling Texinfo::Parser::parser.
2018-08-10 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.texi (Customization Variables for @-Commands):
Mention that these variables are not passed on to TeX. Comment
out commands that only do anything for TeX. Report from Karl.
2018-08-10 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/HTML.pm (_parse_node_and_warn_external):
Call 'parse_node_manual' from Texinfo::Common instead of
Texinfo::Parser.
2018-08-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Report.pm (gdt): Remove unused call to pgettext.
2018-08-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/t/60macro.t (line_after_recursive_call): New test.
2018-08-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Transformations.pm (_new_node): Call
'parse_node_manual' from Texinfo::Common instead of
Texinfo::Parser, and do not call Texinfo::Parser::register_label.
2018-08-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Common.pm (%default_parser_state_configuration):
Do not allow customizing the root parser context.
* tp/Texinfo/Parser.pm (parser, simple_parser, _parse_texi):
Hard-code '_root' as the root context.
* tp/t/accents.t (test_accent_stack, test_enable_encoding):
Do not set 'context' on created parser. Allow for an extra
level of element nesting on the tree returned from the parser.
2018-08-09 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_register_label): Remove a useless
variable assignment. Remove an unused argument. Do not return
a value.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Infokey-config: Use C-x for aborting in echo area in
test suite.
* info/t/echo-area-no-completions.sh,
* info/t/index-apropos.sh: Update.
2018-08-07 Vitezslav Crhonek <vcrhonek@redhat.com> (tiny change)
* info/info.c (get_initial_file) <man page fallback>: Avoid
leaking memory.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Init-test.inc (run_ginfo, timeout_test): Record process
ID of background process that does the timing out, and kill this
process if ginfo exited first.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/infomap.c (default_emacs_like_ea_keys)
(default_vi_like_ea_keys): Remove ineffectual key bindings.
Remove key bindings for sequences beginning with ESC, as these
have not worked since ESC was made an abort key. Remove binding
for "C-x o" as it is not possible to escape the echo area any
more. Remove bindings for SPC and ? which are self-inserting.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Init-inter.inc: File removed. All contents moved into
Init-test.inc.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Init-inter.inc (init_interactive_test): New function,
containing commands that were at the top-level of this file.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/Init-inter.inc (run_ginfo): Run ginfo inside a subshell
with parentheses instead of using "sh -c". This enables the use
of "$@" and avoids the need for an extra level of quoting when
calling run_ginfo. Time out the process outside of the
subshell.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/t/echo-area-no-completions.sh: New test.
2018-08-07 Gavin Smith <gavinsmith0123@gmail.com>
* info/echo-area.c, info/session.c (pause_or_input):
Move to session.c. Do not pause if there is already buffered
input waiting.
2018-08-07 Vitezslav Crhonek <vcrhonek@redhat.com> (tiny change)
* info/echo-area.c (info_read_completing_internal): Avoid memory leak.
2018-07-13 Niko Tyni <ntyni@debian.org> (tiny change)
Perl 5.28 introduced thread-safe locales, where 'setlocale'
only affects the locale of the current thread. External code
like 'mbrtowc' isn't aware of this thread specific locale,
so we need to explicitly modify the global one instead.
Without this we could enter a busy loop in xspara__add_next
(Texinfo::Convert::XSParagraph) for UTF-8 documents when mbrtowc
returned -1.
* tp/Texinfo/Convert/XSParagraph/xspara.c (xspara_init)
[Perl version >= 5.28]: Call 'switch_to_global_locale' and
'sync_locale'.
2018-07-13 Niko Tyni <ntyni@debian.org> (tiny change)
* tp/Texinfo/Parser.pm (_parse_special_misc_command) <@clickstyle>:
Escape braces in regex to be compatible with recent Perl
versions.
2018-06-04 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Transformations.pm (_reference_to_arg):
Refer to 'args' array instead of 'brace_command_contents'.
(Makes a couple of tests failing since 2017-10-29 pass.)
2018-06-04 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Plaintext.pm (_convert):
When checking if a node name in a cross-reference includes a
`.', do not include in the check any manual name that may have
already been stored inside the paragraph formatter. Rical Jasan
reported that an error message mentioning the "node name" would
be given for output like "(gcc.info)Debugging Options" which is
confusing as the `.' is not in the node name "Debugging
Options". (bug-texinfo 2018-02-09)
2018-06-02 Gavin Smith <gavinsmith0123@gmail.com>
* info/nodes.c (info_node_of_tag_ext): Always call
node_set_body_start regardless of the value of
preprocess_nodes_p. Benno Schulenberg reported that searching
commands could find matches in the node information line if the
use set "hide-note-references=On".
2018-06-02 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\pdfgettoks): Add a comment.
2018-03-10 Paul Eggert <eggert@cs.ucla.edu>
* doc/texinfo.tex, contrib/psfonts-bronger.tex: Replace
"write-file-hooks" with "before-save-hook".
See https://lists.gnu.org/r/bug-gnulib/2018-03/msg00008.html.
2018-01-15 Gavin Smith <gavinsmith0123@gmail.com>
* README-hacking: Mention js/ subdirectory.
* js/README: Explain how to get git history of this project and
refer to some background info on the web.
2018-01-09 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\definefontsizexi, \definefontsizex):
Add new set of fonts \sevenrm, \seventt, \sevenbf, \sevenit,
\sevensl, \sevensf \sevensc, \seventtsl, \seveni, \sevensy.
(\resetmathfonts): Use them for math mode superscript.
Vincent Lefevre reported that @var didn't work in superscript in
math mode (bug-texinfo, 2017-11-27).
2018-01-09 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\assignfonts): Add a comment explaining
purpose of \ifont and \syfont.
2017-12-26 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\setupmarkupstyle): Remove conditionals used
for checking "markup styles in effect". They are not used
anywhere.
2017-12-26 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\codequoteright, \codequoteleft): Check if we
are still in a monospace font in case we are inside @r, like
@code{@r{`}}. Report from rms.
2017-12-18 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\resetmathfonts): Revert last change. Wrong
font used in footnote superscripts reported by Mohammad Akhlaghi.
2017-12-18 Bruno Haible <bruno@clisp.org>
* util/htmlxref.cnf: Use https for sourceware.org, puszcza.gnu.org.ua,
gcc.gnu.org, www.complang.tuwien.ac.at, www.gmplib.org, www.gnupg.org,
ftp.gwdg.de, www.nano-editor.org, cran.r-project.org, tug.org.
Update info for avl, flex, myserver, readline.
2017-12-11 Gavin Smith <gavinsmith0123@gmail.com>
* util/htmlxref.cnf: Use https instead of http for links to
manuals on gnu.org. Report from Bruno Haible.
2017-12-02 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\resetmathfonts): Define \scriptfont and
\scriptscriptfont in addition to \textfont. Vincent Lefevre
reported that @var didn't work in superscript in math mode
(bug-texinfo, 2017-11-27).
2017-11-17 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\enddoublecolums): Correct a conditional
checking \pagetotal.
2017-11-16 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\balancecolumns): If it appears that we have
been called on to balance too much material for the final page
of the double column material, output some of it using
\doublecolumnout and leave remainder on current page.
Otherwise, two problems occurred with the output: first, that
the material on the last page of the index extended too low on
the page (see "Final page of index hard to balance" case in
texinfo-tex-test.texi); and second, a blank page could occur
before the final page of the index (report from Arnold Robbins)
(this happened because of marks output in \savemarks and
\restoremarks).
(\enddoublecolumns): Only change the output routine back to the
usual one and reset all the formatting variables if no extra
material has been added to the current page. Otherwise, repeat.
2017-11-09 Gavin Smith <gavinsmith0123@gmail.com>
* doc/texinfo.tex (\pagesizes): Add one inch to height and width
so that text will still fit on the page if @pagesizes is used
with a small width. Report from Christopher Diemech
2017-10-12.
2017-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi): Remove all calls to
_register_command_arg that added elements to
'brace_command_contents' array. Look at 'args' instead
of 'brace_command_contents'.
(_remove_empty_content_arguments): Do not check for a
'brace_command_contents' array.
(module documentation section): Remove mention of
brace_command_contents.
* tp/Texinfo/Report.pm (_substitute): Do not look at
'brace_command_contents' array.
* tp/Texinfo/Convert/Converter.pm (_table_item_content_tree):
Do not call _register_command_arg.
The effect of this change is to make the parse tree less cyclic,
which should make it easier to understand, for example when it
is printed. It may also reduce memory use.
2017-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/DocBook.pm (_convert):
Use 'args' array instead of 'brace_command_contents' array.
2017-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Plaintext.pm (_image),
* tp/Texinfo/Convert/IXIN.pm (output_ixin),
* tp/Texinfo/Convert/HTML.pm (_convert_explained_command, output):
Use 'args' array instead of 'brace_command_contents' array.
2017-10-29 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/Plaintext.pm (_convert)
(_image_formatted_text, _image):
Use 'args' array instead of 'brace_command_contents' array.
2017-10-28 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Check if array
elements are defined to avoid creating them accidentally.
2017-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Replace use
of 'brace_command_contents' array in the 'extra' hash with
the 'args' in the main tree.
2017-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_isolate_last_space): For
'brace_command_arg' only, save trailing spaces in
'spaces_after_argument' extra value instead of adding a
'spaces_at_end' element to the main tree.
* tp/Texinfo/Convert/TexinfoXML.pm (_convert),
* tp/Texinfo/Convert/Texinfo.pm (_expand_cmd_args_to_texi):
Update to look at 'spaces_after_argument' after an argument to
a brace command.
* tp/Texinfo/Convert/Converter.pm
(_collect_leading_trailing_spaces_arg): Check for a
'spaces_after_argument' record to find trailing spaces.
2017-10-26 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Convert/TexinfoXML.pm (_leading_spaces_arg): Remove
unused.
2017-10-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/MiscXS/misc.c (xs_abort_empty_line): Update to
match Perl implementation.
* tp/Texinfo/Parser.pm (import): Re-enable XS overrides.
2017-10-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi): Rename reference to spaces
element from 'spaces_before_argument' to 'spaces_before_argument_elt'.
(_abort_empty_line): Replace 'spaces_before_argument_elt' value
with 'spaces_before_argument', a simple string value.
(_close_current),
(_parse_texi) <new line>: Call '_abort_empty_line' to remove
spaces element.
* tp/Texinfo/Convert/Converter.pm
(_collect_leading_trailing_spaces_arg),
* tp/Texinfo/Convert/Texinfo.pm (convert, _expand_cmd_args_to_texi),
* tp/Texinfo/Convert/TexinfoXML.pm (_leading_spaces_before_argument):
Access 'spaces_before_argument' as a string value.
2017-09-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_abort_empty_line): Change code to
keep track of which element refers to space element in its
'extra' hash. No functional change intended.
2017-09-25 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_abort_empty_line): Change the name of a
variable. Use a variable to simplify the code.
2017-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_abort_empty_line): Remove
'empty_spaces_before_argument' element from main tree.
(import): Temporarily disable XS overrides.
(_parse_texi) <new line>: Remove an
'empty_spaces_before_argument' element.
Otherwise it will not be removed in '_abort_empty_line' because
a 'new_line' element is in the way.
Do not call '_abort_empty_line' for a continuation with @ inside
a def command, as this leads to an 'empty_spaces_before_argument'
element being removed when it was not before.
(close_current) <bracketed>: Remove an
'empty_spaces_before_argument' element. This happens for some
cases of malformed input.
* tp/Texinfo/Convert/Texinfo.pm (convert, _expand_cmd_args_to_texi):
Check for a 'spaces_before_argument' extra value, and output the
spaces in it.
* tp/Texinfo/Convert/TexinfoXML.pm (_leading_trailing_spaces_arg):
Call _leading_spaces_before_argument to check for
'spaces_before_argument' extra value.
* tp/t/test_tree_copy.t: Disable all tests, temporarily.
* tp/Texinfo/Convert/Converter.pm
(_collect_leading_trailing_spaces_arg): Check for
'spaces_before_argument' extra value.
The effect of this change is to make the parse tree less cyclic,
which should make it easier to understand.
2017-09-24 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <after ',' separating arguments>:
Save 'spaces_before_argument' on element corresponding to argument.
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Call
_leading_spaces_before_argument instead of _leading_spaces_arg.
This uses the 'spaces_before_argument' element we saved in
'_parse_texi'.
2017-09-22 Mathieu Lirzin <mthl@gnu.org>
* Makefile.am (CLEANFILES): Remove $(noinst_SCRIPTS) to
keep 'pre-inst-env' when doing 'make clean'.
2017-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/Texinfo/Parser.pm (_parse_texi) <'{' seen>: Set
spaces_before_argument on element for the argument itself, not
for the element corresponding to the command, which is the
parent element.
* tp/Texinfo/Convert/TexinfoXML.pm (_convert): Allow 'spaces'
attribute to be set for the element output for the first
argument to a brace command.
2017-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* tp/maintain/change_perl_modules_version.pl: Account for
letters after version number.
2017-09-22 Gavin Smith <gavinsmith0123@gmail.com>
* configure.ac: Increase version to 6.5dev.
2017-09-22 Mathieu Lirzin <mthl@gnu.org>
* build-aux/pre-inst-env.in: New file, for launching programs
from build directory.
* Makefile.am (noinst_SCRIPTS, CLEANFILES): Add pre-inst-env.
2017-09-16 Paul Eggert <eggert@cs.ucla.edu>
* doc/texinfo.tex: Use 'https' in preference to 'http' in comments.
2017-09-12 Gavin Smith <gavinsmith0123@gmail.com>
6.5 release.
* configure.ac, NEWS, util/texi2dvi, util/texi2pdf,
doc/refcard/txirefcard.tex: Version number.
Copyright 2017, 2018 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.