summaryrefslogtreecommitdiff
path: root/tex/context/base/typo-lan.mkiv
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2013-03-23 15:20:14 +0200
committerMarius <mariausol@gmail.com>2013-03-23 15:20:14 +0200
commite486991f986cb96e6ef5f5b03f83494f16cb2acb (patch)
tree4105520acf58999e2764abb2992a8f3228e13fdd /tex/context/base/typo-lan.mkiv
parente63d6fbae0555a9d20dc3f0f91cf574612a1dfc7 (diff)
downloadcontext-e486991f986cb96e6ef5f5b03f83494f16cb2acb.tar.gz
beta 2013.03.23 14:11
Diffstat (limited to 'tex/context/base/typo-lan.mkiv')
-rw-r--r--tex/context/base/typo-lan.mkiv63
1 files changed, 63 insertions, 0 deletions
diff --git a/tex/context/base/typo-lan.mkiv b/tex/context/base/typo-lan.mkiv
new file mode 100644
index 000000000..bb4ed2042
--- /dev/null
+++ b/tex/context/base/typo-lan.mkiv
@@ -0,0 +1,63 @@
+%D \module
+%D [ file=typo-lan,
+%D version=2013.03.22,
+%D title=\CONTEXT\ Typesetting Macros,
+%D subtitle=Language 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.
+
+\writestatus{loading}{ConTeXt Typography Macros / Languages}
+
+\unprotect
+
+\registerctxluafile{typo-lan}{1.001}
+
+%D \macros
+%D {averagecharwidth, charwidthlanguage}
+%D
+%D This is a more \MKIV-ish variant of lang-frq.mkiv. The methods are
+%D gone as one doesn't need the tables for them. The main macro is
+%D \type {\averagecharwidth} which behaves like a dimension register.
+%D
+%D I finally decided to reimplement this as I needed it for a manual
+%D (which is often a reason for such a rewrite). With some inspiring
+%D Porcupine Tree in the background it's not the worst thing to do.
+
+\def\charwidthlanguage{\currentmainlanguage}
+
+\def\averagecharwidth{\dimexpr\ctxcommand{averagecharwidth("\charwidthlanguage")}\scaledpoint\relax}
+
+\protect
+
+\continueifinputfile{typo-lan.mkiv}
+
+\setuplayout[backspace=4cm]
+
+\showframe
+
+\starttext
+
+\startbuffer
+
+\mainlanguage[en] \hsize65\averagecharwidth \normalexpanded{\inleft{\the\hsize}} \input ward \par
+\mainlanguage[de] \hsize65\averagecharwidth \normalexpanded{\inleft{\the\hsize}} \input ward \par
+\mainlanguage[nl] \hsize65\averagecharwidth \normalexpanded{\inleft{\the\hsize}} \input ward \par
+
+\stopbuffer
+
+\getbuffer \blank
+
+\switchtobodyfont[pagella]
+
+\getbuffer \blank
+
+\switchtobodyfont[tt,8pt]
+
+\getbuffer
+
+\stoptext