返回键在迷你缓冲区内的viper模式下不起作用

时间:2012-06-04 12:33:41

标签: macos emacs viper-mode viper emacs24

我的MacBook有两个输入键。

  1. 一个是回归
  2. 其他是右侧命令键旁边的输入键。
  3. 我最近开始使用Emacs24。我注意到,每当我处于毒蛇模式并发出任何命令时,例如

    M-x toggle-viper-mode
    

    返回键不起作用。相反,我得到一个错误。

    Wrong type argument: characterp, return
    

    我必须使用 fn + return Ctrl + m 输入

    如果我禁用viper-mode return 工作没有任何错误。

    我尝试使用Gnu Emacs mailing list archive的解决方案,但它没有用。

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

    如何修复它以便返回键也可以在viper-mode中使用命令?

    更新

    未加载viper模式时返回键的C-h k结果。

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

    未加载viper模式时输入键的C-h k结果。

    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>
    

    加载viper模式时返回键的C-h k结果。

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

    加载viper模式时输入键的C-h k结果。

    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>.
    

    问题是加载viper-mode时返回键在迷你缓冲区中不起作用,尽管映射类似于你上面所见。

1 个答案:

答案 0 :(得分:1)

因此,autopair-newline似乎在viper模式下无法正常工作。该函数的源代码表示对“RET”键盘绑定有一些特殊处理。