【发布时间】:2023-03-14 20:30:01
【问题描述】:
我使用 Pandoc 从 Markdown 导出 Word docx。
默认情况下,docx 文件中的所有内容似乎都标记为英文。所以我试图覆盖它,例如通过命令行选项 pandoc -s -S images.md -o images.docx -V lang=de 或在标题 YAML 中:
---
subtitle: <%= @report.name %>
toc-title: <%= t('.toc_title') %>
lang: de
---
但似乎没有任何作用,导出的 docx 文件中的所有内容都被语言拼写功能标记为红色,告诉我找不到英文单词。
如何覆盖语言?
更新
我尝试在 docx 文件中指定语言,只需选择所有文本(Cmd+A,我在 OSX 上)并单击左下角的语言按钮。
另外,我尝试使用Tools -> Language:
但这些都没有效果。
更新
有趣的是,当导出为 HTML 时,<html> 属性中的语言设置正确。
【问题讨论】:
-
我认为您需要使用“--reference-docx”选项,如here 所述。创建一个参考 docx 文件,然后覆盖那里的语言。
-
我已经试过了。但我不能 100% 确定在 docx 文件中指定语言的位置,我只是选择了所有文本并单击左下角的语言按钮。但也许有完整文档的通用语言选项?
-
我在 OSX 上的 Word 365 中通过
Tools -> Language设置了语言。没有解决问题。 -
reference-docx 只能设置样式和一些属性(边距、页面大小、页眉和页脚),但语言不是其中之一 pandoc.org/MANUAL.html#options-affecting-specific-writers>;一种解决方法是编写一个 doc 宏来执行此操作,然后对文件进行后处理。
-
同意scoa,目前看来只能做一些后期处理了。也就是说,这是一个已经在github 上讨论过的问题。应该不难修复(毕竟 docx 只是一个包含 xml 文件的 zip),当然说起来容易做起来难。
标签: ms-word localization pandoc culture