summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/mtx-context-domotica.tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/mtx-context-domotica.tex')
-rw-r--r--tex/context/base/mkiv/mtx-context-domotica.tex133
1 files changed, 133 insertions, 0 deletions
diff --git a/tex/context/base/mkiv/mtx-context-domotica.tex b/tex/context/base/mkiv/mtx-context-domotica.tex
new file mode 100644
index 000000000..a904d865b
--- /dev/null
+++ b/tex/context/base/mkiv/mtx-context-domotica.tex
@@ -0,0 +1,133 @@
+%D \module
+%D [ file=mtx-context-domotica,
+%D version=2016.10.20,
+%D title=\CONTEXT\ Extra Trickry,
+%D subtitle=Domotica Goodies,
+%D author=Hans Hagen,
+%D date=\currentdate,
+%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+% begin help
+%
+% usage: context --extra=domotica [options] list-of-files
+%
+% --topspace=dimension : distance above first line
+% --backspace=dimension : distance before left margin
+% --bodyfont=list : additional bodyfont settings
+% --paperformat=spec : paper*print or paperxprint
+% --compact : small margins, 8pt font
+% --verycompact : small margins, 7pt font
+%
+% --openzwave : process openzwave xml files
+%
+% --pattern=spec : files to process
+%
+% example: context --extra=domotica --openzwave ./config/fibaro/fgms.xml ./open-zwave-master/config/aeotec/zw100.xml
+% example: context --extra=domotica --openzwave --pattern="./open-zwave-master/config/**.xml"
+%
+% end help
+
+% --pattern="e:/domotica/open-zwave/open-zwave-master/config/**.xml"
+
+\input mtx-context-common.tex
+
+\usemodule[domotica-settings]
+
+\doifdocumentargument {compact} {
+ \setdocumentargument{topspace} {5mm}
+ \setdocumentargument{backspace}{5mm}
+ \setdocumentargument{bodyfont} {8pt}
+}
+
+\doifdocumentargument {verycompact} {
+ \setdocumentargument{topspace} {5mm}
+ \setdocumentargument{backspace}{5mm}
+ \setdocumentargument{bodyfont} {7pt}
+}
+
+\setupbodyfont
+ [dejavu,11pt,\getdocumentargument{bodyfont}] % dejavu is more complete
+
+\setuplayout
+ [header=0cm,
+ footer=1.5cm,
+ topspace=\getdocumentargumentdefault{topspace}{1.5cm},
+ backspace=\getdocumentargumentdefault{backspace}{1.5cm},
+ width=middle,
+ height=middle]
+
+\setuppapersize
+ [\getdocumentargument{paperformat_paper}]
+ [\getdocumentargument{paperformat_print}]
+
+\doifdocumentargument {openzwave} {\enablemode[openzwave]}
+
+\startmode[openzwave]
+
+ \starttext
+
+ \setuplist
+ [chapter]
+ [style=bold,
+ width=4em]
+
+ \setuplist
+ [section]
+ [width=4em]
+
+ \setuphead
+ [section]
+ [style=bold]
+
+ \setupheadertexts
+
+ \setupheadertexts
+ [chapter][pagenumber]
+
+ \setupheader
+ [style=bold]
+
+ \starttitle[title=Zwave devices]
+
+ \placelist[chapter,section]
+
+ \stoptitle
+
+ \startluacode
+ local arguments = document.arguments
+ local files = document.files
+ local pattern = arguments.pattern
+ local noffiles = #files
+
+ if type(pattern) == "string" then
+
+ local pattern = file.addsuffix(pattern,"xml")
+
+ moduledata.zwave.show_settings(pattern)
+
+ elseif noffiles > 0 then
+
+ -- if arguments.sort then
+ -- table.sort(files)
+ -- end
+
+ for i=1,#files do
+ local filename = file.addsuffix(files[i],"xml")
+ moduledata.zwave.show_settings(filename)
+ end
+
+ else
+
+ context("no files given")
+
+ end
+ \stopluacode
+
+ \stoptext
+
+\stopmode
+