Add a way to ignore hard line breaks in Markdown builds (#944)

This commit is contained in:
Veronica Berglyd Olsen
2024-03-01 22:12:45 +01:00
parent bb2c2bb7fe
commit ef1fc0943d
4 changed files with 22 additions and 1 deletions
+8 -1
View File
@@ -49,6 +49,7 @@ class ToMarkdown(Tokenizer):
super().__init__(project)
self._genMode = self.M_STD
self._fullMD: list[str] = []
self._preserveBreaks = True
return
##
@@ -74,6 +75,11 @@ class ToMarkdown(Tokenizer):
self._genMode = self.M_EXT
return
def setPreserveBreaks(self, state: bool) -> None:
"""Preserve line breaks in paragraphs."""
self._preserveBreaks = state
return
##
# Class Methods
##
@@ -125,12 +131,13 @@ class ToMarkdown(Tokenizer):
para = []
lines = []
lineSep = " \n" if self._preserveBreaks else " "
for tType, _, tText, tFormat, tStyle in self._tokens:
if tType == self.T_EMPTY:
if len(para) > 0:
tTemp = (" \n".join(para)).rstrip(" ")
tTemp = (lineSep.join(para)).rstrip(" ")
lines.append(f"{tTemp}\n\n")
para = []