Commit 219a2661 authored by di68kap's avatar di68kap
Browse files

- vscode connection for MLW

parent 1cff022a
......@@ -88,10 +88,10 @@ from DHParser import logging, is_filename, load_if_file, \\
DHPARSER_MAIN = '''
def compile_src(source):
def compile_src(source, log_dir=''):
"""Compiles ``source`` and returns (result, errors, ast).
"""
with logging("LOGS"):
with logging(log_dir):
compiler = get_compiler()
cname = compiler.__class__.__name__
log_file_name = os.path.basename(os.path.splitext(source)[0]) \\
......@@ -104,7 +104,10 @@ def compile_src(source):
if __name__ == "__main__":
if len(sys.argv) > 1:
result, errors, ast = compile_src(sys.argv[1])
file_name, log_dir = sys.argv[1], ''
if file_name in ['-d', '--debug'] and len(sys.argv) > 2:
file_name, log_dir = sys.argv[2], 'LOGS'
result, errors, ast = compile_src(file_name, log_dir)
if errors:
for error in errors:
print(error)
......
......@@ -4,7 +4,7 @@ LEMMA imperium
inperium
GRAMMATIK
GRAMMATIK SCHREIBWEISE
nomen; -i n.
......
// http://publikationen.badw.de:9000/de/lemma/imperium
LEMMA imperium
inperium
GRAMMATIK
nomen; -i n.
SCHREIBWEISE
script.: // gibt es hier überhaupt andere Kategorien außer "script."?
hym-: {=> imperator37m_1}
em-: Chron.: Fred.; 2,35sqq. capit.; p. 43.; 2,36 p. 60,10.
ym-: Chart.: Sangall.; A 194.
impir-: {=> impoerator38m_1}
STRUKTUR
form. sing.:
gen.:
-ri: {=> imperator39m_1} * {adde} Annal.: Plac. a.; 1266; p. 516,21.
-iae: Chron.: Fred.; 2,33.; p. 56,22. 2,35.
abl.:
-um: Chron.: Fred.; 2,15. 2,35sqq. capit.; p. 43.
VERWECHSELBAR
confunditur c.: // gibt es überhaupt noch andere Kategorien von Verwechselungen?
imperitus: {=> imperator80m_1}
BEDEUTUNG
LATEINISCH iussum, praeceptum, mandatum
DEUTSCH Befehl, Anweisung, Auftrag
UNTER_BEDEUTUNG proprie:
UNTER_UNTER_BEDEUTUNG in univ.:
* 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}}
UNTER_UNTER_BEDEUTUNG
LATEINISCH voluntas, arbitrium
DEUTSCH Wille, (willkürlicher) Beschluss
* 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:
* 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
LATEINISCH potestas, dominatio, dicio
DEUTSCH Macht, Herrschaft, Herrschaftsgewalt {plur. sensu sing. : {=> v. ibi. al.|imperator40m_2}}
UNTER_BEDEUTUNG proprie:
UNTER_UNTER_BEDEUTUNG in univ.:
* 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}}.
UNTER_UNTER_BEDEUTUNG imperatorum {regum, ducum : {=> v. ibi. al.|imperator77m_4}}:
UUU_BEDEUTUNG usu communi:
* 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."
* 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 {#imperator39m_1}{imperi S1} potestas prima
processit, et fidei catholicae origo exorta est."
UUU_BEDEUTUNG in indicatione temporis:
* 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}}.
UNTER_UNTER_BEDEUTUNG populorum, civitatum:
* 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";
2,16 p. 118,28 "qui {marchio} pene solus ex Italiae baronibus civitatum effugere potuit imperium".
UNTER_UNTER_BEDEUTUNG praelatorum ecclesiae:
* 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."
* 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}
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.}
* 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."
UNTER_BEDEUTUNG in imag. vel translate:
UNTER_UNTER_BEDEUTUNG in univ.:
* 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."
* Anon.: mus. plan. Coussemaker; p. 488b "tetra reges maximum huius {sc. harmoniae} tenent imperium. al."
UNTER_UNTER_BEDEUTUNG Dei:
* Mirac.: Gertr.; I 11 p. 471,13 "cui (Domino) est honor, virtus et {#imperator37m_1}hymperium et gloria in secula seculorum."
* 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
* 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
* Meginfr.: Emm.; 5 p. 976^A "cum defluentis Histri fluminis imperium sequeretur Emmerammus {eqs.}"
UNTER_BEDEUTUNG meton.:
UNTER_UNTER_BEDEUTUNG
LATEINISCH res publica, regnum
DEUTSCH Staat, Verwaltungs-, Regierungsgebiet, Reich
UUU_BEDEUTUNG in univ.:
* Chron.: Fred.; 2,15 "Assiriorum {#imperator38m_1}impirium (imperium p. corr. 1) deletum est."
* Widuk.: gest.; 1,28 "Hluthowico ... usque ad fines Illirici ... et terminos Danorum imperium erat."
* Otto Frising.: gest.;
p. 4,26 (epist. Frid. I. imp.)
"ut ... hostem utriusque {sc. orientalis et occidentalis} imperii
Willehelmum potentia virtutis nostrae conterere vellemus.";
1,24 p. 37,12
"Romanorum principem adeunt apocrisiarii imperatoris Constantinopolitani tam
confederationis vinculum ... inter duo imperia, Hesperiae videlicet et orientis,
renovare cupientes quam {eqs.}" {al}.
UUU_BEDEUTUNG
de Karolinorum vel Francorum sive sacro Romano(rum) imperio q. d.
(‘Karolinger-, Frankenreich bzw. sog. Heiliges Römisches Reich {de re v. LexMA. IV. {=> p. 2025sqq.|URL}}):
UUUU_BEDEUTUNG usu communi:
* 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."
* Poeta Saxo:; 4,172 "cunctos ... fines imperii servans {sc. augustus}".
* Dipl.: Ludow. Iun.; 28 (spur.) "Ludowicus ... rector imperii Francorum."
* Annal.: Quedl.; a. 1014 p. 543,7
"plures illorum {fratrum Corbeiensium} ... plus iusto contra ius imperii
saevientes {eqs.}"
* Dipl.: Frid. I.; 163 "sacro imperio et divae rei publicae consulere dememus."
* Const.: imp. II; 72 p. 85,22
"ut tollatur ... rancoris occasio inter ecclesiam et imperium." {persaepe}.
* {fort. add.} Conc.: Karol.; A 16^B
"ut ... gentis suae institutiones legum per primatos {#imperator80m_1}inperitos (imperii L)
..., quae repperit diuturna vitiata ..., evelleret {Tassilo dux}."
UUUU_BEDEUTUNG in nomine loci:
* Dipl.: Heinr. II.; 184
"strata imperialis, que a Summa tendit usque ad villam, que nominatur Pons Imperii."
UUUU_BEDEUTUNG spectat ad cives:
* 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.}"
* Annal.: Magd.; a. 1188
"episcopus ... in gratiam imperatoris ... se et civitatem suam coram omni
imperio dedit; imperator ... in presentia ... tocius imperii ... crucem accepit."
* Arnold. Lub.: chron.; 2,18 p. 138,8
"cum ... imperator propter nimiam superbiam suam non solum Saxonibus,
sed etiam sedi apostolice et omni fere imperio exosus fuisset {eqs.}"
UNTER_UNTER_BEDEUTUNG
LATEINISCH imperator
DEUTSCH Kaiser
UUU_BEDEUTUNG in univ.:
* 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."
* Ludus: de Antichr.; p. 12^{med.}
"eos {legatos} ... dimittens ipsemet {rex Graecorum} ascendet ad imperium cantans : ‘{eqs.}’"
* {adde;; cf. Wett. Gall. {=> 15sq.|URL}} Ekkeh.: IV. pict. Sangall.; 67
"imperii (gloss. : regis) sponsam vexat satan aere tensam :
hunc abigat nullus, rebachatur hians, nisi Gallus."
UUU_BEDEUTUNG in allocutione, titulo:
* 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}.
UNTER_UNTER_BEDEUTUNG
LATEINISCH comitatus (imperatoris)
DEUTSCH Gefolge, Gefolge des Kaisers {spectat ad militiam}
* 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."
UNTER_UNTER_BEDEUTUNG
LATEINISCH globus cruciger
DEUTSCH Reichsapfel
* 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
eam cum sceptro et imperio ante altare cantet : ‘{eqs.}’"
UNTER_UNTER_BEDEUTUNG
LATEINISCH modus regendi, principatus
DEUTSCH Regierungsform
* Albert. M.: pol.; 3,4^{capit.} "de prima civitatum origine deque imperiorum discrimine."
AUTORIN unbekannt
......@@ -10,6 +10,9 @@
from functools import partial
import os
import sys
sys.path.extend(['../', '../../'])
try:
import regex as re
except ImportError:
......@@ -27,7 +30,7 @@ from DHParser import logging, is_filename, load_if_file, \
is_empty, is_expendable, collapse, replace_content, remove_nodes, remove_content, \
remove_brackets, replace_parser, traverse_locally, remove_nodes, \
keep_children, is_one_of, has_content, apply_if, remove_first, remove_last, \
lstrip, rstrip, strip, keep_nodes, remove_empty_anonymous
lstrip, rstrip, strip, keep_nodes
#######################################################################
......@@ -195,8 +198,8 @@ class MLWGrammar(Grammar):
#### AUTOR/AUTORIN ###########################################################
ArtikelVerfasser = ZWW ("AUTORIN" | "AUTOR") §Name
Name = { NAME | NAMENS_ABKÜRZUNG | unbekannt }+
unbekannt = "unbekannt"
Name = { NAME | NAMENS_ABKÜRZUNG | "unbekannt" }+
#### STELLENVERZEICHNIS ######################################################
......@@ -311,7 +314,7 @@ class MLWGrammar(Grammar):
flexion = Forward()
genus = Forward()
wortart = Forward()
source_hash__ = "862de6ef9e50902a4cdf8ae8072052c6"
source_hash__ = "d4c194f1b966734e852e0293584409fb"
parser_initialization__ = "upon instantiation"
COMMENT__ = r'(?:\/\/.*)|(?:\/\*(?:.|\n)*?\*\/)'
WHITESPACE__ = r'[\t ]*'
......@@ -386,8 +389,7 @@ class MLWGrammar(Grammar):
Stellenverweis = Series(BelegQuelle, ZeroOrMore(Series(Option(ABS), Stelle, Alternative(NullVerweis, Verweis))))
Verweisliste = ZeroOrMore(Series(Option(LZ), Token("*"), Stellenverweis))
Stellenverzeichnis = Series(ZWW, Token("STELLENVERZEICHNIS"), Option(LemmaWort), ZWW, Verweisliste)
unbekannt = Token("unbekannt")
Name = OneOrMore(Alternative(NAME, NAMENS_ABKÜRZUNG, unbekannt))
Name = OneOrMore(Alternative(NAME, NAMENS_ABKÜRZUNG, Token("unbekannt")))
ArtikelVerfasser = Series(ZWW, Alternative(Token("AUTORIN"), Token("AUTOR")), Name, mandatory=2)
UnterArtikel = Series(ZWW, Token("UNTER-ARTIKEL"))
VerweisPosition = Series(ZWW, Token("VERWEISE"))
......@@ -480,8 +482,7 @@ LemmaVariante_table = {
MLW_AST_transformation_table = {
# AST Transformations for the MLW-grammar
"+": [remove_empty_anonymous,
remove_nodes('ZWW', 'ZW', 'LZ', 'DPP', 'COMMENT__', 'ABS', 'SEM'),
"+": [remove_empty, remove_nodes('ZWW', 'ZW', 'LZ', 'DPP', 'COMMENT__', 'ABS', 'SEM'),
remove_tokens],
"Autor": [reduce_single_child],
"Artikel": [],
......@@ -518,7 +519,7 @@ MLW_AST_transformation_table = {
"BedeutungsPosition": [flatten, remove_tokens("BEDEUTUNG")],
"Bedeutung": [],
"U1Bedeutung, U2Bedeutung, U3Bedeutung, U4Bedeutung, U5Bedeutung":
[remove_first, flatten],
[flatten, remove_first],
"Bedeutungskategorie": [],
"Beleg": [],
"BelegText":
......@@ -540,7 +541,7 @@ MLW_AST_transformation_table = {
"Stellenverzeichnis": [remove_first],
"Verweisliste": [flatten],
"Stellenverweis": [flatten],
"Name": [reduce_single_child],
"Name": [collapse],
"Stelle": [collapse],
"SW_LAT": [replace_or_reduce],
"SW_DEU": [replace_or_reduce],
......@@ -576,7 +577,6 @@ MLW_AST_transformation_table = {
"KOMMENTARZEILEN": [],
"DATEI_ENDE": [],
"NIEMALS": [],
"NAME": [reduce_single_child],
":Token": [remove_whitespace, reduce_single_child],
"RE": reduce_single_child,
"*": replace_by_single_child
......@@ -825,10 +825,10 @@ def get_compiler(grammar_name="MLW", grammar_source="") -> MLWCompiler:
#######################################################################
def compile_src(source):
def compile_src(source, log_dir=''):
"""Compiles ``source`` and returns (result, errors, ast).
"""
with logging("LOGS"):
with logging(log_dir):
compiler = get_compiler()
cname = compiler.__class__.__name__
log_file_name = os.path.basename(os.path.splitext(source)[0]) \
......@@ -841,7 +841,10 @@ def compile_src(source):
if __name__ == "__main__":
if len(sys.argv) > 1:
result, errors, ast = compile_src(sys.argv[1])
file_name, log_dir = sys.argv[1], ''
if file_name in ['-d', '--debug'] and len(sys.argv) > 2:
file_name, log_dir = sys.argv[2], 'LOGS'
result, errors, ast = compile_src(file_name, log_dir)
if errors:
for error in errors:
print(error)
......@@ -849,4 +852,4 @@ if __name__ == "__main__":
else:
print(result.as_xml() if isinstance(result, Node) else result)
else:
print("Usage: MLWCompiler.py [FILENAME]")
print("Usage: MLWCompiler.py [--debug] FILENAME")
......@@ -33,9 +33,9 @@ def tst_func():
get_grammar(),
get_transformer(),
get_compiler())
if AST:
with open(raw_name + '.ast', 'w', encoding='utf-8') as f:
f.write(AST.as_sxpr(compact=False))
# if AST:
# with open(raw_name + '.ast', 'w', encoding='utf-8') as f:
# f.write(AST.as_sxpr(compact=False))
if messages:
print("Errors in: " + entry)
with open(raw_name + '.messages', 'w', encoding='utf-8') as f:
......@@ -45,6 +45,8 @@ def tst_func():
f.write(s)
f.write('\n')
else:
if os.path.isfile(raw_name + '.messages'):
os.remove(raw_name + '.messages')
print("\nParsing of %s successfull :-)\n" % entry)
def cpu_profile(func):
......
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