[XeTeX] Modifying The XeTeX engine

VAFA KHALIGHI vafa.khalighi at students.mq.edu.au
Wed Dec 24 12:48:47 CET 2008

Dear, Jonathan and others

A while ago I talked about the changes that if we make in XeTeX engine, we
will have the perfect bidirectional typesetting (LTR and RTL). Now it has
been some time that I have been studying the TeX-e-Parsi engine and have
studied the changes that they have done in the actual TeX engine.

TeX-e-Parsi is a localised version of TeX which has perfect bidirectional
support and I hope that we can make these changes in the XeTeX engine so we
have perfect bidirectional support.

TeX-e-Parsi adds about 100 Prmitive commands to the Original TeX primitive
commands. I think we would not need all of these 100 commands but we will
need the commands that have something to do with the directions.

These extra 100 commands are:

\LtoR, \RtoL, \accfactor, \activefont, \aftereverydisplay, \autoLRdirset,
\autofontset, \autoLRset, \basefont, \billions, \everysemidisplay,
\everysemimath, \everysemipar, \fonttwin, \hboxR, \ifLtoR, \ifRtoL,
\ifautoLRdir, \ifautofont,

\ifjoinable, \iflatin, \ifleftvbox, \ifcase, \ifonesof, \iftensof,
\ifhundredsof, \ifthousands, \ifmillions, \ifbillions, \ifprehundreds,
\ifprethousands, \ifpremillions, \ifprebillions, \ifsetlatin, \ifsetsemitic,
\ifsetrawprinting, \ifsemiticchar, \ifsplited,

\inputR, \jattrib, \lastcharjoinable, \lastcharunjoinable, \latin, \lcode,
\leftvbox, \curboxdir, \curdirection, \curLRswch, \curspeech, \maketwin,
\manLRset, \midruleinit, \midrulespec, \millions, \openinR, \openoutR,
\rawprinting, \eqprinting,

\rightvbox, \leftinput, \semiaccent, \semiaccentdown, \retainaccentchar,
\semichar, \semichardef, \semiday, \semifam, \dblfont, \semifont,
\semihalign, \semimonth, \semispaceskip, \semitic, \semixspaceskip,
\semiyear, \thousands,

\twinfont, \vboxjustification, \LRshowswitch, \LRmiscswitch, \eqwrite,
\letlatinname, \letsemiticname, \leteqname, \eqchar, \eqcharif,
\letnoteqname, \letnoteqchar, \letnoteqcharif, \endspecial, \beginspecial

I am attaching the actual change file (tex.ch) with this email. Jonathan,
would wou think that we could possibly define these new primitives in the
XeTeX engine? if you do that, then there will be no problem at all with
bidirectional typesetting and XeTeX will have most complete bidirectional
algorithm for typesetting in TeX.

Please feel free to comment about the commands.


``Life is not empty,
There is kindness, there is apple and there is faith

One day will come,
and to a mendicant I will endow a jasmine''

-- Sohrab Sepehri
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://tug.org/pipermail/xetex/attachments/20081224/16961a3b/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tex.ch.tar.gz
Type: application/x-gzip
Size: 89239 bytes
Desc: not available
Url : http://tug.org/pipermail/xetex/attachments/20081224/16961a3b/attachment-0001.gz 

More information about the XeTeX mailing list