Disgusted of Tunbridge Wells P.Taylor at Rhul.Ac.Uk
Mon Oct 23 22:19:20 CEST 2006

Dear Javier, copy all --

Because it is difficult for me to think in Russian (or
even in Greek), would it be possible for you to give
an example of your desired behaviour using (say)
French.  I /imagine/ that what you are saying
is that if we take é (<e-acute>) as an example of
a character that could not normally form a part
of a control sequence, you would like to be able
to do the following :

\cscode \é = 1
\catcode \é = \active
\def é{\'e}
\def \née {born}

and that this solution is preferred to

\catcode \é = \catcode \e
\def \née {born}

because the latter does not allow the

\catcode \é = \active
\def é{\'e}

functionality that \cscode does.  Is this correct ?

** Phil.
--------
because the latter has implications

Javier Múgica de Rivera wrote:

> This is a copy of a message I sent to the Latex3 list some time before and I got no answer (something not rare in that list). So I post it here, where it also belongs.
>
> There have been in the past many discussions about how to create a really
> multilingual program. One of the points was to allow typeseting control sequences (cs) in
> Russian (say), but we cannot simply make the \catcode equal to 11
> because then the character would be transparently passed to the dvi
> (ie., the font), which only works if input and output encondings match.
> Can we simply add in pdftex a \cscode? Such a \cscode would be equal to 1 or 0,
> accordingly to whether the characert is allowed in the name of a cs or not
> (more precisely, a character with \cscode 0 would make the previous one the last
> of the cs, or if it is the first one it would be the only one in the name of the cs).
> In Latex, the setting of the cscodes would be done when selecting the input encoding.
>
> In order not to break tons of existing code, we should still allow catcode 11 characters to
> form control names. Thus, whenever now we have (approximately, I have not yet read the sources)
>
> if(catcode=11)
>
> we change it with
>
> if(catcode=11 or cscode=1)	%If cscode=1 then, even if catcode=active, the character works as a letter when building the name of a control word
>
> We initialy set all cscodes equal to 0, so for the existing code nothing changes, while form now on we will be able to type control sequences with our alphabet (cyrilic, greek, ...), even if those characters are active ones.
>
>
> --
> Javier A.
>
>
> _______________________________________________
> ntg-pdftex mailing list
> ntg-pdftex at ntg.nl
> http://www.ntg.nl/mailman/listinfo/ntg-pdftex
`