2021-02-23  Gavin Smith  <gavinsmith0123@gmail.com>

	pretest 6.7.91

	* configure.ac, util/texi2dvi, util/texi2pdf,
	* info/info.c (main), install-info/install-info.c (main):
	version, 2021.

2021-06-08  Gavin Smith  <gavinsmith0123@gmail.com>

	Document @indent @image{}

	* doc/texinfo.texi (Image Syntax): Document that @image commands
	should sometimes be preceded by @indent or @noindent.

2021-05-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix afl-fuzz error
	
	* info/info-utils.c (scan_reference_label): Avoid advancing
	pointer if we are already at the end of the buffer, in the case
	of a malformed input file.  Report from Nathaniel Beaver for file
	generated by afl-fuzz.

2021-05-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix afl-fuzz error

	* info/info-utils.c (copy_input_to_output): Avoid calling
	copy_converting with negative argument in case of malformed
	input file.  Report from Nathaniel Beaver for file generated
	by afl-fuzz.

2021-05-04  Per Bothner  <per@bothner.com>

	* js/info.js (updater.navigate): Relative movement without node links.
	For example if the current item is a @subsection without a @node,
	requesting the 'next' item can't use the Next link as there is none.
	Instead, use the nesting in the sidebar ToC.

	* js/info.js: Use keydown event handler instead of keyup.
	The former is more standard.

2021-05-02  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (_convert_image_command): format
	@image with an <img> tag in preformatted environment.  Report from
	Per Bothner.

2021-05-02  Per Bothner  <per@bothner.com>

	* js/info.js: Fix sidebar-update after selecting non-section link.
	For example index link or @anchor are not sections,
	hence not in the ToC.  To update the sidebar we need to find the
	the sectioning element surrounding the anchor.
	This involves some back-and-forth messaging.

2021-05-02  Vitezslav Crhonek <vcrhonek@redhat.com>

	* contrib/fix-info-dir:  Remove unused variable

2021-05-02  Vitezslav Crhonek <vcrhonek@redhat.com>

	* util/texi2dvi (input_file_name_decode):
	Fix ShellCheck SC1083 warning
	https://github.com/koalaman/shellcheck/wiki/SC1083
	This is only for suppresing the warning, both '{' and '}'
	are supposed to be literals.

2021-05-02  Gavin Smith  <gavinsmith0123@gmail.com>

	Avoid extra newline after @titlefont

	* tp/Texinfo/Convert/Plaintext.pm (_convert) <@titlefont>:
	Remove newline from end of output as a newline following
	@titlefont{...} is now output separately since change on
	2021-04-25.

2021-04-29  Per Bothner  <per@bothner.com>

	* js/info.js (Text_input.keyup): At end hide sidebar if narrow.

	* js/info.js (Sidebar.render): Fix initial rendering.

	* js/info.css: Style hide-sidebar buttom vertically.

2021-04-28  Per Bothner  <per@bothner.com>

	* js/info.js: Change auto-hide of sidebar in narrow windows.
	Now clicking in sidebar in narror window doesn't hide sidebar,
	but click in main page does - however, navigation is supressed.
	Also changed the show/hide-sidebar logic to work using the
	store/action/dispatch framework.

2021-04-27  Per Bothner  <per@bothner.com>

	* js/info.js (config.LOCAL_HTML_PAGE_PATTERN): Handle local links.
	I.e. links like "#foo" on the same page.

	* js/info.js (cache_index_links): Fix thinko alink->link.

2021-04-27  Per Bothner  <per@bothner.com>

	Change how "show/hide sidebar" button is displayed.
	Move it to upper-left and use arrows, to hopefully both
	make it more visible and take less space in hide mode.
	* js/info.js (add_header): Change DOM structure to make this work.
	(hide_sidebar_if_narrow): New function.
	* js/info.css: Styling changes for desired show/hide style.

	Improve determination of whether links are internal or not.
	* js/info.js (config.LOCAL_HTML_PAGE_PATTERN): New regex pattern
	(maybe_pageref_url_p): Use LOCAL_HTML_PAGE_PATTERN.

2021-04-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Avoid suppressing first paragraph indent with an @image.

	* doc/texinfo.tex (\imageindent): New macro.
	(\image): Use it.
	* doc/texinfo-tex-test.texi (Paragraph formatting): New section.

	Inconsistency between Info and TeX reported by Werner Lemberg.

2021-04-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Whitespace after @image

	* tp/Texinfo/Convert/Plaintext.pm (_convert): Output any
	top-level whitespace element.  This allows a blank line
	of whitespace to appear after an @image that is not part
	of a paragraph.

	* tp/t/05paragraph.t (sole_image): New test.

	Report from Werner Lemberg.

2021-04-25  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/nodes.c (get_tags_of_indirect_tags_table):
	Free arrays in case of malformed Info file.
	Report from Vitezslav Crhonek.

2021-04-25  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/nodes.c (get_tags_of_indirect_tags_table):
	Reduce indentation of code.

2021-04-25  Vitezslav Crhonek <vcrhonek@redhat.com>  (tiny change)

	Fix memory leaks.

	* info/nodes.c (get_nodes_of_tags_table):
	info_create_tag returns a pointer to a newly allocated TAG structure.
	Before continuing to the start of the loop it is necessary to free the
	current TAG structure, because the pointer will be overwritten by
	new value in the next iteration of the loop.

2021-04-25  Vitezslav Crhonek <vcrhonek@redhat.com>  (tiny change)

	Fix memory leaks.
	
	* info/makedoc.c (process_one_file):
	The memory is freed for both pointers at the end of the loop.
	But there is one break that leaves the loop without freeing them.
	* info/session.c (info_goto_invocation_node):
	The value of 'default_program_name' is assigned by
	program_name_from_file_name() function.
	Its description says 'Return value should be freed by caller.'
	That was not done in this case.

2021-04-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix memory leaks.
	
	* info/m-x.c (describe_command): Always free a variable.
	* info/filesys.c (info_file_find_next_in_path): Do not free a string
	that shouldn't be freed.

	Reports from Vitezslav Crhonek.

2021-04-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\doxeteximage):
	Add an \hbox around \XeTeXpdffile or \XeTeXpicfile to avoid
	over-long line.  Report from Werner Lemberg.

2021-04-08  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\end): Add % after opening brace to
	prevent spurious space being added to the output.  Report
	from Werner Lemberg for "@end iftex".

2021-03-27  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/t/Init-test.inc (run_ginfo): Increase timeout for
	test from 3 to 5 seconds in an attempt to stop test failures.

2021-03-24  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Multitable Column Widths): Mention effect
	of inter-column space for @columnfractions.

2021-03-23  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\indexnofonts): Do not define any of the
	non-English letter glyph commands with a special definition
	that removes a following pair of braces, as these braces are
	not always present in the definitions for e.g. Unicode characters.
	This could lead to an error message within \setpdfdestname where
	\indexnofonts was called.  Report from Werner Lemberg for XeTeX.

2021-03-22  Per Bothner  <per@bothner.com>

	* js/info.js: Add tooltips for show/hide sidebar button.
	(SHOW_SIDEBAR_TOOLTIP, HIDE_SIDEBAR_TOOLTIP): Tooltip text.
	(show_sidebar): Update tooltips on show/hide of sidebar.

	* js/info.js (maybe_pageref_url_p): Recognize "index.html#PAGE".

2021-03-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\multitableparskip, \multitableparindent)
	(\multitablecolspace, \multitablelinespace):
	Try removing these and hardcoding values.  \multitablelinespace
	was not used anyway and a comment referred to a @multitablecolmargin
	sequence which didn't exist.  This should make the code a bit
	easier to understand.
	(\setmultitablespacing): Remove.

2021-03-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\multitable): Fix indendation of code.  Remove
	useless macro \multistrut replacing it with \strut (always set to
	this since October 2004).  Remove comment about space added by
	\multistrut, as no such space was added.  Remove documentation of
	@multitable as this is in the manual.  Remove comment crediting
	original author of macros, recorded here as
	Amy Hendrickson, 8/18/94, 3/6/96
	(\tab): Remove comment from April 1999 saying what used to be
	in the code.
	(\alphaenumerate, \capsenumerate): Remove undocumented aliases.


2021-03-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Narrow @multitable nested within @quotation

	* doc/texinfo.tex (\domultitable): Subtract \leftskip before
	calculating column widths as fraction of \hsize.
	* doc/texinfo-tex-test.texi (@multitable): New section.
	
	Report of excessive width from Werner Lemberg.

2021-03-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix NetBSD build

	* tp/Texinfo/XS/parsetexi/api.c,
	* tp/Texinfo/XS/parsetexi/errors.c: Surround calls to gettext
	with #ifdef ENABLE_NLS.

2021-03-12  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/errors.c (bug): Don't call abort.

2021-03-11  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/coverage_macro.texi: Add blank lines to isolate
	test result differences for some glyph commands.

2021-03-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (@copying): Coalesce copyright years where possible.
	(Reporting Bugs): Refer bugs in Info mode to Emacs developers.

2021-03-05  Patrice Dumas  <pertusus@free.fr>

	* Pod-Simple-Texinfo/pod2texi.pl (pod2texi_help): improve
	help message formatting by removing incorrect dots for options.
	Make easier to translate strings by splitting help message,
	splitting options, avoiding \n in translated messages.
	Report by Benno Schulenberg
	* tp/texi2any.pl (makeinfo_help): add TODO to remember to
	avoid \n in translated strings and split translated options
	messages by option.  To be done when strings change.

2021-03-03  Per Bothner  <per@bothner.com>

	* js/info.js (absolute_url_p): Replace with maybe_pageref_url_p.
	New function checks if URL may be cross-reference to local page.
	Prevents failure on links to images or stuff in sub-directories.
	(config.LOCAL_HTML_PAGE_PATTERN): Patternfor HTML files.

2021-03-02  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Invoking pod2texi): Remove  reference to
	non-existent webpage.

2021-03-01  Gavin Smith  <gavinsmith0123@gmail.com>

	GNULIB_MDA_FDOPEN=0

	* tp/Texinfo/XS/configure.ac: Set GNULIB_MDA_FDOPEN=0 to
	prevent definition of fdopen in gnulib-provided stdio.h, which
	clashes with Perl header files.  Report by Eli Zaretskii.
	Suggested fix from Bruno Haible.

2021-03-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash):
	Cast pointer to intptr_t before IV to prevent a compiler warning
	on MinGW.  Suggestion from Eli Zaretskii.

2021-02-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Simplify, update, document infrastructure

	* util/srclist.txt: Remove all gettext lines as this should
	be taken care of by gettextize.
	* util/srclist-txi: Likewise.
	* README-hacking: Explain how to check that files have been updated.
	* INSTALL.generic: Update from gnulib.
	* build-aux/config.rpath: Update from gnulib.
	* autogen.sh: Remove obsolete comment about keeping files in CVS.

2021-02-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Run "autoreconf --verbose --force --install" to update
	files under build-aux.  Don't commit changes to INSTALL or
	build-aux/texinfo.tex.

2021-02-27  Gavin Smith  <gavinsmith0123@gmail.com>

	No raw newline in awk string constant

	* texindex/ti.twjr (usage, version): Avoid multi-line character
	string as it appears not to be supported by awk under AIX 7.1.
	Report by Bruno Haible.

2021-02-27  Gavin Smith  <gavinsmith0123@gmail.com>

	Avoid cleaning generated files

	* tp/Texinfo/XS/Makefile.am (CLEANFILES): Remove .c files that
	are generated from .xs files, as these .c files are distributed
	in the tarball and shouldn't be cleaned.
	(.xs.c): Generate .c files under $(srcdir).

	Report from Bruno Haible.

2021-02-27  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Report.pm (gdt): Set and restore LC_ALL rather than
	LC_MESSAGES as the latter doesn't work on MS-Windows.  Report
	from Eli Zaretskii.

2021-02-27  Gavin Smith  <gavinsmith0123@gmail.com>

	* texindex/Makefile.am (bin_SCRIPTS): Remove dist_ prefix
	from variable to prevent distribution of the generated texindex
	wrapper script.  Report by Bruno Haible.

2021-02-27  Eli Zaretskii  <eliz@gnu.org>

	* info/session.c (read, _read): #undef before redefining, to avoid
	compilation warning due to Gnulib's unistd.h redefining them.

2021-02-24  Per Bothner  <per@bothner.com>

	* js/info.js: Add button to show/hide sidebar.  Other polishing.
	(Sidebar): Create show/hide button.
	(on_click): Handle clicks on show/hide button.
	Also automatically hide sidebar on click when narrow.
	(Sidebar): Copy _href property when copying ToC.
	* js/info.css: Various adjustments and tricks to make it work.

2021-02-23  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Common.pm (%default_customization_values),
	(%default_parser_customization_values),
	(%default_structure_customization_values),
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (%parser_default_configuration),
	(parser),
	* tp/Texinfo/ParserNonXS.pm (%parser_default_configuration),
	* tp/texi2any.pl:
	split %default_customization_values in two, as
	%default_parser_customization_values and
	%default_structure_customization_values differentiating
	parser options and options for Texinfo::Structuring.
	* tp/Texinfo/Structuring.pm (_complete_check_menus_directions),
	(complete_node_tree_with_menus, nodes_tree),
	* tp/t/test_utils.pl (test), tp/texi2any.pl: rename
	_complete_check_menus_directions() as complete_node_tree_with_menus(),
	call _check_referenced_nodes in that function and do not call
	_complete_check_menus_directions in nodes_tree.
	Call Texinfo::Structuring::set_menus_node_directions() and
	Texinfo::Structuring::complete_node_tree_with_menus() in
	texi2any.pl only if 'FORMAT_MENU' is set to 'menu'.
	* tp/texi2any.pl: call $converter_class->converter_defaults()
	with $cmdline_options argument to pass TEXI2HTML customization
	variable for HTML output.

2021-02-23  Patrice Dumas  <pertusus@free.fr>

	* tp/texi2any.pl: use a special value if 'FORMAT_MENU' is set on
	the command line that is replaced by the output format default
	when the output format is known if the output format default is
	not nomenu, or set to 'menu'.

2021-02-23  Gavin Smith  <gavinsmith0123@gmail.com>

	pretest 6.7.90

	* configure.ac, util/texi2dvi, util/texi2pdf: Version.
	* info/info.c (main), install-info/install-info.c (main): 2021
	* README-hacking: Edit release instructions.

	* info/dir.c (dir_entry_of_infodir): Do not call
	info_check_compressed with a null argument.

2021-02-22  Patrice Dumas  <pertusus@free.fr>

	Remove unused code.

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (%tree_informations)

