$NetBSD: patch-doc_texinfo2HTML,v 1.1 2017/06/17 19:42:26 joerg Exp $ 5.26 requires quoting of { in certain regex contexts. --- doc/texinfo2HTML.orig 2017-06-10 18:03:25.861306247 +0000 +++ doc/texinfo2HTML @@ -120,7 +120,7 @@ while(get_a_line()) { next; } # Process image commands (NOT...it's there already) - if (/\@image{(.*)}/) { + if (/\@image\{(.*)\}/) { #print "\n"; next; } @@ -208,12 +208,12 @@ while(get_a_line()) { s,<,<,og; # Special tweak to make 'Gri' look cooler. # s, Gri , GRI ,og; - s,\@code{\@\@},\@code{TEXINFO2HTML-AT-AT},og; + s,\@code\{\@\@\},\@code{TEXINFO2HTML-AT-AT},og; s,\@},TEXINFO2HTML-CLOSE-BRACE,og; # retain inside e.g. @code{} s,\@\@,TEXINFO2HTML-AT-AT,og; - s,\@{,{,og; - s,\@TeX{},TeX,og; - s,\@dots{},...,og; + s,\@\{,{,og; + s,\@TeX\{\},TeX,og; + s,\@dots\{\},...,og; # Put in place-holders for some accents. I should check for all # of them, but for now, I'm just kludging in a couple, # to solve an immediate problem and to serve as a place-holder @@ -237,18 +237,18 @@ while(get_a_line()) { } next; } - while (/\@url{([^}]*)}/) { + while (/\@url\{([^}]*)\}/) { $the_url = $1; - s:\@url{[^}]*}:\@code{$the_url}:; + s:\@url\{[^}]*\}:\@code{$the_url}:; } - while (/\@uref{([^}]*)}/) { + while (/\@uref\{([^}]*)\}/) { @items = split(/,/, $1); if ($#items == 0) { - s:\@uref{[^}]*}:$items[0]:; + s:\@uref\{[^}]*\}:$items[0]:; } elsif ($#items == 1) { - s:\@uref{[^}]*}:$items[1]:; + s:\@uref\{[^}]*\}:$items[1]:; } elsif ($#items == 2) { - s:\@uref{[^}]*}:\@code{$items[2]}:; + s:\@uref\{[^}]*\}:\@code{$items[2]}:; } else { die "Cannot have more than 3 items in a 'uref' at \"$_\""; } @@ -330,7 +330,7 @@ while(get_a_line()) { while(get_a_line()) { next if /\@sp/; next if /\@cindex/; - s|\@anchor{([^}]*)}||g; + s|\@anchor\{([^}]*)\}||g; &process_examples(); # Handle HTML inserts if (/^\@c HTML (.*)/o) { @@ -346,10 +346,10 @@ while(get_a_line()) { } if (/\s*\@item\s*(.*)/o) { $the_item = $1; - $the_item =~ s:\@{:{:og; - $the_item =~ s:\@}:}:og; + $the_item =~ s:\@\{:{:og; + $the_item =~ s:\@\}:}:og; $the_item =~ s:\@\@:\@:og; - $the_item =~ s:\@code{([^}]*)}:`$1':og; + $the_item =~ s:\@code\{([^}]*)\}:`$1':og; print "
$start_item$the_item$end_item\n
"; } else { print "

" if (/^$/o); @@ -402,38 +402,38 @@ sub process_examples() { } else { s,\@value\{([^}]*)\},$value{$1},g; # Substitute set/value pair s,\@},},og; - s,\@{,{,og; + s,\@\{,{,og; } } sub sub_refs { - die "line $. of file: cannot have multiple refs on one line" if (/\@[px]*ref{(.*)}(.*)\@[px]*ref{(.*)}/); + die "line $. of file: cannot have multiple refs on one line" if (/\@[px]*ref\{(.*)\}(.*)\@[px]*ref\{(.*)\}/); # anchors - s|\@anchor{([^}]*)}||g; + s|\@anchor\{([^}]*)\}||g; # Change e.g. # @xref{Viewing} # into # see Viewing #if (/\@ref/){print "AAA[$_]AAA\n"; - s|\@ref{([^}]*)}|see $1|g; + s|\@ref\{([^}]*)\}|see $1|g; #print "BBB[$_]BBB\n";} - s|\@xref{([^}]*)}|see $1|g; - s|\@pxref{([^}]*)}|see $1.|g; - while (/\@url{([^}]*)}/) { + s|\@xref\{([^}]*)\}|see $1|g; + s|\@pxref\{([^}]*)\}|see $1.|g; + while (/\@url\{([^}]*)\}/) { $the_url = $1; - s:\@url{[^}]*}:\@code{$the_url}:; + s:\@url\{[^}]*\}:\@code{$the_url}:; } - while (/\@uref{([^}]*)}/) { + while (/\@uref\{([^}]*)\}/) { @items = split(/,/, $1); if ($#items == 0) { - s:\@uref{[^}]*}:$items[0]:; + s:\@uref\{[^}]*\}:$items[0]:; } elsif ($#items == 1) { - s:\@uref{[^}]*}:$items[1]:; + s:\@uref\{[^}]*\}:$items[1]:; } elsif ($#items == 2) { - s:\@uref{[^}]*}:\@code{$items[2]}:; + s:\@uref\{[^}]*\}:\@code{$items[2]}:; } else { die "Cannot have more than 3 items in a 'uref' at \"$_\""; } @@ -466,17 +466,17 @@ sub sub_headings { sub sub_emphasis { s,<<,<<,g; s,>>,>>,g; - s,\@emph{([^}]*)},$1,g; - s,\@strong{([^}]*)},$1,g; - s,\@footnote{([^}]*)}, [$1],g; - s,\@b{([^}]*)},$1,g; + s,\@emph\{([^}]*)\},$1,g; + s,\@strong\{([^}]*)\},$1,g; + s,\@footnote\{([^}]*)\}, [$1],g; + s,\@b\{([^}]*)\},$1,g; - s,\@code{([^}]*)},`$1',g; + s,\@code\{([^}]*)\},`$1',g; s,\@\@,\@,g; - s,\@samp{([^}]*)},`$1',g; - s,\@key{([^}]*)},`$1',g; - s,\@kbd{([^}]*)},`$1',g; - s,\@file{([^}]*)},`$1',g; + s,\@samp\{([^}]*)\},`$1',g; + s,\@key\{([^}]*)\},`$1',g; + s,\@kbd\{([^}]*)\},`$1',g; + s,\@file\{([^}]*)\},`$1',g; s,TEXINFO2HTML-CLOSE-BRACE,},g; s,TEXINFO2HTML-AT-AT,\@,g; s,TEXINFO2HTML-ACCENT-ACUTE-a,á,g;