56 |
my $last_level = 0; |
my $last_level = 0; |
57 |
my $toc_html = ''; |
my $toc_html = ''; |
58 |
sub header { |
sub header { |
59 |
my ($level, $content) = @_; |
my ($level, $name) = @_; |
60 |
my $display = $content; |
|
61 |
|
my $display = $name; |
62 |
$display =~ s{^\d+[\.-]}{}; |
$display =~ s{^\d+[\.-]}{}; |
63 |
$display =~ s{-}{ }g; |
$display =~ s{-}{ }g; |
64 |
$display =~ s{\.\w+$}{}; |
$display =~ s{\.\w+$}{}; |
65 |
$content =~ s{\W+}{_}g; |
|
66 |
html qq|<a name=$content></a>|; |
my $anchor = $name; |
67 |
|
$anchor =~ s{</?[^>]+>}{}g; |
68 |
|
$anchor =~ s{\W+}{_}g; |
69 |
|
|
70 |
|
html qq|<a name=$anchor></a>|; |
71 |
html qq|<h$level>$display</h$level>|; |
html qq|<h$level>$display</h$level>|; |
72 |
|
|
73 |
if ( $last_level > $level ) { |
if ( $last_level > $level ) { |
75 |
} elsif ( $last_level < $level ) { |
} elsif ( $last_level < $level ) { |
76 |
$toc_html .= "<ul>"; |
$toc_html .= "<ul>"; |
77 |
} |
} |
78 |
$toc_html .= qq|<li><a href="#$content">$display</li>|; |
$toc_html .= qq|<li><a href="#$anchor">$display</li>|; |
79 |
$last_level = $level; |
$last_level = $level; |
80 |
} |
} |
81 |
|
|