emacs - 在 Emacs 23.1.1 中绑定(bind) M-<up>/M-<down>

标签 emacs gnu-screen key-bindings emacs23

我正在尝试添加一个我在 Eclipse 中错过的功能,其中 Alt+[Up/Down] 可以向上或向下转换线条,但我一生都无法弄清楚如何正确分配给这些键。我在 -nw 中使用它模式(所以只是在 shell 窗口中),通常在屏幕 session 中运行。

使用全局键绑定(bind),我可以让它与字母组合一起使用,例如 (kbd "M-m") ,但是我为箭头键尝试的每个组合都只会给我一个没有意义的消息,我总是得到:

"ESC <up> is undefined"

我试过的:
(global-set-key (kbd "M-<up>") 'transpose-line-up)    
(global-set-key (kbd "<escape>-<up>") 'transpose-line-up)
(global-set-key [M-up] 'transpose-line-up)
(global-set-key [\e \M-O A] 'transpose-line-up)

而 C-h c 只是返回:
ESC <up> (translated from ESC M-O A) is undefined

这些都不起作用,无论是使用 ESC 还是 Alt。

知道我怎样才能完成这项工作吗?我更喜欢将这些设置为 Alt+[Up/Down] 只是因为这是我习惯的。

编辑

从评论:
  • C-q 向上打印 ^[OA .
  • C-q M-Up 打印 ^[并将光标向上移动一行。
  • C-h k (Alt+Up) 打印 ESC <up> (translated from ESC M-O A) is undefined .

  • 感谢您的建议,但结果都一样。

    最佳答案

    (global-set-key [M-up] 'beginning-of-buffer)
    (global-set-key [M-down] 'end-of-buffer)
    

    在我的 OSX 中,我有这个定义来执行 Alt-up/down 以跳转到缓冲区的顶部/底部。

    关于emacs - 在 Emacs 23.1.1 中绑定(bind) M-<up>/M-<down>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4351044/

    相关文章:

    java - java中的KeyPressed事件

    emacs - elisp宏扩展局部变量

    emacs - 将 "follow-mode"状态添加到 Emacs 模式行

    Bash:杀死具有指定名称的所有 screen

    linux - Grep in screen 不将输出保存到日志文件

    sublimetext3 - 如何在 Sublime Text 3 中隐藏底部控制台文本输出区域?

    java - jdialog 输入和转义不起作用

    emacs - Emacs 中的(Ctrl + 上/下)式滚动

    emacs - 您如何告诉 Emacs 在搜索和替换字符串中不理会大小写?

    python - 获取当前 screen session 的名称