cmark

My personal build of CMark ✏️

Commit
18a1522edd5a81cee3d78978b81a8b3c93891a61
Parent
d1922eb6f17578774866a13fd5428cdd3bc2280d
Author
John MacFarlane <jgm@berkeley.edu>
Date

Added wrapper3.py (python3 sample wrapper).

Diffstat

1 file changed, 25 insertions, 0 deletions

Status File Name N° Changes Insertions Deletions
Added wrapper3.py 25 25 0
diff --git a/wrapper3.py b/wrapper3.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python3
+
+# Example for using the shared library from python
+
+from ctypes import CDLL, c_char_p, c_long
+import sys
+import platform
+
+sysname = platform.system()
+
+if sysname == 'Darwin':
+    cmark = CDLL("build/src/libcmark.dylib")
+else:
+    cmark = CDLL("build/src/libcmark.so")
+
+markdown = cmark.cmark_markdown_to_html
+markdown.restype = c_char_p
+markdown.argtypes = [c_char_p, c_long]
+
+def md2html(text):
+    textbytes = text.encode('utf-8')
+    textlen = len(textbytes)
+    return markdown(textbytes, textlen).decode('utf-8')
+
+sys.stdout.write(md2html(sys.stdin.read()))