Code

glossary: fix overoptimistic automatic linking of defined terms
authorJ. Bruce Fields <bfields@citi.umich.edu>
Mon, 5 Mar 2007 00:13:09 +0000 (19:13 -0500)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Sun, 11 Mar 2007 04:05:01 +0000 (23:05 -0500)
The script sort_glossary.pl turns each use of "term" into a link to the
definition of "term".  To avoid mangling links like

gitlink:git-term[1]

it doesn't replace any occurence of "term" preceded by "link:git-".
This fails for gitlink:git-symbolic-ref[1] when substituting for "ref".

So instead just refuse to replace anything preceded by a "-".
That could result in missing some opportunities, but that's a less
annoying error.

Actually I find the automatic substitution a little distracting; some
day maybe we should just run it once and commit the result, so it can
be hand-tuned.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
Documentation/sort_glossary.pl

index e0bc552a645f482445d5be33b3b662cead324aa0..05dc7b2c7b3653c2b70850e881263e9c5236e153 100644 (file)
@@ -48,7 +48,7 @@ This list is sorted alphabetically:
 ';
 
 @keys=sort {uc($a) cmp uc($b)} keys %terms;
-$pattern='(\b(?<!link:git-)'.join('\b|\b(?<!link:git-)',reverse @keys).'\b)';
+$pattern='(\b(?<!link:git-)'.join('\b|\b(?<!-)',reverse @keys).'\b)';
 foreach $key (@keys) {
        $terms{$key}=~s/$pattern/sprintf "<<ref_".no_spaces($1).",$1>>";/eg;
        print '[[ref_'.no_spaces($key).']]'.$key."::\n"