summaryrefslogtreecommitdiff
path: root/gemini.py
diff options
context:
space:
mode:
Diffstat (limited to 'gemini.py')
-rw-r--r--gemini.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/gemini.py b/gemini.py
index c3ece46..560b01f 100644
--- a/gemini.py
+++ b/gemini.py
@@ -3,12 +3,15 @@ import socket
import ssl
import urllib.parse
+import pyphen
+dic = pyphen.Pyphen(lang='en_US')
+
def htmlescape(text: str) -> str:
return text.replace('<', '&lt;').replace('>', '&gt;')
def gem2html(gem: str) -> str:
html = []
- html.append('<html>\n<body>')
+ html.append('<html>\n<body>\n<div id="root">')
state = 'text'
blanklines = 0
for line in gem.split('\n'):
@@ -62,14 +65,15 @@ def gem2html(gem: str) -> str:
html.append(line)
else:
if line.startswith('###'):
- html.append('<h3>{}</h3>'.format(line[3:].lstrip()))
+ html.append('<p class="h3">{}</p>'.format(line[3:].lstrip()))
elif line.startswith('##'):
- html.append('<h2>{}</h2>'.format(line[2:].lstrip()))
+ html.append('<p class="h2">{}</p>'.format(line[2:].lstrip()))
elif line.startswith('#'):
- html.append('<h1>{}</h1>'.format(line[1:].lstrip()))
+ html.append('<p class="h1">{}</p>'.format(line[1:].lstrip()))
else:
+ ' '.join([dic.inserted(word, "\u00AD") for word in line.split()])
html.append('<p>{}</p>'.format(htmlescape(line)))
- html.append('</body>\n</html>')
+ html.append('</div>\n</body>\n</html>')
return '\n'.join(html)
def urljoin(base: str, url: str) -> str: