Когда я загружаю файл python-mode.el в emacs, я не получаю ни одной из указанных привязок клавиш. Я начал играть с файлом и заметил, что при изменении:
(define-key map [(control c)(\#)] 'py-comment-region)
to:
(define-key global-map [(control c)(\#)] 'py-comment-region)
это работает нормально.
Я пошел посмотреть, где определить переменную карты, и увидел:
(defvar py-shell-map nil
"Keymap used in *Python* shell buffers.")
;; used by py-completion-at-point, the way of python.el
(defvar python-shell-map
(let ((map (copy-keymap comint-mode-map)))
(define-key map [tab] 'py-shell-complete)
(define-key map "\C-c-" 'py-up-exception)
(define-key map "\C-c=" 'py-down-exception)
map)
"Keymap used in *Python* shell buffers.")
Правильно ли определена переменная 'map'? Должен ли я внести некоторые изменения в мой файл инициализации? Я предполагаю, что этот файл работает для всех остальных, так почему мне нужно изменить переменную «карта» на «глобальную карту», чтобы она работала на моем компьютере?
Я запускаю виртуальную машину, если это поможет.