Często naciskam niewłaściwą kombinację klawiszy i otwieram niejasny tryb minibufora. Muszę nacisnąć ESC trzy razy (chyba), co jest dość denerwujące. Jak zmusić emacsa do opuszczenia minibufora za pomocą jednego naciśnięcia ESC?
(global-set-key (kbd "<escape>") 'top-level) (define-key minibuffer-local-map "<escape>" 'top-level) (define-key minibuffer-local-ns-map "<escape>" 'top-level) (define-key minibuffer-local-completion-map "<escape>" 'top-level) (define-key minibuffer-local-must-match-map "<escape>" 'top-level) (define-key minibuffer-local-isearch-map "<escape>" 'top-level)
Moim zaleceniem jest jednak użycie funkcji napisanej przez Stefana (powyżej).
C-g
powinien być domyślnyabort-recursive-edit
który wyjdzie z minibufora, chyba że masz innyrecursive-edit
aktywny. Możesz także napisać własną funkcję za pomocątop-level
który przerywa wszystkie poziomyrecursive-edit
i wychodzi z minibufora. Podoba mi się niestandardowa funkcja napisana przez Stefana, która pozwala mi kontrolować klawisz escape, aby używać go zarówno jako klawisza modyfikującego, jak i klucza, który działa tylko z jednym naciśnięciem: stackoverflow.com/questions/20026083/…