¿Cómo convertir UTF-8 a Latin-1 sobre la marcha?

¿Cómo convertir UTF-8 a Latin-1 sobre la marcha?

Tengo todo mi documento de látex codificado en latin-1. Además, la clase de documento proporcionada por mi institución está diseñada para utilizar latin-1. Escribo en francés.

Deseo utilizar archivos .bib creados por Mendeley que están codificados en UTF-8. Cuando intento compilar, látex me da un error:

inputenc: El carácter del teclado utilizado no está definido (inputenc) en la codificación de entrada `latin1'.

¿Hay alguna manera de convertir la codificación sobre la marcha con un simple comando? He aquí mi arreglo :

ventana 7

MiKTeX 2.9

TexStudio 2.3

Mendeley para exportar mi .bib

Es solo cuestión de cambiar la codificación ya que si simplemente copio el contenido del archivo .bib en un archivo nuevo (con la configuración de codificación correcta en TexStudio), todo funciona bien. No quiero hacer eso porque interrumpe mi flujo de trabajo. Estoy pensando en algo así como un comando para agregar antes de la ejecución de pdflatex.

Respuesta1

No es necesario volver a codificar sus archivos. LaTeX es bastante capaz de ingresar un archivo codificado en utf8 en un archivo principal codificado en ansinew/latin1:

....
\inputencoding{utf8}
\input{utf8file}
\inputencoding{ansinew} %back to ansinew
....

Pero si está utilizando biblatex/biberprobablemente no tenga que preocuparse en absoluto: si su archivo bib contiene solo caracteres que también están cubiertos por ansinew, entonces biberconvertirá el archivo utf8a ansinewcuando genere el archivo bbl. Esto aquí funciona sin problemas para mí: (el babero contiene diéresis alemanas).

\documentclass[12pt]{article}
\usepackage[ansinew]{inputenc}
\usepackage[bibencoding=utf8]{biblatex}
\addbibresource{examples-utf8.bib}
\begin{document}
öäü
\cite{utf8test}
\printbibliography
\end{document}

Por cierto: en Windows normalmente deberías utilizar ansinewen lugar de latin1para que, por ejemplo, también el € se procese correctamente.

Respuesta2

Para ello suelo utilizar un editor de texto comoSublime. Permite cargar o guardar archivos de texto (o archivos .tex, por supuesto) en la codificación deseada.

La codificación Latin1 en Sublime usa elNombre ISO/IECISO 8859-1.

Dependiendo de su problema, es posible que desee utilizar un editor LaTeX que reconozca automáticamente las codificaciones de fuentes, comofabricante de textiles, por ejemplo

Respuesta3

Dado que todo su flujo de trabajo parece estar diseñado para funcionar con Latin1, la pregunta sería cómo deshacerse de UTF-8 en su flujo de trabajo (aunque sea bastante triste hacerlo).

Entonces creo que, dado que los archivos .bib son todos iguales, tal vez desee simplemente cambiar su administrador de referencias a algo que admita el cambio de codificación de salida y que aún funcione para usted (en lugar de cambiar las codificaciones de salida de su administrador actual, que parece no ser obvio).

Para la gestión de referencias, utilizo JabRef. Es capaz de cambiar la codificación de salida muy fácilmente y es bastante fácil de usar, además de multiplataforma.

¿Quizás valdría la pena intentarlo?

información relacionada