Kaydet (Commit) 19e2ce58 authored tarafından Fred Drake's avatar Fred Drake

Add support for mapping internal labels used from the index.

üst 48a16bf6
...@@ -15,22 +15,33 @@ foreach $label (sort keys %external_labels) { ...@@ -15,22 +15,33 @@ foreach $label (sort keys %external_labels) {
$nodes{$key} = $label; $nodes{$key} = $label;
} }
# This adds the "internal" labels added for indexing. These labels will not
# be used for file names.
require "intlabels.pl";
foreach $label (keys %internal_labels) {
$key = $internal_labels{$label};
$key =~ s|^/||;
if (defined($nodes{$key})) {
$nodes{$label} = $nodes{$key};
}
}
# collect labels that have been used # collect labels that have been used
%newnames = (); %newnames = ();
while (<>) { while (<>) {
# don't want to do one s/// per line per node # don't want to do one s/// per line per node
# so look for lines with hrefs, then do s/// on nodes present # so look for lines with hrefs, then do s/// on nodes present
if (/HREF=\"([^\#\"]*)html[\#\"]/) { if (/(HREF|href)=\"([^\#\"]*)html[\#\"]/) {
@parts = split(/HREF\=\"/); @parts = split(/(HREF|href)\=\"/);
shift @parts; shift @parts;
for $node (@parts) { for $node (@parts) {
$node =~ s/[\#\"].*$//g; $node =~ s/[\#\"].*$//g;
chop($node); chop($node);
if (defined($nodes{$node})) { if (defined($nodes{$node})) {
$label = $nodes{$node}; $label = $nodes{$node};
if (s/HREF=\"$node([\#\"])/HREF=\"$label.html$1/g) { if (s/(HREF|href)=\"$node([\#\"])/$1=\"$label.html$2/g) {
s/HREF=\"$label.html#SECTION\d+/HREF=\"$label.html/g; s/(HREF|href)=\"$label.html#(l2h-)?SECTION\d+/$1=\"$label.html/g;
$newnames{$node} = "$label.html"; $newnames{$node} = "$label.html";
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment