Emacs 如何在ido查找文件中重新映射密钥?

Emacs 如何在ido查找文件中重新映射密钥?,emacs,key-bindings,ido-mode,Emacs,Key Bindings,Ido Mode,我一直在尝试对ido模式进行一些更改,使其更有用。我一直在尝试做的一件事是重新映射我在中使用的一些键,以便查找文件。主要的一点是,我想使用C-d调用ido enter dired函数,而不必按C-f+C-d,这也可以做同样的事情 这是迄今为止我的ido设置: (defun ali/ido () "My configuration for ido-mode" (require 'ido) (setq ido-create-new-buffer 'always)

我一直在尝试对ido模式进行一些更改,使其更有用。我一直在尝试做的一件事是重新映射我在
中使用的一些键,以便查找文件
。主要的一点是,我想使用C-d调用
ido enter dired
函数,而不必按C-f+C-d,这也可以做同样的事情

这是迄今为止我的ido设置:

(defun ali/ido ()
  "My configuration for ido-mode"
  (require 'ido)
  (setq ido-create-new-buffer 'always)

  ;; Making sure that ido works in M-x
  (global-set-key
      "\M-x"
      (lambda ()
      (interactive)
      (call-interactively
          (intern
          (ido-completing-read
          "M-x "
          (all-completions "" obarray 'commandp))))))

  ;; Ido keybindings
  (defun ido-keybindings ()
    (define-key ido-completion-map (kbd "C-d") 'ido-enter-dired))


  (add-hook 'ido-setup-hook 'ido-keybindings)

  (ido-everywhere t)
  (ido-mode 1))
然而,每当我试图在
中使用C-d来查找文件时,总是会出现以下错误:

Debugger entered--Lisp error: (error "Command attempted to use minibuffer while in minibuffer")

在minibuffer处于活动状态时调用时,您的命令使用递归minibuffer来读取输入,使用
ido完成读取

请改用此命令:

(lambda()
(互动)

(让((启用递归微型缓冲区t));谢谢,这适用于M-x,我将看看它是否允许我将其与
ido查找文件的键绑定一起使用