2021-02-22  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Structuring.pm (set_menus_node_directions)
	(nodes_tree, _section_direction_associated_node), 
	(_complete_check_menus_directions): separate
	set_menus_node_directions() and _complete_check_menus_directions()
	from nodes_tree() to distinguish better code related to menus
	and not related to menus.  Add _section_direction_associated_node()
	as a small helper function from node_tree too to be able to reuse 
	the code.
	* tp/t/test_utils.pl, tp/texi2any.pl: call
	set_menus_node_directions.
	* tp/Texinfo/Structuring.pm (nodes_tree): set Top node next
	using the sectioning structure first.  Avoid resetting node directions
	based on Top node first menu entry the direction was already set.

2021-02-21  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (nodes_tree): use first non Top node
	for Top node next if there is no menu information.

2021-02-21  Patrice Dumas  <pertusus@free.fr>

	use first section in file direction for footer if split at section or
	chapter

	* tp/Texinfo/Convert/HTML.pm, tp/init/book.pm: add 
	CHAPTER_FOOTER_BUTTONS to be able to specify different 
	customization for footer and header when split at chapter.
	(_translate_names, %BUTTONS_*): add FirstInFile* directions.
	(_default_format_element_footer)
	(_default_panel_button_dynamic_direction)
	(_default_panel_button_dynamic_direction_section_footer)
	(_set_variables_texi2html):
	reenable footer when there are more than one element in a file
	and use FirstInFile* directions for section and chapter footer 
	formatting.
	(_default_panel_button_dynamic_direction_footer)
	(_default_panel_button_dynamic_direction_node_footer): rename
	_default_panel_button_dynamic_direction_footer() as
	_default_panel_button_dynamic_direction_node_footer().
	Report from Per Bothner.

2021-02-21  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Structuring.pm (nodes_tree):
	Only call _check_referenced_nodes if FORMAT_MENU is not
	"sectiontoc".  From Patrice.

2021-02-21  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Structuring.pm (_check_referenced_nodes):
	consider a node to be referenced if it is a target of a
	@*ref command.  Report by Gavin.

2021-02-20  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Structuring.pm (elements_file_directions):
	add FirstInFile* directions for every element.

2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Structuring.pm (_check_referenced_nodes):
	New function to centralize code for checking referenced nodes.
	(nodes_tree): Call it.

2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	No footer for several nodes in a file.

	* tp/Texinfo/Convert/HTML.pm (_default_format_element_footer):
	Do not output the element footer if there is more than one node
	in the output file, using the 'elements_in_file_count' hash.

	These changes lead to a few changes as to whether a rule
	is output at the end of a file but the output appeared
	acceptable in the cases I checked.

	Per Bothner reported that the footer would
	be relative to the last node output in the file for
	--split=section, while it would make more sense to have this
	relative to the first node output in the file.  As this is
	not possible to do just now, just omit it.

2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix display of _ in section name.

	* doc/texinfo.tex (\setupdatafile): Read aux file giving
	_ | < and > catcode "active".

	* doc/texinfo-tex-test.texi (~[]"_|<>$#&%+\) Add a test
	of a cross-reference.
	
	Werner Lemberg reported that an underscore in a section title
	would be printed as a dot accent when using
	"@xrefautomaticsectiontitle on".


2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo-tex-test.texi (~[]"_|<>$#&%+\) Add example.

2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* README-hacking: Add advice on using git.

2021-02-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\refx): Remove useless second argument
	which is nearly always empty.

2021-02-20  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (_convert_heading_command):
	add a div for sections without nodes.
	(_default_format_element_footer, _default_format_end_file):
	call close_registered_sections_level() in
	_default_format_element_footer() and not in
	_default_format_end_file().
	* tp/t/init/t2h_singular.init (singular_format_footer):
	call close_registered_sections_level().

2021-02-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix compiler warnings.
	
	* tp/Texinfo/XS/XSParagraph.xs (xspara_new): Remove code
	setting an unused variable.  It appears that we are not
	blessing the return value into a class after all.
	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_line_command):
	Parentheses around assignment in conditional.
	* tp/Texinfo/XS/parsetexi/input.c (text_buffer_iconv): Handle
	KOI8 cases in switch statement.
	* tp/Texinfo/XS/parsetexi/macro.c (parse_macro_command_line):
	Remove unused label.

	Report from Per Bothner.

2021-02-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Reform parsetexi header files

	* tp/Texinfo/XS/parsetexi: Make header files include the other
	headers that they need.
	* tp/Texinfo/XS/parsetexi/command_data.awk,
	* tp/Texinfo/XS/parsetexi/element_types.awk: Output include guards
	in generated headers.
	* tp/Texinfo/XS/parsetexi/parser.c,
	* tp/Texinfo/XS/parsetexi/errors.c: (bug, fatal): Move to errors.c.

2021-02-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (_default_format_begin_file):
	Add viewport declaration as was already output for node
	redirection pages.  Report from Per Bothner.

2021-02-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi: Add include guards to all header files.

2021-02-17  Per Bothner  <per@bothner.com>

	* js/info.js (scan_toc): Change to how sidebar links are matched.
	This fixes updating the sidebar when using a http/https URL.

2021-02-16  Per Bothner  <per@bothner.com>

	* js/info.js: Fix [Contents] link by creating a fresh page-node for
	the ToC.  This is done by cloning the ToC from the index.html.
	Cloning is needed because the same table is used for the Sidebar.

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	srclist-txi fixes

	* contrib/gdoc: Remove file.  This saves us the trouble of
	working out if/how we should synchronize it with upstream.
	* util/srclist-txi, util/srclist.txt: Remove references to gsasl.

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/fdl.texi: Update to latest (URL change).

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* README-hacking: Revise release instructions.

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix for make po-check

	* po/POTFILES.in: Update
	* Makefile.in (po-check): check for parsetexi function calls

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix for make po-check

	* tp/t/html_tests.t (example_class): Change test to avoid false
	positive with "make po-check".

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix for make ccheck

	* doc/refcard/txirefcard.tex: Update to 6.8, 2021.  Remove
	@setfilename line from mandatory file beginning.  Add @displaymath.
	* doc/texinfo.texi (small): Add index entries for @smalldisplay
	and @smallindentedblock.

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	Pre-release fixes

	* configure.ac: Add dist-xz option.  Change TEXINFO_DTD_VERSION to
	6.8.
	* util/txicmdlist, util/txicustomvars: require Texinfo::ModulePath
	so that Locale::Messages can be found from Texinfo::Common.
	* tp/Texinfo/Common.pm: Make @variable_string_settables accessible
	outside of file.
	* doc/refcard/txivarcheck, util/txicustomvars:
	Fix to account for changes in manual and in Texinfo::Common.

2021-02-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/run_parser_all.sh (check_latex2html_and_tex4ht):
	Do not use 'continue' inside a function inside a loop.  Report
	from Vitezslav Crhon.

2021-02-15  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (_convert_element_type):
	Always call close_registered_sections_level to close <div>
	element rather than adding a '</div>' string, as it's possible
	that the <div> was never opened.

2021-02-14  Per Bothner  <per@bothner.com>

	* js/info.css: Adjustments to consistent margin/padding for index and other pages.

2021-02-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (_convert_heading_command):
	Only output a <div> for a @node with an associated section.
	Otherwise, output a <span> as an anchor.

2021-02-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/run_parser_all.sh: Print stderr for test error.
	* TODO: Remove item.

2021-02-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/maintain/regenerate_cmd_tests.sh: Remove code that
	was supposed to print diffs (ineffective since 2018-09-01).

2021-02-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/run_parser_all.sh: Print diffs for test failure.

2021-02-14  Patrice Dumas  <pertusus@free.fr>

	* Texinfo/Convert/HTML.pm (_contents_inline_element):
	Put inline contents elements in a <div>.  Report from 
	Per Bothner.

2021-02-14  Patrice Dumas  <pertusus@free.fr>

	* Texinfo/Convert/HTML.pm (%default_formatting_references, 
	converter_initialize, _default_*), init/book.pm, 
	init/chm.pm, init/html32.pm, t/init/mini_ker_t2h.init, 
	t/init/t2h_singular.init: use format_ in formatting functions 
	strings and in formatting function names, to make clearer
	that the references called through the converter with format_
	in the key point to the same functions.  Report from Gavin.

2021-02-13  Patrice Dumas  <pertusus@free.fr>

	* tp/init/book.pm (book_convert_heading_command): update with
	changes in HTML main converter.

2021-02-13  Per Bothner <per@bothner.com>

	Use the sectionning tree structure in HTML output

	* tp/Texinfo/Convert/HTML.pm (register_opened_section_level,
	close_registered_sections_level, _convert_heading_command,
	_convert_element_type, _default_end_file): use <div> for
	elements and keep the sectioning tree structure.

2021-02-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Do not call pclose on non-pipe.

	* install-info/install-info.c (readfile): Only
	call pclose if compression_program is set.  Suggestion from
	Hans-Bernhard Bröker.  Remove an incomprehensible comment.
	(open_possibly_compressed_file):  Revise main comment for function.
	Only fseek back to start of stream if not reading from a pipe.
	
	Barath Aron reported that install-info hung on Threos OS.

2021-02-09  gettextize  <bug-gnu-gettext@gnu.org>

	* gnulib/m4/gettext.m4: Upgrade to gettext-0.21.
	* gnulib/m4/iconv.m4: Upgrade to gettext-0.21.
	* gnulib/m4/intlmacosx.m4: Upgrade to gettext-0.21.
	* gnulib/m4/lib-link.m4: Upgrade to gettext-0.21.
	* gnulib/m4/nls.m4: Upgrade to gettext-0.21.
	* gnulib/m4/po.m4: Upgrade to gettext-0.21.
	* gnulib/m4/progtest.m4: Upgrade to gettext-0.21.
	* configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.21.

2021-02-09  Gavin Smith  <gavinsmith0123@gmail.com>

	Wrap or remove calls to abort in XS parser

	* tp/Texinfo/XS/parsetexi/parser.c (bug, fatal): New functions.
	* tp/Texinfo/XS/parsetexi: Use them throughout instead of calling
	abort, in order to give informative error messages.
	* tp/Texinfo/XS/parsetexi/end_line.c (end_line):
	Add code to deal with no description in menu entry.
	* tp/Texinfo/XS/parsetexi/macro.c (parse_macro_command_line):
	Do not abort on missing backslash in macro body.

2021-02-03  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix argument counting for nested @footnote.
	
	* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace)
	<context brace commands>: Pop the remaining args counter.
	* tp/t/55conditionals.t (inlinefmtifelse_nesting): New test.

2021-02-03  Gavin Smith  <gavinsmith0123@gmail.com>

	"Inline" command nesting

	* tp/Texinfo/ParserNonXS.pm (%default_valid_nestings),
	* tp/Texinfo/XS/parsetexi/parser.c (check_valid_nesting):
	Allow anything inside an inline command like @inlinefmt.
	
	The ccd2cue manual nested @footnote inside of @inlinefmtifelse.

2021-02-03  Gavin Smith  <gavinsmith0123@gmail.com>

	Copiable anchors tweaks
	
	* tp/Texinfo/Convert/HTML.pm
	(_convert_item_command, _convert_def_line_type, %css_map):
	Wrap <a> for copiable anchor in a <span> to avoid it flickering
	when mouse pointer moves over page.
	(_get_copiable_anchor, %css_map) Precede it with a space character
	rather than using CSS to get space before it, as this looks
	slightly better in Lynx.

2021-01-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Rename node to avoid .

	* doc/texinfo.texi (@small..., small): Rename node to "small"
	as periods in the node name are iffy.  Update or remove references to
	this node.
	
	'info texinfo smallexample' gave the error: Cannot find node '@small'

2021-01-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Encoding error message in standard format

	* tp/Texinfo/ParserNonXS.pm (_next_text),
	* tp/Texinfo/XS/parsetexi/input.c (convert_to_utf8): File name
	and line number in error message.

2021-01-31  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/display.c (hl_ref_rendition): Use bold for active link
	rather than no underline.

2021-01-31  Gavin Smith  <gavinsmith0123@gmail.com>

	@set txiindexhyphenignore for parsetexi

	* tp/Texinfo/XS/parsetexi/api.c (build_global_info): Set
	'txiindexhyphenignore' and others on 'info' hash.
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (get_parser_info):
	Copy settings from 'info' to 'values' hash.
	* tp/Texinfo/XS/parsetexi/macro.c (fetch_value): Remove out
	of date comment.
	* tp/t/09indices.t (transparent_sort_chars): New test.

2021-01-27  Patrice Dumas  <pertusus@free.fr>

	* tp/Makefile.am (dist_init_DATA): install init/highlight_syntax.pm.

2021-01-27  Patrice Dumas  <pertusus@free.fr>

	* tp/init/highlight_syntax.pm (highlight_process): add a postfix
	differing for input and output file to disambiguate files otherwise
	than with extension, in particular for the case of html 
	being highlighted.

2021-01-26  Patrice Dumas  <pertusus@free.fr>

	* Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	no extra class based on argument expansion for @smallexample
	as we would prefer if users did not use that @-command.
	From Gavin.

2021-01-26  Patrice Dumas  <pertusus@free.fr>

	* Texinfo/Convert/HTML.pm (%pre_class_commands,
	_convert_preformatted_command, _convert_indented_command,
	_convert_quotation_command, _convert): do not alias @small*
	commands in _convert() but in formatting functions, such that
	the information is not lost and corresponds to the parsing
	tree.  Alias @small* in %pre_class_commands too.

2021-01-26  Patrice Dumas  <pertusus@free.fr>

	* tp/init/highlight_syntax.pm (_get_highlighted_languages,
	%highlighted_languages_list, _get_language, highlight_process):
	In _get_highlighted_languages() call 'source-highlight --lang-list'
	to obtain the list of highlighted languages and highlight only
	languages that are in that list.

2021-01-26  Patrice Dumas  <pertusus@free.fr>

	* tp/init/highlight_syntax.pm (highlight_process): make sure that
	the text fragment to be highlighted ends with a newline.

2021-01-25  Patrice Dumas  <pertusus@free.fr>

	* Texinfo/Common.pm (add_valid_option), texi2any.pl
	(texinfo_add_valid_option): add Texinfo::Common::add_valid_option() 
	to dynamically add customization options.  Also add, in texi2any.pl,
	Texinfo::Config::texinfo_add_valid_option() as a wrapper around 
	Texinfo::Common::add_valid_option() in the Texinfo::Config
	namespace.
	* tp/init/highlight_examples.pm: rename as 
	tp/init/highlight_syntax.pm.  Fix extraction of highlighted 
	fragments.
	Use dynamically added HIGHLIGHT_SYNTAX_DEFAULT customization option
	to setup a default for the language of @example when not set.

