[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [groff] [PATCH] man page patches for 1.22.4.rc5/final
From: |
G. Branden Robinson |
Subject: |
Re: [groff] [PATCH] man page patches for 1.22.4.rc5/final |
Date: |
Thu, 13 Dec 2018 12:37:25 -0500 |
User-agent: |
NeoMutt/20180716 |
At 2018-12-13T16:53:23+0000, Bjarni Ingi Gislason wrote:
> In patch 3.diff, file grotty.1.man:
>
> Use single capital for one argument, two for two or more
>
>
> -.B @MACRODIR@/tty.tmac
> +.IR @MACRODIR@/tty.tmac
>
> and
>
> -.B @MACRODIR@/tty\-char.tmac
> -Additional kludgy character definitions for use with
> +.IR @MACRODIR@/tty\-char.tmac
Thanks for the review, but there is only one argument to each of these
requests.
Macro arguments are whitespace-delimited, and there is no whitespace in
these arguments. Even if there is whitespace in the expansion of
@MACRODIR@, my recent changes will ensure that they do not get
misinterpreted as argument boundaries.
commit f61089db04816e30cc9045988a4c80f84d0350d7
Author: G. Branden Robinson <address@hidden>
Date: Sat Nov 10 10:00:01 2018 -0500
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>.
commit ea32b7d0462813fc3e7c423efb6d805273df9edd
Author: G. Branden Robinson <address@hidden>
Date: Mon Nov 12 12:02:31 2018 -0500
makevarescape.sed: Add breakpoints, spaces, and ".
* 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.
Regards,
Branden
signature.asc
Description: PGP signature
Re: [groff] [PATCH] man page patches for 1.22.4.rc5/final, Dave Kemper, 2018/12/13