我试图在Eclipse中放入一个我想念的功能,其中Alt+ [ Up/ Down]可以向上或向下转换行,但是在我的生活中不能找到如何正确分配这些键的功能.我在-nw模式中使用它(所以只在shell窗口中),通常在屏幕会话中运行.
使用全局键绑定,我可以使用字母组合,比如(kbd "M-m"),但是我为箭头键尝试的每个组合只给我一条没有意义的消息,我总是得到:
"ESC <up> is undefined"
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
(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)
Run Code Online (Sandbox Code Playgroud)
而且C-h c只是回报:
ESC <up> (translated from ESC M-O A) is undefined
Run Code Online (Sandbox Code Playgroud)
这些都不起作用,无论是使用ESC还是Alt.
知道如何让这个工作吗?我更愿意将这些作为Alt+ [ Up/ Down],因为这是我习惯的.
编辑
来自评论:
C-q Up打印^[OA.
C-q M-Up打印^[并将光标向上移动一行.
C-h k(Alt+ Up)打印 …
在org-mode,按M-S-RET(元移位返回)将TODO在新线上创建新的.此密钥序列M-RET通过我的终端发送到emacs.我已经检查了这个C-h c ESC-S-RET,它返回M-RET is undefined迷你缓冲区.
我正在使用Snow Leopard和在Terminal.app中运行的Emacs 23.2.1.没有选项RET在终端键盘首选项中定义序列.
有什么想法导致失踪SHIFT?解决方法?
是否有可能通过VT100/xterm终端(Mac OS X终端)将密钥"C-("发送到Emacs?是否有可以发送的转义序列以实现等效?
我怀疑基本问题是控制与字符"("(以及使用shift生成的其他此类字符)组合的概念不存在.
注意:使用Cocoa Emacs不是一种选择.需要"C-("的原因是paredit.el在其他键组合中使用它,并且最好不重新映射它(因为将它放在"C-(")上是有意义的.