2021-01-25  Patrice Dumas  <pertusus@free.fr>

	* tp/init/highlight_examples.pm: use --out-format=html5 to be more
	in line with the type of HTML produced by texi2any.

2021-01-25  Eli Zaretskii  <eliz@gnu.org>

	* info/pcterm.c (w32_kbd_read): Avoid gratuitous flickering of the
	MS-Windows console if screen-buffer size-change events are sent
	without any change in the screen dimensions.

2021-01-24  Patrice Dumas  <pertusus@free.fr>

	* tp/init/highlight_examples.pm: add an init file that does syntax 
	highlighting for @example with language argument using
	source-highlight.

2021-01-24  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (_attribute_class): ignore an empty
	extra classes expansion result string.

2021-01-24  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (_attribute_class,
	_convert_preformatted_command): pass extra classes as an array
	instead of a string.
	* tp/Texinfo/Convert/HTML.pm (_attribute_class, _protect_class_name):
	protect spaces in _attribute_class extra_classes.
	* tp/Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	use Texinfo::Convert::NodeNameNormalization::convert to convert
	@example arguments to text.

2021-01-24  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/TexinfoXML.pm (%commands_formatting),
	util/texinfo.dtd:
	use specific entities for guillemotleft and guillemotright
	to be able to distinguish from guillemetleft and guillemetright
	and be able to come back to the @-command that generated the 
	entity.

2021-01-23  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/TexinfoXML.pm (%commands_args_elements)
	(_convert), tp/t/xml_tests.t, tests/coverage_macro.texi, 
	util/texinfo.dtd, util/txixml2texi.pl: add support for @example
	multiple arguments in TexinfoXML output.  Update xml @example tests.
	* tp/Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	always initialize $extra_class.
	* configure.ac (TEXINFO_DTD_VERSION): Increase to '6.7dev'.

2021-01-23  Gavin Smith  <gavinsmith0123@gmail.com>

	KOI8 support

	* tp/Texinfo/XS/parsetexi/input.c (set_input_encoding)
	(convert_to_utf8): Support KOI8-R and KOI8-U, as these are
	documented to be supported.

2021-01-23  Gavin Smith  <gavinsmith0123@gmail.com>

	Validate UTF-8 input

	* tp/Texinfo/XS/parsetexi/input.c (convert_to_utf8): Use
	iconv to validate UTF-8 input, in case for example the
	encoding is not declared and the input is actually Latin-1.
	Handle conversion errors by advancing in input stream rather
	than dumping core.

2021-01-23  Patrice Dumas  <pertusus@free.fr>

	* tp/t/20preformatted.t: change name of test with example
	and add test with @display now that @example accepts arguments.

2021-01-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/parser.c (register_global_command):
	Fix equivalence of @summarycontents to @shortcontents.

2021-01-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/api.c (build_global_info2):
	Remove handling of @setcontentsaftertitlepage and
	@setshortcontentsaftertitlepage.

2021-01-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash):
	Create an empty contents array for an empty paragraph.
	* tp/t/08misc_commands.t (noindent_empty_para): New test.

2021-01-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/input.c (set_input_encoding): Save
	the encoding as an enum value rather than as a string.  Give
	a warning message if the encoding is unknown.
	(convert_to_utf8): Use this value instead of checking the string.
	Return string unaltered if conversion couldn't be initialized.

2021-01-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Handle Latin-15 encoding in XS parser
	
	* tp/Texinfo/XS/parsetexi/input.c (convert_to_utf8): Support
	ISO-8859-15 encoding.  (Used for GNU screen manual.)

2021-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	"seeentry" and "seealso" extra elements

	* tp/Texinfo/ParserNonXS.pm (_parse_texi),
	* Texinfo/XS/parsetexi/separator.c (handle_close_brace):
	Do not convert @seeentry or @seealso commands to strings.
	Save references to them as extra elements.  This allows
	more reliable checking of whether these commands were present.
	* Texinfo/Convert/DocBook.pm (_index_entry): Accomodate change.

2021-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm:
	Remove a pointless comment.

2021-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Advanced Indexing): Remove @ from
	@findex entries for seeentry and seealso.

2021-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix @seealso XS difference

	* tp/Texinfo/XS/parsetexi/parser.c (parse_texi): Isolate
	space before @seealso as was done for other commands that
	could occur in an index entry.
	* tp/Texinfo/Common.pm (%in_index_commands): Add 'subentry'.
	* tp/Texinfo/ParserNonXS.pm (_parse_texi): Do not leave an
	empty text element if isolating spaces from a text element that
	was all spaces to start with.
	* tp/t/09indices.t (seealso_duplicate): New test.

2021-01-17  Gavin Smith  <gavinsmith0123@gmail.com>

	Handle malformed menu.

	* tp/Texinfo/ParserNonXS.pm (_close_current),
	* tp/Texinfo/XS/parsetexi/close.c (close_current): Do not
	attempt to remove an empty menu_entry_description element
	from the contents.  It may not be in the contents but in the
	args instead, and also referenced elsewhere as an "extra" element.
	* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash): Always
	create contents array for ET_menu_entry_description.
	* tp/t/10menu.t (menu_node_unterminated): New test.

2021-01-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_block_command)
	<BLOCK_variadic>: Use a constant to represent unlimited args.
	* tp/Texinfo/XS/parsetexi/separator.c (handle_comma): Do not
	decrement counter if its value is this constant.

2021-01-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/end_line.c (parse_line_command_args):
	Give warnings if try to redefine one of the predefined indices.

2021-01-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace) <@U>
	Correct argument check.
	* tp/t/02coverage.t (invalid_U): Add another use of @U.

2021-01-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/end_line.c (parse_line_command_args)
	<@defindex>: No warning if index already exists (to match the
	Perl code).

2021-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_block_command)
	<BLOCK_variadic>: Start counter at -2 rather than -1.

2021-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	Attempt to recover from input encoding errors.
	
	* tp/Texinfo/ParserNonXS.pm (_next_text): Trap input errors
	and if caught, strip out non-ASCII bytes from input.

2021-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	Simply end-of-sentence handling.
	
	* Texinfo/XS/xspara.c (xspara_add_text): Always double the end of
	sentence space here when it has to be doubled, rather than
	sometimes relying on it being done later in xspara_add_next.  This
	is simpler and more reliable.
	(xspara__add_next, xspara_set_space_protection): Don't handle
	end of sentence spaces.

	* tp/Texinfo/Convert/ParagraphNonXS.pm (add_text, _add_next):
	The same.

2021-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	end of sentence space for set_space_protection
	
	* tp/Texinfo/XS/xspara.c (xspara_set_space_protection):
	Double end-of-sentence space if at end of sentence.
	* tp/t/03coverage_braces.t (w_end_sentence): New test.

2021-01-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/ParserNonXS.pm (_setup_conf): Merge 'info' hash
	from conf rather than replacing with it.  Otherwise giving
	--no-validate flag to texi2any led to character encoding differences
	in the output.

2021-01-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/t/paragraph.t: Update calls to set_space_protection.

2021-01-13  Gavin Smith  <gavinsmith0123@gmail.com>

	void return type for set_space_protection

	* tp/Texinfo/Convert/ParagraphNonXS.pm (set_space_protection):
	Do not return an empty string.  Callers updated.
	* tp/Texinfo/XS/xspara.c (xspara_set_space_protection): The same.

2021-01-13  Gavin Smith  <gavinsmith0123@gmail.com>

	No line counting for set_space_protection.
	
	* tp/Texinfo/Convert/Plaintext.pm (_convert): Do not wrap
	any calls to set_space_protection with _count_added as
	set_space_protection does not reset the line counter and
	this can lead line numbers in index entries to be too high.
	* tp/t/09indices.t (w_lines_count): New test.

2021-01-13  Gavin Smith  <gavinsmith0123@gmail.com>

	Simply paragraph formatter.
	
	* tp/Texinfo/XS/xspara.c (two_spaces_only): Remove function.
	(xspara_add_text): Simply use two spaces at the end of a
	sentence, rather than processing space characters from the input.
	This has a potential change to the output if exotic spaces were used.
	* tp/Texinfo/Convert/ParagraphNonXS.pm (add_text): The same.
	* tp/Texinfo/XS/xspara.c (xspara_add_text): Do not continue the loop
	after this, as this can rarely lead to calls to xspara__cut_line
	or xspara__end_line being missed later on in the loop body.

2021-01-13  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/xspara.c (two_spaces_only): Split out function
	for clarity.
	(xspara_add_text): Copy some code to each case of an if statement.

2021-01-12  Gavin Smith  <gavinsmith0123@gmail.com>

	* NEWS, doc/texinfo.texi (@example): Document that @example
	can take an argument.

2021-01-12  Gavin Smith  <gavinsmith0123@gmail.com> and
            Patrice Dumas  <pertusus@free.fr>

	Separate @example args with commas.

	* tp/Texinfo/XS/parsetexi/command_data.txt: Use BLOCK_variadic
	for @example.
	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_block_commands):
	Start remaining args counter at -1 for BLOCK_variadic.

	* tp/Texinfo/Common.pm (%block_commands):
	Use 'variadic' for 'example'.
	* tp/Texinfo/ParserNonXS.pm (_parse_texi) <variadic block command>:
	Set remaining_args value to -1.

	* tp/Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	Concatenate any arguments to example with intervening spaces.
	
	* tp/t/html_tests.t (example_class, example_multi_class): New tests.

2021-01-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/Makefile.am (wwwdoc-build): Add options for using MathJax.

2021-01-01  Gavin Smith  <gavinsmith0123@gmail.com>

	CFLAGS for XS module checks

	* tp/Texinfo/XS/configure.ac: Set CFLAGS and LDFLAGS before
	running more tests, using Perl configuration values.  This is
	intended to make results from the AM_GNU_GETTEXT checks reliable
	on Solaris 11, where gettext was found to work when it didn't.

	* tp/Texinfo/XS/configure.ac: Change AC_HELP_STRING to AS_HELP_STRING.

2021-01-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* configure.ac: Print informative message if we
	are not going to try to build XS modules.

2021-01-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Avoid compiler warning

	* tp/Texinfo/XS/parsetexi/extra.c (add_extra_integer)
	* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash): Use
	wider integer type to avoid compiler warning.

2020-12-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Document INFO_JS_DIR.
	
	* TODO,
	* doc/texinfo.texi (HTML Customization Variables):
	Document INFO_JS_DIR.

2020-12-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions

	* doc/texinfo.texi (References): cross reference -> cross-reference
	(Cross Reference Commands): rm reference to @inforef
	(Info Format FAQ): Revise and extend.

2020-12-27  Gavin Smith  <gavinsmith0123@gmail.com>

	* TODO: Update some items from (now-closed) bug tracker on Savannah.

2020-12-23  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/README: Remove long-obsolete file.

2020-12-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/session.c (forward_move_node_structure)
	(backward_move_node_structure): Check return value from
	info_handle_pointer.  Otherwise an infinity loop can result
	from malformed input.  Report from Nathaniel Beaver.

2020-12-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix info fuzzing error.
	
	* info/info-utils.c (copy_input_to_output): Avoid pointer
	arithmetic with value from input file to avoid chance of a
	invalid pointer.  Add check for anchor offset being previous
	to current node.  Report from Nathaniel Beaver 2020-05-25 who
	found the failing input with afl-fuzz.

2020-12-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Report.pm (gdt): Try to set locale from a list
	so that more can be easily added.

2020-12-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove warning for @menu seen before first @node.

	* tp/Texinfo/ParserNonXS.pm (_parse_texi),
	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_block_command):
	Remove warning for @menu seen before first @node.

	This warning would be output incorrectly when texi2any --pdf
	was run if the @top node was in an @ifnottex block.  Report from
	Matt Wette 2020-11-29.

2020-12-22  Gavin Smith  <gavinsmith0123@gmail.com>

	texi2dvi stop on first error

	* util/texi2dvi: Stop on first error.  Changes the behaviour that
	has been current since change on 2019-03-31.
	Request from Marius Hofert 2020-12-09.
	* NEWS: Mention.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	Revise in line with GNU Coding Standards
	
	* doc/texinfo.texi: Change "filename" to "file name" and
	avoid using "path" or "pathname".
	(Format with texi2dvi): Remove advice on running texi2dvi
	under MS-DOS.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Preparing for TeX, Other Info Directories):
	Remove explanations of how to set environment variables in various
	shells.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi: Change @smallexample to @example in many
	places.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	Update manual for command deprecations
	
	* doc/texinfo.texi (@unnumbered @appendix): Discourage @centerchap.
	(@inforef): Discourage.
	(@small...): Don't encourage.
	(@definfoenclose): Discourage.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	* texindex/ti.twjr: Add missing } in menu.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/t/test_utils.pm: require instead of use Texinfo::Transformations.

2020-11-29  Gavin Smith  <gavinsmith0123@gmail.com>

	Upgrade libintl-perl to 1.32
	
	* tp/maintain/lib/libintl-perl,
	* tp/maintain/lib/README: Upgrade to libintl-perl-1.32
	* TODO: Update.
	
	* tp/Texinfo/Report.pm (gdt): Set and restore LC_MESSAGES
	when callling gettext.

2020-11-25  Gavin Smith  <gavinsmith0123@gmail.com>

	data-manual attribute

	* tp/Texinfo/Convert/HTML.pm (_convert_xref_commands):
	Set data-manual attribute instead of class="texi-manual"
	on links to other Texinfo manuals.

2020-11-25  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\image): Call \makevalueexpandable.  Remove
	outdated code for macro expansion.
	
	Christopher Dimech reported that @value does not work inside
	@image.

2020-11-21  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove newline at start of @macro argument

	* doc/texinfo.tex (\eatleadingcr): New macro.
	(\scanmacro): Put \eatleadingcr into definition of \xeatspaces.
	(\parsemargdef): Put \xempty{} into argument to \xeatspaces.
	* doc/texinfo-tex-test.texi (Newline at start of argument): New
	test.
	
	Hilaire Fernandes reported the case of a broken macro when a comma
	separating arguments was at the end of a line.  This led the following
	newline to be included in the macro argument.

	This change stops whitespace being trimmed from the end of
	macro arguments, so only leading whitespace is trimmed, as
	is documented and is the case with texi2any's macro handling.


2020-11-18  Gavin Smith  <gavinsmith0123@gmail.com>

	No extra . for image file extension

	* tp/Texinfo/Convert/HTML.pm (_convert_image_command): Do not
	include extra period before file extension in the case that the
	file was not found, in accordance with the manual's statement
	that the fifth argument to @image includes the extension.
	Report from Christopher Dimech.
	* NEWS: Update.

