summaryrefslogtreecommitdiff
path: root/wrapper3.py
blob: 7a777fa1ed8afeb4d6bdbbef025b45d9356eaeae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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()))