Вырезать и вставить нематематический текст из MS Word в файл .tex

Вырезать и вставить нематематический текст из MS Word в файл .tex

Я помогаю другу использовать LaTeX для создания книги рассказов. Рассказы получены от авторов в MS Word — к сожалению, это единственный текстовый редактор, известный большинству людей в мире. Нет никакого математического содержания, о котором стоило бы беспокоиться, просто обычный текст. Однако Word любит преобразовывать часть обычного текста в другие символы: два, которые я заметил до сих пор, — это кавычки и ....

Я попробовал предложенный подход использования inputencбез какого-либо успеха даже с различными входными кодировками. Я использую \inputencodingвместо опции пакета, поскольку чувствую, что мне может понадобиться менять их между различными историями.

введите описание изображения здесь

Итак, какой подход предлагается для решения этой проблемы? В идеале я бы предпочел иметь какой-то способ сопоставления этих символов с соответствующими символами, совместимыми с LaTeX.

Примечания:

  • Мне лично не нравится покидатьумныйкавычки, так как бывают случаи, когда авторы пропускают закрывающую цитату, и тогда все последующие цитаты неверны. Если это обнаружено на ранней стадии, это можно легко исправить в документе Word перед вставкой в ​​файл .tex. Но часто редактор вносит значительные изменения в файл .tex до того, как эта проблема будет замечена. Следовательно, предпочтение отдается решению csquotesэтой проблемы, а не использованию конкретных открывающих и закрывающих кавычек.

Рекомендации

Код:

\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.

Связанный контент