我正在使用包\enquote
的命令csquotes
来处理(多语言)报价。
\enquote
使用 Emacs+AUCTeX,我使用以下三行(在 .emacs 中)通过按两次来调用命令"。
'(LaTeX-csquotes-close-quote "}")
'(LaTeX-csquotes-open-quote "\\enquote{")
'(LaTeX-csquotes-quote-after-quote t)
确实,LaTeX-csquotes-quote-after-quote 选项创建了这个快捷方式。(有关它的更多信息,请访问AUCTex 文档)。
用户选项:TeX-quote-after-quote
确定“的行为。如果它不为零,则输入“将插入文字双引号。输入“后将插入 TeX-open-quote 和 TeX-close-quote 的相应值再次。
[...]
如果您使用“csquotes”包,则应自定义 LaTeX-csquotes-open-quote、LaTeX-csquotes-close-quote 和 LaTeX-csquotes-quote-after-quote。仅当两个变量(LaTeX-csquotes-open-quote 和 LaTeX-csquotes-close-quote)均为非空字符串时,才会使用引号字符。但此时“csquotes”相关值将优先于特定于语言的值。
因此,如果我按一次,"我将获得"
,如果我按两次,我将获得\enquote{
。我可以通过再次按两次来关闭报价,"从而产生}
。
但是,我\enquote
经常使用 ,而从不"
。因此,我想cquostes.el
通过反转此顺序来更改 的默认行为。
我的目标是\enquote{
在}
按下时只有一次 "。我也可以"
打电话两次 "。
我怎样才能实现这个目标?
答案1
答案很愚蠢。
我不应该激活 LaTeX-csquotes-quote-after-quote 选项...我错了(在我的问题中):LaTeX-csquotes-quote-after-quote 选项才不是创建快捷方式,但引入了“按两次”的事情。
删除此行(或将其设置为 false 或 nil)可修复此问题:
'(LaTeX-csquotes-quote-after-quote t)