]> git.ipfire.org Git - ipfire.org.git/blobdiff - src/backend/wiki.py
wiki: Pre-compile regex for interwiki links
[ipfire.org.git] / 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 = (