Escribir texto cirílico en un archivo

Escribir texto cirílico en un archivo

¿Podrías explicar qué está pasando?

Estoy usando la última versión de MiKTeX 2.9.6960 de 64 bits (instalada ayer).

Estoy intentando escribir texto cirílico en un archivo separado sin utilizar el paquete inputenc:

\documentclass{article}

\begin{document}

\newwrite\testwrite

\immediate\openout\testwrite=testwrite.txt

\immediate\write\testwrite{Ббббббббббббб}

\immediate\closeout\testwrite

\end{document}

Pero LaTeX no me dice que haya algún problema con la codificación, sino que en lugar de esto me dice que algunos de sus comandos internos no están definidos. Aquí hay una parte del archivo de registro correspondiente:

! 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{Ббббббббббббб}

etcétera.

¿Es un error o qué está pasando?

Gracias por sus respuestas.

Respuesta1

Los caracteres activos están configurados para expandirse a instrucciones de composición tipográfica (o a mensajes de error que dicen que el carácter no está configurado). Solo desea escribir el texto palabra por palabra, así:

\documentclass{article}

\begin{document}

\newwrite\testwrite

\immediate\openout\testwrite=testwrite.txt

\immediate\write\testwrite{\detokenize{Ббббббббббббб}}

\immediate\closeout\testwrite

\end{document}

Respuesta2

Si no desea utilizar inputenc, agregue\UseRawInputEncoding

\UseRawInputEncoding
\documentclass{article}

\begin{document}

\newwrite\testwrite

\immediate\openout\testwrite=testwrite.txt

\immediate\write\testwrite{Ббббббббббббб}

\immediate\closeout\testwrite

\end{document}

información relacionada