【发布时间】:2013-06-11 18:26:54
【问题描述】:
在 Emacs 23 和 24 中,以下工作正常:
(defun foo (&optional arg)
(interactive "^p")
(message "arg is %i" arg))
在 Emacs 22 中,我收到以下错误:
Invalid control letter `^' (136) in interactive calling string
我试过了:
(defun foo (&optional arg)
(interactive (concat (if (> emacs-major-version 22) "^" "") "p"))
(message "arg is %i" arg))
但我明白了:
Wrong type argument: listp, "^p"
在 Emacs 23 或 24 中使用 ^ 而不是在 Emacs 22 中的最佳方式是什么?
【问题讨论】:
标签: emacs elisp compatibility backwards-compatibility