如何简化在 AUCTeX 中插入 LaTeX 数学模式符号?

如何简化在 AUCTeX 中插入 LaTeX 数学模式符号?

在 AUCTeX 中,您可以启用名为 的次要模式,LaTeX-math-mode该模式指示前缀字符`插入各种常见宏。例如,当您处于数学环境中时` t插入(其中是点所在的位置)。\tau@@

当您已经处于数学环境中时,这非常棒。但是,我经常在运行的文本中引用这些符号,并且只是在文本模式下执行相同的` t插入操作。\tau{}@

我如何指示 AUCTeX 在文本模式下进入数学模式如下:` t产生$\tau$@

答案1

当然,AUCTeX 已经能够开箱即用地做到这一点!根据LaTeX-math-mode( C-h f LaTeX-math-mode RET) 的描述:

轻松插入 LaTeX 数学符号。如果给出前缀参数,符号将被美元符号包围。

因此,C-u ` t插入

$\tau$

如果您想在文本模式下自动用美元符号括住符号而不使用前缀参数,请将其添加到您的.emacs

(add-hook
 'LaTeX-mode-hook
 (lambda ()
   (let ((math (reverse (append LaTeX-math-list LaTeX-math-default))))
     (while math
       (let ((entry (car math))
         value)
     (setq math (cdr math))
     (if (listp (cdr entry))
         (setq value (nth 1 entry))
       (setq value (cdr entry)))
     (if (stringp value)
         (fset (intern (concat "LaTeX-math-" value))
           (list 'lambda (list 'arg) (list 'interactive "*P")
             (list 'LaTeX-math-insert value
                   '(null (texmathp)))))))))))

这将重新定义在LaTeX-math-*内定义的所有函数。LaTeX-math-initializelatex.el

相关内容