<?xml version="1.0" encoding="UTF-8"?>
<mdoc format="latex" extension="tex">
-<global/>
+<functions>
+<function name="informaltable">
+<![CDATA[
+# initialize output
+out = ""
+# eval colums
+(ctl,elem, value, attrs) = source.extractElement(XMLE.EC_BEG) # reads tgroup
+if elem != "tgroup":
+ raise RuntimeError("unknown elem, <tgroup> expected in <informaltable>: "+elem)
+cols = int(attrs["cols"])
+colsep = ""
+if attrs["colsep"] == "1":
+ colsep = "|"
+rowsep = False
+if attrs["rowsep"] == "1":
+ rowsep = True
+align = "r"
+if attrs["align"] == "left":
+ align = "l"
+align_arr = cols*[align]
+(ctl,elem, value, attrs) = source.extractElement(XMLE.EC_BEG) # searches tbody
+while ctl != XMLE.EC_END:
+
+ if elem == "colspec": # colspec found
+ if "colwidth" in attrs:
+ align_arr[int(attrs["colnum"])-1] = "p{"+attrs["colwidth"]+"}"
+
+ if elem == "tbody": # tbody found
+ out += r"\begin{tabular}{"
+ tmp_colsep = ""
+ for i in range(cols):
+ out += tmp_colsep + align_arr[i]
+ tmp_colsep = colsep
+ out += "}\n"
+ (ctl1,elem, value, attrs) = source.extractElement(XMLE.EC_BEG) # reads row
+ while ctl1 != XMLE.EC_END:
+ if elem != "row":
+ raise RuntimeError("Only <row> expected in <tbody>: "+elem)
+ (ctl2,elem, value,attrs) = source.extractElement(XMLE.EC_BEG) # reads entry
+ entry_sep = ""
+ while ctl2 != XMLE.EC_END:
+ if not value:
+ value = ""
+ if elem != "entry":
+ raise RuntimeError("Only <entry> expected in <row>: "+elem)
+ # check for further elems
+ (ctl3,elem,value3,attrs3) = source.extractElement(XMLE.EC_BEG)
+ line_sep = ""
+ while ctl3 != XMLE.EC_END:
+ if elem != "line": # only lines expected
+ raise RuntimeError("Only <line> expected in <entry: "+elem)
+ value += line_sep + value3
+ line_sep = " \par\n"
+ (ctl3,elem3,value3,attrs3) = source.extractElement(ctl3)
+ out += entry_sep + value
+ entry_sep = " & "
+ (ctl2,elem, value, attrs) = source.extractElement(ctl2) # reads entry
+ out += r" \\" + "\n"
+ (ctl1,elem, value, attrs) = source.extractElement(ctl1) # reads row
+ out += r"\end{tabular}"+"\n\n"
+ (ctl,elem, value, attrs) = source.extractElement(ctl) # searches tbody
+]]></function>
+</functions>
+<global>
+<informaltable exec="informaltable"/>
+<para pre="\n"/>
+<emphasis pre="\emph{" post="}" end=""/>
+<item end=" "/>
+</global>
+
<hierarchical>
<article>
<test>testdata</test>
\geometry{a4paper,left=25mm,right=20mm, top=33mm, bottom=30mm}
\renewcommand{\familydefault}{\sfdefault}
+\renewcommand{\arraystretch}{1.4}
\author{Michael J.M. Wagner}
-\date{\vspace{-6ex}}
\CenterWallPaper{1}{wagner_tech_briefbogen_blau_fs1.pdf}
]]>
</articleinfo>
<articleinfo>
- <title position="first"><![CDATA[\title{]]></title>
- <title/>
- <title position="last"><![CDATA[}]]></title>
+ <title pre="\title{" post="}"/>
+ <pubdate pre="\date{" post="}"/>
</articleinfo>
<articleinfo position="last">
<![CDATA[
\maketitle
]]>
</articleinfo>
+<section pre="\section{">
+ <title post="}"/>
+</section>
</article>
+<article position="last">
+<![CDATA[
+\end{document}
+
+]]>
+</article>
+
</hierarchical>
</mdoc>