Function emacs:无法使abbrev插入函数工作

Function emacs:无法使abbrev插入函数工作,function,emacs,elisp,Function,Emacs,Elisp,我很难使用abbrev insert内置函数。 我已经阅读了函数的定义,并尝试了几种方法,但我总是有一个错误 以下是我尝试使用其输出的命令: (define-abbrev global-abbrev-table "a1" "so long output") (abbrev-insert "a1") OUTPUT: abbrev-insert: Wrong type argument: symbolp, "a1" (abbrev-insert 'a1) OUTPUT: eval: Wrong ty

我很难使用abbrev insert内置函数。 我已经阅读了函数的定义,并尝试了几种方法,但我总是有一个错误

以下是我尝试使用其输出的命令:
(define-abbrev global-abbrev-table "a1" "so long output")
(abbrev-insert "a1")
OUTPUT: abbrev-insert: Wrong type argument: symbolp, "a1"
(abbrev-insert 'a1)
OUTPUT: eval: Wrong type argument: number-or-marker-p, nil
(abbrev-insert 'a1 nil 1 3)
OUTPUT: eval: Wrong type argument: number-or-marker-p, nil
(abbrev-insert 'a1 "so long output" 1 3)
OUTPUT: eval: Wrong type argument: number-or-marker-p, nil

我不知道怎么了。如果有人可以帮助我,请:

谢谢

您需要传递给abbrev插入实际的abbrev:

(abbrev-insert (abbrev-symbol "a1" global-abbrev-table))

任何随机符号都不行:它必须是存储在您感兴趣的abbrev表中的特定符号,因此需要abbrev符号。

我在表中定义了a1,请参见第一行代码。这不是一个随机的符号。但我不明白为什么您的解决方案有效,因为abbrev symbol a1的类型返回类似于'a1类型的符号。那么为什么我的解决方案不起作用呢?神秘的事物无论如何,非常感谢Stefan,你的回复解决了我的麻烦当然a1也是一个符号。但这是另一个象征。Elisp上的符号是一个对象,非常类似于记录/结构/元组,主要有4个字段,可以通过4个访问器符号值、符号函数、符号plist和符号名称访问这些字段。