From 5ffb04ae1044c81f6982fa22e1bc1b05ffa5abce Mon Sep 17 00:00:00 2001 From: Michael Wagner Date: Tue, 12 Nov 2019 16:49:09 +0100 Subject: [PATCH] pydev-ts --- doc/.dummy | 0 python/mDoc/mdoc.py | 2 -- python/mDoc/mdoc/worker.py | 42 ++++++++++++++++++++++++-------------- python/mDoc/tpl/latex.tpl | 21 +++++++++++++------ 4 files changed, 42 insertions(+), 23 deletions(-) create mode 100644 doc/.dummy diff --git a/doc/.dummy b/doc/.dummy new file mode 100644 index 0000000..e69de29 diff --git a/python/mDoc/mdoc.py b/python/mDoc/mdoc.py index 2386fec..5c4fd5f 100755 --- a/python/mDoc/mdoc.py +++ b/python/mDoc/mdoc.py @@ -7,8 +7,6 @@ Created on 02.08.2019 import sys from mdoc import worker -from test import xxx -from test.xxx import MyClass usage = 'mdoc ' diff --git a/python/mDoc/mdoc/worker.py b/python/mDoc/mdoc/worker.py index b98ad57..120bf5e 100644 --- a/python/mDoc/mdoc/worker.py +++ b/python/mDoc/mdoc/worker.py @@ -7,37 +7,49 @@ Created on 02.08.2019 from mutil.XmlExtractor import XmlExtractor from mutil import XmlExtractor as XMLE import re - +''' def outfirst(outfile, tpllayer, attrs, value): if tpllayer["value"]: ostr = tpllayer["value"] if "$value" in ostr: - ostr = re.sub(r"\$value", value, ostr) + ostr = re.sub(r"\$value", value, ostr, flags=re.MULTILINE) print (ostr, end="", file=outfile) def outlast(outfile, tpllayer, attrs, value): if tpllayer["value"]: print (file=outfile) - +''' def process_file_layer(source, outfile, globals, hierarc): (ctl,elem, value, attrs) = source.extractElement(XMLE.EC_BEG) while ctl != XMLE.EC_END: - item = None + items = None nexthiera = {} if elem in hierarc: - item = hierarc[elem] - nexthiera = hierarc[elem]["items"] + items = hierarc[elem] elif elem in globals: - item = globals[elem] + items = globals[elem] else: print ("Warning: No mapping for item:" +elem) - if item: - outfirst(outfile, item, attrs, value) - process_file_layer(source, outfile, globals, nexthiera) - if item: - outlast(outfile, item, attrs, value) + if items: + # search for "first" + for item in items: + if "position" in item["attrs"]: + if item["attrs"]["position"] == "first": + print (item["value"], end="", file=outfile) + # proceed working + for item in items: + if not "position" in item["attrs"]: + nexthiera = item["items"] + if value: + print (value, end="", file=outfile) + process_file_layer(source, outfile, globals, nexthiera) + # search for "last" + for item in items: + if "position" in item["attrs"]: + if item["attrs"]["position"] == "last": + print (item["value"], end="", file=outfile) (ctl,elem, value, attrs) = source.extractElement(ctl) def convert (file, format): @@ -48,11 +60,11 @@ def convert (file, format): # read whole template tple = XmlExtractor() tpl = tple.readFile("tpl/"+format+".tpl") - globals = tpl["mdoc"]["items"]["global"]["items"] - hierarc = tpl["mdoc"]["items"]["hierarchical"]["items"] + globals = tpl["mdoc"][0]["items"]["global"][0]["items"] + hierarc = tpl["mdoc"][0]["items"]["hierarchical"][0]["items"] # open output file - ext = tpl["mdoc"]["attrs"]["extension"] + ext = tpl["mdoc"][0]["attrs"]["extension"] outname = re.sub(r"\.xml", "."+ext, file) outfile = open(outname, "w") #print ("hallo", file=outfile) diff --git a/python/mDoc/tpl/latex.tpl b/python/mDoc/tpl/latex.tpl index fbcbbbb..266d650 100644 --- a/python/mDoc/tpl/latex.tpl +++ b/python/mDoc/tpl/latex.tpl @@ -4,9 +4,8 @@
testdata - - + http://texwelt.de/wissen/fragen/2656/ \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} @@ -24,9 +23,19 @@ \setcounter{secnumdepth}{0} % keine Kapitelnummerierung ]]> - -<![CDATA[\title{$value}]]> - + + + <![CDATA[\title{]]> + + <title position="last"><![CDATA[}]]> + + +
-- 2.20.1