web commit by http://id.inelegant.org/: Make htmllink understand links to specific...
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>
Mon, 19 Feb 2007 17:58:03 +0000 (17:58 +0000)
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>
Mon, 19 Feb 2007 17:58:03 +0000 (17:58 +0000)
doc/patchqueue/htmllink-anchors.mdwn [new file with mode: 0644]

diff --git a/doc/patchqueue/htmllink-anchors.mdwn b/doc/patchqueue/htmllink-anchors.mdwn
new file mode 100644 (file)
index 0000000..2bb203f
--- /dev/null
@@ -0,0 +1,29 @@
+Here's an attempt to make `htmllink` "do the right thing" with in-page anchors:
+
+<pre>
+Index: IkiWiki.pm
+===================================================================
+--- IkiWiki.pm  (revision 2657)
++++ IkiWiki.pm  (working copy)
+@@ -426,6 +426,8 @@
+        my $noimageinline=shift; # don't turn links into inline html images
+        my $forcesubpage=shift; # force a link to a subpage
+        my $linktext=shift; # set to force the link text to something
++    
++    my $anchor = ($link =~ s/#(.+)$// ? $1 : undef);
+        my $bestlink;
+        if (! $forcesubpage) {
+@@ -455,7 +457,10 @@
+        if (! $noimageinline && isinlinableimage($bestlink)) {
+                return "<img src=\"$bestlink\" alt=\"$linktext\" />";
+        }
+-       return "<a href=\"$bestlink\">$linktext</a>";
++
++    $bestlink .= "#$anchor" if $anchor;
++    
++    return "<a href=\"$bestlink\">$linktext</a>";
+ } #}}}
+ sub htmlize ($$$) { #{{{
+</pre>
\ No newline at end of file