summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/m-hemistich.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/m-hemistich.mkiv')
-rw-r--r--Master/texmf-dist/tex/context/base/m-hemistich.mkiv112
1 files changed, 112 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/context/base/m-hemistich.mkiv b/Master/texmf-dist/tex/context/base/m-hemistich.mkiv
new file mode 100644
index 00000000000..55fde7b9283
--- /dev/null
+++ b/Master/texmf-dist/tex/context/base/m-hemistich.mkiv
@@ -0,0 +1,112 @@
+%D \module
+%D [ file=m-hemistich,
+%D version=2013.08.26,
+%D title=\CONTEXT\ Extra Modules,
+%D subtitle=Hemistiches,
+%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.
+
+%D This is an experimental module for Idris. More is possible but not now.
+
+\unprotect
+
+\installcorenamespace{hemistich}
+
+\installcommandhandler \??hemistich {hemistich} \??hemistich
+
+\setuphemistich
+ [\c!width=\v!local,
+ \c!distance=4\emwidth,
+ \c!separator=\vl\hskip.25em\vl]
+
+\unexpanded\def\hemistiches
+ {\dosingleempty\dohemistiches}
+
+\unexpanded\def\dohemistiches
+ {\dodohemistiches\empty}
+
+\unexpanded\def\dodohemistiches#1[#2]#3#4%
+ {\dontleavehmode
+ \begingroup
+ \doifassignmentelse{#2}
+ {\edef\currenthemistich{#1}%
+ \setupcurrenthemistich[#2]}
+ {\def\currenthemistich{#2}}%
+ \doifelse{\hemistichparameter\c!width}\v!local
+ {\scratchwidth\availablehsize}
+ {\scratchwidth\hemistichparameter\c!width\relax}%
+ \spaceskip\zeropoint\s!plus\plusone\s!fill\relax
+ \hbox to \scratchwidth\bgroup
+ \scratchwidth.5\dimexpr\scratchwidth-\hemistichparameter\c!distance\relax
+ \hbox to \scratchwidth\bgroup
+ \usehemistichstyleandcolor\c!leftstyle\c!leftcolor#3%
+ \egroup
+ \hss
+ \begingroup
+ \usehemistichstyleandcolor\c!separatorstyle\c!separatorcolor
+ \hemistichparameter\c!separator
+ \endgroup
+ \hss
+ \hbox to \scratchwidth\bgroup
+ \usehemistichstyleandcolor\c!rightstyle\c!rightcolor#4%
+ \egroup
+ \egroup
+ \endgroup}
+
+\unexpanded\def\hemistichescaesura#1#2#3%
+ {\dodohemistiches\empty[\c!separator={#2}]{#1}{#3}}
+
+\appendtoks
+ \setvalue{\currenthemistich}{\dohemistiches{\currenthemistich}}%
+\to \everydefinehemistich
+
+\protect
+
+\continueifinputfile{m-hemistich.mkiv}
+
+\setuphemistich
+ [leftcolor=darkred,
+ separatorcolor=darkgreen,
+ rightcolor=darkblue]
+
+\setupwhitespace
+ [big]
+
+\starttext
+
+% \righttoleft
+
+\hemistichescaesura{left side of the brain}{equals}{right side of the brain}
+
+\hemistiches{left side of the brain}{right side of the brain}
+
+\startitemize
+ \startitem
+ \hemistiches{left side of the brain}{right side of the brain}
+ \startitemize
+ \startitem
+ \hemistiches{left side of the brain}{right side of the brain}
+ \startitemize
+ \startitem
+ \hemistiches{left side of the brain}{right side of the brain}
+ \stopitem
+ \stopitemize
+ \stopitem
+ \stopitemize
+ \startitem
+ \hemistiches{left side of the brain}{right side of the brain}
+ \stopitem
+ \stopitem
+\stopitemize
+
+\startitemize
+\item \hemistiches{left side of the brain}{right side of the brain}
+\stopitemize
+
+\stoptext
+