diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2019-12-07 09:57:04 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2019-12-07 09:57:04 +0000 |
commit | b01d215df18ba753746a170125b883befe100d67 (patch) | |
tree | cfa0480e677426ff1f561fb22f69bdb5583b4feb /contrib/texi2pod.pl | |
parent | ae169f9e4cbb5a1f1767106d86f322d166d5189d (diff) | |
download | gcc-b01d215df18ba753746a170125b883befe100d67.tar.gz |
Fix @multitable handling in texi2pod.pl
While trying out Dennis's Armv8.6-A patch, I noticed that texi2pod.pl
didn't handle the new @multitable correctly. There were two problems:
(1) @multitables nested in other @tables inherited the @item type from
the enclosing @table. Since the new @multitable is in a @table @samp,
we applied @samp markup to the @multitable @items. This in turn
meant that it captured the @tab separator in the @item markup.
Fixed by pushing an empty item code onto the stack.
(2) We didn't handle @headitem. Fixed by enclosing it in italics,
like we do for section headings. This causes it to be underlined
in the man output.
2019-12-07 Richard Sandiford <richard.sandiford@arm.com>
contrib/
* texi2pod.pl: Handle @headitems in @multitables, printing them
in italics. Push an empty item code onto the stack.
From-SVN: r279074
Diffstat (limited to 'contrib/texi2pod.pl')
-rwxr-xr-x | contrib/texi2pod.pl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/contrib/texi2pod.pl b/contrib/texi2pod.pl index 91bdbb5cea9..608dff42415 100755 --- a/contrib/texi2pod.pl +++ b/contrib/texi2pod.pl @@ -164,6 +164,7 @@ while(<$inf>) { $ic = pop @icstack; } elsif ($ended eq "multitable") { $_ = "\n=back\n"; + $ic = pop @icstack; } else { die "unknown command \@end $ended at line $.\n"; } @@ -288,7 +289,9 @@ while(<$inf>) { /^\@multitable\s.*/ and do { push @endwstack, $endw; + push @icstack, $ic; $endw = "multitable"; + $ic = ""; $_ = "\n=over 4\n"; }; @@ -312,11 +315,13 @@ while(<$inf>) { $_ = ""; # need a paragraph break }; - /^\@item\s+(.*\S)\s*$/ and $endw eq "multitable" and do { + /^\@(headitem|item)\s+(.*\S)\s*$/ and $endw eq "multitable" and do { @columns = (); - for $column (split (/\s*\@tab\s*/, $1)) { + $item = $1; + for $column (split (/\s*\@tab\s*/, $2)) { # @strong{...} is used a @headitem work-alike $column =~ s/^\@strong\{(.*)\}$/$1/; + $column = "I<$column>" if $item eq "headitem"; push @columns, $column; } $_ = "\n=item ".join (" : ", @columns)."\n"; |