将内联引用从 MS Word 转移到 LaTex

将内联引用从 MS Word 转移到 LaTex

我正在将 MS Word 文档转换为 LaTeX 文档。我有 100 多个参考文献,想知道将 MS Word 文档中的所有内联引文转换为 LaTeX 文档的最简单方法。

我已经通过 BibTeX 库生成了引文,如果需要,可以手动单独转换每个引文。有没有办法可以将我所有的 MS Word 内联引文转换为\cite{author,date}LaTeX 格式,这样当我复制并粘贴到 LaTeX 中时,引文就会被自动识别?您还有其他建议吗?

答案1

Karsten Jahn 的这篇文章可能是我遇到的最好、最简单的解决方案:https://www.k-jahn.de/2012/02/22/exporting-a-word-library-to-latexbibtex/<- 链接失效

转换整个书目只需不到 5 分钟。它可以与最新版本的 MS Word 一起使用。唯一的区别是您应该将文件放在

C:\Users\[username]\AppData\Roaming\Microsoft\Bibliography\Style

并且您必须在第 90 行插入此元素,正如 Markus Hartmeier 在评论中指出的那样 - 否则它不会出现在列表中:

<xsl:template match="b:StyleNameLocalized">
  <xsl:text>Bibtex Export</xsl:text> 
</xsl:template>

答案2

你可以看看在线服务由 Makino、Takaki 提供,
或者更好的是,从同一页面下载 perl 脚本。

它对我有用,有时使用一些sed编辑作为预处理。

或者,更好的办法是,看看韓國这似乎更强大,但我发现得太晚了 :(

答案3

我刚刚完成了这个。需要执行两个步骤:

将您的 EndNote 库转换为 BibTeX 格式,这可以在 EndNote 中相对轻松地完成:

  1. 编辑 BibTeX Export 尾注样式以更改输出模板。我宁愿使用 JabRef 来制作我的引用键以拾取多个 AuthorYear 例外,这样您就可以删除“@article{|Label,|”中的“Label”
  2. 使用文件->导出将库导出到 .txt 文件,其格式由您的自定义 BibTeX 导出样式提供。
  3. 将扩展名更改为 .bib 并在 JabRef 中打开(我在创建新库并尝试导入时遇到了一些编码问题)。如果您已更改 citekey 生成格式,请将其更改为默认的 AuthorYear 模板。
  4. 使用 JabRef 生成引用键。注意几个末尾带有“a”的引用键——这些是您可能需要在文本中编辑的多个 AuthorYear 例外。如果没有,那就太好了。

现在您只需让 Word 文档中的所有引用都匹配即可:

  1. 编辑 BibTeX 导出尾注样式,将引文模板更改为您想要的文本(即\parencite{AuthorYear}BibLaTeX 或\cite{AuthorYear}natbib 和 BibTeX)。将模糊引文部分更改为“在年份后添加字母”(2000a、2000b)。
  2. 使用自定义 BibTeX 导出样式在 Word 文档中格式化参考书目。确保您的 AuthorYear 例外引用了正确的论文。

我重新格式化了整篇论文,然后才发现默认的 JabRef citekey 生成器与 AuthorYear 足够接近,可以与 EndNote Style 配合使用。祝你好运!

答案4

我为此创建了一个 python 包: https://pypi.org/project/ref2tex/

它是开源的,欢迎贡献 https://github.com/sahraoui17/ref2tex

相关内容