X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/bb93fccf0690344aa77f9538a508959a6de09847..104919ee07b70b166c6c6be13b4f6e5bc5225179:/IkiWiki/Plugin/camelcase.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/camelcase.pm b/IkiWiki/Plugin/camelcase.pm index 6c1fafb7b..088447d6b 100644 --- a/IkiWiki/Plugin/camelcase.pm +++ b/IkiWiki/Plugin/camelcase.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::camelcase; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; # This regexp is based on the one in Text::WikiFormat. my $link_regexp=qr{ @@ -33,7 +33,14 @@ sub getsetup () { plugin => { safe => 1, rebuild => undef, - }; + }, + camelcase_ignore => { + type => "string", + example => [], + description => "list of words to not turn into links", + safe => 1, + rebuild => undef, # might change links + }, } sub linkify (@) { @@ -42,7 +49,7 @@ sub linkify (@) { my $destpage=$params{destpage}; $params{content}=~s{$link_regexp}{ - htmllink($page, $destpage, linkpage($1)) + ignored($1) ? $1 : htmllink($page, $destpage, linkpage($1)) }eg; return $params{content}; @@ -54,8 +61,13 @@ sub scan (@) { my $content=$params{content}; while ($content =~ /$link_regexp/g) { - push @{$links{$page}}, linkpage($1); + add_link($page, linkpage($1)) unless ignored($1) } } +sub ignored ($) { + my $word=lc shift; + grep { $word eq lc $_ } @{$config{'camelcase_ignore'}} +} + 1