|
|

楼主 |
发表于 2005-11-2 16:04:03
|
显示全部楼层
本想写个完美一些的函数,可我没时间阅读 Semantic 的源代码。所以现在只有用下面这个凑合了,虽然在许多情况下会产生一些无用的提示,但速度确实是可以增加的。像下面这样修改 ~/.emacs:
- (defun my-c-mode-complete (character)
- (insert character)
- (condition-case nil
- (progn (semantic-complete-analyze-inline)
- (when (semantic-completion-inline-active-p)
- (semantic-complete-inline-force-display)))
- (error nil)))
- (defun my-c-mode-common-hook ()
- (local-set-key (kbd ".") '(lambda () (interactive) (my-c-mode-complete ?.)))
- (local-set-key (kbd ">") '(lambda () (interactive) (my-c-mode-complete ?>))))
- (add-hook 'c-mode-common-hook
- '(lambda ()
- (my-c-mode-common-hook)))
复制代码
这样,只要按下 . 或者 > 就会立即得到提示。但它只对与 C 相像的语言有效,并且由于我只会 C,没有加入 :: 这样的运算符的内容(因为我不知道它们是否应该补全)。 |
|