diff --git a/eorg/generate.py b/eorg/generate.py
index 3010bcb..4a47540 100644
--- a/eorg/generate.py
+++ b/eorg/generate.py
@@ -41,13 +41,24 @@ def parse_list_html(doc, token, cls="", root=True):
return response.read()
+def parse_bullets_html(doc, token, cls="", root=True):
+ response = StringIO()
+ response.write(f"
")
+ for row in item.value.split("\n"):
+ response.write(f"- {row}
")
+ response.write(f"
")
+ response.seek(0)
+ return response.read()
+
+
def parse_text_html(doc, token, cls="", root=True):
return f"{token.value}"
def blockquote(doc, token, cls="", root=True):
return "%s
\n" % (
- cls, escape(token.value).replace("\n", "
")
+ cls,
+ escape(token.value).replace("\n", "
"),
)
@@ -66,9 +77,11 @@ def table(doc, item, cls="", root=True):
for row in item.value.split("\n"):
if newrow:
if row.startswith("|-"):
- tblhead += "" + " | ".join(
- newrow
- ) + " | \n"
+ tblhead += (
+ ""
+ + " | ".join(newrow)
+ + " | \n"
+ )
else:
tbl += f"" + " | ".join(newrow) + " |
\n"
newrow = filter(None, row.split("|"))
@@ -89,6 +102,7 @@ builddoc = {
tokens.VERBATIM: ("code", None),
tokens.LIST: (parse_list_html, "flow-text"),
tokens.TEXT: (parse_text_html, "flow-text"),
+ tokens.BULLET: (parse_bullets_html, ""),
tokens.SOURCE: (src, None),
tokens.EXAMPLE: (blockquote, None),
tokens.RESULTS: (blockquote, None),
diff --git a/tests/test_html.py b/tests/test_html.py
index 34a5588..1fae865 100644
--- a/tests/test_html.py
+++ b/tests/test_html.py
@@ -103,3 +103,24 @@ head -n 5 examples/html-plain/example.py
assert result[0].value == expected[0].value
assert result[1].attrs.get('language') == 'sh'
assert result[1].value == expected[1].value
+
+
+@pytest.mark.skip
+def test_src_block():
+ text = StringIO(
+ """
+ + Bullet 1
+ + Bullet 2
+"""
+ )
+
+ expected = [
+ Token(tokens.BLANK, ""),
+ Token(tokens.BULLET, """ Bullet 1\nBullet 2"""),
+ ]
+ result = parse(text).doc
+ assert result[0].token == tokens.BLANK
+ assert result[0].value == expected[0].value
+ assert result[1].token == tokens.BULLET
+
+ assert result[1].value == expected[1].value