[XeTeX] Compatibility issues with ednotes and pstricks or TikZ

VAFA KHALIGHI vafaklg at gmail.com
Thu Sep 22 09:16:50 CEST 2011


I could not be bothered looking through lineno.sty to see what setups they
have so this is another quick/dirty fix. The problem is that in the
definition of \MakeLineNo, they use \sbox, \sbox itself uses
\set at color.bidi changes the definition of \set at colorwhen color/xcolor
package is loaded such that in the definition of \sbox at
the beginning of \hbox, you get \beginR, and at the end of \hbox, you get
\endR, that is, it makes \hbox and consequently \sbox RTL in RTL mode.
lineno setup for right linenumbers expect that \hbox or \sbox to be an LTR
one. Well, it can be RTL but you need to reverse the process (putting
\hskips, etc) I did not have time to look through the whole lineno.sty so
instead I used \setbox instead \sbox so it fixes the problem. Replace the
previously given code by this one:

 \makeatletter

\@ifpackageloaded{color}{%

\def\MakeLineNo{%

\@LN at maybe@normalLineNumber % v4.31

\boxmaxdepth\maxdimen\setbox\z@\vbox{\unvbox\@cclv}%

\@tempdima\dp\z@ \unvbox\z@

\setbox\@tempboxa=\hbox to \z@{\makeLineNumber}%

\stepLineNumber

\ht\@tempboxa\z@ \@LN at depthbox

\@LN at do@vadjusts

\count@\lastpenalty

\ifnum\outputpenalty=-\linenopenaltypar

\ifnum\count@=\z@ \else

\xdef\@LN at parpgbrk{%

\penalty\the\count@

\global\let\noexpand\@LN at parpgbrk

\noexpand\@LN at screenoff@pen}% v4.4

\fi

\else

\@tempcnta\outputpenalty

\advance\@tempcnta -\linenopenalty

\penalty \ifnum\count@<\@tempcnta \@tempcnta \else \count@ \fi

\fi

}}{}

\makeatother
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/xetex/attachments/20110922/9c44e04a/attachment.html>


More information about the XeTeX mailing list