X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c4f124d78a4c6e227f2017452821c95c35544860..49835784d8908e07fabf4200e35adcd98b73a00c:/IkiWiki/Plugin/smiley.pm

diff --git a/IkiWiki/Plugin/smiley.pm b/IkiWiki/Plugin/smiley.pm
index 50f268627..2633b1ea1 100644
--- a/IkiWiki/Plugin/smiley.pm
+++ b/IkiWiki/Plugin/smiley.pm
@@ -10,9 +10,20 @@ my $smiley_regexp;
 
 sub import { #{{{
 	add_underlay("smiley");
+	hook(type => "getsetup", id => "smiley", call => \&getsetup);
 	hook(type => "sanitize", id => "smiley", call => \&sanitize);
 } # }}}
 
+sub getsetup () { #{{{
+	return
+		plugin => {
+			safe => 1,
+			# force a rebuild because turning it off
+			# removes the smileys, which would break links
+			rebuild => 1,
+		},
+} #}}}
+
 sub build_regexp () { #{{{
 	my $list=readfile(srcfile("smileys.mdwn"));
 	while ($list =~ m/^\s*\*\s+\\\\([^\s]+)\s+\[\[([^]]+)\]\]/mg) {
@@ -81,10 +92,6 @@ MATCH:	while (m{(?:^|(?<=\s|>))(\\?)$smiley_regexp(?:(?=\s|<)|$)}g) {
 				         $smileys{$smiley}, linktext => $smiley);
 			pos=$epos+1;
 		}
-
-		# Breaks out at end, otherwise it will scan through again,
-		# replacing de-escaped ones.
-		#last unless defined pos;
 	}
 
 	return $_;