summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pymdvar/__init__.py3
-rw-r--r--src/pymdvar/pymdvar.py19
2 files changed, 22 insertions, 0 deletions
diff --git a/src/pymdvar/__init__.py b/src/pymdvar/__init__.py
new file mode 100644
index 0000000..b64a3b6
--- /dev/null
+++ b/src/pymdvar/__init__.py
@@ -0,0 +1,3 @@
+from .pymdvar import VariableExtension
+
+__all__ = ['VariableExtension'] \ No newline at end of file
diff --git a/src/pymdvar/pymdvar.py b/src/pymdvar/pymdvar.py
new file mode 100644
index 0000000..aa62cfd
--- /dev/null
+++ b/src/pymdvar/pymdvar.py
@@ -0,0 +1,19 @@
+from markdown.extensions import Extension
+from markdown.inlinepatterns import Pattern
+
+VARIABLE_RE = r'\$\{(\w+)\}'
+
+
+class VariablePattern(Pattern):
+ def handleMatch(self, m):
+ variable = m.group(2)
+ return variable
+
+
+def makeExtension(*args, **kwargs):
+ return VariableExtension(*args, **kwargs)
+
+
+class VariableExtension(Extension):
+ def extendMarkdown(self, md):
+ md.inlinePatterns.register(VariablePattern(VARIABLE_RE), 'var', 175) \ No newline at end of file