[XeTeX] Hyphenation around „ß“

Philip Taylor P.Taylor at Rhul.Ac.Uk
Wed Jan 15 18:29:42 CET 2014



Philip Taylor wrote:

> I can see you have not lost your Wizard's touch, David, but will
> that work (as-is) in an IniXeTeX regime ?  It looks to me as if
> it makes use of some plain-defined control words such as \z@ and
> \@ne.  We need it to work in an Ini(Xe)TeX regime so that we can
> introduce different patterns to compare the behaviour.

Hmmm.  I did my best to take out all Plain dependencies, but I failed
and it will no longer compile.  David, can you identify where I screwed
up ?

** Phil.
--------
% !TeX Program=IniXeTeX

\catcode `\{=1
\catcode `\}=2
\catcode `\# = 6
\catcode `\% = 14
\catcode `\  = \catcode `\ % tab !!!

\let \bgroup = {
\let \egroup = }

\input unicode-letters.tex
\input hyph-de-1996.tex

\font \tenrm = "Times New Roman" at 10pt
\hyphenchar \tenrm = `\-
\tenrm

\parfillskip = 0 pt

\catcode `\@ = 11
\def \showhyphenspace #1
  {%
    \ifx \valign #1\valign
    \else
      #1\vadjust {\penalty 1 } \expandafter \showhyphenspace
    \fi
  }

\def \showhyphens #1%
  {%
    \bgroup
      \showboxbreadth = 16383.99999 pt
      \showboxdepth = 16383.99999 pt
      \pretolerance = -1
      \tolerance = -1
      \setbox 2 = \hbox {}%
      \setbox 0 = \vbox
        \bgroup
          \pretolerance = -1
          \tolerance = -1
          \hbadness = 0
          \parfillskip = 0 pt \relax
          \hsize = 1 sp
          \noindent
          \hskip 0 pt
          \hfuzz = 16383.99999 pt
          \hbadness = \dimexpr {16383.99999 pt }%
          \showhyphenspace #1 {} \par
          \loop
            \count 0 = 1
            \ifnum 1 = \lastnodetype
              \setbox 4 = \lastbox
              \setbox 2 = \hbox {\unhbox 4 \unhbox 2}%
              \count 0 = 0
            \fi
            \ifnum 11 = \lastnodetype \unskip \count 0 = 0 \fi
            \ifnum 13 = \lastnodetype
              \count 2 = \lastpenalty
              \unpenalty
              \count 0 = 0
              \ifnum \count 2 = 1
                \setbox 2 = \hbox {\unhbox 2 }%
                \count  0 = 0
               \fi
            \fi
          \ifnum 0 = \count 0
          \repeat
          \hsize = 16383.99999 pt
          \hfuzz = 0 pt
          \hbadness = 0
          \par
          \unhbox 2
          \par
        \egroup
    \egroup
  }

\showhyphens {wußte geißeln}

\end


More information about the XeTeX mailing list