]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/camelcase.pm
web commit by PatrickWinnertz
[ikiwiki.git] / IkiWiki / Plugin / camelcase.pm
index 29d22b0dd3826ee1c4651af6447fa39970097648..dc89f1b90ec8c039a6ce3adbe8ee03cb60ae30df 100644 (file)
@@ -15,7 +15,20 @@ sub filter (@) { #{{{
 
        # Make CamelCase links work by promoting them to fullfledged
        # WikiLinks. This regexp is based on the one in Text::WikiFormat.
-       $params{content}=~s#(?<![[|"/>=])\b((?:[A-Z][a-z0-9]\w*){2,})#[[$1]]#g;
+       $params{content}=~s{
+               (?<![[|"/>=])   # try to avoid expanding non-links
+                               # with a zero width negative lookbehind for
+                               # characters that suggest it's not a link
+               \b              # word boundry
+               (
+                       (?:
+                               [A-Z]           # Uppercase start
+                               [a-z0-9]        # followed by lowercase
+                               \w*             # and rest of word
+                       )
+                       {2,}                    # repeated twice
+               )
+       }{[[$1]]}gx;
 
        return $params{content};
 } #}}}