branch: externals/ergoemacs-mode commit dc2e1a6455a6d9929a23a514c3ac6dca4f433c23 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com>
Bind ergoemacs-M-O for more generic fix --- ergoemacs-themes.el | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 66e042e..baf95af 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -1213,14 +1213,15 @@ In a terminal, this can be either arrow keys (e.g. meta+O A == <up>) or regular (execute-kbd-macro (kbd "<end>"))) (t (beep)))) - (call-interactively ergoemacs-M-O-binding))) + (call-interactively (key-binding [ergoemacs-meta-O])))) -(defvar ergoemacs-M-O-binding () nil) (defun ergoemacs-fix-arrow-keys (keymap) "Fix arrow keys for KEYMAP." - (setq ergoemacs-M-O-binding (lookup-key keymap (kbd "M-O"))) - (if ergoemacs-M-O-binding - (define-key keymap (kbd "M-O") 'ergoemacs-handle-M-O))) + (let (ergoemacs-M-O-binding) + (when ergoemacs-M-O-binding + (setq ergoemacs-M-O-binding (lookup-key keymap (kbd "M-O"))) + (define-key keymap (kbd "M-O") 'ergoemacs-handle-M-O) + (define-key keymap [ergoemacs-meta-O] ergoemacs-M-O-binding)))) (defvar ergoemacs-override-keymap)