diff --git a/toMkdocs/toMkdocs.py b/toMkdocs/toMkdocs.py index 8ad53dc45c8dba35d434178db31075c47be01910..54a79bddc23c45cbbb1757c6b90677997bbad5d1 100644 --- a/toMkdocs/toMkdocs.py +++ b/toMkdocs/toMkdocs.py @@ -71,13 +71,15 @@ class Clause: self.lines.extend(clause.lines) - def asStringList(self) -> list[str]: + def asStringList(self, paddings:int = 0) -> list[str]: """ Return the clause as a list of strings. + Args: + paddings: The number of empty lines to add before the clause. Returns: The clause's lines as a list of strings. """ - return [ l.text for l in self.lines ] + return [ '\n' for _ in range(paddings) ] + [ l.text for l in self.lines ] def __len__(self) -> int: @@ -380,7 +382,11 @@ def writeClauses(outClauses:list[Clause], filename:str, navTitle:str) -> None: if verbose: print(f'[dim]Writing "{f.clauseNumber}.md" - "{f.title}"') with open(f'{os.path.dirname(filename)}/{navTitle}/{f.clauseNumber}.md', 'w') as file: - file.writelines(f.asStringList()) + # Add one empty line before the clause. This is done to avoid + # a bug in MkDocs that does not display the first line of a clause + # if it contains a colon. It does not matter otherwise if the line + # is empty or not. + file.writelines(f.asStringList(1)) # write nav.yml file