将非数学文本从 MS Word 剪切并粘贴到 .tex 文件中

将非数学文本从 MS Word 剪切并粘贴到 .tex 文件中

我正在帮助一位朋友使用 LaTeX 生成一本短篇小说集。这些故事来自 MS Word 中的作者——不幸的是,这是世界上大多数人知道的唯一文本编辑器。无需担心数学内容,只有纯文本。但是,Word 喜欢将一些纯文本转换为其他字符:到目前为止,我注意到的两个是引号和...

我尝试了建议的方法,inputenc即使使用各种输入编码,也没有成功。我使用的\inputencoding是而不是包选项,因为我觉得我可能需要在不同的故事之间更改它们。

在此处输入图片描述

那么,建议采用什么方法来处理这个问题呢?理想情况下,我更愿意采用某种方法将这些字符映射到适当的 LaTeX 友好字符。

笔记:

  • 我个人不喜欢离开聪明的引号,因为有些情况下作者会漏掉一个结束引号,然后所有后续引号都是不正确的。如果及早发现,可以在粘贴到 .tex 文件之前在 Word 文档中轻松更正。但通常,在注意到这个问题之前,编辑者已经对 .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 也是如此。

我真的无法想象如何在图像中获得输出——它可以创建,但恕我直言,不能使用标准文件。它们都不会用问号替换非 ASCII 字符。

关于报价

直引号 (") 在德语 tex 文档中很常用,可用于很多有用的功能,例如添加断点和连字符。因此,我永远不会将它们用作真正的引号,我更喜欢使用智能引号的 word 文件。将带有(德语)智能引号的 word 复制到我\MakeAutoQuote{„}{“}在 tex 文档中使用的 tex 时。由于这样的引号会创建一个组,如果 word 文档中的智能引号未正确平衡,我会收到警告或错误,从而避免大多数错误。但 word 文件从来都不是完美的,因此简单的复制和粘贴永远不够。人们总是必须阅读并检查结果。

答案2

这是我有时常做的工作。好吧,您可以使用一些工具来解决这个问题。也许最好的和自动的方法是使用pandoc,但说实话,事实是,我还没有进行足够的测试,也没有令人满意的体验。另一个选择是按照@Bernard 的建议去做。

以前我用AbiWord它来打开 doc 文件并导出 int LateX,但对我来说这不是一个好的解决方案,因为它不尊重文档结构,并且所有变音符号都以 ascii 模式编码。对于英文短文来说,Bot 可能是一个不错的选择。

根据我的经验,最有效的方法是将文本从传递WordLaTeXSublime Text 2。是的,也许对于其他人来说这是愚蠢的并且不是最好的解决方案,更不用说自动化了,但它效果很好。

第一个优势我发现它允许您处理编码。您可以使用您想要的(或几乎)编码打开文件,然后将其重新编码为您需要的任何内容,通常我将其全部编码为 utf8。您仍然可以重新打开它或使用您需要的编码保存它,而不会出现奇怪的符号,例如当您尝试使用 Texmaker 时。(在这种情况下,我将其设置为 utf8,每当我打开文件时,都会让我知道它是否是另一种编码)。

第二个优点与配色方案和语法有关。默认情况下使用一种名为 Monokai 的漂亮方案,我用它来切换到 Monokai bright(区别在于突出显示选择的颜色,在 Monokai bright 中默认为橙色而不是灰色)。LaTeX 的语法对眼睛非常舒服,也让我们很容易检测到引号。当然我们可以在或中实现相同的效果,vimemacs这里非常简单。如果我们有常见和错误的引号,"那么 Sublime Text 会用这种配色方案以鲜艳的粉红色突出显示文本。因此很容易看到我们必须进行更正的地方。不幸的是,如果作者或编辑忘记关闭引号,我们看不到它们的颜色,但编辑器允许我们轻松找到它们。当引号在 ascii 模式下正确组合时:“ ”我们会看到黄色而不是白色的文本。

第三个优势与实时同时使用光标以及使用正则表达式有关,正则表达式允许快速更正许多内容,例如省略号。您可以...在 Word 中选择写入内容,然后使用[Ctrl]+[D][Cmd]+[D]在 Mac 中)选择文档中的所有出现内容,一旦选择,将其更改为\ldots仅写入。因此更改不是在一个内容中,而是同时在所有选择中。快速而简单。

你不需要任何特殊的工具来实现这一点,但你也可以增强编辑器,直接在它上面编译,如果你愿意的话,或者为了获得更多的工具,你可以安装包控制并利用它轻松获得LaTeXTool包裹和其他包裹。

我知道这个编辑器在从事网络工作的人当中很受欢迎,但是我认为它还LaTeX具有一些有趣的功能,尝试一下看看它是否能说服你。


附加物

为了正确实现我之前所说的一切,我通常使用两个包:inpuntenc(with utf8)和fontenc(withT1对于没有数学的西欧语言来说就足够了)。

答案3

潘多克是一个命令行工具,可以将docx文件转换为 LaTeX 文件。至于处理省略号和引号,我认为处理它们的最佳方法是使用 LaTeX 编辑器中的搜索和替换功能。

相关内容