
Eu tenho todo o meu documento de látex que está codificado em latin-1. Além disso, a documentclass fornecida pela minha instituição foi projetada para usar o latin-1. Escrevo em francês.
Desejo usar arquivos .bib criados por Mendeley que são codificados em UTF-8. Quando tento compilar, o latex me dá um erro:
inputenc: O caractere do teclado usado é indefinido (inputenc) na codificação de entrada `latin1'.
Existe uma maneira de converter a codificação rapidamente com um comando simples? Aqui está minha configuração:
Janelas 7
MiKTeX 2.9
TextStudio 2.3
Mendeley para exportar meu .bib
É apenas uma questão de alterar a codificação, pois se eu simplesmente copiar o conteúdo do arquivo .bib em um novo arquivo (com a configuração de codificação correta no TexStudio), tudo funcionará bem. Não quero fazer isso, pois interrompe meu fluxo de trabalho. Estou pensando em algo como um comando para adicionar antes da execução do pdflatex.
Responder1
Você não precisa recodificar seus arquivos. LaTeX é bastante capaz de inserir um arquivo codificado em utf8 no arquivo principal codificado em ansinew/latin1:
....
\inputencoding{utf8}
\input{utf8file}
\inputencoding{ansinew} %back to ansinew
....
Mas se você estiver usando biblatex/biber
, provavelmente não precisará se preocupar: se o seu arquivo bib contiver apenas caracteres que também são cobertos por ansinew
, então biber
converterá o utf8
para ansinew
ao gerar o bbl
. Isso aqui funciona sem problemas para mim: (o babador contém tremas alemães).
\documentclass[12pt]{article}
\usepackage[ansinew]{inputenc}
\usepackage[bibencoding=utf8]{biblatex}
\addbibresource{examples-utf8.bib}
\begin{document}
öäü
\cite{utf8test}
\printbibliography
\end{document}
A propósito: No Windows você normalmente deve usar ansinew
em vez de latin1
para que, por exemplo, o € seja processado corretamente.
Responder2
Para isso costumo usar um editor de texto comoSublime. Permite carregar ou salvar arquivos de texto (ou arquivos .tex, é claro) na codificação desejada.
A codificação Latin1 no Sublime usa oNome ISO/IECISO 8859-1 .
Dependendo do seu problema, você pode querer usar um editor LaTeX que reconheça automaticamente codificações de fontes, comofabricante de texto, por exemplo
Responder3
Como todo o seu fluxo de trabalho parece ter sido projetado para funcionar com o Latin1, a questão seria como se livrar do UTF-8 no seu fluxo de trabalho (mesmo que seja muito triste fazê-lo).
Então eu acho que como os arquivos .bib são todos iguais, talvez você queira simplesmente mudar seu gerenciador de referências para algo que suporte a alteração da codificação de saída e que ainda funcione para você (em vez de alterar as codificações de saída do seu gerenciador atual, que parece não ser óbvio).
Para gerenciamento de referências, eu uso para mim o JabRef. É capaz de alterar a codificação de saída com muita facilidade e é bastante fácil de usar, além de ser multiplataforma.
Talvez valesse a pena tentar?