6
# read the labels, then reverse the mappings
11
# sort so that we get a consistent assignment for nodes with multiple labels
12
foreach $label (sort keys %external_labels) {
13
$key = $external_labels{$label};
15
$nodes{$key} = $label;
18
# This adds the "internal" labels added for indexing. These labels will not
19
# be used for file names.
20
require "internals.pl";
21
foreach $label (keys %internal_labels) {
22
$key = $internal_labels{$label};
24
if (defined($nodes{$key})) {
25
$nodes{$label} = $nodes{$key};
29
# collect labels that have been used
33
# don't want to do one s/// per line per node
34
# so look for lines with hrefs, then do s/// on nodes present
35
if (/(HREF|href)=[\"\']([^\#\"\']*)html[\#\"\']/) {
36
@parts = split(/(HREF|href)\=[\"\']/);
39
$node =~ s/[\#\"\'].*$//g;
41
if (defined($nodes{$node})) {
42
$label = $nodes{$node};
43
if (s/(HREF|href)=([\"\'])$node([\#\"\'])/href=$2$label.html$3/g) {
44
s/(HREF|href)=([\"\'])$label.html/href=$2$label.html/g;
45
$newnames{$node} = "$label.html";
53
foreach $oldname (keys %newnames) {
54
rename($oldname, $newnames{$oldname});