diff options
Diffstat (limited to 'tex/context/base/mkiv/blob-ini.mkiv')
-rw-r--r-- | tex/context/base/mkiv/blob-ini.mkiv | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/tex/context/base/mkiv/blob-ini.mkiv b/tex/context/base/mkiv/blob-ini.mkiv new file mode 100644 index 000000000..64582c0db --- /dev/null +++ b/tex/context/base/mkiv/blob-ini.mkiv @@ -0,0 +1,62 @@ +%D \module +%D [ file=blob-ini, +%D version=2010.04.06, +%D title=\CONTEXT\ \LUA\ Typesetting, +%D subtitle=Initialization, +%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. + +\writestatus{loading}{ConTeXt Lua Typesetting / Initialization} + +%D This is a prelude to typesetting at the \LUA\ end. The code +%D is already quite old but will only get nice when we are further +%D down the road (close to version 1.00 of \LUATEX). Typesetting in +%D pure \LUA\ sometimes makes sense. + +\registerctxluafile{node-typ}{1.001} % experimental +\registerctxluafile{blob-ini}{1.001} + +%D For the moment here: + +\unprotect + +% this one takes simple (utf) strings + +\def\wdofstring#1{\dimexpr\clf_strwd{#1}\scaledpoint\relax} +\def\htofstring#1{\dimexpr\clf_strht{#1}\scaledpoint\relax} +\def\dpofstring#1{\dimexpr\clf_strdp{#1}\scaledpoint\relax} +\def\hdofstring#1{\dimexpr\clf_strhd{#1}\scaledpoint\relax} + +\def\widthofstring {\the\wdofstring} +\def\heightofstring {\the\htofstring} +\def\depthofstring {\the\dpofstring} +\def\heightanddepthofstring{\the\hdofstring} + +\let\htdpofstring \hdofstring + +\let\hd\htdp % if yes then move this + +% this one takes anything that can be typeset + +\unexpanded\def\setwidthof#1\to#2% + {\bgroup + \setbox\scratchbox\hbox{#1}% + \expanded{\egroup\def\noexpand#2{\the\wd\scratchbox}}} + +\protect \endinput + +% \starttext +% +% \startluacode +% local b = blobs.new() +% blobs.append(b,"Hello world.\n Here we are.\n\n And Again!") +% blobs.pack(b) +% blobs.write(b) +% \stopluacode +% +% \stoptext |