diff options
Diffstat (limited to 'tex/context/base/typo-dir.mkiv')
-rw-r--r-- | tex/context/base/typo-dir.mkiv | 75 |
1 files changed, 19 insertions, 56 deletions
diff --git a/tex/context/base/typo-dir.mkiv b/tex/context/base/typo-dir.mkiv index 0362af56c..d35dfeb66 100644 --- a/tex/context/base/typo-dir.mkiv +++ b/tex/context/base/typo-dir.mkiv @@ -16,9 +16,6 @@ \unprotect \registerctxluafile{typo-dir}{1.001} -\registerctxluafile{typo-dha}{1.001} -\registerctxluafile{typo-dua}{1.001} -\registerctxluafile{typo-dub}{1.001} \definesystemattribute[directions][public] @@ -29,9 +26,6 @@ \installsimplecommandhandler \??directions {directions} \??directions % no \define... yet -\edef\lefttorightmark{\normalUchar"200E} \let\lrm\lefttorightmark -\edef\righttoleftmark{\normalUchar"200F} \let\rlm\righttoleftmark - \unexpanded\def\setdirection[#1]% todo: symbolic names {\ctxcommand{setdirection(\number#1)}} @@ -41,42 +35,34 @@ \newconstant\directionsbidimode % this one might become pivate -% \setupdirections[bidi=global,method=default] -% \setupdirections[bidi=global,method=one] -% \setupdirections[bidi=global,method=two] -% \setupdirections[bidi=global,method=two,fences=no] - -\def\typo_dir_get_mode - {\def\currentbidimode{\ctxcommand{getbidimode { - scope = "\directionsparameter\c!bidi ", - method = "\directionsparameter\c!method", - fences = "\directionsparameter\c!fences", - }}}% - \expandafter\glet\csname\??directionsbidimode\currentbidistamp\endcsname\currentbidimode} +\letvalue{\??directionsbidimode\v!off }\zerocount +\letvalue{\??directionsbidimode\v!global}\plusone +\letvalue{\??directionsbidimode\v!local }\plustwo +\letvalue{\??directionsbidimode\v!on }\plustwo \appendtoks - \edef\currentbidistamp - {\directionsparameter\c!bidi - :\directionsparameter\c!method - :\directionsparameter\c!fences}% - \expandafter\let\expandafter\currentbidimode\csname\??directionsbidimode\currentbidistamp\endcsname - \ifx\currentbidimode\relax - \typo_dir_get_mode - \fi - \directionsbidimode\currentbidimode\relax + \directionsbidimode + \ifcsname\??directionsbidimode\directionsparameter\c!bidi\endcsname + \csname\??directionsbidimode\directionsparameter\c!bidi\endcsname + \else + \zerocount + \fi + \relax \ifcase\directionsbidimode - \resetdirection - \else - \setdirection[\number\directionsbidimode]% + \resetdirection + \or % 1 + \setdirection[1]% global, chars + \or % 2 + \setdirection[2]% local, attributes + \or % else + \setdirection[1]% default \fi \to \everysetupdirections % bidi: local=obey grouping, global=ignore grouping (unicode has no grouping) \setupdirections % maybe start/stop - [\c!bidi=\v!off, - \c!method=\v!default, - \c!fences=\v!yes] + [\c!bidi=\v!off] \unexpanded\edef\bidilre{\normalUchar"202A} % maybe \edef's \unexpanded\edef\bidirle{\normalUchar"202B} @@ -91,12 +77,6 @@ % for the moment: \setdirection[\plusone] -\definecolor[bidi:left:original] [r=.6] -\definecolor[bidi:left:reversed] [g=.6] -\definecolor[bidi:right:original][b=.6] -\definecolor[bidi:right:reversed][r=.6,g=.6] -\definecolor[bidi:mirrored] [r=.6,b=.6] - \protect \endinput % bidi test @@ -165,21 +145,4 @@ {\typebuffer[bidi-setup] \getbuffer[bidi-setup] \getbuffer[bidi-sample]} -\startbuffer[bidi-sample] -\setupdirections[bidi=global] - - \hbox{\righttoleft\arabicfont (0001)}\par - \dontleavehmode\hbox{\righttoleft\arabicfont (0002)}\par - {\righttoleft\arabicfont (0003)\par} - {\righttoleft\arabicfont (0004)}\par - \dontleavehmode{\righttoleft\arabicfont (0005)\par} - \dontleavehmode{\righttoleft\arabicfont (0006)}\par - \rtlhbox{\arabicfont (0007)}\par - \ltrhbox{\arabicfont (0008)}\par -\dontleavehmode\rtlhbox{\arabicfont (0009)}\par -\dontleavehmode\ltrhbox{\arabicfont (0010)}\par -\stopsetups - -{\typebuffer[bidi-sample] \getbuffer[bidi-sample]} - \stoptext |