
Я помогаю другу использовать LaTeX для создания книги рассказов. Рассказы получены от авторов в MS Word — к сожалению, это единственный текстовый редактор, известный большинству людей в мире. Нет никакого математического содержания, о котором стоило бы беспокоиться, просто обычный текст. Однако Word любит преобразовывать часть обычного текста в другие символы: два, которые я заметил до сих пор, — это кавычки и ...
.
Я попробовал предложенный подход использования inputenc
без какого-либо успеха даже с различными входными кодировками. Я использую \inputencoding
вместо опции пакета, поскольку чувствую, что мне может понадобиться менять их между различными историями.
Итак, какой подход предлагается для решения этой проблемы? В идеале я бы предпочел иметь какой-то способ сопоставления этих символов с соответствующими символами, совместимыми с LaTeX.
Примечания:
- Мне лично не нравится покидатьумныйкавычки, так как бывают случаи, когда авторы пропускают закрывающую цитату, и тогда все последующие цитаты неверны. Если это обнаружено на ранней стадии, это можно легко исправить в документе Word перед вставкой в файл .tex. Но часто редактор вносит значительные изменения в файл .tex до того, как эта проблема будет замечена. Следовательно, предпочтение отдается решению
csquotes
этой проблемы, а не использованию конкретных открывающих и закрывающих кавычек.
Рекомендации
Как сделать так, чтобы апострофы отображались нормально при копировании и вставке из документа MS Word?предоставляет скрипт для однократного преобразования некоторых символов, но я бы предпочел сохранить их нетронутыми в исходном .tex-файле, если это возможно.
Я нашел это хорошей ссылкой наfontenc против inputenc.
Код:
\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}
решение1
Относительно вопроса ввода
Ваш пример работает без проблем, если я копирую его в utf8-документ и объявляю кодировку inputenc соответственно как utf8. То же самое и с ansinew.
Я не могу себе представить, как вы могли бы получить вывод в вашем изображении -- его можно создать, но imho не со стандартными файлами. Ни один из них не заменил бы не-ASCII символы на вопросительные знаки.
По поводу цитат
Прямые кавычки (") активны в немецких документах tex и используются для множества полезных вещей, таких как добавление точек разрыва и дефисов. Поэтому я бы никогда не использовал их для настоящих кавычек и предпочитаю файлы Word с умными кавычками. При копировании из Word с (немецкими) умными кавычками в tex я использую \MakeAutoQuote{„}{“}
в документе tex. Поскольку такие кавычки создают группу, я получаю предупреждения или ошибки, если умные кавычки в документе Word неправильно сбалансированы, что позволяет избежать большинства ошибок. Но файлы Word никогда не бывают идеальными, поэтому простого копирования и вставки никогда не бывает достаточно. Всегда нужно читать и проверять результат.
решение2
Это работа, которую я иногда выполняю. Что ж, есть несколько инструментов, которые вы можете использовать для решения этой проблемы. Возможно, лучший и автоматический способ — это pandoc
, но, честно говоря, правда в том, что я недостаточно тестировал и пока не получил удовлетворительного опыта работы с ним. Другой вариант — сделать то, что предлагает @Bernard.
Раньше я использовал AbiWord
для открытия doc-файлов и экспорта int LateX
, это было не очень хорошее решение для меня, потому что не учитывает структуру документа, а все диакритические знаки закодированы в режиме ascii. Bot, возможно, для короткого текста на английском может быть хорошим вариантом.
По моему опыту , лучше всего работает и мне нравится передавать текст из Word
вLaTeX
Возвышенный Текст 2. Да, возможно, для кого-то это глупое и не лучшее решение, тем более не автоматическое, но работает довольно хорошо.
Первое преимуществоЯ считаю, что это позволяет вам работать с кодировками. Вы можете открыть файл, используя нужную вам кодировку (или почти) и перекодировать его в любую нужную вам кодировку, обычно я трачу все на utf8. Вы все равно можете снова открыть его или сохранить в нужной вам кодировке и не получать странные символы, например, когда вы пытаетесь с помощью Texmaker. (В этом случае я установил его на utf8 и всякий раз, когда я открываю файл, сообщайте мне, если он в другой кодировке).
Второе преимуществоимеет отношение к цветовым схемам и синтаксису. По умолчанию используется симпатичная схема под названием Monokai, я использую ее для переключения на Monokai bright (разница в цвете, используемом для выделенных выделений, в Monokai bright по умолчанию оранжевый вместо серого). Синтаксис для LaTeX очень удобен для глаз и также позволяет нам легко обнаруживать кавычки. Конечно, мы можем добиться того же в vim
или , emacs
но здесь это очень просто. Если у нас есть общие и неправильные кавычки "
, то Sublime Text с этой цветовой схемой выделяет текст между ними ярким розовым цветом. Так очень легко увидеть, где нам нужно внести исправления. К сожалению, если автор или редактор забывают закрыть кавычки, мы не видим их в цвете, но редактор позволяет нам легко найти их все. Когда кавычки правильно составлены в режиме ascii: `` '' мы увидим текст желтым вместо белого.
Третье преимуществосвязано с одновременным использованием курсоров в реальном времени и использованием регулярных выражений, что позволяет быстро исправлять многие вещи, например многоточие. Вы можете выбрать написанное ...
в Word и использовать [Ctrl]+[D]
( [Cmd]+[D]
в Mac) для выбора всех вхождений в документе, и после выбора изменить его на \ldots
простое написание. Таким образом, изменение происходит не в одном, а во всех выделениях одновременно. Быстро и легко.
Для этого вам не нужны никакие специальные инструменты, но вы также можете улучшить редактор для компиляции непосредственно в нем, если хотите, или получить больше инструментов, вы можете сделать это, установивКонтроль пакетови с ним легко получить LaTeXTool
посылку и другую.
Я знаю, что этот редактор очень популярен среди людей, занимающихся веб-дизайном, но я думаю, что LaTeX
у него также есть несколько интересных функций. Попробуйте его и посмотрите, убедят ли они вас.
Дополнения
Для того, чтобы правильно реализовать все то, о чем я говорил ранее, я обычно использую оба пакета: inpuntenc
(with utf8
) и fontenc
(with T1
достаточно для западноевропейских языков без математики).
решение3
Пандокэто инструмент командной строки, который может конвертировать docx
файлы в файлы LaTeX. Что касается работы с многоточиями и кавычками, я думаю, что лучший способ справиться с ними — использовать функцию поиска и замены в вашем редакторе LaTeX.