);
# data is a special case. Allow a few data:image/ types,
# but disallow data:text/javascript and everything else.
- $safe_url_regexp=qr/^(?:(?:$uri_schemes):|data:image\/(?:png|jpeg|gif)|[^:]+(?:$|[\/\?]))/i;
+ $safe_url_regexp=qr/^(?:(?:$uri_schemes):|data:image\/(?:png|jpeg|gif)|[^:]+(?:$|[\/\?#]))|^#/i;
}
sub getsetup () {
(and MSIE 8 in compat mode). Thanks to Iain McLaren for reporting
the bug and providing access to debug it.
* style.css: Use relative, not absolute font sizes. Thanks, Giuseppe Bilotta.
+ * htmlscrubber: Do not scrub url anchors that contain colons.
-- Joey Hess <joeyh@debian.org> Sun, 15 Aug 2010 11:45:48 -0400
--- /dev/null
+I enabled multimarkdown to make use of footnotes in my file. I have the multimarkdown plugin,
+as well as the command-line program. If I write a document with footnotes:
+
+ This line has a footnote[^1]
+
+ [^1]: this is the footnote
+
+and compile it from the cli, the reference becomes a link to the footnote and the footnote
+gets a backreferencing link appended. When compiled in ikiwiki with the goodstuff plugin
+enabled, the links are created but their hrefs are empty (so they do not actually act as links).
+Disabling the htmlscrubber plugin fixes this issue
+
+[[!tag multimarkdown htmlscrubber]]
+
+> href was of the form: #fnref:1 , scrubbed by overzealous protocol
+> scrubbing.
+
+[[done]] --[[Joey]]
On the home page of my wiki, when i click on the link "ikiwiki", i get the english file instead of the french file.
At the bottom of this page, there is the "Links" line:
Links: index index.fr templates templates.fr
-When i click on "templates.fr", i get the po.file instead of html.
+When i click on "templates.fr", i get the po.file instead of html.
+
+ Sorry for the noise! I set "po_master_language" to fr and all was ok. [[done]].
nasty javascript needed. IMHO, this is the right solution, and I hope other
browsers emulate it. [[done]]
--[[Joey]]
+
+Wouldn't it be possible to just implement an integer-valued setting for this, accessible via the "Setup" wiki page? This would require a wiki regen, but such a setting would not be changed frequently I suppose. Also, Mediawiki has this implemented as a per-user setting (two settings, actually, -- number of rows and columns of the edit area); such a per-user setting would be the best possible implementation, but I'm not sure if ikiwiki already supports per-user settings. Please consider implementing this as the current 20 rows is a great PITA for any non-trivial page.
Joey said on IRC that "probably changing the derel() function in
IkiWiki.pm is the best way to do it".
+> I implemented this suggestion in the simplest possible way, [[!taglink patch]] available [[here|http://git.oblomov.eu/ikiwiki/patch/f4a52de556436fdee00fd92ca9a3b46e876450fa]].
+> An alternative approach, very similar, would be to make the empty page parameter mean current page (e.g. `link()` would mean pages linking here). The patch would be very similar.
+> -- GB
#!/usr/bin/perl
use warnings;
use strict;
-use Test::More tests => 26;
+use Test::More tests => 32;
use Encode;
BEGIN { use_ok("IkiWiki"); }
is(IkiWiki::htmlize("foo", "foo", "mdwn",
q{<span class="foo">bar</span>}),
q{<span class="foo">bar</span>}, "class attribute allowed");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="aaa#foo">}),
+ q{<a href="aaa#foo">}, "simple anchor allowed");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="aaa#foo:bar">}),
+ q{<a href="aaa#foo:bar">}, "colon allowed in anchor");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="aaa?foo:bar">}),
+ q{<a href="aaa?foo:bar">}, "colon allowed in query string");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="foo:bar">}),
+ q{<a>}, "unknown protocol blocked");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="#foo">}),
+ q{<a href="#foo">}, "simple relative anchor allowed");
+is(IkiWiki::htmlize("foo", "foo", "mdwn",
+ q{<a href="#foo:bar">}),
+ q{<a href="#foo:bar">}, "colon in simple relative anchor allowed");