diff --git a/src/gmirator/generate.py b/src/gmirator/generate.py
index b56168d..5697b69 100644
--- a/src/gmirator/generate.py
+++ b/src/gmirator/generate.py
@@ -134,15 +134,18 @@ def process_file(ifile: TextIOWrapper):
return contents, title
def process_list(line: str, in_list: bool):
- if in_list:
- if line[0] == "*":
- line = re.sub(r'^\* (.*)', r'
\1', line)
- else:
- in_list = False
- line = "\n\n"
- elif line[0] == "*":
- line = "\n" + re.sub(r'^\* (.*)', r'- \1
', line)
- in_list = True
+ try:
+ if in_list:
+ if line[:2] == "* ":
+ line = re.sub(r'^\* (.*)', r'- \1
', line)
+ else:
+ in_list = False
+ line = f"
\n\n{line}"
+ elif line[:2] == "* ":
+ line = "\n" + re.sub(r'^\* (.*)', r'- \1
', line)
+ in_list = True
+ except IndexError:
+ in_list = False
return line, in_list
def process_inline(line: str):