我试图将[Ctrl] - [;]设置为我的.emacs中的键绑定
(global-set-key "\C-;" 'comment-or-uncomment-region)
Run Code Online (Sandbox Code Playgroud)
但是当我尝试时它不起作用(我没有收到任何错误信息,它只是没有效果).如果我尝试普通字符(例如将其设置为"\ Cp"),它将工作.
我也试过了
(global-set-key (kbd "C-;") 'comment-or-uncomment-region)
Run Code Online (Sandbox Code Playgroud)
但我不喜欢这个选项,因为对我来说,当我运行"emacs -nw"时它不起作用.有关如何做到这一点的任何想法?
编辑:当我运行时C-hcC-;,emacs -nw我得到输出:
; runs the command self-insert-command
Run Code Online (Sandbox Code Playgroud)
这是完全一样的,当我作为运行C-hc;在emacs -nw
所以我认为phils是对的,这是一个终端问题,因为emacs从未真正看到过C-;,它只能看到;
IndeedC-;通常不是您的终端能够发送到 Emacs 等底层应用程序的东西(因此它可以在 GUI 下运行,但不能在终端中运行)。但我想知道:为什么你仍然需要这样的绑定,因为它M-;已经绑定到comment-dwim在选择区域时注释/取消注释区域,所以它提供了comment-or-uncomment-region.
使用(kbd "C-;")绝对正确。
我怀疑当您C-;在运行时键入时emacs -nw,您的终端实际上并没有向 Emacs 发送任何内容。
因此,您的问题更可能是如何让您的终端发送C-;到 Emacs(或者如何让 Emacs 识别发送的序列)的问题。
如果您运行emacs -Q -nw并输入C-hcC-;,您会收到一条"C-; is undefined"消息吗?
假设这是一个终端问题,这里有一些相关的问答,它们可能会为您指明正确的方向,但这取决于您使用的特定终端。
| 归档时间: |
|
| 查看次数: |
1609 次 |
| 最近记录: |