Commit 01679bb7 authored by Simon Will's avatar Simon Will
Browse files

Merge branch 'master' of gitlab.cl.uni-heidelberg.de:Messerschleifer/Allzweckmesser

parents 92d36906 4d4fc232
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@ import re
from typing import Dict, List, Set, Tuple

from .db import FormAnalysis
from .model import Reading, Syllable, Token, Verse
from .model import Reading, Syllable, Token, Verse, Phenomenon
from .wordlist import WordList

verses = [
@@ -239,6 +239,19 @@ def get_syllables(reading):
    return reading


def muta_cum_liquida(verse):
    mcl_regex = re.compile(r"([bpskgdt]|(qu)|(qv)),?\s?[lrmn]")
    if re.search(mcl_regex, verse.text):
        matches = re.finditer(mcl_regex, verse.text)
        for match in matches:
            for reading in verse.readings:
                for token in reading.tokens:
                    for syllable in token.syllables:
                        if syllable.span[0]<= match.start() < syllable.span[1]:
                            syllable.phenomena["muta cum liquida"] = Phenomenon(chars=match.group(0))
        pass


class Scanner:

    def __init__(self):
+4 −0
Original line number Diff line number Diff line
@@ -21,6 +21,10 @@ def test_import_json():

    assert verse_list_from_model == verse_list_from_json

    azm.scanner.muta_cum_liquida(verse_models[0])
    
    for verse_model in verse_models[:1]:
        print(json.dumps(json.loads(verse_model.to_json()), indent=4, sort_keys=True))

if __name__ == "__main__":
    test_import_json()