当使用ergo emacs时,出于某种原因,M-l和M-j(分别为forward-char和backward-char)无法在迷你缓冲区中正常工作(使用ido模式)。
我尝试使用以下内容设置ido-completion-map:
(add-hook 'ido-setup-hook
(lambda ()
(define-key ido-completion-map (kbd "M-k") 'ido-next-match)
(define-key ido-completion-map (kbd "M-i") 'ido-prev-match)
(define-key ido-completion-map (kbd "M-l") 'ido-next-match)
(define-key ido-completion-map (kbd "M-j") 'ido-prev-match)))
但这些似乎并不坚持。
我似乎对这个人有类似的问题:ido-mode binding masked by global-set-key但是没有一个解决方案似乎对我有用
非常感谢任何帮助
亲切的问候 Nimai
答案 0 :(得分:0)
虽然ido.el
开头的说明建议使用:
;; Customization
;; -------------
;;
;; Customize the Ido group to change the Ido functionality.
;;
;; To modify the keybindings, use the ido-setup-hook. For example:
;;(add-hook 'ido-setup-hook 'ido-my-keys)
;;
;;(defun ido-my-keys ()
;; "Add my keybindings for ido."
;; (define-key ido-completion-map " " 'ido-next-match)
;; )
我最近发现使用框架切换功能时使用ido-common-completion-map
会有更好的运气 - 原始海报可以替代他/她自己喜欢的键盘快捷键而不是m-tab
和/或{{ 1}}:
m-S-tab
答案 1 :(得分:0)
我遇到了保存问题,我正在使用带有ergoemacs-mode-5.14.7.3的Emacs 24.4(我没有使用最新版本的ergoemacs,因为它有速度问题。请参阅:github issue) 。经过大量搜索后,我终于找到了这个github commit,并通过在我的emacs init文件中添加以下代码来实现它:
启用ergoemacs-mode后:
(when ido-mode
(global-set-key [remap ido-magic-forward-char] 'ido-next-match)
(global-set-key [remap ido-magic-backward-char] 'ido-prev-match))
希望它有所帮助,谢谢!