2018-12-18 Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Fix 'dvi' and 'pdf' texinfo doc generation.

	GNU make has a built-in variable 'TEXI2DVI' but it is not the case
	of all 'make' implementations, which causes 'make doc' to fail
	with an unclear message although 'texi2dvi' is available.  Also,
	'texi2dvi' is invoked inconditionnally.

	* m4/groff.m4 (GROFF_TEXI2DVI): new macro to detect properly the
	presence of 'texi2dvi'.

	* configure.ac: use 'GROFF_TEXI2DVI' and define automake conditional
	'HAVE_TEXI2DVI'.

	* doc/doc.am:
	- Define TEXI2DVI to 'texi2dvi'.
	- Print an error message if 'texi2dvi' is not available.

2018-12-08 Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Install texinfo doc on 'make install-pdf' and 'make install-html'

	* doc/doc.am:
	- Use automake 'install-pdf-local' and 'install-html-local' rules
	to install groff.pdf and groff.html
	- New rules 'uninstall_pdf' and 'uninstall_html'.
	- Use $(RM) instead of 'rm'.
	- Don't try to build doc if 'BUILD_INFODOC' is not set.
	* INSTALL.REPO: document texinfo build and installation.

2018-12-10 Ingo Schwarze <schwarze@openbsd.org>

	* Makefile.am: Remove the unused variables PREFIXMAN5 and PREFIXMAN7.

	They caused installation failures on Solaris 9.

2018-12-08 Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Remove gnulib's hypot module.

	The removal of 'GROFF_NEED_DECLARATION([hypot])' in 'configure.ac'
	was correct as the test was buggy, but there is no need to use
	gnulib's hypot module as previously we did not need to provide a
	replacement function.

	* bootstrap.conf: do it.

2018-12-08  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Problem running gropdf on big endian (Sparc)

	* src/devices/gropdf/gropdf.pl: Prior to perl v5.9 the 'L<'
	template for 'unpack' was unavailable. Solaris 10 uses v5.8.4
	so safer to use the template 'V' rather than 'L<'.

2018-12-08 Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Use gnulib's 'hypot' module.

	In 'configure.ac', the macro call
	'GROFF_NEED_DECLARATION([hypot])' checks whether the function
	'hypot' is correctly declared in 'math.h', but the test is buggy
	and may yields false results.

	* bootsrap.conf: add 'hypot' module.

	* configure.ac: Remove GROFF_NEED_DECLARATION([hypot]).

	* src/libs/libgroff/hypot.cpp: remove declaration of hypot.

2018-12-07  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Problem running gropdf on big endian (Sparc)

	* src/devices/gropdf/gropdf.pl: When loading a binary (.pfb)
	font for embedding always use little endian to unpack chunk
	headers.

2018-12-05  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Skip mom tests if needed config is missing.

	* contrib/mom/examples/test-mom.sh.in: exit 77 if URW fonts are
	not available.

	* contrib/mom/mom.am: distribute inconditionnally test-mom.in.

	* m4/groff.m4 (GROFF_URW_FONTS): check if 'awk' and 'gs' are
	available, and replace non-portable 'grep' command by awk script.

2018-12-01  Colin Watson  <cjwatson@debian.org>

	Fix error handling in tests of mom examples

	* contrib/mom/examples/test-mom.sh.in (check_number_pages): Correct
	error message.
	(check_has_images): Correct shell syntax error.

2018-11-26  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Document .sp behaviour in -me doc -- French translation

	* doc/meintro_fr.me: translation of commit
	7a83f7f5003e24f020306f09f4d497e04e82cb14.

	Fixes bug https://savannah.gnu.org/bugs/?54958.

2018-11-24  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Fix tarball generation: script 'makevarescape.sed' was missing.

	* Makefile.am (EXTRA_DIST): add it.

2018-11-24  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Add automatic tests on mom examples

	* m4/groff.m4 (GROFF_PDFTOOLS): check presence of some pdf tools.
	* configure.ac: use 'GROFF_PDFTOOLS', add new AM conditional.
	* contrib/mom/examples/test-mom.sh.in: new file that use 'pdfinfo'
	and 'pdfimages' to make some basic checks on mom examples.

2018-11-21  G. Branden Robinson <g.branden.robinson@gmail.com>

	tmac/sv.tmac: Set Swedish hyphenation flags to 32.

	This permits hyphenation after the first character but continues
	prohibiting it before the last character of a word, in
	congruence with the TeX-based hyphenation patterns we use.

	Fixes <https://savannah.gnu.org/bugs/index.php?55066>.

2018-11-19  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Fix build on environment where /etc/papersize contains comments

	Issue introduced on commit efea81c75f831ddc6717c2ef25556e0f49d1f679.

	* m4/groff.m4 (GROFF_PAGE): remove comments and get the 1st string
	of '/etc/papersize'.

