diff --git a/nw/core/tohtml.py b/nw/core/tohtml.py index f10ee1e3..33c247a9 100644 --- a/nw/core/tohtml.py +++ b/nw/core/tohtml.py @@ -119,7 +119,7 @@ class ToHtml(Tokenizer): self.theResult = "" thisPar = [] - parStyle = "" + parStyle = None tmpResult = [] for tType, tText, tFormat, tStyle in self.theTokens: @@ -158,11 +158,13 @@ class ToHtml(Tokenizer): # Process TextType if tType == self.T_EMPTY: + if parStyle is None: + parStyle = "" if len(thisPar) > 0: tTemp = "".join(thisPar) tmpResult.append("%s

\n" % (parStyle, tTemp.rstrip())) thisPar = [] - parStyle = "" + parStyle = None elif tType == self.T_HEAD1: tHead = tText.replace(r"\\", "
") @@ -188,7 +190,8 @@ class ToHtml(Tokenizer): elif tType == self.T_TEXT: tTemp = tText - parStyle = hStyle + if parStyle is None: + parStyle = hStyle for xPos, xLen, xFmt in reversed(tFormat): tTemp = tTemp[:xPos]+htmlTags[xFmt]+tTemp[xPos+xLen:] if tText.endswith(" "): diff --git a/nw/core/tokenizer.py b/nw/core/tokenizer.py index 80cc216d..a3c04bd8 100644 --- a/nw/core/tokenizer.py +++ b/nw/core/tokenizer.py @@ -366,9 +366,14 @@ class Tokenizer(): # Save the line as is, but append the array of formatting locations # sorted by position fmtPos = sorted(fmtPos, key=itemgetter(0)) - self.theTokens.append(( - self.T_TEXT, aLine, fmtPos, defAlign - )) + if aLine.endswith(" "): + self.theTokens.append(( + self.T_TEXT, aLine, fmtPos, self.A_LEFT + )) + else: + self.theTokens.append(( + self.T_TEXT, aLine, fmtPos, defAlign + )) tmpMarkdown.append("%s\n" % aLine) # Always add an empty line at the end