Emacs如何实现关键字自动完成?
发表于 : 2010-03-29 10:10
我只是想要实现关键字自动补全,但并不需要semantic的语法分析,所以没有装semantic插件。
但是用的hippie-expand只能补全buffer中出现过的内容。
我想把不同语言(C、FORTRAN之类)的关键字分别放到不同的文件里,
然后让Emacs根据语言类型,分别从这些文件里读取信息,补全关键字(即使这个关键字没在buffer里出现过)。
这个功能怎么才能实现?
我在auto-complete里看到这样的内容:
可能auto-complete可以实现这个功能,不过我对lisp不太懂,不知道怎么使用。
但是用的hippie-expand只能补全buffer中出现过的内容。
我想把不同语言(C、FORTRAN之类)的关键字分别放到不同的文件里,
然后让Emacs根据语言类型,分别从这些文件里读取信息,补全关键字(即使这个关键字没在buffer里出现过)。
这个功能怎么才能实现?
我在auto-complete里看到这样的内容:
代码: 全选
(defmacro ac-define-dictionary-source (name list)
"Define dictionary source named `NAME'.
`LIST' is a list of string.
This is useful if you just want to define a dictionary/keywords source."
`(defvar ,name
'((candidates . (lambda () (all-completions ac-prefix ,list))))))