2020-11-17  Gavin Smith  <gavinsmith0123@gmail.com>

	@set txiomitxrefpg
	
	* doc/texinfo.texi (\xrefX): If @set txiomitxrefpg is given
	do not output page numbers for cross-references.

2020-11-17  Patrice Dumas  <pertusus@free.fr>

	Use files in input for tests with encodings and non ascii characters

	* tp/t/09indices.t, tp/t/input_files/encoding_index_latin1.texi,
	tp/t/input_files/encoding_index_utf8.texi: replace 
	tests with encoded characters provided as perl strings with 
	actual files properly encoded.

2020-11-17  Patrice Dumas  <pertusus@free.fr>

	Normalize perl parser and XS parser output for better test comparability

	* tp/Texinfo/ParserNonXS.pm (_end_line): use a string for enumerate
	default specification for consistency.
	* tp/Texinfo/ParserNonXS.pm (_check_line_directive): use an integer
	for the line number for consistency.
	* tp/t/test_utils.pl (duplicate_key_array, _duplicate_element_keys,
	duplicate_tree_element_keys): new functions used to normalize
	parsers outputs for better tests comparabilities.
	* tp/t/test_utils.pl: put use Texinfo::Transformations; at the 
	beginning.

2020-11-16  Gavin Smith  <gavinsmith0123@gmail.com>

	Parse Texinfo commands in @displaymath as in @math (XS version)
	
	* tp/Texinfo/XS/parsetexi/command_data.txt: Remove displaymath
	from raw commands.
	* tp/Texinfo/XS/parsetexi/commands.c (close_paragraph_command):
	Remove displaymath.
	* tp/Texinfo/XS/parsetexi/handle_commands.c (handle_block_command):
	Push 'math' context for @displaymath.
	* tp/Texinfo/XS/parsetexi/close.c (close_commands): Pop context
	for @math and @displaymath.

2020-11-16  Patrice Dumas  <pertusus@free.fr>

	Warn and die if the fallback ParserNonXS require failed

	* tp/Texinfo/XSLoader.pm (FALLBACK): check the status of 
	the eval of the require of the fallback module (ParserNonXS)
	and report the warning and die if the eval failed.

2020-11-16  Patrice Dumas  <pertusus@free.fr>

	Parse texinfo commands in @displaymath as in @math

	* tp/Texinfo/Common.pm (%math_commands): Add.  Remove
	displaymath from raw commands.
	* tp/Texinfo/ParserNonXS.pm (_close_current, _parse_texi):
	Handle math commands in a more generic way using a specific
	"math" context independently of the command name.
	* tp/Texinfo/Convert/HTML.pm (_convert),
	tp/Texinfo/Convert/Plaintext.pm (%block_math_commands,
	new_formatter, _convert),
	tp/Texinfo/Convert/TexinfoXML.pm (_convert)
	tp/Texinfo/Convert/Text.pm (_convert): use %math_commands.


2020-11-15  Patrice Dumas  <pertusus@free.fr>

	Rename OUTPUT_CONTENTS_LOCATION as CONTENTS_OUTPUT_LOCATION
	and at_commands value for the variable as inline

	* tp/Texinfo/Convert/HTML.pm (%defaults, _convert_heading_command,
	_convert_informative_command, _contents_shortcontents_in_title,
	_prepare_special_elements, _prepare_contents_elements,
	_set_variables_texi2html, tp/Texinfo/Common.pm 
	(@variable_string_settables), doc/texi2oldapi.texi,
	doc/texinfo.texi (HTML Customization Variables),
	tp/init/book.pm:
	Rename OUTPUT_CONTENTS_LOCATION as CONTENTS_OUTPUT_LOCATION
	and use 'inline' instead of 'at_commands' for the corresponding
	value.  Idea from Gavin.

2020-11-15  Patrice Dumas  <pertusus@free.fr>

	Add 'after_top' for OUTPUT_CONTENTS_LOCATION and use it as default

	* tp/Texinfo/Convert/HTML.pm (%defaults, _convert_heading_command),
	doc/texinfo.texi (HTML Customization Variables):
	If 'OUTPUT_CONTENTS_LOCATION' is set to 'after_top', write the
	table of contents/Overview at the end of the @top.  Instead of
	the mini toc.  Set 'after_top' in the default case (Gavin).

2020-11-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Fully remove @setcontentsaftertitlepage.

	* tp/Texinfo/Common.pm (%line_commands, %deprecated_commands),
	* tp/Texinfo/XS/parsetexi/command_data.txt,
	* tp/Texinfo/XS/parsetexi/parser.c (process_remaining_on_line):
	Remove setcontentsaftertitlepage and setshortcontentsaftertitlepage.
	* tp/t/info_tests.t (contents_setcontentsaftertitlepage_before_node):
	Remove.
	* tp/tests/contents/res_parser: Remove results files for removed
	tests.
	* doc/texinfo.texi (Command List, Obsolete @-Commands): Move
	@refill to Obsolete @-Commands.  Update documentation of
	@setcontentsaftertitlepage.
	* NEWS: Update.
	* doc/refcard/txirefcard.tex: Remove documentation of deprecated
	commands.

2020-11-14  Patrice Dumas  <pertusus@free.fr>

	Move mini toc formatting to section @-command conversion function

	* tp/Texinfo/Convert/HTML.pm (_convert, _convert_heading_command):
	Move mini toc formatting code to _convert_heading_command() such that
	it is in the function that can be customized if set in
	Texinfo::Config::texinfo_commands_conversion.

2020-11-14  Patrice Dumas  <pertusus@free.fr>

	Use OUTPUT_CONTENTS_LOCATION for HTML

	* tp/Texinfo/Convert/HTML.pm (%defaults,
	_convert_informative_command, _contents_shortcontents_in_title,
	_default_titlepage, _print_title, _prepare_contents_elements,
	_convert, _set_variables_texi2html),
	tp/Texinfo/Common.pm (@variable_string_settables),
	doc/texinfo.texi (HTML Customization Variables),
	texi2oldapi.texi, tp/init/book.pm, tp/tests/contents/list-of-tests:
	Replace INLINE_CONTENTS by OUTPUT_CONTENTS_LOCATION set to 
	"at_commands", INLINE_CONTENTS unset becomes "separate_element".
	Add "after_title" as a possibility for OUTPUT_CONTENTS_LOCATION
	using the code that corresponded to @setcontentaftertitlepage
	before the @-command was removed.

2020-11-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Simplify little-used "markup style" infrastructure.
	
	* doc/texinfo.tex (\currentmarkupstyle, \setupmarkupstyle)
	(\markupsetuplqdefault, \markupsetuprqdefault): Remove.
	(\setcodequotes, \setregularquotes): Replacements.
	* doc/texinfo.texi (Inserting Quote Characters):
	Do not say that the command interface is preferred.

2020-11-13  Gavin Smith  <gavinsmith0123@gmail.com>

	Avoid excess vertical space above @displaymath.
	
	* doc/texinfo.tex (\displaymath): Avoid active newlines in macro
	definition.  These led to \par tokens which in turn led to extra
	vertical space above the block.  Report by Christopher Dimech.

2020-11-13  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix \eqno in @displaymath.
	
	* doc/texinfo.tex (\end): Do not exit math mode (reverts previous
	change).
	(\displaymath): Temporarily redefine @end to insert $$ immediately,
	before reading the rest of the line.  This is needed for \halign
	and \eqno inside display math.
	* doc/texinfo-tex-test.texi (Test of @displaymath): Add \eqno
	example.
	
	Report of broken \eqno by Christopher Dimech.

2020-11-13  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix align in @displaymath.

	* doc/texinfo.tex (\end): Leave math mode.
	(\Edisplaymath): Do not leave math mode here as it is too
	late if \halign is inside the display math, which has to appear
	as $$\halign{...}$$.
	* doc/texinfo-tex-test.texi (Test of @displaymath): New section.

	Christopher Dimech reported that \leqalignno within
	@displaymath was broken.

2020-11-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Ignore line argument to @example.
	
	* doc/texinfo.tex (\example, \lisp) : End call to \makedispenvdef
	with \parsearg rather than \gobble.

2020-11-12  Patrice Dumas  <pertusus@free.fr>

	* tp/tests/run_parser_all.sh: store raw output and postprocess
	test output even if not comparing with previous results.

2020-11-12  Patrice Dumas  <pertusus@free.fr>

	* tp/tests/tex_html/tex_gdef.texi, tex_eqalign.texi: tests with 
	\gdef in @tex block and with \leqalignno from Christopher Dimech.

2020-11-11  Gavin Smith  <gavinsmith0123@gmail.com>

	Mark some commands as deprecated.
	
	* tp/Texinfo/Common.pm (%deprecated_commands),
	* tp/Texinfo/XS/parsetexi/command_data.txt:
	Mark definfoenclose, refill, inforef, centerchap as deprecated.
	* NEWS: Update.

2020-11-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Output @lisp with 'example' class.
	
	* tp/Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	Output @lisp with <div class='example lisp'> rather than
	<div class='lisp'>.
	(%css_map): No CSS for div.lisp.

2020-11-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Optional parameter to @example
	
	* tp/Texinfo/Common.pm (%block_commands),
	* tp/Texinfo/XS/parsetexi/command_data.txt: Specify @example to
	take 1 argument.
	* tp/Texinfo/Convert/HTML.pm (_convert_preformatted_command):
	If 'example' takes an argument, pass it as an extra argument
	to _attribute_class.
	(_attribute_class): Take an extra argument for extra classes
	to be added to the element.

	This could be used as e.g. "@example cplusplus" to allow
	post-processing the HTML output to syntax-highlight C++ code.

2020-11-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Other Customization Variables): Alphabetize.
	(Top): Remove bespoke menu entry names for master menu as these
	are not useful.

2020-11-08  Per Bother  <per@bothner.com>

	* js/info.js (config): Flatten structure so as to allow merging
	of configs.

2020-11-08  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.
	
	* doc/texinfo.tex (Conventions): Swap treatment of form feeds
	and tabs.
	(Short Sample, Body of the Document):
	Include sections in the example chapter and headings in the
	example output.
	(First Node): Do not encourage putting copying permissions into
	Top node.

2020-11-07  Gavin Smith  <gavinsmith0123@gmail.com>

	Rename PERMALINKS to COPIABLE_ANCHORS

	* tp/Texinfo/Common.pm (@variable_string_settables),
	* tp/Texinfo/Convert/HTML.pm (%defaults):
	Rename PERMALINKS to COPIABLE_ANCHORS.
	* tp/Texinfo/Convert/HTML.pm (_get_permalink, _get_copiable_anchor):
	Rename.
	(%css_map) <a.copiable-anchor>: Set line height to 0em to avoid
	increasing spacing of line.
	* doc/texinfo.texi (HTML Customization Variables):
	Add COPIABLE_ANCHORS.  Update documentation of JS_WEBLABELS.

2020-11-07  Gavin Smith  <gavinsmith0123@gmail.com>

	* NEWS: Update.

2020-11-07  Gavin Smith  <gavinsmith0123@gmail.com>

	Do not use dir.info as dir file.
	
	* info/dir.c (dir_entry_of_infodir): Call info_check_compressed
	instead of info_add_extension.

2020-11-07  Gavin Smith  <gavinsmith0123@gmail.com>

	Do not use dir.info as dir file.
	
	* info/filesys.c (info_check_compressed): Split out new function.
	Remove code which deals with a file being found which is a
	directory.
	(info_add_extension): Use info_check_compressed.
	* info/dir.c (build_dir_node): Iterate over search
	path with infopath_first and infopath_next and check for
	dir file with info_check_compressed.

2020-11-06  Gavin Smith  <gavinsmith0123@gmail.com>

	awk for texindex

	* configure.ac: Call AC_CHECK_PROGS instead of AC_PROG_AWK and
	set TI_AWK.
	* texindex/texindex.in, texindex/Makefile.am:
	Substitute TI_AWK instead of AWK.

2020-11-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Allow dir.gz

	* info/dir.c (build_dir_node): Call info_file_find_next_in_path
	to get all the dir files.  This means that compressed dir
	files can be found as dir.gz etc., which install-info already
	supports.
	(dir_entry_of_infodir): Only check for dir under the name of "dir",
	not "localdir".

2020-11-05  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Catching Mistakes): Subordinate to
	previous appendix.

2020-11-05  Gavin Smith  <gavinsmith0123@gmail.com>

	JS_WEBLABELS=reference

	* tp/Texinfo/Convert/HTML.pm (_default_end_file):
	For JS_WEBLABELS=reference only output the reference link
	if JS is used in the page.

2020-11-05  Gavin Smith  <gavinsmith0123@gmail.com>

	@bsixpaper

	* NEWS,
	* doc/texinfo.texi (A4 Paper, Command List),
	* doc/refcard/txirefcard.tex: Document @bsixpaper.

2020-11-05  Patrice Dumas  <pertusus@free.fr>

	Warn about nodes not references in pointers or in document node menu

	* tp/Texinfo/Structuring.pm (nodes_tree): put referenced nodes in 
	%referenced_nodes and warn about unreferenced nodes.

2020-11-05  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Structuring.pm (nodes_tree): word node pointers and menu
	order inconsistencies message without referring to section.


2020-11-05  Patrice Dumas  <pertusus@free.fr>

	Add CHECK_NORMAL_MENU_STRUCTURE customization variable

	* tp/Texinfo/Common.pm (%default_customization_values, 
	@variable_string_settables),
	tp/Texinfo/Structuring.pm (nodes_tree),
	doc/texinfo.texi (Other Customization Variables):
	add CHECK_NORMAL_MENU_STRUCTURE which must be set in order to
	get warnings about inconsistencies between node pointers
	and node menu entries order.  Do not use FORMAT_MENU for that.
	Output those warnings even for nodes with explicit pointers.


2020-11-04  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Invoking texi2any) <--no-validate>: Reword
	to say it is menu entries that are checked rather than menu
	structure.  Comment out text that may be inaccurate.

2020-11-02  Gavin Smith  <gavinsmith0123@gmail.com>

	Anchor links on hover over regular @table items.
	
	* tp/Texinfo/Common.pm (relate_index_entries_to_table_entries_in_tree):
	New function.
	* tp/texi2any.pl: Call it as a tree transformation for HTML.
	* tp/Texinfo/Convert/HTML.pm (command_id): Update a comment.

2020-11-02  Gavin Smith  <gavinsmith0123@gmail.com>

	Anchor links on hover over @vtable or @ftable @item.

	* tp/Texinfo/Convert/HTML.pm (_convert_item_command) <table_term>:
	Output id on containing <dt> rather than an empty <span>.  Call
	_get_permalink.

