使用自定义函数向 LaTeX-math-list 添加新值时出错

使用自定义函数向 LaTeX-math-list 添加新值时出错

我使用启用了数学模式的 Auctex。我最喜欢的功能之一是\mathcal使用键序列“[backtick] c”插入。我决定尝试自定义变量,LaTeX-math-list以便可以对 执行类似操作\mathbb。借用函数的代码LaTeX-math-cal,我将以下代码添加到我的 .emacs 文件中:

(defun my-LaTeX-math-mathbb (char dollar)
  "Insert {\Bbb CHAR} or \mathbb{CHAR} if latex2e is in TeX-style-list.  If DOLLAR is non-nil, put $'s around it."
  (interactive "*c\nP")
  (if dollar (insert "$"))
  (if (member "latex2e" (TeX-style-list))
      (insert "\\mathbb{" (char-to-string char) "}")
    (insert "{\\Bbb " (char-to-string char) "}"))
  (if dollar (insert "$")))

(setq LaTeX-math-list ())
(add-to-list 'LaTeX-math-list '("=" 'my-LaTeX-math-mathbb "" nil))

但是,当我尝试输入序列“[backtick] =”时,我收到以下错误消息:

Wrong type argument: commandp, (quote my-LaTeX-math-mathbb)

(commandp 'my-LaTeX-math-mathbb)当我手动评估临时缓冲区中的表达式时,表达式返回 true,所以我很困惑为什么我会收到错误消息。

PS 我=在测试期间仅将绑定用作临时措施,因为此符号在数学模式中没有先前的定义。

相关内容