Mercurial > cpython-lru_cache-weakref
diff Doc/tools/node2label.pl @ 18002:45badfbfb00e legacy-trunk
New solution to the "Someone stuck a colon in that filename!" problem:
Allow colons in the labels used for internal references, but do not
expose them when generating filename.
| author | Fred Drake <fdrake@acm.org> |
|---|---|
| date | Tue, 29 May 2001 19:53:46 +0000 |
| parents | 774817285b8c |
| children | fe4071beff41 |
line wrap: on
line diff
--- a/Doc/tools/node2label.pl Tue May 29 18:51:41 2001 +0000 +++ b/Doc/tools/node2label.pl Tue May 29 19:53:46 2001 +0000 @@ -10,9 +10,16 @@ my $key; # sort so that we get a consistent assignment for nodes with multiple labels foreach $label (sort keys %external_labels) { - $key = $external_labels{$label}; - $key =~ s|^/||; - $nodes{$key} = $label; + # + # If the label can't be used as a filename on non-Unix platforms, + # skip it. Such labels may be used internally within the documentation, + # but will never be used for filename generation. + # + if ($label =~ /^([-.a-zA-Z0-9]+)$/) { + $key = $external_labels{$label}; + $key =~ s|^/||; + $nodes{$key} = $label; + } } # This adds the "internal" labels added for indexing. These labels will not
