I want to bind key when in ido-switch-buffer
to open ibuffer
instead, but I do not understand how to make that with elisp. Here's my config:
(defun my-open-ibuffer ()
"Open ibuffer from ido-switch-buffer"
(interactive)
(minibuffer-keyboard-quit)
(ibuffer-other-window))
(defun bind-ido-keys ()
"Keybindings for ido mode."
(define-key ido-completion-map (kbd "C-H-S-c") 'my-open-ibuffer))
(add-hook 'ido-setup-hook #'bind-ido-keys)
It looks like when I call (minibuffer-keyboard-quit)
to close ido-minibuffer
function stops evaluating and not running next (ibuffer-other-window)
that should open ibuffer
. If I comment out (minibuffer-keyboard-quit)
it works as supposed - open new ibuffer window with not closed minibuffer. But I want minibuffer to be closed, and config described above only closes minibuffer and not triggering ibuffer opening.