2018-11-12  G. Branden Robinson <g.branden.robinson@gmail.com>

	* m4/groff.m4 (GROFF_PAGE): Try /etc/papersize first.

	Fixes <https://savannah.gnu.org/bugs/index.php?53271>.

2018-11-12  G. Branden Robinson <g.branden.robinson@gmail.com>

	* bootstrap.conf: Bump Autoconf dependency to 2.68.  We need it
	to support our bug-reporting URL, which contains a "?".
	Strictly, Autoconf 2.65 is fine, but 2.66 and 2.67 broke this.
	Even 2.69 is over 6 years old now.

	See <https://savannah.gnu.org/support/?107450>.

2018-11-12  G. Branden Robinson <g.branden.robinson@gmail.com>

	* m4/groff.m4 (GROFF_PAGE): Quote shell variables that are under
	external control and may contain embedded whitespace.  A test
	shows that our configure script is now robust in this way, but
	our Automake files are not, starting with
	src/utils/afmtodit/afmtodit.am.

2018-11-12  G. Branden Robinson <g.branden.robinson@gmail.com>

	* makevarescape.sed:
	  - Escape plain spaces and double-quotes (ASCII 32 and 34) so
	    that bad things don't happen if they are embedded in a Make
	    variable expanded in a man page @THUS@ _and_ given as an
	    argument to a macro that distinguishes its parameters, such
	    as .IR.
	  - Add discretionary breaks after groups of slashes not
	    preceded by a space; e.g., transform "/usr/bin/groff" into
	    "/usr/\:bin/\:groff".  Will also work on URLs
	    {"https://\:example.com/\:page.html"} in case we need that.

2018-11-11  G. Branden Robinson <g.branden.robinson@gmail.com>

	Undocument Werner and Ted as groff maintainers.

	* README:
	* doc/pic.ms:
	* src/roff/grog/grog.pl:
	* src/roff/nroff/nroff.sh: Werner (and Ted) retired from the
	role some time ago and Bertrand Garrigues has stepped up; see
	https://lists.gnu.org/archive/html/groff/2017-09/msg00048.html.
	I'll let him document his maintainer status as and where he
	prefers.

2018-11-11  G. Branden Robinson <g.branden.robinson@gmail.com>

	Stop spelling "Unix" as "UNIX".

	Per AT&T Bell Labs veterans Doug McIlroy and Meg McRoberts,
	spelling "Unix" in full caps was a contrivance insisted upon by
	AT&T lawyers, and not a practice used in the Unix manuals
	themselves or the Bell Labs Technical Journal.  See
	  https://lists.gnu.org/archive/html/groff/2015-01/msg00026.html
	and
	  https://lists.gnu.org/archive/html/groff/2015-01/msg00029.html
	for support.

	There are instances I did _not_ change; they may require further
	review.
		ChangeLog.*
		NEWS
			One reference relevant to mdoc; see below.
		doc/meintro{,_fr}.me
			These documents also give the small caps
			treatment to groff, troff, and nroff, suggesting
			a separate changeset.
		src/preproc/pic/pic.ypp
			Contains a comment referring to "Compaq Tru64
			UNIX"; not worth the candle IMO.
		tmac/s.tmac:
			{ms macro package} Leaving UX macro definition
			alone until/unless it can be established that
			this doesn't change the rendering of historical
			documents in an objectionable way.
		tmac/doc-syms-u:
		tmac/doc-old.tmac-u:
		tmac/doc-common-u:
		tmac/groff_mdoc.7.man:
			{mdoc macro package} Similar; mdoc defines many
			strings that spit out "UNIX" (albeit not with a
			font size change).

	* MORE.STUFF:
	* NEWS:
	* README.MinGW:
	* contrib/groffer/README:
	* contrib/pdfmark/pdfmark.ms:
	* contrib/pdfmark/pdfroff.1.man:
	* doc/groff.texi:
	* doc/webpage.ms:
	* m4/groff.m4:
	* man/groff_diff.7.man:
	* man/groff_tmac.5.man:
	* man/roff.7.man:
	* src/preproc/html/pre-html.cpp:
	* src/roff/troff/troff.1.man: Change "UNIX" to "Unix",
	discarding markup as necessary.

