2015-11-26 1 views
1

Я хотел бы получить кавычки, подобные этим «...», но когда я обрабатываю свой уцененный текст с Pandoc, он дает мне «...». Вероятно, это связано с вопросом, как сделать Pandoc использовать настройки локали? Вот моя командная строка:Как я могу получить локализованные кавычки с pandoc?

pandoc -o out.pdf -f markdown -t latex in.md 

ответ

2

Вы можете указать язык для всего документа, так что она затрагивает не только цитаты, но и лигатур, неразрывные пробелы и другие региональные особенности.

Для этого вы можете указать опцию lang. От pandoc's manual:

языки: определяет основной язык документа, используя код в соответствии с BCP 47 (например, ванной или ен-RU). Для некоторых форматов вывода pandoc преобразует их в соответствующий формат, хранящийся в дополнительных переменных babel-lang, polyglossia-lang (LaTeX) и context-lang (ConTeXt).

Кроме того, одни и те же руководство заявляет, что:

, если ваш шаблон LaTeX или любой включенный вызов заголовочный файл для пакета csquotes, pandoc обнаружит это автоматически и использовать \ enquote {...} для цитируемый текст.

На мой взгляд, лучший способ обеспечить локализацию котировок, таким образом, чтобы добавить:

--- 
lang: fr-FR 
header-includes: 
- \usepackage{csquotes} 
--- 

Или еще лучше, чтобы изменить шаблон по pandoc по умолчанию

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

и постоянно добавлять \usepackage{csquotes} к нему.

1

Pandoc в настоящее время (ноябрь 2015 г.) only generates English type quotes. Но у вас есть два варианта:

  1. Вы можете использовать опцию --no-tex-ligatures выключить --smart typography вариант, который включен по умолчанию для вывода LaTeX. Затем используйте соответствующие символы Юникода (например,) и используйте --latex-engine, который поддерживает unicode (lualatex или xelatex).

  2. Вы можете использовать \usepackage[danish=quotes]{csquotes} или подобные им в вашем Pandoc LaTeX template. Из README:

    Если указана опция --smart, pandoc будет производить типографским правильный вывод, преобразуя прямые кавычки в фигурные кавычки, --- к эм-черточки, -- к ан-черточки и ... для эллипсов. Неразрушающие пробелы вставляются после определенных сокращений, таких как «г-н»

    Примечание: если ваш шаблон LaTeX вызывает пакет csquotes, pandoc обнаружит это автоматически и использует \enquote{...} для цитируемого текста.

1

Даже если @mb21 уже дала ответ, я хотел бы добавить, что в настоящее время можно просто включить то, что вам нужно в (например) Ваш yaml metadata block, так что не нужно больше создавать свои собственный шаблон. Пример:

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

# contents 

 Смежные вопросы

  • Нет связанных вопросов^_^