Pdf 如何使用pandoc获取本地化引号?

Pdf 如何使用pandoc获取本地化引号?,pdf,localization,latex,locale,pandoc,Pdf,Localization,Latex,Locale,Pandoc,我想得到这样的引号“但是当我用Pandoc处理我的标记文本时,它会给我“…”。这可能归结为一个问题:如何让Pandoc使用区域设置?这是我的命令行: pandoc -o out.pdf -f markdown -t latex in.md 潘多克目前(2015年11月)。但你有两个选择: 您可以使用--no tex ligations选项关闭默认情况下为LaTeX输出打开的选项。然后使用所需的适当的unicode字符(例如,“…”),并使用支持unicode的--latex引擎(lualat

我想得到这样的引号“但是当我用Pandoc处理我的标记文本时,它会给我“…”。这可能归结为一个问题:如何让Pandoc使用区域设置?这是我的命令行:

pandoc -o out.pdf  -f markdown -t latex in.md
潘多克目前(2015年11月)。但你有两个选择:

  • 您可以使用
    --no tex ligations
    选项关闭默认情况下为LaTeX输出打开的选项。然后使用所需的适当的unicode字符(例如,
    “…”
    ),并使用支持unicode的
    --latex引擎(
    lualatex
    xelatex

  • 您可以在应用程序中使用
    \usepackage[danish=quotes]{csquotes}
    或类似工具。从:

    如果指定了
    --smart
    选项,pandoc将生成正确的打印输出,将直引号转换为曲引号,
    --
    转换为em破折号,
    --
    转换为en破折号,
    ..
    转换为省略号。在某些缩写词后插入不间断空格,如“Mr.”

    注意:如果您的LaTeX模板调用该包,pandoc将自动检测该包,并对引用的文本使用
    \enquote{…}

  • 尽管我已经给出了答案,但我想补充一点,现在可以简单地将您需要的内容包含在(例如)您的模板中,因此不再需要创建您自己的模板。例如:

    ---
    title: foo
    author: bar
    # other stuff
    header-includes:
        - \usepackage[german=quotes]{csquotes}
    ---
    
    # contents
    

    您可能希望为整个文档指定语言,以便它不仅影响引号,还影响连字、不可拆分空格和其他语言环境细节

    为此,您可以指定
    lang
    选项。发件人:

    lang:使用符合BCP 47的代码(例如en或en GB)标识文档的主要语言。对于某些输出格式, pandoc将其转换为存储在 附加变量babel lang、polyglossia lang(乳胶)和 上下文语言(context)

    此外,该手册规定:

    如果您的LaTeX模板或任何包含的头文件调用csquotes包,pandoc将自动检测到此情况,并对引用的文本使用\enquote{…}

    我认为,确保报价本地化的最佳方法是添加:

    ---
    lang: fr-FR
    header-includes:
    - \usepackage{csquotes}
    ---
    
    或者更好,编辑pandoc默认模板

    pandoc -D latex > ~/.pandoc/templates/default.latex
    

    并将
    \usepackage{csquotes}
    永久添加到它。

    根据,您还需要将
    csquotes:true
    添加到frontmatter。@rremann您需要将变量“设置为真值”,一旦字符串“csquotes”出现在latex模板中,iirc就会发生这种情况