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@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-pdftex