aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2008-12-23 19:11:03 -0500
committerJoey Hess <joey@gnu.kitenet.net>2008-12-23 19:11:03 -0500
commitc9e65fded187f7160a6345ea7f697402c246be06 (patch)
tree79dff18fae217eb7e607db8d96274cda393e2cb2
parent20731f761f7b378934bf3b86dbec20c167464d5f (diff)
downloadikiwiki-c9e65fded187f7160a6345ea7f697402c246be06.tar
ikiwiki-c9e65fded187f7160a6345ea7f697402c246be06.tar.gz
camelcase: Add camelcase_ignore setting.
-rw-r--r--IkiWiki/Plugin/camelcase.pm18
-rw-r--r--debian/changelog1
2 files changed, 16 insertions, 3 deletions
diff --git a/IkiWiki/Plugin/camelcase.pm b/IkiWiki/Plugin/camelcase.pm
index 6c1fafb7b..f9ee30fe2 100644
--- a/IkiWiki/Plugin/camelcase.pm
+++ b/IkiWiki/Plugin/camelcase.pm
@@ -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);
+ push @{$links{$page}}, linkpage($1) unless ignored($1)
}
}
+sub ignored ($) {
+ my $word=lc shift;
+ grep { $word eq lc $_ } @{$config{'camelcase_ignore'}}
+}
+
1
diff --git a/debian/changelog b/debian/changelog
index 2c8931735..7a8985171 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ ikiwiki (2.72) UNRELEASED; urgency=low
* Avoid comments in recentchanges being broken links (smcv)
* Add deprecation warning for GlobLists, which will stop working in 3.0.
+ * camelcase: Add camelcase_ignore setting.
-- Joey Hess <joeyh@debian.org> Mon, 22 Dec 2008 19:02:16 -0500