Skip to content
Snippets Groups Projects
Commit d368acb8 authored by Miguel Angel Reina Ortega's avatar Miguel Angel Reina Ortega
Browse files

Adding replacement of linebreaks to pandoc escaped_line_breaks extension format

parent 9a81a424
No related branches found
No related tags found
No related merge requests found
Pipeline #664 passed
No preview for this file type
......@@ -101,7 +101,7 @@ def replaceTableCaptions(progress:Progress, mdLines:list[str]) -> list[str]:
def replaceFigureCaptions(progress:Progress, mdLines:list[str]) -> list[str]:
""" Replace table captions with a pandoc table caption.
""" Replace figure captions with a pandoc figure caption.
"""
_taskID = progress.add_task('[blue]Replacing figure captions', start=False, total=0)
# progress.update()
......@@ -127,6 +127,25 @@ def replaceFigureCaptions(progress:Progress, mdLines:list[str]) -> list[str]:
return _lines
def replaceLineBreaks(progress: Progress, mdLines: list[str]) -> list[str]:
""" Replace <br /> linebreaks by pandoc escaped_line_breaks extension \(newline).
"""
_taskID = progress.add_task('[blue]Replacing linebreaks', start=False, total=0)
# progress.update()
linebreaksregex = re.compile('<br />')
_lines: list[str] = []
for line in mdLines:
matches = re.findall(linebreaksregex, line)
if matches:
# Replace the linebreak with "\(newline)"
_lines.append(re.sub(r'<br />', f'\\\n', line))
else:
_lines.append(line)
progress.stop_task(_taskID)
return _lines
def process(document:str, outDirectory:str) -> None:
with Progress(TextColumn('{task.description}'), TimeElapsedColumn()) as progress:
......@@ -134,6 +153,7 @@ def process(document:str, outDirectory:str) -> None:
mdLines = correctTOC(progress, mdLines)
mdLines = replaceTableCaptions(progress, mdLines)
mdLines = replaceFigureCaptions(progress, mdLines)
mdLines = replaceLineBreaks(progress, mdLines)
writeMDFile(progress, mdLines, document, outDirectory)
def main(args=None):
......
......@@ -34,7 +34,7 @@ for i in *.md ; do
echo "\n------ Preparaing spec --------"
docker run --rm -v $(pwd):/tmp/ -u $(id -u):$(id -g) "$TOOLS_DOCKER_IMAGE" pandocFilter -o "/tmp/" "/tmp/$i"
echo "\n------ Publishing spec --------"
docker run --rm -v $(pwd):/data -u $(id -u):$(id -g) "$DOCKER_IMAGE" "/data/$i" -f markdown -t docx --reference-doc "/data/${3}" -o "${4}_${2}.docx"
docker run --rm -v $(pwd):/data -u $(id -u):$(id -g) "$DOCKER_IMAGE" "/data/$i" -f markdown+escaped_line_breaks -t docx --reference-doc "/data/${3}" -o "${4}_${2}.docx"
fi
done
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment