diff options
author | Marius <mariausol@gmail.com> | 2013-08-26 17:40:26 +0300 |
---|---|---|
committer | Marius <mariausol@gmail.com> | 2013-08-26 17:40:26 +0300 |
commit | 189ec6ec6f86083e8675a57df06b4ccec89feec8 (patch) | |
tree | 4530a1a56fbbbf112cfa4beabca966cc0c0c69ee /tex/context/base/m-hemistich.mkiv | |
parent | b76759d73e6734cb014fe46da1f8521dcc9a8d71 (diff) | |
download | context-189ec6ec6f86083e8675a57df06b4ccec89feec8.tar.gz |
beta 2013.08.26 16:41
Diffstat (limited to 'tex/context/base/m-hemistich.mkiv')
-rw-r--r-- | tex/context/base/m-hemistich.mkiv | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/tex/context/base/m-hemistich.mkiv b/tex/context/base/m-hemistich.mkiv new file mode 100644 index 000000000..70c467c7b --- /dev/null +++ b/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, + middlecolor=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 + |