Emacs 如何在ido插入文件上立即打开ido完成缓冲区

Emacs 如何在ido插入文件上立即打开ido完成缓冲区,emacs,elisp,Emacs,Elisp,我有一个目录~/emacs/templates/matlab和模板文件。当按下键盘快捷键时,我想在当前缓冲区的某个点插入给定的模板。这可以通过使用ido插入文件来实现,请参见: 但是,在显示ido完成缓冲区之前,我必须按TAB键两次。 首先,运行我的测试ido insert文件,我得到以下结果: 然后按TAB键两次,我最终得到: 如何立即打开完成缓冲区,避免按TAB键两次?您使用的是哪个ubuntuVERSION?我在Ubuntu12.04Hi@HåkonHægland上使用Emacs 24.

我有一个目录~/emacs/templates/matlab和模板文件。当按下键盘快捷键时,我想在当前缓冲区的某个点插入给定的模板。这可以通过使用ido插入文件来实现,请参见:

但是,在显示ido完成缓冲区之前,我必须按TAB键两次。 首先,运行我的测试ido insert文件,我得到以下结果:

然后按TAB键两次,我最终得到:


如何立即打开完成缓冲区,避免按TAB键两次?

您使用的是哪个ubuntuVERSION?我在Ubuntu12.04Hi@HåkonHægland上使用Emacs 24.3,您确定使用ido是因为这不是ido的默认行为吗?您已经通过在init文件的某个地方执行ido模式1启用了ido吗?@IqbalAnsari谢谢!我没有ido模式1。现在效果更好了。但是在我到达完成缓冲区之前,我仍然需要按一次键。实际上,ido是在没有完成缓冲区的情况下使用的,候选项会在键入时被过滤。
(defun test-ido-insert-file ()
  (interactive)
  (save-excursion
    (let ((default-directory "~/emacs/templates/matlab" ))
      (ido-insert-file))))