]> git.ipfire.org Git - ipfire.org.git/commitdiff
wiki: Pre-compile regex for interwiki links
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 7 May 2019 20:48:30 +0000 (21:48 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 7 May 2019 20:48:30 +0000 (21:48 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/backend/wiki.py

index ebb57d81549cbd7848dbe2259590bd4756fdf343..fc46927f06211bb23153c6212c8f6cb688fe6098 100644 (file)
@@ -204,6 +204,9 @@ class Wiki(misc.Object):
 
 
 class Page(misc.Object):
+       # Interwiki links e.g. [[wp>IPFire]]
+       interwiki_link = re.compile(r"\[\[(\w+)>(.+?)(?:\|(.+?))?\]\]")
+
        def init(self, id, data=None):
                self.id = id
                self.data = data
@@ -347,7 +350,7 @@ class Page(misc.Object):
                        text = text[:start] + "[![%s](%s)](%s?action=detail)" % (alt_text, url, file.url) + text[end:]
 
                # Handle interwiki links
-               text = re.sub(r"\[\[(\w+)>(.+?)(?:\|(.+?))?\]\]", self._render_interwiki_link, text)
+               text = self.interwiki_link.sub(self._render_interwiki_link, text)
 
                # Add wiki links
                patterns = (