2018-11-10  G. Branden Robinson <g.branden.robinson@gmail.com>

	man pages: Escape interpolated Make variables.

	* makevarescape.sed: Transform - to \-, ~ to \(ti, and so forth,
	{with an extra layer of backslashes--see below} so that Makefile
	variables containing ASCII characters that do not represent
	themselves literally in *roff (see groff_char(7)) are correctly
	interpolated into man page text.

	* Makefile.am (.man): Transform Makefile variables with the
	above script when interpolating them into man page text.

	Note that while the script, combined with this target, will
	transform ` to \(ga, including grave accents in Makefile
	variables is likely to fail when the shell lexes the argument to
	echo within the old-style command substitution ``.  Testing
	shows that grave accents should work[1] if POSIX-style command
	substitution $() is done instead.  However, $() is less
	portable.  (Triple-escaping grave accents \\\` inside the
	interpolated Makefile variable will work, but is not attempted
	at present.)

	Note also that the amount of backslash-escaping in the sed
	script is excessive (and incorrect) for normal purposes, but
	required here because a command substitution is being nested
	inside yet another invocation of sed.

	{1} For this target; no assurances about the good behavior of
	unusual characters in Makefile variables in other aspects of the
	groff build are offered.

	Fixes <https://savannah.gnu.org/bugs/index.php?55004>.

2018-11-06  G. Branden Robinson <g.branden.robinson@gmail.com>

	* src/utils/lookbib/lookbib.cpp: Doesn't make much sense to mark
	Version_string as a C extern if you're just going to hide it in
	a throwaway scope again.  Remove braces, exposing it.

	"lookbib -v" now reports a version number, instead of "(null)".

	Fixes <https://savannah.gnu.org/bugs/index.php?54972>.

2018-11-06  G. Branden Robinson <g.branden.robinson@gmail.com>

	* src/libs/libgroff/error.cpp (do_error_with_file_and_line):
	If:
	  a program name is known;
	but
	  no file is being processed or the line number is negative,
	then there was no space between the program name (with colon),
	and the succeeding diagnostic message.

	Example: lookbib:fatal error: no databases

	Fixes <https://savannah.gnu.org/bugs/index.php?54971>.

2018-11-05  G. Branden Robinson <g.branden.robinson@gmail.com>

	Make strip.sed operate only if given permission.

	* tmac/strip.sed: Do nothing whatsoever to any input file that
	lacks a line matching "%beginstrip%".  This implements a
	contract between the macro file writer and the stripper script
	{roff input is not parseable with crude weaponry like regular
	expressions}.  In practice, most of the changes performed by the
	script were already in a block enforcing this.  My changes:
	- Stop unconditionally inserting a roff comment noting the
	  reader of stripping at line 2.  Instead, replace the line
	  matching "%beginstrip%" with this comment if and only if it
	  is present.
	- Stop deleting lines containing only the empty request if
	  they occur before "%beginstrip%".
	- Tweak the wording of the roff comment.
	- Remove comment within the sed script; see
	  https://lists.gnu.org/archive/html/groff/2017-11/msg00057.html
	  and the sed section of "Limitations of Usual Tools" in the
	  GNU Autoconf Manual.

	Invalidates <https://savannah.gnu.org/bugs/index.php?53784>.

2018-11-04  G. Branden Robinson <g.branden.robinson@gmail.com>

	* tmac/an-old.tmac: When emitting diagnostics, report the name
	of the macro file complaining, and the name and line number of
	the input file at the time of trouble.  Thanks to Bjarni Ingi
	Gislason for part of the patch.

	Fixes <https://savannah.gnu.org/bugs/?54175> and continues the
	long process of fixing <https://savannah.gnu.org/bugs/?52463>.

2018-11-04  G. Branden Robinson <g.branden.robinson@gmail.com>

	* doc/meintro_fr.me: Add encoding hint to top of file so preconv
	works correctly even if the build environment's encoding is not
	UTF-8.  Adapted from Bjarni Ingi Gislason's patch.  Also add
	long-form Emacs coding declaration at end of file.  Vim's
	auto-detection seems to be fine, so did not update its modeline.

	Fixes <https://savannah.gnu.org/bugs/index.php?54530>.

2018-11-04  G. Branden Robinson <g.branden.robinson@gmail.com>

	* tmac/groff_man.7.man: Reorganize and largely rewrite to more
	precisely document the macro package's behavior and to be more
	helpful and accessible to man page writers who may never read
	any other groff documentation.

2018-10-25  G. Branden Robinson <g.branden.robinson@gmail.com>

	Clarify meaning of \p escape.  Also make more explicit that line
	adjustment for the .brp request and \p escape depends on the
	current adjustment mode.

	* doc/groff.texi: Clarify that \p has effect at the next word
	boundary.  Thanks to Dave <barx> for pointing out the issue and
	providing elucidating language.

	* man/groff.7.man: Similar, but terser.

	Fixes https://savannah.gnu.org/bugs/index.php?54894.

2018-10-04  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Savannah bug # 54812

	* font/devpdf/util/BuildFoundries.pl: If a font is not found
	report list of paths searched.

	Fix https://savannah.gnu.org/bugs/?54812

2018-10-10  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Update 'gnulib' submodule.

	* gnulib: now points on dce8759f0f0236a860a3e68b63c5e99cc6f168f9
	from 'gnulib' repository.  This fixes build error with glibc 2.28
	(see https://bugzilla.redhat.com/show_bug.cgi?id=1595702).

2018-10-04  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Savannah bug # 54779

	* font/devpdf/Foundry.in: Recent ghostscript changed name
	used for embedding groff font HNBI

	Fix https://savannah.gnu.org/bugs/?54779

2018-08-27  Ingo Schwarze  <schwarze@openbsd.org>

	* tmac/groff_www.7.man: Do not use .URL, .MTO, .FTP.

2018-08-21  Ingo Schwarze  <schwarze@openbsd.org>

	Improve terminal rendering for a few special characters:

	* tmac/tty.tmac: add \[.j] (dotless j)
	* tmac/tty-char.tmac: for \[a.], fall back to "."
	* tmac/tty-char.tmac: add playing card suits

2018-08-16  Ingo Schwarze  <schwarze@openbsd.org>

	* src/preproc/preconv/preconv.1.man: add -D to the SYNOPSIS

2018-08-09  Ingo Schwarze  <schwarze@openbsd.org>

	* Makefile.am: correctly calculate MAJOR_VERSION etc.

2018-06-19  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Fixes to gropdf

	* src/devices/gropdf/gropdf.pl: Make default line width 0.4pt
	to match grops. Use 'S' operator (stroke) rather than 's' (close
	and stroke) when Dl command received. Improve switching between
	text and graphic modes.

2018-07-01 Bertrand Garrigues <bertrand.garrigues@laposte.net>

	[me] paragraph with umlaut incorrectly rendered

	* tmac/e.tmac-u: workaround done by Werner LEMBERG <wl@gnu.org>.

	Fix https://savannah.gnu.org/bugs/?42191

2018-06-19  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Add gropdf new features to NEWS file.

	* NEWS: new features.

2018-05-29  Werner LEMBERG  <wl@gnu.org>

	[dvi] Fix glyph map for `cmitt10'.

	Problem reported by Pali Rohár <pali.rohar@gmail.com>.

	  http://lists.gnu.org/archive/html/groff/2018-05/msg00088.html

	* font/devdvi/texitt.map: New file.  This is identical to
	`textt.map' except the dollar glyph, which gets replaced by the
	pound glyph.

	* font/devdvi/generate/Makefile (CWI): Use `texitt.map'.

	* font/devdvi/CWI: Regenerated.

2018-05-07  G. Branden Robinson <g.branden.robinson@gmail.com>

	Improve diagnostics on bad hyphenation requests.

	* src/roff/troff/env.cpp: Add new HYPHEN_* symbols to anonymous
	enum.

	* src/roff/troff/env.cpp (hyphenate_request):
	  - Warn about hyphenation request values that are completely
	    out of range.
	  - Report bad hyphenation request value in diagnostic messages.

2018-04-28  G. Branden Robinson <g.branden.robinson@gmail.com>

	grap2graph: Parallelize changes with pic2graph.

	* contrib/grap2graph/grap2graph.sh:
	  - Refactor temp directory handling.
	  - Handle embedded whitespace in temp dir.
	  - Adapt to old convert(1) programs.

	* contrib/grap2graph/grap2graph.1.man: Make editorial/style
	changes and minor corrections.

2018-04-26  G. Branden Robinson <g.branden.robinson@gmail.com>

	eqn2graph: Remove -unsafe option.

	* contrib/eqn2graph/eqn2graph.sh: Unrecognize "-unsafe" option
	and eliminate $groff_opts variable.  As far as I can tell, this
	option had no effect because (1) pic is not run on the input
	stream (no -p argument to groff); (2) eqn doesn't support
	"shelling out" as pic does; and (3) there is no way to embed
	*roff requests inside a sequence of eqn commands.  If I'm wrong,
	let me know.

	* contrib/eqn2graph/eqn2graph.1.man: Undocument "-unsafe"
	option.

2018-04-26  G. Branden Robinson <g.branden.robinson@gmail.com>

	eqn2graph: Parallelize changes with pic2graph.

	* contrib/eqn2graph/eqn2graph.sh:
	  - Refactor temp directory handling.
	  - Handle embedded whitespace in temp dir.
	  - Adapt to old convert(1) programs.

	* contrib/eqn2graph/eqn2graph.1.man: Make editorial/style
	changes and minor corrections.

2018-04-25  G. Branden Robinson <g.branden.robinson@gmail.com>

	pic2graph: Refactor temp directory handling.

	* contrib/pic2graph/pic2graph.sh: Issue a diagnostic and give up
	if the user's desired temporary directory does not exist.  Also
	document the Bashism $RANDOM and work around its absence.

2018-04-25  G. Branden Robinson <g.branden.robinson@gmail.com>

	pic2graph: Handle embedded whitespace in temp dir.

	* contrib/pic2graph/pic2graph.sh: Quote shell variables having
	to do with the temporary directory's location; without
	quotation, temporary directory names with embedded whitespace
	are wrongly handled.

2018-04-24  G. Branden Robinson <g.branden.robinson@gmail.com>

	* doc/groff.texi: Bump end of copyright range to 2018.  Werner
	added substantial text this year about hyphenation.

2018-04-24  G. Branden Robinson <g.branden.robinson@gmail.com>

	Set version to 1.22.4 in the few places that hard-code it.

	* arch/mingw/grap2graph.cmd:
	* contrib/groffer/version.sh:
	* doc/groff.texi:
	* doc/webpage.ms: Bump from 1.22.3 to 1.22.4.

2018-04-24  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Restrict scaling factors to 3dp and better handle CR/LF in import.

	* src/devices/gropdf/gropdf.pl: Restrict scaling factors to 3dp
	rounded. If pdf imported with pdfpic uses CR/LF line termination
	ibclude XObject Image, length of stream out by 1.

2018-04-23  G. Branden Robinson <g.branden.robinson@gmail.com>

	man pages: Shorten version footer.

	* **/*.man: Replace "Groff Version" with "groff" in the fourth
	argument to .TH in all man pages.  This suffices to keep that
	part of the footer from overrunning the date, even in dirty
	trees on 80-column terminals.

	Fixes https://savannah.gnu.org/bugs/index.php?53721.

2018-04-23  G. Branden Robinson <g.branden.robinson@gmail.com>

	pic2graph(1): Make editorial/style changes and minor
	corrections.

2018-04-23  G. Branden Robinson <g.branden.robinson@gmail.com>

	pic2graph: Adapt to old convert(1) programs.

	* contrib/pic2graph/pic2graph.sh: Grep convert's -help output
	for the string "-trim".  If it is not found, the old method for
	image trimming documented in pic2graph's man page, "-crop 0x0",
	is used.  I am motivated by the fact that the warning about this
	in our man page is very old (10 years or more), and I wanted to
	get rid of it.

	pic2graph emits a warning when performing this fallback, in the
	event the ImageMagick and/or GraphicsMagick teams surprise the
	world again.

	* contrib/pic2graph/pic2graph.1.man: Remove BUGS section, the
	entire contents of which was dedicated to convert's change in
	behavior.

2018-04-22  G. Branden Robinson <g.branden.robinson@gmail.com>

	groff_man(7): Expand command synopsis section.

	This section now explains in detail how to write (and read) a
	command synopsis.

2018-04-12  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Make PDFPIC behave the same whether -Tps or -Tpdf used.

	Previously the -Tpdf version did not cause a break nor position
	to the line beneath the imported picture, whilst the -Tps
	version did.

	* tmac/pdfpic.tmac: Corrected behavior.

	* NEWS: Explain the change of behaviour and how to reinstate
	the previous behaviour using register PDFPIC_NOSPACE or the
	environment variable GROFF_PDFPIC_NOSPACE.

2018-03-27  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Define a short version for data installation dir name.

	This is the full version stripped of any characters after the
	third digit.  Used for installation of font, macro and various
	data (by default in /usr/local/share/groff).  The various programs
	and scripts still use the full version from gnulib script
	'git-version-gen' .

	* configure.ac (SHORT_VERSION): short version definition.

	* Makefile.am: use 'SHORT_VERSION' for 'docdir' and 'datasubdir'
	definitions.

2018-03-11  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Remove doc/automake_migration_tests.txt

	Automake migration was completed long time ago and this file is no
	longer needed.

2018-03-11  Colin Watson  <cjwatson@debian.org>

	Switch to Gnulib implementation of snprintf

	This is more actively maintained, straightforward to integrate now
	that we have Gnulib integration, and simplifies groff's overall
	licensing.

	* bootstrap.conf (gnulib_modules): Add `snprintf' and `vsnprintf'.
	* configure.ac: Remove local checks for `snprintf' and `vsnprintf'.
	* Makefile.am: Remove various comments related to local checks for
	`snprintf' and `vsnprintf'.
	* src/include/lib.h: Remove declarations of `snprintf' and
	`vsnprintf'.
	* src/libs/libgroff/libgroff.am (EXTRA_DIST): Remove
	`src/libs/snprintf/snprintf.c'.
	* src/libs/snprintf/snprintf.c: Remove.

	* LICENSES: Remove section about `src/libs/snprintf/snprintf.c'.
	* MANIFEST: Remove entry for `src/libs/libxutil'.

2018-03-09  Deri James  <deri@chuzzlewit.myzen.co.uk>

	PDF must not open in presentation mode.

	* src/devices/gropdf/gropdf.pl: When GROPDF_NOSLIDE=1
	passed do not set pdf to presentation mode.

2018-03-09  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Allow a "." to signify a missing parameter in .pdftransition

	* src/devices/gropdf/gropdf.1.man: Explain the .pdftransition
	macro (and underlying '\X' command) accepts a "." to specify
	a parameter retains its current value.

2018-03-09  Colin Watson  <cjwatson@debian.org>

	man pages: fix incorrect cross-referenced section

	* man/roff.7.man (FILE NAME EXTENSIONS): Correct reference to
	groff_filenames(5).

2018-03-09  Colin Watson  <cjwatson@debian.org>

	mdate.sh: rewrite in Perl

	groff already requires perl to build.  This version is much shorter
	and easier to understand than the shell/awk version: we don't have
	to worry about convincing ls to produce output that we can parse,
	and we don't have to play games with the way that the same field may
	contain either the year or the time depending on how old the file
	is.

	While I'm at it, this version also adds `SOURCE_DATE_EPOCH' support
	for reproducible builds: when `SOURCE_DATE_EPOCH' is set, files are
	considered to have been last modified at that time.

	* mdate.sh: Rewrite in Perl, moving to ...
	* mdate.pl: ... this new file.
	* Makefile.am (EXTRA_DIST, .man): Update references.

2018-03-09  Colin Watson  <cjwatson@debian.org>

	Remove #! lines from non-executable files

	These are always invoked by the build system (either in-tree or via
	the installed Makefiles) using the necessary program, so the #!
	lines were unnecessary.  They were harmless except that they caused
	Debian's `lintian` tool to complain about installed non-executable
	scripts.

	* font/devlj4/generate/special.awk: Remove #! line.
	* font/devps/generate/symbol.sed: Likewise.

2018-03-09  Colin Watson  <cjwatson@debian.org>

	doc: stop generating W3C validation icons

	Debian's `lintian' tool says:

	  These badges may be displayed to tell readers that care has been
	  taken to make a page compliant with W3C standards.  Unfortunately,
	  downloading the image from www.w3.org might expose the reader's IP
	  address to potential tracking.

	I think the risk is a small one, but I also don't think the badges
	are especially valuable, so it doesn't seem like much to ask to just
	drop them at least for groff's own documentation.

	* doc/doc.am (.ms.html, doc/pic.html): Remove `-P-V' option.

2018-03-01  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Place pdf in presentation mode if new commands used.

	* src/devices/gropdf/gropdf: The new commands which
	control page transitions should result in the pdf being
	opened in presentation mode.

2018-03-02  Werner LEMBERG  <wl@gnu.org>

	Hyphenation exceptions in pattern files now obey `.hy' (#53196).

	* src/roff/troff/env.cpp (hyphen_trie::read_patterns_file): Mark
	`\hyphenation' entries with a trailing space.
	(hyphen_trie::insert_hyphenation): Updated.
	(hyphenate): Make `\hyphenation' entries obey `.hy' restrictions.

	* doc/groff.texi (.hy): Updated.

2018-03-01  Werner LEMBERG  <wl@gnu.org>

	Adjust `.hy' values.

	In most cases hyphenation constraints were too strict.  The now
	selected values reflect the parameters used for the generation of
	the (TeX) hyphenation patterns.

	* tmac/an-old.tmac, tmac/cs.tmac, tmac/de.tmac, tmac/doc-common-u,
	tmac/e.tmac-u, tmac/fr.tmac, tmac/s.tmac, tmac/sv.tmac: Fix `.hy',
	`\n[HY]', and `\n[doc-hyphen-flags]' values.

	* doc/groff.texi, tmac/groff_man.7.man, tmac/groff_ms.7.man, NEWS:
	Updated.

2018-03-01  Werner LEMBERG  <wl@gnu.org>

	Fix some problems related to hyphenation.

	Introduce values 16 (allow hyphenation before last character) and 32
	(allow hyphenation after first character) to the `hy' request
	(#48904).

	Really fix problem reported in issue #48904.

	Fix #53243, which is a regression introduced in 2016-09-09.

	* src/roff/troff/env.cpp (HYPHEN_LAST_CHAR, HYPHEN_FIRST_CHAR): New
	enumeration values.
	(hyphenate_request): Check for contradicting values.
	(environment::hyphenate_line): Fix minimum word length considered
	for hyphenation.
	(environment::print_env): Updated.
	(hyphenate): Fix and extend logic.  The original patch to handle
	#48904 was bad.

	* doc/groff.texi, man/groff_diff.7.man, NEWS: Updated.

2018-03-01  Deri James  <deri@chuzzlewit.myzen.co.uk>

	Add page transitions to pdfs created with gropdf.

	* src/devices/gropdf.pl: Handle new '\X' commands to support page
	transitions in presentation mode pdfs. These commands are a subset
	of the commands used in present.tmac allowing slideshows to be
	directly produced from -Tpdf without using postscript -> gpresent.pl
	-> ghostscript.

	* tmac/pdf.tmac: New macros '.pdfpause' and '.pdftransition' to
	support page transitions.

	* src/devices/gropdf.1.man: Document the '\X' commands supported.

2018-03-01  Werner LEMBERG  <wl@gnu.org>

	Use $(AM_V_GEN) and $(AM_V_P) to silence even more file generation.

	* font/devpdf/devpdf.am (BuildFoundries, DESC, Foundry,
	build_font_files): Do it.

2018-02-28  Werner LEMBERG  <wl@gnu.org>

	Use $(GROFF_V) to silence documentation creation.

	* Makefile.am (GROFF_V): Define.

	* doc/doc.am (.me.txt, .me.ps, .ms.html, .ms.txt, .ms.ps, pic.html,
	webpage.html): Use $(GROFF_V).

2018-02-28  Werner LEMBERG  <wl@gnu.org>

	Use $(AM_V_GEN) to silence file generation.

	* Makefile.am (.man), contrib/eqn2graph/eqn2graph.am (eqn2graph),
	contrib/grap2graph/grap2graph.am (grap2graph), contrib/pic2graph.am
	(pic2graph), src/devices/gropdf/gropdf.am (gropdf, pdfmom),
	src/preproc/eqn/eqn.am (neqn), src/roff/grog/grog.am (grog),
	src/roff/nroff/nroff.am (nroff), src/utils/afmtodit/afmtodit.am
	(afmtodit), font/devascii/devascii.am (DEVASCIIFONTSFILES, DESC),
	font/devcp1047/devcp1047.am (DEVCP1047FONTSFILES, DESC),
	font/devhtml/devhtml.am (DEVHTMLFONTSFILES, DESC),
	font/devlatin1/devlatin1.am (DEVLATIN1FONTSFILES, DESC),
	font/devutf8/devutf8.am (DEVUTF8FONTSFILES, DESC),
	font/devps/devps.am (DESC, prologue, zapfdr.pfa, symbolsl.pfa),
	font/devdvi/devdvi.am (DESC), font/devlbp/devlbp.am (DESC),
	font/devlj4/devlj4.am (DESC): Do it.

2018-02-28  Werner LEMBERG  <wl@gnu.org>

	* configure.ac: Activate silent Makefile rules.

2018-02-28  Werner LEMBERG  <wl@gnu.org>

	Minor compilation warnings.

	* src/devices/xditview/draw.c: Don't declare `MaxFontPosition'.

	* src/roff/troff/input.cpp (psbb_locator::context_args): Avoid
	shadowing of `buf'.

2018-02-28  Werner LEMBERG  <wl@gnu.org>

	* src/roff/troff/env.cpp: s/HYPHEN_/HYPHEN_NOT/ for clarification.

2018-02-26  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Update installation doc.

	* INSTALL.REPO: mention that 'pkg-config' is a dependency.

	* INSTALL.extra: add dependency 'makeinfo' and optional
	dependencies 'pkg-config' and 'uchardet'.

	* TESTS: move to doc/automake_migration_tests.txt

	* INSTALL.gen: remove, this file is redundant with the 'INSTALL'
	file from gnulib.

2018-02-02  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Update 'gnulib' submodule.

	* gnulib: now points on cf56f8f618c48cfadd2499ced58574633d12f129
	from 'gnulib' repository.

2018-02-02  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Use gnulib script 'git-version-gen' to define groff's version

	* bootstrap.conf: add 'git-version-gen' script.

	* configure.ac: suppress 'GROFF_VERSION_STRING' and replace it by
	the script.  If the current commit corresponds to a tag, then the
	version is simply the tag name.  Otherwise the version has the
	format: <tag>-<nb_commits_from_latest_tag>-<commit sha1>.  The
	version is now stored in '.version'.

	* REVISION: removed.

	* VERSION: removed.

	* Makefile.am: define 'MAJOR_VERSION', 'MINOR_VERSION' and
 	'REVISION'.

	* src/libs/libgroff/libgroff.am: use 'MAJOR_VERSION',
	'MINOR_VERSION' and 'REVISION', add dependency on '.version'.

	* src/roff/troff/troff.am: ditto.

	* contrib/mom/om.tmac-u (short_revision): new string that extracts
	the first digit of the revision, to be used when checking groff
	version.

2018-01-18  Deri James  <deri@chuzzlewit.myzen.co.uk>

	On reflection using an array for Filter is not optimal.

	* src/devices/gropdf.pl: revert single line from commit
	18fd1fd0bf05eb9a5ba0d2be1a655a044662a8bf.

2018-01-17  Deri James  <deri@chuzzlewit.myzen.co.uk>

	All values should be 3 decimals

	* src/devices/gropdf.pl: for values approaching zero values
	in the for 0.nnnnnnE-nn could be written, not valid syntax for
	PDF. Make all values rounded to 3 decimals, becomes 0.000.

	Also changed stream Filter dictionary entry to an array.

2018-01-14  Bertrand Garrigues <bertrand.garrigues@laposte.net>

	Fix tarball generation ('make distcheck'  failed)

	* src/devices/xditview/xditview.am: add .h created by commit
	382ab4af269a1dea422c8f9bb5c67a065d026deb to EXTRA_DIST

	* contrib/mm/mm.am: restore distribution of files removed by
	commit 445bf58765b759546e238a235651eb0bf5b34325.

2018-01-13  Ingo Schwarze <schwarze@openbsd.org>

	Makefile.am: Re-add -F and -M flags needed to build out of src.

2018-01-13  Ingo Schwarze <schwarze@openbsd.org>

	[mdoc]: rewrite the implementation of the .Lk macro

	* tmac/doc.tmac-u (Lk): Rewrite.

	The old implementation was written before the big mdoc
	rewrite for groff-1.17.  In contrast to most other macros,
	it was never updated to use the new techniques.
	This new implementation makes .Lk callable, makes trailing
	punctuation work in the normal way, and makes the style of
	the implementation consistent with other macros.

	It also removes the feature of automatically switching
	between in-line and displayed rendering depending on the
	length of the link because that was inconsistent across
	output modes and counter-intuitive, resulting in ugly
	output for many existing real-world manual pages.
	It now always renders in-line.  Use .D1 Lk where desired.

	Merging http://savannah.gnu.org/bugs/?52849
	OK wl@gnu, jmc@openbsd, bentley@openbsd

2017-12-14  G. Branden Robinson <g.branden.robinson@gmail.com>

	man pages: Comment compatibility-mode switching.

	The '.do' and '.cp' requests (both groffisms) are some of the
	more obscure features of groff's own man page corpus.
	Consequently, they get cargo-culted around, within and outside
	groff.  Thanks to Werner Lemberg for the discussion, which
	revealed (to me) that groff ships with compatibility mode on by
	default on Solaris 10 and 11.

	Fix bug https://savannah.gnu.org/bugs/?52444.

2017-11-30  G. Branden Robinson <g.branden.robinson@gmail.com>

	* src/roff/troff/input.cpp:
	Make writers to stderr identify themselves.

	* font/devpdf/util/BuildFoundries.pl:
	Same; also refactor all diagnostics into Notice(), Warn(), and
	Die() functions, which delegate their common message-printing to
	Msg().

	Fix part of bug https://savannah.gnu.org/bugs/?52463.

2017-11-21  G. Branden Robinson <g.branden.robinson@gmail.com>

	man pages: Fix compatibility-mode problems.

	* contrib/gperl/gperl.1.man: Use idiomatic .BI macro instead of
	  leading an input line with a font escape followed by a dot,
	  the interpretation of which differs based on compatibility
	  mode.

	* src/preproc/soelim/soelim.1.man: Make .mso request only after
	  compatibility mode is turned off.

2017-11-19  G. Branden Robinson <g.branden.robinson@gmail.com>

	* Makefile.am: Protect arguments to "tr" from globbing.

	Prevents errors from tr during man page generation and possible
	incorrect program prefixing in those pages if, for example, some
	doofus has directories called "A", "B", ...  hanging around in
	the build tree.

2017-11-18  G. Branden Robinson <g.branden.robinson@gmail.com>

	* tmac/groff_mdoc.7.man: Use unstripped symbol names.

	Fix bug https://savannah.gnu.org/bugs/?52442.

2017-11-18  G. Branden Robinson <g.branden.robinson@gmail.com>

	* src/include/.gitignore: Ignore config.hin~ files.

2017-11-18  Bjarni Ingi Gislason <bjarniig@rhi.hi.is>

	test-groff.in: Enable backtraces and all warnings by default.

	Fix bug https://savannah.gnu.org/bugs/?51482.
