Commit cfa4f59a authored by di68kap's avatar di68kap
Browse files

- MLW ergänzt...

parent 1100df44
......@@ -1012,6 +1012,8 @@ class Grammar:
if record.node.error_flag:
append_line(errors_only, line)
write_log(full_history, log_file_name + '_full')
if len(full_history) > 250:
write_log(full_history[-200:], log_file_name + '_full.tail')
write_log(match_history, log_file_name + '_match')
write_log(errors_only, log_file_name + '_errors')
......
......@@ -373,12 +373,11 @@ def replace_or_reduce(context: List[Node], condition: Callable=is_named):
"""
node = context[-1]
if len(node.children) == 1:
context.append(node.children[0])
child = node.children[0]
if condition(context):
replace_by(node)
replace_by(node, child)
else:
reduce_child(node)
context.pop()
reduce_child(node, child)
@transformation_factory
......
......@@ -35,23 +35,24 @@ BEDEUTUNG
UNTER_BEDEUTUNG proprie:
UNTER_UNTER_BEDEUTUNG in univ.:
BELEGE
* Leg.: Burgund. Rom.; 38,1 "si quis ... nullo metu aut imperio ad pacta venire conpellitur, sed libera voluntate pactum inisse cognuscitur {eqs.}"
* Leg.: Burgund. Rom.; 38,1 "si quis ... nullo metu aut imperio ad pacta venire conpellitur,
sed libera voluntate pactum inisse cognuscitur {eqs.}"
* Ionas: Bob. Columb.; 1,17; p. 185,9 "quae {sc. ferae} ad imperium eius statim veniebant"
* Lex: Baiuv.; 1,10 "hoc {sc. lex} per inperium regis vel iudicis fiat"
* Arbeo: Emm.; 16 p. 49,17 "ex imperio principis ... in ospiti sui scuriam ... deductus est" {episcopus} {persaepe} {v. et {=> p. 1407, 57|URL}}
* Arbeo: Emm.; 16 p. 49,17 "ex imperio principis ... in ospiti sui scuriam ... deductus est"
{episcopus} {persaepe} {v. et {=> p. 1407, 57|URL}}
UNTER_UNTER_BEDEUTUNG
LATEINISCH voluntas, arbitrium
DEUTSCH Wille, (willkürlicher) Beschluss
BELEGE
* Vita: Euch. Val. Mat.; 22 "quamvis esset Maternus magnae vir auctoritatis ..., nihil tamen ex proprio imperio quasi libera utens potestate exercuit"
* Vita: Euch. Val. Mat.; 22 "quamvis esset Maternus magnae vir auctoritatis ..., nihil tamen ex proprio
imperio quasi libera utens potestate exercuit"
UNTER_BEDEUTUNG in imag. vel translate:
BELEGE
* Petr. Dam.: epist.; 10 p. 131,10 "qui {lapides intus calidi} eatenus erant frigidi, post nostri (sc. aquae) tactus imperium ad calorem pristinum sunt redacti"
* Petr. Dam.: epist.; 10 p. 131,10 "qui {lapides intus calidi} eatenus erant frigidi, post nostri (sc. aquae)
tactus imperium ad calorem pristinum sunt redacti"
BEDEUTUNG
......@@ -61,100 +62,100 @@ BEDEUTUNG
UNTER_BEDEUTUNG proprie:
UNTER_UNTER_BEDEUTUNG in univ.:
BELEGE
* Alfan.: premn. phys. prol.; 4 p. 1 "semet ipsum ... iuste privat imperio, quisquis nec se cognoscit nec ea, quibus imperat".
* Alfan.: premn. phys. prol.; 4 p. 1 "semet ipsum ... iuste privat imperio, quisquis nec se cognoscit nec ea,
quibus imperat".
* Epist.: Worm.; I 34 p. 63,1 "in maximo imperio minima est licentia {v. notam ed.}".
* Trad.: Reichersb.; 44 "Penno habebat germanum ... sub inperio et servitio adhuc domini Paldmari".
* Otto: Frising. gest.; 2,29 p. 135,15 "orbis imperium affectas {sc. Fridericus}".
* Chart.: Mekl.; 783 "quo {tempore} ... dominus Iohannes gubernavit eiusdem imperium civitatis." {al. v. et {=>p. 1402, 47|URL}}.
* Chart.: Mekl.; 783 "quo {tempore} ... dominus Iohannes gubernavit eiusdem imperium civitatis."
{al. v. et {=>p. 1402, 47|URL}}.
UNTER_UNTER_BEDEUTUNG imperatorum [regum, ducum : -> { v. ibi. al. }]:
UNTER_UNTER_BEDEUTUNG imperatorum {regum, ducum : {=> v. ibi. al.|imperator77m_4}}:
UUU_BEDEUTUNG usu communi:
BELEGE
* Willib.: Bonif.; 5 p. 24,1 "cum ... Carli ... ducis ... super Fresones roboratum esset imperium {eqs.}"
* Einh.: Karol.; 1 p. 3,7 "ad quos (maiores domus) summa imperii pertinebat."
* Albert. Mett.: div. temp.; 1,1 "cuius (Wicmanni) maiores magnam partem Germanie et maxime circa littora Oceani imperio {imperia var. l.} tenebant."
* Albert. Mett.: div. temp.; 1,1 "cuius (Wicmanni) maiores magnam partem Germanie et maxime circa
littora Oceani imperio {imperia var. l.} tenebant."
* Dipl.: Conr. II.; 64 p. 78,17 "Chõnradus ... ad imperium designatus Romanorum."
* Const.: imp. II; 423,10 p. 557,43 "si rex ... in imperatorem electus ... ad imperium transire voluerit {eqs.}" {persaepe} {v. et {=> p. 1395, 32|URL}}.
* Alcuin.: epist. 129; p. 191,22 "a vobis {sc. Cantuariensibus} imperii {imperi S1} potestas prima processit, et fidei catholicae origo exorta est."
* Const.: imp. II; 423,10 p. 557,43 "si rex ... in imperatorem electus ... ad imperium transire
voluerit {eqs.}" {persaepe} {v. et {=> p. 1395, 32|URL}}.
* Alcuin.: epist. 129; p. 191,22 "a vobis {sc. Cantuariensibus} imperii {imperi S1} potestas prima
processit, et fidei catholicae origo exorta est."
UUU_BEDEUTUNG in indicatione temporis:
BELEGE
* Cod.: Lauresh.; 290 (a. 767) "anno xv imperii domni nostri Pippini regis"
* Trad.: Frising.; 184a p. 177,7 "anno secundo imperii domni Karoli. 408 anno inperii Hludouuici vo."
* Otto Frising.: gest.; 2,55 "acta sunt haec anno regni eius (Friderici) quinto, imperii secundo." {saepe} {v. et {=> p. 1407, 24|URL}}.
* Otto Frising.: gest.; 2,55 "acta sunt haec anno regni eius (Friderici) quinto, imperii secundo."
{saepe} {v. et {=> p. 1407, 24|URL}}.
UNTER_UNTER_BEDEUTUNG populorum, civitatum:
BELEGE
* Willib.: Bonif. 4; p. 16,17 "quae {ecclesiae} Franchorum prius in Fresia subiectae erant imperio."
* Annal.: Xant.; a. 796 "Huni cum omnibus finibus ad se pertinentibus domni regis dicioni et Francorum imperio se subdiderunt."
* Willib.: Bonif.; 4 p. 16,17 "quae {ecclesiae} Franchorum prius in Fresia subiectae erant imperio."
* Annal.: Xant.; a. 796 "Huni cum omnibus finibus ad se pertinentibus domni regis dicioni et Francorum
imperio se subdiderunt."
* Adam: gest.; 4,16 p. 244,1 "sunt et aliae {insulae} interius, quae subiacent imperio Sueonum."
* Otto Frising.: gest.; 2,13 p. 116,20 "vix ... aliquis ... vir magnus ... inveniri queat, qui civitatis suae non sequatur imperium";
* Otto Frising.: gest.; 2,13 p. 116,20
"vix ... aliquis ... vir magnus ... inveniri queat, qui civitatis suae non sequatur imperium";
2,16 p. 118,28 "qui {marchio} pene solus ex Italiae baronibus civitatum effugere potuit imperium".
UNTER_UNTER_BEDEUTUNG praelatorum ecclesiae:
BELEGE
* Willib.: Bonif.; 5 p. 19,3 "ut patris cuiuslibet spiritalis se subiungerent fratres imperio."
* Agius vita Hath.; 3 "si ... sub abbatissae imperio eis {familiaribus} interesse mereretur."
* Agius: vita Hath.; 3 "si ... sub abbatissae imperio eis {familiaribus} interesse mereretur."
* Vita: Liutw.; 10 "sub abbatis sui imperio se humiliavit."
* Trad.: Weihenst.; 193 "ita ut ... sub fratris lege et nomine sub abbatis imperio Deo militaret Pero."
* Chart.: Mog.; A I 2^b p. 2,34 (spur.) "possessores ... areole ... tantum abbatisse et congregationis usui, obsequio, imperio se parere cognoscant." {al}
* Chart.: Mog.; A I 2^b p. 2,34 (spur.) "possessores ... areole ... tantum abbatisse et congregationis
usui, obsequio, imperio se parere cognoscant." {al}
UNTER_UNTER_BEDEUTUNG
LATEINISCH merum et mixtum (mistum) -um {i. q. iurisdictio plena q. d.}
DEUTSCH sog. hohe und niedrige Gerichtsbarkeit {de re v. HRG II. p. 333sq.}
BELEGE
* Dipl.: Otton. I.; 465 p. 637,18 (spur. s. XII.) "abbatibus ... concedimus merum et mistum imperium in iam dicto comitatu."
* Dipl.: Otton. I.; 465 p. 637,18 (spur. s. XII.) "abbatibus ... concedimus merum et
mistum imperium in iam dicto comitatu."
* Chart.: Stir. III; 30 p. 84,25 "concedentes {sc. imperator} ei {comiti} merum et mistum imperium."
* Innoc.: IV.; registr. B 318 p. 288,35 "comitatum ... tibi {sc. Manfredo} ... in concambium duximus concedendum ... cum honoribus, dignitatibus et hiis, que ad merum et mixtum imperium pertinent."
* Chart.: Helv.; arb. 135 p. 209,1 "dicebat Williermus praedictas dominas habere me­rum et mixtum imperium et omnimodam iurisdictionem in dicto monasterio."
* Innoc.: IV.; registr. B 318 p. 288,35 "comitatum ... tibi {sc. Manfredo} ... in concambium duximus
concedendum ... cum honoribus, dignitatibus et hiis, que ad merum et mixtum imperium pertinent."
* Chart.: Helv.; arb. 135 p. 209,1 "dicebat Williermus praedictas dominas habere me-rum et mixtum imperium
et omnimodam iurisdictionem in dicto monasterio."
UNTER_BEDEUTUNG in imag. vel translate:
UNTER_UNTER_BEDEUTUNG in univ.:
BELEGE
* Alcuin.: carm.; 30,2,6 "regit pupilla oculi imperio vivacis corporis actus."
* Theod. Trev.: transl. Celsi; 9 "adeo ... virtutum paedagoga, caritas, in eius pectore vigorabili imperio sceptrum obtinuit, quatenus {eqs.}"
* Carm.: var. Walther; 1,70,2 "quibus {zonis orbis} duo sat expresse patescunt imperia : mee {sc. hiemis} due terminales, tua {sc. aestatis} sola media."
* Theod. Trev.: transl. Celsi; 9 "adeo ... virtutum paedagoga, caritas, in eius pectore vigorabili
imperio sceptrum obtinuit, quatenus {eqs.}"
* Carm.: var. Walther; 1,70,2 "quibus {zonis orbis} duo sat expresse patescunt imperia : mee {sc. hiemis}
due terminales, tua {sc. aestatis} sola media."
* Anon.: mus. plan. Coussemaker; p. 488b "tetra reges maximum huius {sc. harmoniae} tenent imperium. al."
UNTER_UNTER_BEDEUTUNG Dei:
BELEGE
* Mirac.: Gertr.; I 11 p. 471,13 "cui (Domino) est honor, virtus et hymperium et gloria in secula seculorum."
* Hugeb.: Wynneb.; 13 p. 117,44 "Deo gratas gero, cuius ... imperio nutata fundantur tota etheria, terrestrea, aequorea."
* Hugeb.: Wynneb.; 13 p. 117,44 "Deo gratas gero, cuius ... imperio nutata fundantur tota etheria,
terrestrea, aequorea."
* Walth. Spir.: Christoph. II; 4,28 "cuius (Dei) imperiis quadratus subiacet orbis. al."
UNTER_UNTER_BEDEUTUNG
LATEINISCH gravitas, dignitas
DEUTSCH würdevolles Verhalten, Würde
BELEGE
* Widuk. gest.; 2,24 "rex ... ea turbatione tanta constantia ac imperio usus est ..., acsi nichil ei difficultatis obviasset."
* Widuk.: gest.; 2,24 "rex ... ea turbatione tanta constantia ac imperio usus est ...,
acsi nichil ei difficultatis obviasset."
UNTER_UNTER_BEDEUTUNG
LATEINISCH de flumine i. q. cursus
DEUTSCH Lauf
BELEGE
* Meginfr.: Emm. 5 p. 976^A "cum defluentis Histri fluminis imperium sequeretur Emmerammus {eqs.}"
* Meginfr.: Emm.; 5 p. 976^A "cum defluentis Histri fluminis imperium sequeretur Emmerammus {eqs.}"
UNTER_BEDEUTUNG meton:
UNTER_BEDEUTUNG meton.:
UNTER_UNTER_BEDEUTUNG
LATEINISCH res publica, regnum
DEUTSCH Staat, Verwaltungs-, Regierungsgebiet, Reich
UUU_BEDEUTUNG in univ.:
BELEGE
* Chron.: Fred.; 2,15 "Assiriorum impirium (imperium p. corr. 1) deletum est."
* Widuk.: gest.; 1,28 "Hluthowico ... usque ad fines Illirici ... et terminos Danorum imperium erat."
* Otto Frising.: gest.;
......@@ -171,7 +172,6 @@ BEDEUTUNG
(‘Karolinger-, Frankenreich bzw. sog. Heiliges Römisches Reich {de re v. LexMA. IV. {=> p. 2025sqq.|URL}}):
UUUU_BEDEUTUNG usu communi:
BELEGE
* Alcuin.: epist.; 177 p. 292,27
"quatenus per vestram prosperitatem {i. Karolum} christianum tueatur imperium."
* Dipl.: Karoli M.; 197 p. 265,14 "Karolus ... imperator Romanum gubernans imperium."
......@@ -188,12 +188,10 @@ BEDEUTUNG
..., quae repperit diuturna vitiata ..., evelleret {Tassilo dux}."
UUUU_BEDEUTUNG in nomine loci:
BELEGE
* Dipl.: Heinr. II.; 184
"strata imperialis, que a Summa tendit usque ad villam, que nominatur Pons Imperii."
UUUU_BEDEUTUNG spectat ad cives:
BELEGE
* Otto Frising.: gest.; 1,1 p. 13,7
"cuius rei novitatem {i. imperatorem a papa excommunicatum esse} eo vehementius
indignatione motum suscepit imperium, quo {eqs.}"
......@@ -209,10 +207,8 @@ BEDEUTUNG
LATEINISCH imperator
DEUTSCH Kaiser
UUU_BEDEUTUNG
LATEINISCH in univ.
UUU_BEDEUTUNG in univ.:
BELEGE
* Chron.: Fred.; 2,62 p. 86,32 "quare ... veniens de imperio non laeteris (sc. Belisarius)?"
3,18 p. 100,18 "Chlotechildis cum ... conperisset adventum Aridio revertentem ab imperio {eqs.}"
* Rhythm.:; 51,9,1 "imperii filia. al."
......@@ -222,12 +218,14 @@ BEDEUTUNG
"imperii (gloss. : regis) sponsam vexat satan aere tensam :
hunc abigat nullus, rebachatur hians, nisi Gallus."
UUU_BEDEUTUNG
LATEINISCH in allocutione, titulo
UUU_BEDEUTUNG in allocutione, titulo:
BELEGE
* Wibald.: epist.; I 219 p. 465,26 ad gloriosam maiestatem vestram, ad sanctum et terribile imperium vestrum (i. imperatorem Graecorum) scribere audeo (sim. 387 p. 817,11).
* Epist.: Wibald.; I 316 imperium meum (i. imperator Graecorum) ... magnam devotionem ... erga tuam preciositatem (i. Wibaldum) obtinet {eqs.}
* Wibald.: epist.; I 219 p. 465,26
"ad gloriosam maiestatem vestram, ad sanctum et terribile imperium vestrum
(i. imperatorem Graecorum) scribere audeo (sim. 387 p. 817,11)."
* Epist.: Wibald.; I 316
"imperium meum (i. imperator Graecorum) ... magnam devotionem ...
erga tuam preciositatem (i. Wibaldum) obtinet {eqs.}"
* Const.: imp.; I 212,1 "quia vos consules ... in sacratissimi imperii nostri {i. Friderici}
servitio excellenter enituistis." {al}.
......@@ -236,7 +234,6 @@ BEDEUTUNG
LATEINISCH comitatus (imperatoris)
DEUTSCH Gefolge (des Kaisers; spectat ad militiam)
BELEGE
* Nith.: hist.; 1,4 p. 5,21
"imperator una cum omni, quod habebat, imperio, tres reges filiique eius adversus
eum cum ingenti exercitu ... Elisazam confluunt."
......@@ -246,7 +243,6 @@ BEDEUTUNG
LATEINISCH globus cruciger
DEUTSCH Reichsapfel
BELEGE
* Ekkeh.: IV. bened.; I 31,57
"sceptra, redimicla, florea serta, imperium (gloss. : gestamen rotundum), trabea, strophium."
* Ludus: de Antichr.; p. 16ex. (c. 1160) "imperator ... tollens coronam de capite et tenens
......@@ -257,5 +253,4 @@ BEDEUTUNG
LATEINISCH modus regendi, principatus
DEUTSCH Regierungsform
BELEGE
* Albert. M.: pol.; 3,4^{capit.} "de prima civitatum origine deque imperiorum discrimine."
......@@ -108,7 +108,7 @@ U5Bedeutung = { ZWW "UUUUU_BEDEUTUNG" [LZ] §UntersteBedeutung }+
Bedeutung = (Interpretamente | Bedeutungskategorie) [BelegPosition]
UntersteBedeutung = Interpretamente [BelegPosition]
Bedeutungskategorie = EINZEILER [[LZ] BedeutungsQualifikation] §":"
Bedeutungskategorie = { EINZEILER [LZ] } [BedeutungsQualifikation] §":"
Interpretamente = LateinischeBedeutung ("--"| LZ) §DeutscheBedeutung [":"]
LateinischeBedeutung = LAT [LZ] LateinischerAusdruck { <","|ZW> LateinischerAusdruck }
DeutscheBedeutung = DEU [LZ] DeutscherAusdruck { <","|ZW> DeutscherAusdruck }
......@@ -171,12 +171,12 @@ Zitat = Quellenangabe
{ SEM [ZW] [Anker] [Zusatz] <Stelle | Verweis>
[[ZW] BelegText] [[LZ] Zusatz] }
Quellenangabe = [Anker] < BelegQuelle | Verweis >
BelegQuelle = Autor DPP Werk
Quellenangabe = [<Anker | Zusatz>] < BelegQuelle | Verweis >
BelegQuelle = Autor §DPP [Werk] &SEM
BelegText = /"/ { MEHRZEILER | Zusatz } §/"/~ ["."]
Autor = EINZEILER
Werk = EINZEILER
Autor = EINZEILER [<Anker | Verweis | Zusatz>]
Werk = <EINZEILER [<Anker | Verweis | Zusatz>]>
Stelle = EINZEILER
Datierung = EINZEILER
Edition = EINZEILER
......@@ -202,25 +202,24 @@ NAMENS_ABKÜRZUNG = /[A-ZÄÖÜÁÀÂÓÒÔÚÙÛ]\./~
NAME = /[A-ZÄÖÜÁÀÓÒÚÙÂÔÛ][a-zäöüßáàâóòôúùû]+/~
DEU_WORT = DEU_GROSS | DEU_KLEIN | GROSSBUCHSTABE
DEU_WORT_ERW = DEU_WORT | ( "(" DEU_WORT ")" )
DEU_GROSS = /[A-ZÄÖÜ][a-zäöüßę_\-]+/~
DEU_WORT_ERW = DEU_WORT | ("(" DEU_WORT §")")
DEU_GROSS = /[A-ZÄÖÜ][a-zäöüßę_\-.]+/~
GROSSBUCHSTABE = /[A-ZÄÖÜ](?=[ \t\n])/~
KLEINBUCHSTABE = /[a-zäöü](?=[ \t\n])/~
GRI_BUCHSTABE = /[αβγδεζηθικλμνξοπρςστυφχψω]/
DEU_KLEIN = /(?!-)[a-zäöüßę_\-]+/~
LAT_WORT = /(?!-)[a-z|\-_]+/~
LAT_WORT_ERW = LAT_WORT | ( "(" LAT_WORT ")" )
GROSSSCHRIFT = /(?!-)[A-ZÄÖÜ_\-]+/~
DEU_KLEIN = /(?!--)[a-zäöüßęõ_\-.]+/~
LAT_WORT = /(?!--)[a-z|\-_.]+/~
LAT_WORT_ERW = LAT_WORT | ("(" LAT_WORT §")")
GROSSSCHRIFT = /(?!--)[A-ZÄÖÜ_\-]+/~
ZAHL = /[\d]+/~
SEITENZAHL = /[\d]+(?:\^(?:(?:\{[\d\w.]+\})|\w))?/~ # Zahl mit optionale folgendem hochgestelltem Buchstaben oder Text
ROEMISCHE_ZAHL = /(?=[MDCLXVI])M*(C[MD]|D?C*)(X[CL]|L?X*)(I[XV]|V?I*)(?=[^\w])/~
SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\[\]]+)/~ # div. Satzzeichen, aber keine doppelten ,, ;; oder ::
TEIL_SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)/~ # Satzeichen bis auf Doppelpunkt ":", Semikolon ";" und eckige Klammern
SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\[\]]+)|[`‘]/~ # div. Satzzeichen, aber keine doppelten ,, ;; oder ::
TEIL_SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)|[`‘]/~ # Satzeichen bis auf Doppelpunkt ":", Semikolon ";" und eckige Klammern
BUCHSTABENFOLGE = /\w+/~
ZEICHENFOLGE = /[\w()-]+/~
# EINZEILER = /[\w()-. \t]+/~
TEXTELEMENT = DEU_WORT | SEITENZAHL | ROEMISCHE_ZAHL
EINZEILER = { TEXTELEMENT | TEIL_SATZZEICHEN }+
FREITEXT = { TEXTELEMENT | SATZZEICHEN | GROSSSCHRIFT }+
......
......@@ -16,11 +16,11 @@ except ImportError:
import re
from DHParser import logging, is_filename, load_if_file, \
Grammar, Compiler, nil_preprocessor, \
Lookbehind, Lookahead, Alternative, Pop, Token, Synonym, SomeOf, \
Lookbehind, Lookahead, Alternative, Pop, Token, Synonym, AllOf, SomeOf, \
Option, NegativeLookbehind, OneOrMore, RegExp, Retrieve, Series, RE, Capture, \
ZeroOrMore, Forward, NegativeLookahead, mixin_comment, compile_source, \
last_value, counterpart, accumulate, PreprocessorFunc, \
Node, TransformationFunc, TransformationDict, TRUE_CONDITION, \
Node, TransformationFunc, TransformationDict, \
traverse, remove_children_if, merge_children, is_anonymous, \
content_from_child, replace_by_child, replace_or_reduce, remove_whitespace, \
remove_expendables, remove_empty, remove_tokens, flatten, is_whitespace, \
......@@ -160,7 +160,7 @@ class MLWGrammar(Grammar):
Bedeutung = (Interpretamente | Bedeutungskategorie) [BelegPosition]
UntersteBedeutung = Interpretamente [BelegPosition]
Bedeutungskategorie = EINZEILER [[LZ] BedeutungsQualifikation] §":"
Bedeutungskategorie = { EINZEILER [LZ] } [BedeutungsQualifikation] §":"
Interpretamente = LateinischeBedeutung ("--"| LZ) §DeutscheBedeutung [":"]
LateinischeBedeutung = LAT [LZ] LateinischerAusdruck { <","|ZW> LateinischerAusdruck }
DeutscheBedeutung = DEU [LZ] DeutscherAusdruck { <","|ZW> DeutscherAusdruck }
......@@ -223,12 +223,12 @@ class MLWGrammar(Grammar):
{ SEM [ZW] [Anker] [Zusatz] <Stelle | Verweis>
[[ZW] BelegText] [[LZ] Zusatz] }
Quellenangabe = [Anker] < BelegQuelle | Verweis >
BelegQuelle = Autor DPP Werk
Quellenangabe = [<Anker | Zusatz>] < BelegQuelle | Verweis >
BelegQuelle = Autor §DPP [Werk] &SEM
BelegText = /"/ { MEHRZEILER | Zusatz } §/"/~ ["."]
Autor = EINZEILER
Werk = EINZEILER
Autor = EINZEILER [<Anker | Verweis | Zusatz>]
Werk = <EINZEILER [<Anker | Verweis | Zusatz>]>
Stelle = EINZEILER
Datierung = EINZEILER
Edition = EINZEILER
......@@ -254,25 +254,24 @@ class MLWGrammar(Grammar):
NAME = /[A-ZÄÖÜÁÀÓÒÚÙÂÔÛ][a-zäöüßáàâóòôúùû]+/~
DEU_WORT = DEU_GROSS | DEU_KLEIN | GROSSBUCHSTABE
DEU_WORT_ERW = DEU_WORT | ( "(" DEU_WORT ")" )
DEU_GROSS = /[A-ZÄÖÜ][a-zäöüßę_\-]+/~
DEU_WORT_ERW = DEU_WORT | ("(" DEU_WORT §")")
DEU_GROSS = /[A-ZÄÖÜ][a-zäöüßę_\-.]+/~
GROSSBUCHSTABE = /[A-ZÄÖÜ](?=[ \t\n])/~
KLEINBUCHSTABE = /[a-zäöü](?=[ \t\n])/~
GRI_BUCHSTABE = /[αβγδεζηθικλμνξοπρςστυφχψω]/
DEU_KLEIN = /(?!-)[a-zäöüßę_\-]+/~
LAT_WORT = /(?!-)[a-z|\-_]+/~
LAT_WORT_ERW = LAT_WORT | ( "(" LAT_WORT ")" )
GROSSSCHRIFT = /(?!-)[A-ZÄÖÜ_\-]+/~
DEU_KLEIN = /(?!--)[a-zäöüßęõ_\-.]+/~
LAT_WORT = /(?!--)[a-z|\-_.]+/~
LAT_WORT_ERW = LAT_WORT | ("(" LAT_WORT §")")
GROSSSCHRIFT = /(?!--)[A-ZÄÖÜ_\-]+/~
ZAHL = /[\d]+/~
SEITENZAHL = /[\d]+(?:\^(?:(?:\{[\d\w.]+\})|\w))?/~ # Zahl mit optionale folgendem hochgestelltem Buchstaben oder Text
ROEMISCHE_ZAHL = /(?=[MDCLXVI])M*(C[MD]|D?C*)(X[CL]|L?X*)(I[XV]|V?I*)(?=[^\w])/~
SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\[\]]+)/~ # div. Satzzeichen, aber keine doppelten ,, ;; oder ::
TEIL_SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)/~ # Satzeichen bis auf Doppelpunkt ":", Semikolon ";" und eckige Klammern
SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\[\]]+)|[`‘]/~ # div. Satzzeichen, aber keine doppelten ,, ;; oder ::
TEIL_SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)|[`‘]/~ # Satzeichen bis auf Doppelpunkt ":", Semikolon ";" und eckige Klammern
BUCHSTABENFOLGE = /\w+/~
ZEICHENFOLGE = /[\w()-]+/~
# EINZEILER = /[\w()-. \t]+/~
TEXTELEMENT = DEU_WORT | SEITENZAHL | ROEMISCHE_ZAHL
EINZEILER = { TEXTELEMENT | TEIL_SATZZEICHEN }+
FREITEXT = { TEXTELEMENT | SATZZEICHEN | GROSSSCHRIFT }+
......@@ -316,7 +315,7 @@ class MLWGrammar(Grammar):
flexion = Forward()
genus = Forward()
wortart = Forward()
source_hash__ = "5acd793ecc09621740b44d8005c673d0"
source_hash__ = "2c0516a46fa68896294ceaaf72917ded"
parser_initialization__ = "upon instantiation"
COMMENT__ = r'(?:\/\/.*)|(?:\/\*(?:.|\n)*?\*\/)'
WHITESPACE__ = r'[\t ]*'
......@@ -345,20 +344,20 @@ class MLWGrammar(Grammar):
TEXTELEMENT.set(Alternative(DEU_WORT, SEITENZAHL, ROEMISCHE_ZAHL))
ZEICHENFOLGE = RE('[\\w()-]+')
BUCHSTABENFOLGE = RE('\\w+')
TEIL_SATZZEICHEN.set(RE('(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)'))
SATZZEICHEN.set(RE('(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\\[\\]]+)'))
TEIL_SATZZEICHEN.set(RE('(?!->)(?:(?:,(?!,))|(?:-(?!-))|[.()]+)|[`‘]'))
SATZZEICHEN.set(RE('(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|(?:-(?!-))|[.()\\[\\]]+)|[`‘]'))
ROEMISCHE_ZAHL.set(RE('(?=[MDCLXVI])M*(C[MD]|D?C*)(X[CL]|L?X*)(I[XV]|V?I*)(?=[^\\w])'))
SEITENZAHL.set(RE('[\\d]+(?:\\^(?:(?:\\{[\\d\\w.]+\\})|\\w))?'))
ZAHL = RE('[\\d]+')
GROSSSCHRIFT.set(RE('(?!-)[A-ZÄÖÜ_\\-]+'))
LAT_WORT_ERW = Alternative(LAT_WORT, Series(Token("("), LAT_WORT, Token(")")))
LAT_WORT.set(RE('(?!-)[a-z|\\-_]+'))
DEU_KLEIN = RE('(?!-)[a-zäöüßę_\\-]+')
GROSSSCHRIFT.set(RE('(?!--)[A-ZÄÖÜ_\\-]+'))
LAT_WORT_ERW = Alternative(LAT_WORT, Series(Token("("), LAT_WORT, Token(")"), mandatory=2))
LAT_WORT.set(RE('(?!--)[a-z|\\-_.]+'))
DEU_KLEIN = RE('(?!--)[a-zäöüßęõ_\\-.]+')
GRI_BUCHSTABE = RegExp('[αβγδεζηθικλμνξοπρςστυφχψω]')
KLEINBUCHSTABE = RE('[a-zäöü](?=[ \\t\\n])')
GROSSBUCHSTABE = RE('[A-ZÄÖÜ](?=[ \\t\\n])')
DEU_GROSS = RE('[A-ZÄÖÜ][a-zäöüßę_\\-]+')
DEU_WORT_ERW = Alternative(DEU_WORT, Series(Token("("), DEU_WORT, Token(")")))
DEU_GROSS = RE('[A-ZÄÖÜ][a-zäöüßę_\\-.]+')
DEU_WORT_ERW = Alternative(DEU_WORT, Series(Token("("), DEU_WORT, Token(")"), mandatory=2))
DEU_WORT.set(Alternative(DEU_GROSS, DEU_KLEIN, GROSSBUCHSTABE))
NAME = RE('[A-ZÄÖÜÁÀÓÒÚÙÂÔÛ][a-zäöüßáàâóòôúùû]+')
NAMENS_ABKÜRZUNG = RE('[A-ZÄÖÜÁÀÂÓÒÔÚÙÛ]\\.')
......@@ -374,11 +373,11 @@ class MLWGrammar(Grammar):
Edition = Synonym(EINZEILER)
Datierung = Synonym(EINZEILER)
Stelle = Synonym(EINZEILER)
Werk = Synonym(EINZEILER)
Autor = Synonym(EINZEILER)
Werk = AllOf(EINZEILER, Option(SomeOf(Anker, Verweis, Zusatz)))
Autor = Series(EINZEILER, Option(SomeOf(Anker, Verweis, Zusatz)))
BelegText = Series(RegExp('"'), ZeroOrMore(Alternative(MEHRZEILER, Zusatz)), RE('"'), Option(Token(".")), mandatory=2)
BelegQuelle = Series(Autor, DPP, Werk)
Quellenangabe = Series(Option(Anker), SomeOf(BelegQuelle, Verweis))
BelegQuelle = Series(Autor, DPP, Option(Werk), Lookahead(SEM), mandatory=1)
Quellenangabe = Series(Option(SomeOf(Anker, Zusatz)), SomeOf(BelegQuelle, Verweis))
Zitat = Series(Quellenangabe, ZeroOrMore(Series(SEM, Option(ZW), Option(Anker), Option(Zusatz), SomeOf(Stelle, Verweis), Option(Series(Option(ZW), BelegText)), Option(Series(Option(LZ), Zusatz)))))
Beleg = Series(Option(Zusatz), Alternative(Series(Verweis, Option(Zitat)), Zitat), Option(Series(ABS, Zusatz)), Option(Token(".")))
Belege = Series(Option(Token("*")), Beleg, ZeroOrMore(Series(Option(LZ), Token("*"), Beleg)))
......@@ -406,7 +405,7 @@ class MLWGrammar(Grammar):
DeutscheBedeutung = Series(DEU, Option(LZ), DeutscherAusdruck, ZeroOrMore(Series(SomeOf(Token(","), ZW), DeutscherAusdruck)))
LateinischeBedeutung = Series(LAT, Option(LZ), LateinischerAusdruck, ZeroOrMore(Series(SomeOf(Token(","), ZW), LateinischerAusdruck)))
Interpretamente = Series(LateinischeBedeutung, Alternative(Token("--"), LZ), DeutscheBedeutung, Option(Token(":")), mandatory=2)
Bedeutungskategorie = Series(EINZEILER, Option(Series(Option(LZ), BedeutungsQualifikation)), Token(":"), mandatory=2)
Bedeutungskategorie = Series(ZeroOrMore(Series(EINZEILER, Option(LZ))), Option(BedeutungsQualifikation), Token(":"), mandatory=2)
UntersteBedeutung = Series(Interpretamente, Option(BelegPosition))
Bedeutung = Series(Alternative(Interpretamente, Bedeutungskategorie), Option(BelegPosition))
U5Bedeutung = OneOrMore(Series(ZWW, Token("UUUUU_BEDEUTUNG"), Option(LZ), UntersteBedeutung, mandatory=3))
......
......@@ -12,7 +12,7 @@ M1: """
{saepe}"""
[match:Belege]
M1: """{=> v. ibi.} * Annal.: Plac. a. 1266 p. 516,21."""
M1: """{=> v. ibi.} * Annal.: Plac.; a. 1266 p. 516,21."""
[match:Beleg]
M1: """Catal.: thes. Germ.; 28,11 (post 851) "-um III.""""
......
......@@ -21,7 +21,7 @@ from MLWCompiler import get_preprocessor, get_grammar, get_transformer, get_comp
for root, dirs, files in os.walk('Beispiele'):
for fname in files:
entry = os.path.join(root, fname)
if fnmatch.fnmatch(entry, '*fascitergula.mlw'):
if fnmatch.fnmatch(entry, '*imperium.mlw'):
print('\n Parse: ' + entry)
raw_name = os.path.splitext(entry)[0]
with logging(True):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment