[英]Launch magit directly from ido in Emacs
我想推出magit直接從IDO 。 即,我想用ido-find-file
啟動ido,導航到我要運行magit的目錄,按一些組合鍵,例如Cx g ,並退出ido並在該目錄中打開magit。
我目前只是按Cd打開目錄中的dired,然后按Cx g打開magit,但我想避免使用多余的Cd 。
我設法向ido-completion-map
添加新的鍵組合:
(add-hook 'ido-minibuffer-setup-hook
(lambda () (interactive)
(define-key ido-completion-map (kbd "C-x g") 'arvid-ido-enter-magit-status)
))
但是以下函數似乎不起作用,只是打開了Dired而不是magit:
(defun arvid-ido-enter-magit-status ()
"Drop into `dired' from file switching."
(interactive)
(setq ido-exit 'dired)
(magit-status default-directory)
(exit-minibuffer))
Magit已經帶有這樣的功能:
(defun ido-enter-magit-status ()
"Drop into `magit-status' from file switching.
To make this command available use something like:
(add-hook 'ido-setup-hook
(lambda ()
(define-key ido-completion-map
(kbd \"C-x g\") 'ido-enter-magit-status)))
Starting with Emacs 25.1 the Ido keymaps are defined just once
instead of every time Ido is invoked, so now you can modify it
like pretty much every other keymap:
(define-key ido-common-completion-map
(kbd \"C-x g\") 'ido-enter-magit-status)"
(interactive)
(with-no-warnings ; FIXME these are internal variables
(setq ido-exit 'fallback fallback 'magit-status))
(exit-minibuffer))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.