2020-11-02  Patrice Dumas  <pertusus@free.fr>

	Determine with USE_NODE_DIRECTIONS if section or nodes directions are
	used in HTML

	* tp/Texinfo/Convert/HTML.pm (_default_node_direction)
	rename as _default_panel_button_dynamic_direction.
	* tp/Texinfo/Convert/HTML.pm (_default_panel_button_dynamic_direction,
	%defaults), tp/Texinfo/Common.pm (@variable_string_settables):
	add USE_NODE_DIRECTIONS customization variable, and use it in
	_default_panel_button_dynamic_direction, defaulting to USE_NODES
	if USE_NODE_DIRECTIONS is undefined.
	* doc/texinfo.texi (HTML Customization Variables): add 
	USE_NODE_DIRECTIONS.
	* doc/texinfo.texi (Three Arguments): document that 
	xrefautomaticsectiontitle applies to node headers in HTML too.

	* tp/Texinfo/Convert/HTML.pm (_default_navigation_header_panel,
	_default_button_formatting): determine if a delimiter is needed
	before a button from 'format_button' function reference return.

2020-11-01  Patrice Dumas  <pertusus@free.fr>

	Use the section itself for sectiontoc, not the previous node

	* tp/Texinfo/Convert/HTML.pm (_convert): use the sectioning
	command for the sectiontoc.

2020-11-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Anchor links on hover over def.

	* tp/Texinfo/Common.pm (@variable_string_settables),
	* tp/Texinfo/Convert/HTML.pm (%defaults):
	Add PERMALINKS.
	* tp/Texinfo/Convert/HTML.pm (_get_permalink): New function.
	(%css_map): Add CSS so as to make permalink appear on hover
	over parent element.
	(_convert_def_line_type): Call _get_permalink.

2020-11-01  Patrice Dumas  <pertusus@free.fr>

	Output a sectiontoc for @top if there is no contents already output

	* tp/Texinfo/Convert/HTML.pm (_convert): output a sectiontoc in 
	@top if there is no shortcontent nor summary content inlined.
	(_has_contents_or_shortcontents): new function.

2020-11-01  Patrice Dumas  <pertusus@free.fr>

	Update pot/po and fr translation to regenerate test result after @def
	change

	* po_document/*.po: update strings.
	* po_document/fr.po: update translations.
	* tp/tests/layout/res_parser/formatting_fr_icons/formatting.html:
	update

2020-11-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Enable def category CSS.

	* tp/Texinfo/Convert/HTML.pm (_convert_def_line_type):
	Wrap def category in <span class='category'>.
	(_convert_def_command): Add class='def' to <dl> element.

2020-11-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Output category separately for @def*.

	* tp/Texinfo/Convert/HTML.pm (_convert_def_line_type):
	Split the conversion of the category away from the rest of
	the def line.  Add comments to label the different cases.

	This has a slight change to the output for @deffn with
	a completely empty argument, as this leads to the
	category being undefined.  It also changes a test
	result due to a translation for "{category}: " being missing
	(in French, this should come out as "{category}@ : ").

	This is preparation for allowing changing the formatting of
	the category with CSS, for example to float it to the right
	of the page.  Suggestion from Per Bother.

2020-11-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/Text.pm (brace_no_arg_command):
	Add missing close bracket for defined.

2020-10-31  Patrice Dumas  <pertusus@free.fr>

	Replace SHOW_MENU by FORMAT_MENU which uses only strings

	* tp/Texinfo/ParserNonXS.pm (_register_extra_menu_entry_information),
	tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser),
	tp/Texinfo/Structuring.pm (nodes_tree),
	tp/Texinfo/Common.pm (%default_customization_values,
	@variable_string_settables), tp/texi2any.pl,
	tp/Texinfo/Convert/*.pm, tp/init/book.pm, tp/init/chm.pm,
	doc/texinfo.texi (Other Customization Variables), NEWS: 
	replace SHOW_MENU by FORMAT_MENU.  0 becomes 'nomenu' and 1
	becomes 'menu'.

2020-10-31  Patrice Dumas  <pertusus@free.fr>

	Do not remove raw_out_parser debug tests output directories

	* tp/tests/run_parser_all.sh: do not remove raw_out_parser.
	tp/tests/*/Makefile.am (distclean-local): remove raw_out_parser*

2020-10-31  Patrice Dumas  <pertusus@free.fr>

	Set include directories for parser

	* texi2any.pl (%$parser_file_options): set 'include_directories'. 

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	_convert_text_options takes a converter argument

	* tp/Texinfo/Structuring.pm (do_index_keys): Do not call
	_convert_text_options as this appears to take a converter
	object as an argument.  Inline some parts of that function
	at the call site.

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Call do_index_keys with parser object.
	
	* tp/Texinfo/Convert/HTML.pm (_prepare_index_entries),
	* tp/Texinfo/Convert/IXIN.pm (output_ixin):
	Pass parser object to sort_indices and sort_indices_by_letter
	instead of converter.
	
2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Call do_index_keys with parser object.

	* tp/Texinfo/Convert/Plaintext.pm (_printindex_formatted):
	Pass parser object to sort_indices instead of converter.
	* tp/t/09indices.t: Set ENABLE_ENCODING in parser options
	as well as converter options.
	* tp/Texinfo/Convert/Plaintext.pm (do_index_keys): Assume
	argument is a parser object.
	
	This means that conversion errors in the index sort keys
	will be part of the parser errors instead of the converter
	errors.

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (texi2any Environment Variables): Update
	documentation of TEXINFO_XS_PARSER to reflect that this is
	the default.

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Call do_index_keys with parser object again.
	
	* tp/Texinfo/Common.pm (%default_customization_values):
	Re-add 'ENABLE_ENCODING'.  It could be used in Texinfo::Structuring
	for index entry sorting.
	* tp/t/test_utils.pl, tp/t/test_sort.t:
	Use parser object instead of converter object to sort indices.
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Ignore ENABLE_ENCODING.
	
	This reverts changes on 2020-10-21 and 2020-10-28.  The plan
	is to call do_index_keys with the parser object instead, which
	appears to have been the original intention.

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	Configuration/customization variables.
	
	* tp/Texinfo/Common.pm (%default_customization_values):
	Remove SIMPLE_MENU as this is used in neither Texinfo::Parser
	or Texinfo::Structuring.
	* tp/Texinfo/Structuring.pm (nodes_tree): Refer to SHOW_MENU
	via get_conf to clarify that this is a configuration value.
	* tp/texi2any.pl: Remove a comment.
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Change a comment.

2020-10-31  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/texi2any.pl: Rename two variables.

2020-10-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Do not set expanded_formats via parser.

	* tp/Texinfo/Convert/Converter.pm (converter): Do not copy
	'expanded_formats' from parser object to converter object.
	* tp/texi2any.pl: Copy 'expanded_formats' from parser object
	to converter object.

2020-10-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Do not set include_directories via parser.

	* tp/Texinfo/Convert/Converter.pm (converter): Do not copy
	'include_directories' from parser object to converter object.

	* tp/texi2any.pl: Add include directories to parser options
	and converter options separately.
	* tp/t/test_utils.pl: Set 'include_directories' in converter
	options explicitly.

	This should make it clearer where the 'include_directories'
	setting comes from.  Ideally the parser object should be used
	to access the results of parsing only, not to access parser
	settings.

2020-10-28  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser):
	Add a comment about copying the conf to the parser object.

2020-10-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Only call do_index_keys with converter object.

	* tp/t/test_utils.pl, tp/t/test_sort.t:
	Call Texinfo::Structuring::sort_indices with converter object
	rather than parser object.
	* tp/Texinfo/Convert/Text.pm: use Texinfo::Convert::Converter.
	* tp/Texinfo/Structuring.pm (do_index_keys): Update comment.

	This means that index sorting errors disappear from
	$result_errors, but they are still present in the converter
	errors.

2020-10-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Provide accesskey in section TOC.

	* tp/Texinfo/Convert/HTML.pm: Output accesskey attribute on <a>
	elements in section TOC, as is done for menus.

2020-10-27  Patrice Dumas  <pertusus@free.fr>

	Fix messages. Do not warn if up node is an external node and inconsistent with menu

	* tp/Texinfo/Structuring.pm (nodes_tree): do not check for 
	node up / menu up mismatch if node up is an external node.
	* tp/Texinfo/Convert/HTML.pm (_element_direction): accept section
	type for TOP_NODE_UP_URL Up.


2020-10-27  Patrice Dumas  <pertusus@free.fr>

	Do not warn if external node in menu is not consistent with sections

	* tp/Texinfo/Structuring.pm (nodes_tree): do not warn if a menu entry
	referring to an external node is not consistent with sectioning.

2020-10-26  Patrice Dumas  <pertusus@free.fr>

	use httex instead of httexi for @math in default case

	* tp/init/tex4ht.pm ($STYLE_MATH): set to tex.

2020-10-26  Gavin Smith  <gavinsmith0123@gmail.com>

	@math, @displaymath documentation

	* doc/texinfo.texi (Inserting Subscripts and Superscripts):
	Do not encourage @sub or @sup inside math.
	(Inserting Math): Use \over in example, instead of \frac.
	Comment out explanation of @\.  Explain that using any Texinfo
	commands inside math is not ideal.

2020-10-25  Patrice Dumas  <pertusus@free.fr>

	handle @displaymath with tex4ht and latex2html

	* tp/init/latex2html.pm (l2h_process, l2h_to_latex), 
	tp/init/tex4ht.pm ($tex4ht_command_displaymath, tex4ht_prepare):
	handle @displaymath.
	* tp/tests/coverage_macro.texi: use plain TeX math code in 
	@displaymath.
	* tp/tests/tex_html/tex.texi: add a @displaymath.

2020-10-25  Patrice Dumas  <pertusus@free.fr>

	add a @sup in @math{} in tex tests

	* tp/tests/tex_html/tex.texi: add @math{} with @sup{}
	to test.

2020-10-25  Patrice Dumas  <pertusus@free.fr>

	regenerate tex4ht/latex2html tests

	Note that tex must be changed to etex in httex and httexi to
	generate those tests results with recent tex4ht.

