diff options
Diffstat (limited to 'tex/context/base/mkiv/pack-rul.mkxl')
-rw-r--r-- | tex/context/base/mkiv/pack-rul.mkxl | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/tex/context/base/mkiv/pack-rul.mkxl b/tex/context/base/mkiv/pack-rul.mkxl index 97cb82968..3afd09c79 100644 --- a/tex/context/base/mkiv/pack-rul.mkxl +++ b/tex/context/base/mkiv/pack-rul.mkxl @@ -3045,16 +3045,15 @@ \let\themaxboxwidth\clf_themaxboxwidth -%D New: slow but ok for most cases: +%D Fast enough for most cases: \unexpanded\def\doifelseframed#1% - {\ifcase\numexpr\zerocount - \immediateassignment\edef\tempstring{#1\c!frame }\ifx\tempstring\v!on +\plusone\fi - \immediateassignment\edef\tempstring{#1\c!topframe }\ifx\tempstring\v!on +\plusone\fi - \immediateassignment\edef\tempstring{#1\c!bottomframe}\ifx\tempstring\v!on +\plusone\fi - \immediateassignment\edef\tempstring{#1\c!leftframe }\ifx\tempstring\v!on +\plusone\fi - \immediateassignment\edef\tempstring{#1\c!rightframe }\ifx\tempstring\v!on +\plusone\fi - \immediateassignment\edef\tempstring{#1\c!background }\ifempty\tempstring\else+\plusone\fi - \relax\expandafter\secondoftwoarguments\else\expandafter\firstoftwoarguments\fi} + {\iftok{#1\c!frame }{\v!on}\expandafter\firstoftwoarguments + \orelse\iftok{#1\c!topframe }{\v!on}\expandafter\firstoftwoarguments + \orelse\iftok{#1\c!bottomframe}{\v!on}\expandafter\firstoftwoarguments + \orelse\iftok{#1\c!leftframe }{\v!on}\expandafter\firstoftwoarguments + \orelse\iftok{#1\c!rightframe }{\v!on}\expandafter\firstoftwoarguments + \orelse\iftok{#1\c!background } {}\expandafter\secondoftwoarguments + \else \expandafter\firstoftwoarguments\fi} \protect \endinput |