diff options
-rw-r--r-- | IkiWiki/Plugin/toc.pm | 22 | ||||
-rw-r--r-- | debian/changelog | 2 |
2 files changed, 17 insertions, 7 deletions
diff --git a/IkiWiki/Plugin/toc.pm b/IkiWiki/Plugin/toc.pm index 070c07b0e..639cae4a9 100644 --- a/IkiWiki/Plugin/toc.pm +++ b/IkiWiki/Plugin/toc.pm @@ -86,17 +86,25 @@ sub format (@) { #{{{ } $liststarted=0; } + + $index.=&$indent."</li>\n" unless $liststarted; + $liststarted=0; + $index.=&$indent."<li class=\"L$curlevel\">". + "<a href=\"#$anchor\">"; $p->handler(text => sub { $page.=join("", @_); - $index.=&$indent."</li>\n" unless $liststarted; - $liststarted=0; - $index.=&$indent."<li class=\"L$curlevel\">". - "<a href=\"#$anchor\">". - join("", @_). - "</a>\n"; - $p->handler(text => undef); + $index.=join("", @_); }, "dtext"); + $p->handler(end => sub { + my $tagname=shift; + if ($tagname =~ /^h(\d+)$/i) { + $p->handler(text => undef); + $p->handler(end => undef); + $index.="</a>\n"; + } + $page.=join("", @_); + }, "tagname, text"); } else { $page.=$text; diff --git a/debian/changelog b/debian/changelog index 4ee2f7c80..5fddab963 100644 --- a/debian/changelog +++ b/debian/changelog @@ -24,6 +24,8 @@ ikiwiki (2.13) UNRELEASED; urgency=low directories, to improve browsing of file:// urls. Patch by Daniel Burrows. Closes: #451728 * Allow html5 video and audio tags and their attributes in the htmlscrubber. + * toc: Handle html elements embedded inside a header, rather than + stopping collecting the header text at the first element. -- Joey Hess <joeyh@debian.org> Sat, 17 Nov 2007 19:56:46 -0500 |