Sam Qasbah” post=64469Per maggiore chiarezza riporto un pezzo un pò più ampio del codice e il messaggio di errore che restituisce:
`
\chardef\atcatcode=\the\catcode`@%
\catcode`@=11\relax%
% …
% a me i messaggi servono sempre su una nuova riga
\def\@errmessage#1{\immediate\write16{!! ERR !! >>>\space#1}}
% …
\expandafter\ifx\csname XeTeXrevision\endcsname\relax%
\@errmessage{Why are you here again?}%
\let\@@endinput\endinput\fi
\csname @@endinput\endcsname%
%
\XeTeXinputencoding bytes%
% …
`
Mi pare poco efficiente.
`\chardef\atcatcode=\the\catcode`@
\catcode`@=11
\expandafter\ifx\csname XeTeXrevision\endcsname\relax
\@errmessage{Why are you here again?}%
\endinput\fi`
Il “%” dopo “`@” è ridondante; lo stesso è ridondante il “\relax%” dopo 11. Naturalmente è ridondante anche dopo “\endcsname\relax”. Non serve a nulla definire \@@endinput.
Ciao
Enrico