当使用csquotes时,csquotes会根据上下文添加引号。这是通过使用\enquote
宏标记引号来完成的,即\enquote{text}
。
从组织模式导出到LaTeX时,引号标记为``
和''
,例如为``text''
。
Org-mode是否可以使用\enquote
?
我发现http://comments.gmane.org/gmane.emacs.orgmode/43689这样的功能正在计划中,但我不明白它是否已实施。
相关说明有integration of csquotes in AUCTeX。集成是当文档加载csquotes时," 分别扩展为\enquote{
和}
。这不是我要求的,但可能有一些代码可能有兴趣设置组织模式以导出由\enquote
标记的引用。
答案 0 :(得分:4)
在该线程结束之后,然后查看7.7的更新日志(请参阅Headline for version 7.7)版本,我发现他们添加了变量org-latex-export-quotes
。我不完全确定如何定制,但我怀疑它必须如下结束:
原创(包括因为它只出现在7.7,我相信你正在运行7.6):
(defcustom org-export-latex-quotes
'(("fr" ("\\(\\s-\\|[[(]\\)\"" . "«~") ("\\(\\S-\\)\"" . "~»") ("\\(\\s-\\|(\\)'" . "'"))
("en" ("\\(\\s-\\|[[(]\\)\"" . "``") ("\\(\\S-\\)\"" . "''") ("\\(\\s-\\|(\\)'" . "`")))
"Alist for quotes to use when converting english double-quotes.
The CAR of each item in this alist is the language code.
The CDR of each item in this alist is a list of three CONS:
- the first CONS defines the opening quote;
- the second CONS defines the closing quote;
- the last CONS defines single quotes.
For each item in a CONS, the first string is a regexp
for allowed characters before/after the quote, the second
string defines the replacement string for this quote."
要:
(setq org-export-latex-quotes
'(("en" ("\\(\\s-\\|[[(]\\)\"" . "\\enquote{") ("\\(\\S-\\)\"" . "}") ("\\(\\s-\\|(\\)'" . "`"))))
我刚测试了这个,它确实按预期运行。示例文件:
* test
this is a test of "this"
导出为(前言省略):
\section{test}
\label{sec-1}
this is a test of \enquote{this}
我不知道是否可以在7.6中轻松添加此功能,更容易的解决方案可能是升级。否则,7.6中更简单的解决方案可能是创建自定义链接(请参阅:Org Tutorials)。这不会那么快,但可以在7.6提供的功能中提供所需的结果。
答案 1 :(得分:4)
@ N,N-。和其他人一样,org 8.0中的新组织模式导出功能有一个名为org-export-smart-quotes-alist
的列表。您可以将以下内容添加到init.el中,它会将常规"
双引号转换为enquote{}
,将'
单引号转换为enquote*{}
。
(add-to-list 'org-export-smart-quotes-alist
'("am"
(primary-opening :utf-8 "“" :html "“" :latex "\\enquote{" :texinfo "``")
(primary-closing :utf-8 "”" :html "”" :latex "}" :texinfo "''")
(secondary-opening :utf-8 "‘" :html "‘" :latex "\\enquote*{" :texinfo "`")
(secondary-closing :utf-8 "’" :html "’" :latex "}" :texinfo "'")
(apostrophe :utf-8 "’" :html "’")))
警告:如果您希望使用org文件的语言,请确保将org-export-default-language
设置为"am"
(或者您选择在上述表单中使用的任何内容),或者将相应的#+LANGUAGE: am
行放在组织文件的顶部。如果不这样做,组织导出器将不会调用上述内容。