diff --git a/renderer/halfwidth_spaces.py b/renderer/halfwidth_spaces.py index f9daf9b..dfdd374 100644 --- a/renderer/halfwidth_spaces.py +++ b/renderer/halfwidth_spaces.py @@ -8,7 +8,7 @@ class HalfwidthSpaces(SpanToken): Insert halfwidth space into span token (Z. B.) Identifies "z.B.", "d.h." and "D.h." with and without space in between. """ - pattern = re.compile(r"\b(z|d|D)\.(B|h)\.") + pattern = re.compile(r"\b(z|Z|d|D)\.\s?(B|h)\.") def __init__(self, match_object): self.first = match_object.group(1) diff --git a/renderer/nonbreaking_spaces.py b/renderer/nonbreaking_spaces.py index 932653f..08ac99d 100644 --- a/renderer/nonbreaking_spaces.py +++ b/renderer/nonbreaking_spaces.py @@ -6,7 +6,7 @@ from mistletoe.span_token import SpanToken class NonbreakingSpaces(SpanToken): """ Insert unbreakable space into span token (§ 3) - Identifies "§$number", "Abs.$number", "Klasse [A,E,N]" w/ and w\ space between. + Identifies "§$number", "Abs.$number", "Klasse [A,E,N]" w/ and without space between. """ pattern = re.compile(r"(§|Abs\.|Klasse)\s?(\d|[NEA])") diff --git a/test/test_halfwidth_spaces.py b/test/test_halfwidth_spaces.py index 0438674..1d3c4f9 100644 --- a/test/test_halfwidth_spaces.py +++ b/test/test_halfwidth_spaces.py @@ -3,8 +3,13 @@ import mistletoe from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer from test.util import paragraph -def test_halfwidth_space_html(): - input = "Dies ist z.B. ein Test. D.h. hier sollten d.h. Spaces ersetzt worden sein." - target = "Dies ist z. B. ein Test. D. h. hier sollten d. h. Spaces ersetzt worden sein." - assert mistletoe.markdown(input, FiftyOhmHtmlRenderer) == paragraph(target) +def test_halfwidth_space_html(): + assertions = { + "Dies ist z.B. ein Test. D.h. hier sollten d.h. Spaces ersetzt worden sein." : "Dies ist z. B. ein Test. D. h. hier sollten d. h. Spaces ersetzt worden sein.", + "Dies ist z. B. ein Test. D. h. hier sollten d. h. Spaces ersetzt worden sein." : "Dies ist z. B. ein Test. D. h. hier sollten d. h. Spaces ersetzt worden sein.", + "Z. B. die D.B. wird auch ersetzt, aber das macht nix." : "Z. B. die D. B. wird auch ersetzt, aber das macht nix." + } + + for key, value in assertions.items(): + assert mistletoe.markdown(key, FiftyOhmHtmlRenderer) == paragraph(value)