Emacs自动完成
问题描述:
因为我不能让CEDET
工作自动代码完成(也就是MS世界中的智能感),尝试多次后(不,它不工作!),我已经决定使用auto-complete
,这对我来说工作“相当好”。Emacs自动完成
不幸的是,auto-complete
在退出imenu
时出现了一个恼人的行为。
-
auto-complete
开始imenu
,不管它有多少建议。所以,如果只有一个建议,菜单就会出现。 1. - 要退出
imenu
,我必须使用LEFT
或RIGHT
键才能使菜单消失。ESC-ESC-ESC
没有任何影响。
有什么办法可以修改这两种行为吗?
这是我的.emacs
文件显示auto-complete
相关的东西的摘录:可以通过添加以下到您的.emacs设定
(require 'auto-complete-config) (add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict") (ac-config-default) (setq ac-delay 0.5) ;; eclipse uses 500ms
亲切的问候, mefiX
答
“停止自动填充”:
可以使用Cg作为默认的Emacs StopSomething命令:)至于只显示一个候选人在菜单中的完成情况,我不确定你想要其他的行为吗?
我认为当只有一个候选人时,理想的行为就是插入候选人。有些自动完成引擎即使在选择候选人时也会这样做;他们将通过连续的热键激活循环所有可用的候选人。 – Cheeso 2010-11-07 14:55:29
谢谢大卫米勒。不幸的是,关键任务不适用于我的情况,我不知道为什么。例如,我正在编辑我的.emacs文件,其中ac工作得很好。所以我输入“(def”和imenu弹出(1+)建议(包括“(defun”)。当我点击“ESC”时,没有任何反应。当然,我已经评估过“define-key”。我做错了什么? – mefiX 2010-11-08 09:55:20
好的,经过一番尝试之后,我发现按下并按住escape就是“\ ESC /”所代表的,这不是我想要的。经过一番调查,我发现'(define-关键交流完成地图“\ e”'ac-stop)'诀窍! – mefiX 2010-11-08 10:27:34