summaryrefslogtreecommitdiff
path: root/tex/context/base/enco-ini.mkiv
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2010-02-25 19:46:00 +0100
committerHans Hagen <pragma@wxs.nl>2010-02-25 19:46:00 +0100
commit8ce9c33634056a6c8b9673c7f14a27cef1f3348f (patch)
tree2cc2233e523548c9925349ff60b80a6ab5b2f3b1 /tex/context/base/enco-ini.mkiv
parent66aa7cfc8c9424ee0fe4e62a83b86dac39dc59a1 (diff)
downloadcontext-8ce9c33634056a6c8b9673c7f14a27cef1f3348f.tar.gz
beta 2010.02.25 19:46
Diffstat (limited to 'tex/context/base/enco-ini.mkiv')
-rw-r--r--tex/context/base/enco-ini.mkiv44
1 files changed, 17 insertions, 27 deletions
diff --git a/tex/context/base/enco-ini.mkiv b/tex/context/base/enco-ini.mkiv
index af4ddabaa..bab631ef9 100644
--- a/tex/context/base/enco-ini.mkiv
+++ b/tex/context/base/enco-ini.mkiv
@@ -335,39 +335,29 @@
\fallbackcontrolspace
\fi}
-\unexpanded\def\fastcontrolspace
+\unexpanded\def\fastcontrolspace % no glyph resolving after first (use grouped)
+ {\dofastcontrolspace}
+
+\def\dofastcontrolspace
{\iffontchar\font\textcontrolspace
- \textcontrolspace
+ \nofastfallbackcontrolspace
\else
- \fallbackcontrolspace
- \let\normalcontrolspace\fallbackcontrolspace
- \fi}
+ \dofastfallbackcontrolspace
+ \fi
+ \dofastcontrolspace}
-% helpers
+\newbox\controlspacebox
-\def\fakepercent
- {\mathematics{^{\scriptscriptstyle0}\kern-.25em/\kern-.2em_{\scriptscriptstyle0}}}
-
-\def\fakeperthousand
- {\mathematics{^{\scriptscriptstyle0}\kern-.25em/\kern-.2em_{\scriptscriptstyle00}}}
+\def\nofastfallbackcontrolspace
+ {\let\dofastcontrolspace\textcontrolspace}
-\def\fakepermine
- {\dontleavehmode
- \bgroup
- \setbox\scratchbox\hbox
- {\mathematics{+}}%
- \hbox to \wd\scratchbox
- {\hss\mathematics{^{\scriptscriptstyle-}\kern-.4em/\kern-.3em_{\scriptscriptstyle-}}\hss}%
- \egroup}
+\def\dofastfallbackcontrolspace
+ {\setbox\controlspacebox\hbox{\space}%
+ \setbox\controlspacebox\hbox to \wd\controlspacebox{\hss\fallbackcontrolspace\hss}%
+ \let\dofastcontrolspace\flushcontrolspacebox}
-\def\fakedcontrolspace % can be virtual in luatex
- {\dontleavehmode\hbox
- {\scratchdimen.1ex%
- \kern\scratchdimen
- \vrule \!!width\scratchdimen \!!height5.5\scratchdimen\!!depth3\scratchdimen
- \vrule \!!width\dimexpr.5em-4\scratchdimen\!!height -2\scratchdimen\!!depth3\scratchdimen
- \vrule \!!width\scratchdimen \!!height5.5\scratchdimen\!!depth3\scratchdimen
- \kern\scratchdimen}}
+\def\flushcontrolspacebox
+ {\copy\controlspacebox}
% from enco-acc:
%