2012-06-04 6 views
0

У моего MacBook есть два ключа ввода.Ключ возврата не работает в минигарнитуре в режиме viper

  1. Один вернуться
  2. Другое, это ввести ключ расположенный рядом командной клавиши на правой стороне.

Я недавно начал использовать Emacs24. Я заметил, всякий раз, когда я нахожусь в режиме viper, и я выдаю любую команду, например

M-x toggle-viper-mode 

Ключ возврата не работает. Вместо этого я получаю сообщение об ошибке.

Wrong type argument: characterp, return 

Я должен использовать п + возвращение или Ctrl + м или введите.

Если я отключу viper-mode возвращение работает без ошибок.

Я пробовал использовать решение от Gnu Emacs mailing list archive, но это не сработало.

(define-key function-key-map [return] [?\C-m]) 

Как его исправить, чтобы возвратная клавиша работала с командами в режиме viper?

Обновление

В результате С-Н к для возврата ключа при гадюки-режим не загружен.

<return> runs the command autopair-newline, which is an interactive Lisp function in `autopair.el'. 
It is bound to RET, <return>. 

Результат C-h k для ввода ключа, когда режим viper не загружен.

RET (translated from <kp-enter>) runs the command autopair-newline, which is an interactive Lisp function in `autopair.el'. 
It is bound to RET, <return> 

Результат C-h k для ключа возврата при загрузке режима viper.

<return> runs the command autopair-newline, which is an interactive Lisp function in `autopair.el'. 
It is bound to RET, <return>. 

Результат C-h k для ввода ключа при загрузке режима viper.

RET (translated from <kp-enter>) runs the command autopair-newline, which is an interactive Lisp function in `autopair.el'. 
It is bound to RET, <return>. 

Проблема в том, возврат ключ не работает в минибуфере, когда гадюки режим загрузки, хотя отображения похожи, как вы можете видеть выше.

+1

Используйте 'C-h k', затем' return', чтобы узнать, что Emacs считает ключом и что он должен делать. Сравните результаты с включенным «viper-mode» и без него, и, возможно, вставьте ваши результаты здесь. – sanityinc

+0

@sanityinc Я использовал C-h k и добавил результат к моему вопросу. Я не нашел ничего полезного. Карта ключей возврата не изменяется в режиме viper. –

+1

Итак, логично 'autopair-newline' работает некорректно в' viper-mode', правильно? Источник для этой функции указывает, что имеет специальную обработку привязки клавиатуры «RET». – sanityinc

ответ

1

Похоже, что autopair-newline не работает корректно в viper-режиме. Источник для этой функции указывает, что имеет специальную обработку привязки клавиатуры «RET».