2020-10-25  Patrice Dumas  <pertusus@free.fr>

	@displaymath keep strings as is and add to coverage tests

	* tp/Texinfo/Convert/HTML.pm (_convert): increment 'math' context
	for @displaymath.
	* tp/Texinfo/Convert/Text.p (_convert): set code option for 
	Texinfo::Common::block_commands raw.
	* tp/t/02coverage.t, tp/tests/coverage_macro.texi, 
	tp/tests/*/res_parser/*: add @displaymath in coverage tests.

2020-10-25  Patrice Dumas  <pertusus@free.fr>

	Add a tree transformation to add missing menus

	* tp/Texinfo/Transformations.pm
	(_get_non_automatic_nodes_with_sections, complete_tree_nodes_menus,
	complete_tree_nodes_missing_menu, _prepend_new_menu_in_node_section), 
	doc/texinfo.texi (Other Customization Variables), texi2any.pl,
	tp/t/automatic_menus.t: add complete_tree_nodes_missing_menu
	transformation.  Add systematically the optional $use_sections
	argument to add a menu entry name using the section name to the 
	functions that can make use of that argument.
	* tp/Texinfo/Convert/Plaintext.pm (_convert), tp/Texinfo/Structuring.pm
	(node_menu_of_node): rename node_menu_of_node() as
	new_complete_node_menu().
	* tp/Texinfo/Structuring.pm (get_node_node_childs, new_complete_node_menu),
	tp/Texinfo/Transformations.pm (complete_node_menu): add
	get_node_node_childs() in Structuring.pm based on code in
	Transformations.pm, and use that code in new_complete_node_menu().
	* tp/Texinfo/Structuring.pm (node_menu_of_node, section_menu_of_node): 
	remove, optional arguments of the functions should be used instead.

2020-10-24  Patrice Dumas  <pertusus@free.fr>

	minor changes in comments and documentation

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	Re-add example.

	* doc/texinfo.texi
	(Other Customization Variables): Re-add example of
	TREE_TRANSFORMATIONS with corrected invocation.

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (HTML Customization Variables, Inserting Math):
	Document -c HTML_MATH=t4h.

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/texi2any.pl: Use tex4ht if HTML_MATH is set to 't4h'.

2020-10-24  Patrice Dumas  <pertusus@free.fr>

	do not mix tex4ht commands STDIN with main script STDIN

	* tp/init/tex4ht.pm (tex4ht_process_command): use open
	with "|-" input pipe to launch tex4ht commands to avoid mixing
	main script STDIN and tex4ht commands STDIN.  It is important
	because when tex fails it reads from STDIN and the input may 
	trigger diverse actions by tex.

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	Reduce example indent for @bsixpaper.

	* doc/texinfo.tex (@bsixpaper): Set \lispnarrowing to 0.2in.

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	@set dispenvsize small for @bsixpaper.
	
	* doc/texinfo.tex (@bsixpaper): Switch some block commands
	to display with a smaller font.
	(\verbatim): Respect '@set dispenvsize small'.

2020-10-24  Gavin Smith  <gavinsmith0123@gmail.com>

	Documentation of customization variables.
	
	* doc/texinfo.texi
	(HTML Customization Variables, Other Customization Variables):
	Move INDEX_ENTRY_COLON and MENU_ENTRY_COLON to HTML Customization
	Variables.  Remove commented-out IDX_SUMMARY.  Remove example
	referring to non-existent PLAINTEXINFO variable.  Remove
	USE_NODE_TARGET as it doesn't do anything in the current code.
	* tp/Texinfo/Common.pm (@variable_string_settables),
	* tp/Texinfo/Convert/HTML.pm (%defaults): Remove 'USE_NODE_TARGET'.
	* tp/t/init/t2h_singular.init: Remove commented-out code referring
	to IDX_SUMMARY.

2020-10-23  Gavin Smith  <gavinsmith0123@gmail.com>

	MathJax for TeX code only

	* tp/Texinfo/Convert/HTML.pm
	(_convert_math_command) [HTML_MATH=mathjax]: No MathJax if
	HTML tags in contents, e.g. @math{a@sup{2}} doesn't work.

2020-10-23  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\pagesizes): Increase physical page dimensions
	by fixed quantities.

2020-10-22  Gavin Smith  <gavinsmith0123@gmail.com>

	@bsixpaper

	* doc/texinfo.tex (@bsixpaper): Add.
	* tp/Texinfo/Common.pm (%line_commands),
	* tp/Texinfo/XS/parsetexi/command_data.txt: Add 'bsixpaper'.

2020-10-22  Gavin Smith  <gavinsmith0123@gmail.com>

	empty @headitem

	* tp/Texinfo/XS/parsetexi/api.c (element_to_perl_hash):
	Always create a contents array for @headitem even if it is empty.
	* tp/t/21multitable.t (empty_headitem): New test.

2020-10-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Only reference MathJax on those pages which require it.

	* tp/Texinfo/Convert/HTML.pm
	(%defaults): New value 'element_math' to keep track of
	whether @math or @displaymath has been seen in current file.
	(_convert_math_command, _convert_displaymath_command)
	(output): Set and reset 'element_math'.  Process body of
	file before the header to set 'element_math' correctly.
	(file_header_informations): Only reference MathJax scripts
	if 'element_math' is set.
	
	(%defaults): New value 'jslicenses_element' to keep track
	of whether scripts have actually been used in the current output
	file.
	(file_header_information): Update 'jslicenses_element'.
	(_default_end_file): Only output the link to the JS licences page
	if there were actually JS scripts referenced in the file.

2020-10-21  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser): Warn on
	unknown conf value.

2020-10-21  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove ENABLE_ENCODING setting for parser

	* tp/Texinfo/Common.pm (%default_customization_values):
	Remove 'ENABLE_ENCODING'.  This was passed indirectly to
	Texinfo::Convert::Text by Texinfo::Parser, but Texinfo::Parser
	has not depended on Texinfo::Convert::Text since 2016-07-09.

	* tp/t/test_utils.pl, tp/t/test_sort.t:
	Set 'ENABLE_ENCODING' on parser object before sorting indices
	to maintain consistency  in test results.

2020-10-21  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove TEST setting for parser

	* tp/Texinfo/Common.pm (%default_customization_values):
	Remove 'TEST'.
	* tp/Texinfo/ParserNonXS.pm (parse_texi_text, parse_texi_file)
	(parse_texi_line, _end_line):
	Remove code referring to the TEST setting.  This means that
	the 'input_directory' value is always set and all leading
	directory components will be removed from the input file name
	in messages.
	* tp/Texinfo/Convert/HTML.pm (_load_htmlxref_files): Make
	adding the input directory to the search path for htmlxref.cnf
	conditional on TEST.

2020-10-21  Gavin Smith  <gavinsmith0123@gmail.com>

	nodes_tree conditions

	* tp/Texinfo/Structuring.pm (nodes_tree):
	Remove conditions about external manuals in node up pointer.
	These conditions appeared to be ineffective due to a different
	check for menus on the up node preventing execution of
	a block of code.  Combine other conditions.  No functional
	changes intended.

2020-10-21  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Structuring.pm (nodes_tree): Warn about multiple
	@menu's regardless of value of SHOW_MENU.  Edit comments.
	Combine conditions (with no functional changes intended).

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/run_parser_all.sh: Don't pass -c SHOW_MENU=1
	to texi2any.

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	SHOW_MENU=1 for TEXI2HTML=1.

	* tp/Texinfo/Convert/HTML.pm (_set_variables_texi2html):
	Set SHOW_MENU to 1.

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Set MENU_ENTRY_COLON back to :.
	
	* tp/Texinfo/Convert/HTML.pm (%defaults):
	Change 'MENU_ENTRY_COLON' back from '' to ':'.

	If somebody specifies '-c SHOW_MENU=1', they probably
	want something that looks more like the Info output.
	':' was the default setting until 2019-02-10.

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Don't add menus in HTML.pm.
	
	* tp/Texinfo/Convert/HTML.pm (_convert): Remove code to add a menu
	to a node where there wasn't one.

	Since SHOW_MENU now has the value section-toc by default,
	a menu is not necessary in a node for inferior nodes to be
	accessible.  If adding menus is wanted as a feature for HTML,
	this may be better done in non-format-specific code (e.g. with
	TREE_TRANSFORMATIONS).

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Warning only for menu missing node.

	* tp/Texinfo/Structuring.pm (nodes_tree): Use a warning instead
	of an error for the message, "node `%s' lacks menu item for
	`%s' despite being its Up target".

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	No automatic menu if node has explicit pointers.

	* tp/Texinfo/Convert/Plaintext.pm (_convert)
	<sectioning commands>:
	Check if extra arguments were given to @node, and if they
	were, do not generate a menu if one was missing.

2020-10-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* util/htmlxref.cnf (tar): Fix.

2020-10-19  Gavin Smith  <gavinsmith0123@gmail.com>

	class="texi-manual"

	* tp/Texinfo/Convert/HTML.pm
	(_convert_xref_commands): Set class="texi-manual" on links
	to other Texinfo manuals.

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi: Docbook -> DocBook throughout.
	(Overview): Reword slightly.
	(Texinfo Document Structure): Remove node self-reference.

2020-10-18  Philipp Klaus Krause <pkk@spth.de>  (tiny change)

	const char *

	* info/filesys.c (filesys_error_string),
	* install-info/install-info.c (ensure_dirfile_exists): Store
	return value of strerror in a const char * variable.

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Top Node Example): Merge into parent.

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Reorder nodes.

	* doc/texinfo.texi (Texinfo Document Structure, Writing a Node):
	Re-order.

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	Document SHOW_MENU changes.

	* doc/texinfo.texi
	(Other Customization Variables) <SHOW_MENU>: Explain '1' and
	'sectiontoc' settings.
	(Invoking texi2any): Move '@vindex HEADERS' here.
	(Writing a Node): Take out material about menus and detailed
	menus.
	(Master Menu Parts, Top Node): Move material about menus here.
	Use consistent terminology re "master menu" and "detailed menu".

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/texi2any.pl: Move a line.

2020-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	End paragraph for @displaymath.

	* tp/Texinfo/Common.pm (%close_paragraph_commands),
	* tp/Texinfo/XS/parsetexi/commands.c (close_paragraph_command):
	Add @displaymath.
	* tp/Texinfo/Convert/HTML.pm (_convert_displaymath_command):
	Wrap output in a <div>.

2020-10-17  Gavin Smith  <gavinsmith0123@gmail.com>

	Document @displaymath and HTML_MATH.

	* doc/texinfo.texi (Inserting Math, Command List):
	Document @displaymath and options for HTML_MATH.

2020-10-17  Gavin Smith  <gavinsmith0123@gmail.com>

	@displaymath for docbook

	* tp/Texinfo/Convert/DocBook.pm (_convert): Wrap
	output for @displaymath in <informalequation> and
	<mathphrase>.

2020-10-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Info Format FAQ): New node.

2020-10-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/t/16raw.t (displaymath): New test.

2020-10-16  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (_mini_toc): Add bullets to
	list and remove section numbers.

2020-10-15  Gavin Smith  <gavinsmith0123@gmail.com>

	@displaymath for HTML.
	
	* tp/Texinfo/Convert/HTML.pm (_convert_displaymath_command):
	New function.

2020-10-15  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Remove reference
	to line numbers in ParserNonXS.pm.

2020-10-15  Gavin Smith  <gavinsmith0123@gmail.com>

	Add @displaymath.
	
	* tp/Texinfo/Common.pm (%block_commands, %raw_commands),
	* tp/Texinfo/XS/parsetexi/command_data.txt:
	Add 'displaymath'.  It is treated like @verbatim by default.

2020-10-15  Gavin Smith  <gavinsmith0123@gmail.com>

	@displaymath and \frac

	* doc/texinfo.tex (@displaymath): Implement.
	* doc/texinfo.tex (\frac): Provide.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	HTML_MATH, MATHJAX_SCRIPT and MATHJAX_SOURCE
	
	* doc/texinfo.texi (HTML Customization Variables):
	Add HTML_MATH.
	(MathJax Customization Variables): Add MATHJAX_SCRIPT
	and MATHJAX_SOURCE along with guidance for using these.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Customization Variables for @-Commands):
	Remove @contents and @shortcontents, as it is not meaningful to
	set these from the command line, even if they are viewed as
	settings internally.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Document JS_WEBLABELS and JS_WEBLABELS_FILE.
	
	* doc/texinfo.texi (HTML Customization Variables): Add
	JS_WEBLABELS and JS_WEBLABELS_FILE.
	* NEWS: Same.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.
	
	* doc/texinfo.texi (History, Reference Implementation):
	Merge the latter into the former.  Remove reference to
	removed 'util/texi2html' script.
	* TODO: Remove some install-info points that will never be done
	(by install-info).
	* tp/Texinfo/Structuring.pm: Remove reference to removed value.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (Pointer Validation, Invoking texi2any):
	Merge the former into the latter.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Change warning messages.
	
	* tp/Texinfo/Structuring.pm (nodes_tree): Reword warning messages.

2020-10-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* README-hacking: Add a file to update the copyright year of.
	* tp/texi2any.pl: Update copyright year.

2020-10-13  Gavin Smith  <gavinsmith0123@gmail.com>

	URL line breaking.
	
	* doc/texinfo.tex (\urefbreak): Temporarily set \pretolerance
	to a negative value.
	\urefallowbreak: Increase value of penalty.
	* doc/texinfo-tex-test.texi (URL line breaking): Add another
	example.
	(Nested URL): New section.
	
	Substandard URL line breaking reported by Werner Lemberg.

2020-10-13  Gavin Smith  <gavinsmith0123@gmail.com>

	JS_WEBLABELS and JS_WEBLABELS_FILE
	
	* tp/Texinfo/Common.pm (@variable_string_settables):
	Add JS_WEBLABELS and JSWEBLABELS_FILE.
	* tp/Texinfo/Convert/HTML.pm (%defaults): Provide default values.
	(_do_jslicenses_file): Create this file according to the values of
	these variables.
	(_default_end_file): Output link to jslicense file depending on the
	values of these variables.

2020-10-13  Gavin Smith  <gavinsmith0123@gmail.com>

	* TODO: Update with some bugs.

2020-10-13  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/info-stnd.texi (infokey format):
	Add note that you can't effectively bind C-c.

2020-10-13  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/info-stnd.texi (The Echo Area): Remove mention of using
	? for completions.

2020-10-12  Patrice Dumas  <pertusus@free.fr>

	Add mathjax test in layout coverage tests

	* tp/tests/layout/list-of-tests: add formatting_mathjax.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix test suite for non-XS.
	
	* tp/Texinfo/ParserNonXS.pm (_open_in): Use ':utf8' layer
	for UTF-8 input.  This was leading to errors in the test suite
	for Shift-JIS files.  This reverses change on 2020/05/14.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove MINI_TOC variable, using SHOW_MENU instead.
	
	* tp/Texinfo/Common.pm (@variable_string_settables):
	Remove MINI_TOC.
	* tp/Texinfo/Convert/HTML.pm (%defaults): Remove MINI_TOC
	value, and set SHOW_MENU to 'sectiontoc' to mean the same thing.
	(_convert): Make showing menu and generating a "mini-TOC" mutually
	exclusive, controlled through the SHOW_MENU setting.
	* tp/Texinfo/Convert/HTML.pm,
	* tp/Texinfo/Convert/Structuring.pm,
	* tp/Texinfo/ParserNonXS.pm,
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Check whether SHOW_MENU
	has value '1' instead of whether it is true.
	* tp/tests/run_parser_all.sh: Do not pass '-c MINI_TOC=0' option.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser):
	Check for undef DEBUG.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi
	(Writing a Menu, Customization Variables for @-Commands)
	(Command List),
	* doc/refcard/txirefcard.tex
	Remove @validatemenus.
	* tp/Texinfo/XS/Makefile.am (command_ids.h): Use gawk instead
	of awk.  Avoid discouraged "$p" usage, using "$(p)" instead.
	* tp/Texinfo/XS/configure.ac: Check for gawk.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	* NEWS: Update.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	MATHJAX_SCRIPT and MATHJAX_SOURCE

	* tp/Texinfo/Common.pm (@variable_string_settables): Add
	MATHJAX_SCRIPT and MATHJAX_SOURCE.  Give variables in alphabetical
	order.
	* tp/Texinfo/Convert/HTML.pm (output) Set MATHJAX_SCRIPT and
	MATHJAX_SOURCE to default values and use their values in the
	jslicenses file.
	(_file_header_informations): Use value of MATHJAX_SCRIPT.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	MathJax fixes.

	* tp/Texinfo/Convert/HTML.pm (_file_header_informations): Use
	math2jax_process instead of 'math' class.  (Suggestion from Patrice.)
	(_convert_math_command): Add 'math' class to <em> elements for
	math unless we are using mathjax, in which case use
	'math2jax_process'.
	(output): Set 'jslicenses' earlier to ensure the jslicense link
	is output.
	(default_end_file): Wrap jslicense link in <small>.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove SILENT variable.

	* tp/Texinfo/Common.pm (@command_line_settables): Remove
	'SILENT' as it is not used anywhere, and sort the variables
	in alphabetical order.
	* tp/texi2any.pl: Do not set SILENT for --silent option.

2020-10-12  Gavin Smith  <gavinsmith0123@gmail.com>

	Move index entries for customization variables.

	* doc/texinfo.texi (Customization Variables and Options):
	(Invoking texi2any): Move @vindex entries to Invoking texi2any
	node.

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	Wipe res_parser etc.

	* tp/tests/run_parser_all.sh: For -copy option, wipe the
	contents of res_* directories before copying files over, so
	that leftover files do not cause test failures after running
	"make copy-tests".

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove texi2html conditionality in tests.
	
	* tp/tests/coverage_macro.texi: Remove some "@ifset texi2html"
	conditions.

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove "not used" variables.

	* tp/Texinfo/Common.pm (@variable_settables_not_used)
	(@formats_settable, @secondary_customization_variables)
	(_customization_variable_classes): Remove.
	* doc/texinfo.texi, tp/init/chm.pm, tp/Texinfo/Convert/HTML.pm:
	Remove mention of COMPLETE_IMAGE_PATHS, SPLIT_INDEX and TOC_FILE
	variables.

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/tests/layout/list-of-tests: Pass -c TEXI2HTML=undef to
	some tests to avoid 'texi2any' flag being reset by normalize_config.

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/texi2any.pl (normalize_config): Make '-c HTML_MATH=l2h'
	a synonym for '-c L2H=1'.

2020-10-11  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/texi2any.pl (normalize_config): New function
	to centralize special treatment of config vars, including
	TEXINFO_OUTPUT_FORMAT, TEXI2HTML and L2H.

2020-10-10  Gavin Smith  <gavinsmith0123@gmail.com>

	MathJax and jslicenses file.

	* tp/Texinfo/Convert/HTML.pm
	(_do_jslicenses_file): New function.
	(output): Call it.  Add files to $self->{'jslicenses'} if
	INFO_JS_DIR or HTML_MATH is set.

	(_convert_math_commands):
	No warning if HTML is not used.
	(_default_end_files): Only refer to mathjax files if HTML_MATH
	is set to 'mathjax'.  Use tex-svg.js instead of tex-chtml.js.

	* tp/Texinfo/Common.pm (open_out),
	* tp/Texinfo/Convert/HTML.pm (_default_element_footer, output)
	Remove commented-out or debugging statements.

2020-10-08  Gavin Smith  <gavinsmith0123@gmail.com>

	MathJax fixes.

	* tp/Texinfo/Convert/HTML.pm (_convert_math_command): Use
	<em class='math'> around text to be processed by MathJax.
	(_file_header_informations): Set MathJax options to include the
	contents of <pre> elements (used for @display).  Only process inside
	elements with class 'math' by adding attribute to <body> element.

2020-10-07  Gavin Smith  <gavinsmith0123@gmail.com>

	Implement MathJax support.

	* tp/Texinfo/Common.pm (@variable_string_settables): Add 'HTML_MATH'.
	* tp/Texinfo/Convert/HTML.pm (%style_attribute_commands):
	Remove 'math'.
	(_convert_math_command): Uncomment.  Check HTML_MATH variable, and
	if set, wrap output in '\(' and '\)'.  If neither HTML_MATH nor
	L2H is set, issue a warning.
	(_file_header_informations):  Add <script> element in header if
	'HTML_MATH' is set.

2020-10-04  Gavin Smith  <gavinsmith0123@gmail.com>

	* TODO: An idea for @def* and @findex.

2020-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi
	(Include Files Evolution): Comment out node.
	(@titlefont @centre @sp): Swap with following node.

2020-09-26  Gavin Smith  <gavinsmith0123@gmail.com>

	* configure.ac: Do not escape backquote in AC_MSG_WARN argument.

2020-09-26  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (makeinfo Pointer Creation): Merge contents 
	into "Writing a Node" chapter.
	(Writing a Node): Revise.
	(Command List): Update documentation of @top.

2020-09-26  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (Body of the Document): New node.
	(Texinfo File Header): Merge text from "Minimum" in here.
	(Document Permissions)
	(Titlepage & Copyright Page)
	(Ending a File): Finish merging text.

2020-09-26  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (Sample Beginning, Short Sample): Remove.
	(Ending a File): Move later.
	(Short Sample): Merge into following nodes.

2020-09-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Run autoupdate.

	* configure.ac: Change AC_HELP_STRING to AS_HELP_STRING.  The 
	upcoming autoconf 2.70 release will warn about AC_HELP_STRING.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi
	(Short Sample, Short Sample Texinfo File)
	(Sample Beginning): Remove @ifnottex lines around Top node.
	(@top Command): Update documentation of @ifnottex.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (Short Sample Texinfo File): Move from
	appendix to introductory chapter.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Simplify parser configuration.

	* tp/Texinfo/Common.pm (%default_parser_state_configuration):
	Remove 'clickstyle' and 'kdbinputstyle' values as there is no 
	user-visible way to set these and this avoids the question of 
	how to pass them into Parsetexi.
	* tp/Texinfo/ParserNonXS.pm (%parser_default_configuration):
	Add them here.
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser): Ignore 'in_gdt' 
	setting.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Propagate DEBUG setting to parsetexi.

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser):
	Call set_debug for DEBUG value.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Correctly propagate novalidate setting for Texinfo XS parser.

	* tp/Texinfo/XS/parsetexi/Parsetexi.xs,
	* tp/Texinfo/XS/parsetexi/handle_commands.c (set_novalidate):
	New function.
	* tp/Texinfo/XS/parsetexi/Parsetexi.pm (parser): Check for 
	'novalidate' setting in parser conf and propagate into XS 
	module.

	Octave required on the --no-validate option in its documentation 
	build process.  Report by Stefan Husman.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Manual revisions.

	* doc/texinfo.texi (Conventions): Remove footnote about meaning 
	of argument.  Make warning about tab characters less 
	conspicuous.  Remove an unnecessary @noindent.
	(Sample Texinfo File Beginning, Ending a File): Move together.
	(Sample Texinfo File Beginning): Remove unnecessary text from 
	intro.
	(Texinfo File Header): Do not recommend start- and end-of-header 
	lines.
	(GNU Sample Texts): Remove use of $Id$ keyword as this is not 
	used with git.  Remove use of @ifnottex around @top node as this 
	is no longer necessary.  Refer to GNU website for guidance on 
	obtaining and using FDL.

2020-09-22  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi: Remove commented out @setchapternewpage 
	line.
	(Beginning and Ending a Texinfo File): Merge with previous 
	chapter.  Trim down discussion of text before Top node.

2020-09-20  Moritz Klammler  <moritz.klammler@cetitec.com>  (tiny change)

	* tp/texi2any.pl: Fix accidental duplication of
	variable value passed via texi2any's -D option to texi2dvi.

2020-09-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Headings Introduced): Remove text that 
	duplicates what is in @setchapternewpage.  Merge node with 
	Headings node.
	(Heading Format): Remove text duplicating material from other 
	nodes.
	(@headings): Subordinate to Headings node.
	(Global Document Commands): Make a note that these are nearly 
	all for printed output.

2020-09-20  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Page Headings): Move to section of Global 
	Document Commands appendix.

2020-08-07  Per Bother  <per@bothner.com>

	Add sidebar customization hook.

	* js/info.js (header): Check window.sidebarLinkAppendContents
	hook.

2020-08-06  Gavin Smith  <gavinsmith0123@gmail.com>

	No separate configure.ac for js subdirectory.

	* autogen.sh: Do not call autoreconf for js/.
	* configure.ac: Output js/Makefile from AC_CONFIG_FILES.
	Move contents of js/configure.ac into this file.
	* js/Makefile.am: Install files in js subdirectory of 
	$(pkgdatadir).

2020-08-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Copy JS files to HTML output.

	* tp/Texinfo/ModulePath.pm.in: Make $lib_dir and $libexec_dir 
	accessible outside of module.
	* tp/Texinfo/Convert/HTML.pm (output):
	If INFO_JS_DIR is given, try to copy the JS Interface files 
	there.  Remove some debugging statements.
	(_file_header_informations): Give an error if INFO_JS_DIR is 
	used for non-split output.

2020-08-05  Gavin Smith  <gavinsmith0123@gmail.com>

	Start adding option to use Javascript interface.

	* tp/Texinfo/Common.pm (@variable_string_settables):
	Add INFO_JS_DIR.
	* tp/Texinfo/Convert/HTML.pm (_file_header_informations):
	If INFO_JS_DIR is set, then add extra lines in the <head> 
	element.

2020-08-05  Gavin Smith  <gavinsmith0123@gmail.com>

	Add js subdirectory to build system.

	* Makefile.am: Add js to SUBDIRS.
	* configure.ac: Add js to AC_CONFIG_SUBDIRS
	* autogen.sh: Run autoreconf in js.

2020-07-19  Gavin Smith  <gavinsmith0123@gmail.com>

	* util/htmlxref.cnf: Update mit-scheme.  From Thérèse Godefroy 
	<godef.th@free.fr>.

2020-07-12  Juha-Matti Huusko  <juha-matti.huusko@uef.fi>

	* doc/txi-fi.tex: Add Finnish translation.

2020-06-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix index features in code index.

	* doc/texinfo.tex (\docind): New macro, like \doind but for code 
	indices.
	(\docindwrite): Likewise, for \doindwrite.
	(\splitindexentry): Check whether we are in a code index and add 
	\code if we are.
	(\docodeindex): Use \docind rather than \doind and wrapping 
	argument in \code.

	This allows @subentry and @sortas to work correctly.  Reports 
	from Werner Lemberg (June 2020) and Akim Demaille (November 
	2019).

2020-06-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Try to fix macro expansion in index entries.

	* doc/texinfo.tex (\printindex) <\ is escape character>:
	Made @ an escape character too in case one appears in a macro 
	expansion.  Report from Werner Lemberg.

2020-06-25  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix indentation of nested @verbatim.

	* doc/texinfo.tex (\setupverbatim): Call \leavevmode so that 
	\leftskip glue is correctly added.  Fixes bug introduced on
	2020-05-06.  Report from Werner Lemberg.

2020-05-24  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix info hang.

	* info/search.c (find_node_in_binding): Add a check to prevent 
	an infinite loop in case of a malformed input file.  Report by 
	Nathaniel Beaver.

2020-05-22  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix @verbatiminclude.

	* doc/texinfo.tex (\doverbatiminclude): Call \starttabbox before
	\input-ing the file, and do \egroup afterwards.  Otherwise the 
	catcode changes from \setupverbatim are cancelled at the end of 
	the first line with the \egroup from \par.

	Report from Akira Kakuto.

2020-05-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Doc updates.

	* doc/texinfo.texi (title page): Remove non-sensical comment.
	(The Top Node): Omitted automatically with TeX.
	(Ending a File): Abbreviate.

2020-05-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Update TODO.

	* TODO: Remove many items which have either been done or are 
	unlikely to be done.

2020-05-20  Gavin Smith  <gavinsmith0123@gmail.com>

	PDF page labels.

	(\pagelabels) [PDF]: New macro.
	(\bye): Call it.
	(\pagecount, \romancount, \arabiccount): New counts.
	(\advancepageno) [PDF]: Increment \pagecount.
	(\headings, \startcontents, \contents, \shortcontents):
	Set \romancount, \arabiccount appropriately.

	This means that the page numbers displayed in some PDF readers 
	can actually match the numbers printed on the pages.


2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	Input encoding error.

	* tp/Texinfo/ParserNonXS.pm (_open_in): Use ':encoding(utf-8)'
	instead of 'utf-8'.  Hopefully this makes encoding errors 
	non-fatal for Latin-1 files that aren't marked as such.  The 
	output would be mostly OK if only a few non-ASCII characters are 
	used.

2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* info/session.c (mouse_event_handler): Clear echo area.

2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (HTML CSS): Remove mention of 
	pre.smalldisplay CSS which isn't output anymore.

2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi: Revise some index entries and use @subentry.

2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	No title in headings in TOC with '@headings double'.

	* doc/texinfo.tex (\startcontents): Define @thistitle to be 
	empty.

2020-05-14  Gavin Smith  <gavinsmith0123@gmail.com>

	'@setchapternewpage off' headings.

	* doc/texinfo.tex (\CHAPPAGoff): Redefine \HEADINGSon as is done 
	for \CHAPPAGon and \CHAPPAGodd.
	(\HEADINGSsinglechapoff): The new definition.  Chapter pages 
	have the same headings as other pages.

2020-05-13  Gavin Smith  <gavinsmith0123@gmail.com>

	Remove unused macro.

	* doc\texinfo.tex (\pagealignmacro): Remove macro.  It was not 
	used except in \bye.
	(\bye): Use \chappager instead of \pagealignmacro.  Presumably 
	we do not need an extra blank page at the very end of the 
	document if "@setchapternewpage odd" to make sure that we end on 
	an even page.
	(\startcontents): Remove a comment.  The comment credited
	Torbjorn Granlund <tege@matematik.su.se> for the 
	\contentsalignmacro, presumably added 1996-08-03.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi: Remove commented out "@set smallbook".  
	There is no corresponding "@ifset smallbook" anywhere else in 
	the file and apparently has not been for a long time.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi: Remove "start of header" and "end of header" 
	lines.

2020-05-10  Paul Eggert <eggert@cs.ucla.edu>

	* doc/texinfo.tex (\unicodechardefs):
	Add definition for U+02BC APOSTROPHE, MODIFIER LETTER.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Omit title on chapter pages in "@headings double" format.

	* doc/texinfo.tex (\checkchapterpage): Set a new conditional,
	\ifchapterpage.
	(\evenchapheadline, \oddchapheadline): Add.
	(\headline): Use \ifchapterpage to possibly use 
	\evenchapheadline or \oddchapheadline.
	(\evenheadline, \oddheadline): Also set \evenchapheadline and 
	\oddchapheadline.
	(\HEADINGSdouble, \HEADINGSsingle): Call \HEADINGSdoublex and
	\HEADINGSsinglex.
	(\HEADINGSdoublex, \HEADINGSsinglex): Set \evenchapheadline and 
	\oddchapheadline omitting \thistitle and \thischapter.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Reorganise manual.

	* doc/texinfo.texi (Heading Choice): Remove most of node as it 
	repeats what is in "@setchapternewpage".  Merge the rest of the 
	node into "Headings Introduced".

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Reorganise manual.

	* doc/texinfo.texi (Printed Books):
	(Obtaining TeX): Merge into "Use TeX" node.
	(Printed Books): Refer to "Hardcopy" node.  Edit to remove 
	repetition.  Remove material on the implementation of TeX.  Move 
	material on paper size to "Hardcopy" node.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Reorganise manual.

	* doc/texinfo.texi
	(Formatting and Printing Hardcopy, Global Document Commands):
	Move sections "@smallbook", "A4 Paper", "@pagesizes", 
	"Magnification" to "Global Document Commands" appendix.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (@settitle): Do not refer to 
	@documentdescription.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	Reorganise manual.

	* doc/texinfo.texi (Catching Mistakes): Move this appendix to be 
	after "Using Texinfo Mode", with which it is more thematically 
	linked.

2020-05-10  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (@documentdescription): Move section under
	"Generating HTML" chapter.

2020-05-08  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Global Document Commands): Relegate to 
	appendix.

2020-05-08  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.tex (\indexnofonts):
	Give many commands a definition that removes the {} after use.  
	Sebastian Urban reported that @TeX{} appeared as "TeX{}" in a 
	PDF outline rather than "TeX".

2020-05-07  Gavin Smith  <gavinsmith0123@gmail.com>

	Chapter numbers in PDF outlines.

	* doc/texinfo.tex (\pdfmakeoutlines) [pdftex, XeTeX]:
	Add chapter numbers in the PDF outline for chapters and 
	appendices only.  Suggestion from Sebastian Urban.

2020-05-06  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo-tex-test.texi (Environments, @verbatim): New 
	section.

2020-05-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Fixed-width pounds sign.

	* doc/texinfo.tex (\pounds): Use \ecfont glyph for fixed-width 
	British pound sign.
	(\quotedblleft, \quotedblright): Use \ifmonospace instead of 
	\curfontstyle.

2020-05-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix braced group at start of @verbatim line.

	* doc/texinfo.tex (\setupverbatim):  Do not call \starttabbox 
	with \everypar.  Call \starttabbox at end of \par, and do not 
	call \leavevmode at start of \par.
	(\doverbatim): Call \starttabbox before processing contents of 
	@verbatim block.  Close a group at the end with \egroup.
	(\starttabbox): No need for \global in assignment.
	(\tabexpand): Call \leavevmode before adding box.

	If a character such as Ð at the start of a line expanded to a
	braced group (like {\ecfont \char"D0}), then \everypar would not 
	insert an opening brace until after the first opening brace, 
	leading the closing brace to close \verbbox prematurely.  The 
	single character in the box would be printed at the end of the 
	line.

2020-05-05  Gavin Smith  <gavinsmith0123@gmail.com>

	Fixed-width directed double quotation marks.

	* doc/texinfo.tex (\quotedblleft, quotedblright): If we
	are in a fixed-width font, then use glyphs from European
	Computer Modern.  Sebastian Urban reported that “ and ”
	were output incorrectly.

2020-05-02  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix blank heading on last page of a chapter.

	(\checkchapterpage): Use \gettopheadingmarks or 
	\getbottomheadingmarks to determine the current chapter name.  
	\firstmark was wrong for this as it could give the wrong value 
	on the last page of a chapter.  Inconsistent output reported by
	Sebastian Urban.

2020-05-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo-tex-test.texi (Test of @*footing): Add.

2020-05-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Simplify output routine.

	* doc/texinfo.tex (\onepageout, \checkchapterpage):
	Split code to check if we are on a chapter page into a new 
	macro.
	* doc/texinfo-tex-test.texi (Test of @*heading): New section.

2020-04-23  Masamichi Hosoda <trueroad@trueroad.jp>

	* doc/txi-ja.tex: Remove \XeTeXgenerateactualtext=1 for XeTeX 0.99999+
	XeTeX 0.99999+ doesn't need this workaround.

2020-04-22  Masamichi Hosoda <trueroad@trueroad.jp>

	* doc/txi-ja.tex: Change default Japanese font to haranoaji.
	From TeX Live 2020, Japanese default font has become HaranoAji.

2020-04-14  Vincent Lefevre <vincent@vinc17.net>  (tiny change)

	* doc/texinfo.tex (\urefallowbreak): Fix typos in comment.

2020-04-12  Matthew Kraai <kraai@ftbfs.org>  (tiny change)

	* doc/info-stnd.texi (Invoking Info): Fix typo.

2020-03-27  Gavin Smith  <gavinsmith0123@gmail.com>

	Viewport declaration.

	* tp/Texinfo/Convert/HTML.pm (_default_node_redirection_page):
	Add <meta name="viewport"> tag in header for better rendering on 
	mobile devices.  From Karl.

2020-03-25  Gavin Smith  <gavinsmith0123@gmail.com>

	* util/htmlxref.cnf: Add info.

2020-03-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* util/htmlxref.cnf: Add dejagnu.  From Karl.

2020-03-09  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix closing tag for footnotes heading.

	* tp/Texinfo/Convert/HTML.pm (_convert_footnote_command): 
	Correct closing tag from </h3> to </h5>.  Report from Kazuhiro 
	Ito.

2020-02-11  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix @xrefautomaticsectiontitle with active chars in node names.

	* doc/texinfo.tex (\refx): Turn off active characters when
	constructing a control sequence with \csname.  This allows 
	retrieving a section name for use with @xrefautomaticsectiontitle.
	(\xrefX): Do not turn off active characters before using \refx 
	for the section number.

	Akim Demaille reported an error message when using
	@xrefautomaticsectiontitle with a '+' in a node name.

2020-02-05  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix parsetexi out-of-source build.

	* tp/Texinfo/XS/Makefile.am: Add -I option to locate include 
	files under out-of-source builds.  Suggestion by Hans-Bernhard 
	Bröker.  Problem reported by Werner Lemberg 
	https://lists.gnu.org/archive/html/bug-texinfo/2020-01/msg00021.html.

2019-02-05  Hans-Bernhard Bröker  <HBBroeker@t-online.de>  (tiny change)

	* tp/Texinfo/XS/parsetexi/separator.c (handle_close_brace):
	Remove incorrect semicolon after if condition.

2020-01-28  Gavin Smith  <gavinsmith0123@gmail.com>

	Section names in HTML navigation bar instead of node names.

	* tp/Texinfo/Convert/HTML.pm
	(_element_direction): Accept 'section' as the type of text to 
	return.
	(_default_node_direction, _default_node_direction_footer)
	[xrefautomaticsectiontitle]: Call '_element_direction' with 
	'section'.  Combine text of both subroutines and make one call 
	the other.

2020-01-24 Jean-Christophe Helary <jean.christophe.helary@traduction-libre.org>

	* doc/texinfo.tex (Smallcaps): Use correct French.

2020-01-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix test results.

	* tp/tests/run_parser_all.sh: Specify
	"-c SHOW_MENU=1  -c MINI_TOC=0" by default.

	* tp/tests/layout/list-of-tests (formatting_plaintext),
	* tp/tests/contents/list-of-tests (double_contents_book):
	Specify "-c SHOW_MENU=0" on the command line.

	Update the test results for the last change.

2020-01-20  Gavin Smith  <gavinsmith0123@gmail.com>

	Use section names in HTML output.

	* tp/Texinfo/Convert/HTML.pm (%defaults):
	Set xrefautomaticsectiontitle to 'on'.
	(_convert_xref_commands): Do not insert word "section" before 
	hyperlink.

2020-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Info Format General Layout): Change 
	@subsection to @subheading so that nodes appear in menu.

2020-01-19  Gavin Smith  <gavinsmith0123@gmail.com>

	No menus for HTML output by default.

	* tp/Texinfo/Convert/HTML.pm (%defaults): Set SHOW_MENU to 0 and 
	MINI_TOC to 1.
	(_convert) <sectioning commands>: Do not generate a mini-TOC for 
	the @top node.  Do not generate a menu for a node missing one 
	unless SHOW_MENU is set.

2020-01-19  Gavin Smith  <gavinsmith0123@gmail.com>, and
	    Patrice Dumas  <pertusus@free.fr>

	Implement mini-tables of contents.

	* tp/Texinfo/Common.pm (@variable_string_settables),
	* tp/Texinfo/Convert/HTML.pm (%defaults): New customization 
	variable 'MINI_TOC'.

	* tp/Texinfo/Convert/HTML.pm
	(_mini_toc): New subroutine.
	(_convert) <sectioning commands> [MINI_TOC]: Call _mini_toc.
	(%contents_commands): Remove unused.

2020-01-17 Jean-Christophe Helary <jean.christophe.helary@traduction-libre.org>

	* doc/texinfo.texi: Grammar fixes throughout, especially 
	involving hyphens.

2020-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	No accesskey attribute in footer.

	* tp/Texinfo/Convert/HTML.pm (_default_node_direction_footer):
	New function, based on _default_node_direction.
	(%defaults) <'NODE_FOOTER_BUTTONS'>:
	Use _default_node_direction_footer.

	Daniel Nagy reported that in Firefox, when a page had accesskeys 
	defined in both a header and a footer of a node, that focus 
	would switch between the two elements, instead of following the 
	link.

2020-01-15  Gavin Smith  <gavinsmith0123@gmail.com>

	Suppress text decoration inside @def*.

	* tp/Texinfo/Convert/Plaintext.pm (_convert) <@def* commands>:
	Set 'suppress_styles' on the converter to prevent a @code 
	command inside a @def* command producing single quotes.
	* tp/t/19def.t (code_in_def): New test.

2019-12-25  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (_default_node_redirection_page)
	(_default_begin_file): Move encoding declaration above the 
	copyright text so that it will always be present in the first 
	1024 bytes of the file.  See 
	https://www.w3.org/International/questions/qa-html-encoding-declarations

2019-12-15  Paul Eggert  <eggert@cs.ucla.edu>

	Fix misspelling of "common" in texinfo.tex
	* doc/texinfo.tex (commonheadfootline):
	Rename from name mispelled with 'mmm' instead of 'mm'.
	All uses changed.

2019-12-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/ParserNonXS.pm (_convert_to_text):
	New function.  Include text elements which are '0'.  Support 
	@atchar{}, @lbracechar{} and @rbracechar{}.
	(_end_line) <text commands>: Call _convert_to_text.
	(_parse_texi) <in index commands>: Call _convert_to_text in 
	order to support {, }, @ inside index sort keys.

	* tp/Texinfo/XS/parsetexi/convert.c (convert_to_text):
	Support @atchar{}, @lbracechar{} and @rbracechar{}.
	* tp/Texinfo/XS/parsetexi/separator.c
	(handle_close_brace) <in index commands>: Call convert_to_text.

	Georg-Johann Lay reported that @{ was not recognised inside a 
	@sortas directive.

2019-11-08  Patrice Dumas  <pertusus@free.fr>

	* tp/Texinfo/Convert/HTML.pm (%defaults) <LINKS_BUTTONS>:
	Change to make <link> elements in header match the navigation 
	bar.

2019-11-07  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/HTML.pm (command_href): Omit fragment 
	identifier from URL if linking to a section with an associated 
	node.  This means that links from the table of contents will go
	to the top of the page, rather than scrolling the page slightly.

2019-11-02  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (HTML Customization Variables) <INLINE_CONTENTS>:
	Remove referece to removed @setcontentsaftertitlepage command.

2019-10-27  Gavin Smith  <gavinsmith0123@gmail.com>

	* doc/texinfo.texi (Advanced Indexing): Correct spelling.  
	Report from John Tait.

2019-10-18  Gavin Smith  <gavinsmith0123@gmail.com>

	* util/texi2dvi (xref_files_changed): Move call to 
	generated_files_get earlier so that xref_files_new will still be 
	updated if the log files indicate that LaTeX should be re-run.

2019-10-06  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/input.c (locate_include_file): Return 
	value to be freed by caller.

2019-10-06  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix parsetexi macro handling.

	* tp/Texinfo/XS/parsetexi/macro.c (handle_macro): For a macro 
	taking a single argument, if the rest of the line is empty, 
	leave the newline on the line.  Otherwise, a command on the next 
	line would not be recognized as occurring at the beginning of 
	the line.  This led to errors with as.texi from binutils, 
	reported by Hans-Bernhard Bröker.

	* tp/t/60macro.t (include_after_empty_line_arg): New test.

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/end_line.c 
	(parse_special_misc_command) <CM_clear>:
	Use read_flag_name to read name of flag instead of 
	read_command_name.
	* tp/Texinfo/XS/parsetexi/macro.c
	(fetch_value, clear_value): Remove length argument.

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/parsetexi/parser.c
	(process_remaining_on_line) <@value>:
	Use read_flag_name to read name of flag.

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix test suite running under non-American locales.

	* tp/t/test_utils.pl: Set LC_ALL to 'C'.  I found test failures
	when my locale was en_GB.utf8 due to some translation files 
	provided by the "language-pack-en-base" package of Linux Mint 
	("recognized" was changed to "recognised").

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/XS/TestXS.pm: Update use of Texinfo::XSLoader.

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/t/55conditionals.t (ifset_nonalpha): New test.

2019-10-03  Gavin Smith  <gavinsmith0123@gmail.com>

	Support unusual characters in flag name in XS parser.

	* tp/Texinfo/XS/parsetexi/parser.c (read_flag_name): New 
	function.
	* tp/Texinfo/XS/parsetexi/handle_commands.c
	(handle_block_command) <@ifset>: Call read_flag_name instead of 
	read_command_name.

	Hans-Bernhard Bröker reported that flag names containing slashes 
	didn't work in binutils' as.texi.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* tp/Texinfo/Convert/ParagraphNonXS.pm: Use 
	Texinfo::Convert::Paragraph namespace.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Reinstate TEXINFO_XS_PARSER variable.

	* tp/Texinfo/Parser.pm: If TEXINFO_XS_PARSER is set to 0, do not 
	load the XS parser module.
	* tp/Texinfo/XSLoader.pm: Make a warning message more 
	informative.
	
2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix XS module loading.

	* tp/Texinfo/XSLoader.pm (init): Remove code looking for a Perl 
	file in Perl's search path based on the package name of the 
	module.  This does not correspond to a file and will be the same
	package name for XS and non-XS modules.  Remove 'standalone' and 
	'libtool' options for TEXINFO_XS variable.

	* tp/Texinfo/MiscXS.pm, tp/Texinfo/XS/MiscXS.xs: Use 
	Texinfo::MiscXS namespace.

	* tp/Texinfo/Convert/Paragraph.pm, tp/Texinfo/XS/XSParagraph.xs:
	Use Texinfo::Convert::Paragraph namespace.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix XS fallback.

	* tp/Texinfo/XSLoader.pm (init): Do not take an argument of a 
	package name to use for the symbols found in the loaded module - 
	rely on the loaded module using the correct package name in the 
	first place.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Attempt to fix fallback to pure Perl Texinfo::Parser.

	* tp/Texinfo/ModulePath.pm.in: Remove hook from @INC to load the 
	right version of Texinfo::Parser.
	* tp/Texinfo/XSLoader.pm: Add argument for an extra Perl file
	to be loaded in addition to the XS module.
	* tp/Texinfo/Parser.pm: Load XS or pure Perl module by
	calling Texinfo:XSLoader::init.  This is the same approach as 
	for Texinfo::Convert::Paragraph.  Load 
	tp/Texinfo/XS/parsetexi/Parsetexi.pm only after the XS 
	module has been successfully loaded.

	* tp/Texinfo/XS/parsetexi/Parsetexi.pm: Remove call to 
	Texinfo:XSLoader::init.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	* configure.ac: Bump version to 6.7dev, remove dist-xz from 
	options.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Fix running texi2any.pl from the source directory.

	* tp/Texinfo/ModulePath.pm.in: Make $top_builddir and 
	$top_srcdir variables available.
	* tp/texi2any.pl: Use $Texinfo::ModulePath::top_srcdir instead
	of referring to an environment variable which may not be set.

2019-10-01  Gavin Smith  <gavinsmith0123@gmail.com>

	Enable XS parser by default.

	* tp/Texinfo/ModulePath.pm.in: Reverse sense of the check for 
	TEXINFO_XS_PARSER: try to load XS parser module by default.

2019-09-28  Eli Zaretskii  <eliz@gnu.org>

	* tp/Texinfo/XS/parsetexi/api.c (find_locales_dir): Don't use
	asprintf, as that could cause Perl crashes due to different malloc
	implementations.

2019-09-24  Gavin Smith  <gavinsmith0123@gmail.com>

	@url line-breaking.

	* doc/texinfo.tex (\urefallowbreak): Discourage ragged right by 
	reducing end-line stretch and increasing penalty.  Test cases 
	sent by Vincent Lefevre.
	* doc/texinfo-tex-test.texi (URL line breaking): Add test cases.

2019-09-24  Gavin Smith  <gavinsmith0123@gmail.com>

	@url line-breaking.

	* doc/texinfo.tex (\urefallowbreak): Allow a break within a URL 
	without any extra stretch at all.  There is no point to having a 
	small amount of glue at the very end of a line when it is not 
	needed.  Report from Vincent Lefevre.
	* doc/texinfo-tex-test.texi (URL line breaking): Add a test 
	case.

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>

	* api.c (find_locales_dir): Add the "dTHX" boilerplate, as this
	function uses Perl API functions.

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