você poderia explicar o que está acontecendo?
Estou usando a versão mais recente do MiKTeX 2.9.6960 de 64 bits (instalada ontem).
Estou tentando escrever algum texto cirílico em um arquivo separado sem usar o pacote inputenc:
\documentclass{article}
\begin{document}
\newwrite\testwrite
\immediate\openout\testwrite=testwrite.txt
\immediate\write\testwrite{Ббббббббббббб}
\immediate\closeout\testwrite
\end{document}
Mas o LaTeX não me diz que há algo errado com a codificação, mas em vez disso ele me diz que alguns de seus comandos internos são indefinidos. Aqui está uma parte do arquivo de log correspondente:
! Undefined control sequence.
\GenericError ...
#4 \errhelp \@err@ ...
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
\let \@err@ ...
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
\@empty \def \MessageBreak...
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
\endgroup
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
#4 \errhelp \@err@ ...
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
\let \@err@ ...
l.9 \immediate\write\testwrite{Ббббббббббббб}
?
! Undefined control sequence.
\GenericError ...
\@empty \def \MessageBreak...
l.9 \immediate\write\testwrite{Ббббббббббббб}
e assim por diante.
É um bug ou o que está acontecendo?
Obrigado por suas respostas.
Responder1
Os caracteres ativos são configurados para expandir para instruções de composição (ou para mensagens de erro dizendo que o caractere não está configurado), você só deseja escrever o texto literalmente assim:
\documentclass{article}
\begin{document}
\newwrite\testwrite
\immediate\openout\testwrite=testwrite.txt
\immediate\write\testwrite{\detokenize{Ббббббббббббб}}
\immediate\closeout\testwrite
\end{document}
Responder2
Se você não quiser usar inputenc, adicione\UseRawInputEncoding
\UseRawInputEncoding
\documentclass{article}
\begin{document}
\newwrite\testwrite
\immediate\openout\testwrite=testwrite.txt
\immediate\write\testwrite{Ббббббббббббб}
\immediate\closeout\testwrite
\end{document}