
Estou ajudando um amigo a usar o LaTeX para gerar um livro de contos. As histórias são recebidas dos autores em MS Word – infelizmente, esse é o único editor de texto que a maior parte do mundo conhece. Não há conteúdo matemático com que se preocupar, apenas texto simples. No entanto, o Word gosta de converter texto simples em outros caracteres: os dois que notei até agora são aspas e ...
.
Tentei a abordagem sugerida de uso inputenc
sem sucesso, mesmo com várias codificações de entrada. Estou usando \inputencoding
em vez de uma opção de pacote, pois sinto que preciso alterá-las entre várias histórias.
Então, qual é a abordagem sugerida para lidar com isso? Idealmente, eu preferiria ter alguma maneira de mapear esses caracteres para os caracteres apropriados e compatíveis com LaTeX.
Notas:
- Eu pessoalmente não gosto de deixar ointeligentecitações, pois há casos em que os autores perderam uma citação final e todas as citações subsequentes estão incorretas. Se isso for detectado logo no início, poderá ser facilmente corrigido no documento do Word antes de colar em um arquivo .tex. Mas muitas vezes, o editor faz edições significativas no arquivo .tex antes que esse problema seja percebido. Daí a preferência de
csquotes
lidar com esse problema em vez de usar cotações de abertura e fechamento específicas.
Referências
Como fazer com que os apóstrofos apareçam normalmente ao copiar e colar de um documento do MS Word?fornece um script para fazer uma conversão única de alguns caracteres, mas prefiro mantê-los intactos no arquivo .tex de origem, se possível.
Achei que esta é uma boa referência sobrefontenc vs inputenc.
Código:
\documentclass{article}
\usepackage{inputenc}
\usepackage{csquotes}
\MakeOuterQuote{"}
%\inputencoding{utf8}
%\inputencoding{latin1}
%\inputencoding{ansinew}
\inputencoding{cp1252}
\begin{document}
"It's too late now…" (should have \ldots\ before end quote)
“Please, sir, don’t.” (should have left and right quotes)
\end{document}
Responder1
Em relação à questão da entrada
Seu exemplo funciona sem problemas se eu copiá-lo em um documento utf8 e declarar a codificação inputenc de acordo como utf8. O mesmo acontece com ansinew.
Eu realmente não consigo imaginar como você poderia obter a saída em sua imagem - ela pode ser criada, mas não com os arquivos padrão. Nenhum deles substituiria caracteres não-ascii por pontos de interrogação.
Em relação às citações
Aspas retas (") estão ativas em documentos tex alemães e são usadas para muitas coisas úteis, como adicionar pontos de interrupção e hifens. Portanto, eu nunca as usaria para citações reais e prefiro arquivos de palavras com aspas inteligentes. Ao copiar do Word com ( alemão) aspas inteligentes para tex que uso \MakeAutoQuote{„}{“}
no documento tex. Como essas citações criam um grupo, recebo avisos ou erros se as aspas inteligentes no documento do Word não estiverem corretamente balanceadas, o que evita a maioria dos erros. copiar e colar nunca é suficiente. É sempre preciso ler e verificar o resultado.
Responder2
esse é o tipo de trabalho que costumo fazer às vezes. Bem, existem algumas ferramentas que você pode usar para resolver isso. Talvez a maneira melhor e automática seja com o pandoc
, mas sinceramente a verdade é que não testei o suficiente e ainda não tive uma experiência satisfatória com ele. Outra opção é fazer o que @Bernard sugere.
Anteriormente eu usava AbiWord
para abrir arquivos doc e exportar int LateX
, não foi uma boa solução para mim porque não respeita a estrutura do documento e todos os diacríticos são codificados em modo ascii. Bot talvez para um texto curto em inglês possa ser uma boa opção.
O que funciona melhor na minha experiência e gosto de passar texto de Word
para LaTeX
éTexto Sublime 2. Sim, talvez para outros seja estúpido e não seja a melhor solução, muito menos automática, mas funciona muito bem.
A primeira vantagemAcho que isso permite lidar com codificações. Você pode abrir um arquivo usando a codificação que desejar (ou quase) e codificá-lo novamente para o que precisar, geralmente gasto tudo em utf8. Você ainda pode reabri-lo ou salvá-lo com a codificação necessária e não obter símbolos estranhos, como quando você tenta com o Texmaker. (Neste caso tenho configurado para utf8 e sempre que abrir um arquivo me avise se está em outra codificação).
A segunda vantagemtem a ver com os esquemas de cores e a sintaxe. Por padrão usa um esquema bonito chamado Monokai, eu uso para mudar para Monokai brilhante (a diferença é a cor usada para as seleções destacadas, em Monokai brilhante é laranja em vez de cinza por padrão). A sintaxe do LaTeX é muito confortável à vista e também nos permite detectar facilmente as aspas. Certamente podemos conseguir o mesmo em vim
ou, emacs
mas aqui é muito fácil. Se tivermos aspas comuns e erradas "
, o Sublime Text com este esquema de cores destaca o texto em uma cor rosa viva. Então é muito fácil ver onde temos que fazer correções. Infelizmente se o autor ou o editor se esquecem de fechar as citações, não as vemos em cores, mas o editor ainda nos permite encontrá-las facilmente. Quando as aspas estiverem compostas corretamente no modo ascii: `` '' veremos o texto em amarelo em vez de branco.
A terceira vantagemtem a ver com o uso simultâneo de cursores em tempo real, e o uso de expressões regulares que permitem corrigir rapidamente muitas coisas, por exemplo as reticências. Você pode selecionar o ...
que está escrito no Word e usar [Ctrl]+[D]
( [Cmd]+[D]
no Mac) para selecionar todas as ocorrências do documento, e uma vez selecionado alterá-lo para \ldots
apenas escrever. Portanto a mudança não é em uma, mas em todas as seleções de uma só vez. Rápido e fácil.
Você não precisa de nenhuma ferramenta especial para conseguir isso, mas você também pode aprimorar o editor para compilar diretamente nele se desejar ou para obter mais ferramentas, você pode fazer isso instalando oControle de pacotee com ele consegue facilmente LaTeXTool
um pacote e outro.
Sei que este editor é muito popular entre quem faz web, mas acho que ele LaTeX
também tem algumas funcionalidades interessantes, experimente e veja se te convence.
Adendos
Para conseguir tudo isso que contei antes, costumo usar os dois pacotes: inpuntenc
(with utf8
) e fontenc
(with T1
é suficiente para idiomas da Europa Ocidental sem matemática).
Responder3
Pandocé uma ferramenta de linha de comando que pode converter docx
arquivos em arquivos LaTeX. Quanto a lidar com reticências e aspas, acho que a melhor maneira de lidar com isso é usando a função pesquisar e substituir em seu editor LaTeX.