Emacs Elisp (другое окно 0)
Я пытаюсь написать функцию гидры для переключения окон. По сути, я хочу, чтобы Cx o перенес меня в другое окно, и тогда "o" будет циклически проходить через все окна. Поэтому я положил в.emacs
(global-set-key
(kbd "C-x o")
(defhydra hydra-other-window (:pre (other-window 1))
"hydra other window"
("o" (other-window 1) "Next window")))
Это не работает. C-x o
переводит меня в другое окно, но нажатие "o" ничего не делает. Однако, если я изменю 1 в последней строке на 0, он будет работать как положено. Это довольно удивительно, потому что согласно документации, (другое окно 0) будет просто выбирать в текущем окне. Есть ли хорошее объяснение этому? Любая помощь будет оценена.
1 ответ
Решение
Вы можете использовать более простой код:
(defhydra hydra-other-window (global-map "C-x")
"hydra other window"
("o" (other-window 1) "Next window"))