【问题标题】:Emacs keybinding involving forward slash涉及正斜杠的 Emacs 键绑定
【发布时间】:2012-10-03 11:40:45
【问题描述】:

在 emacs 中,我想将 \C-/ 从 undo 重新映射到我自己的函数,注释当前区域或当前行(如果没有选择区域)。当我尝试这样的事情时:

(global-set-key "\C-/" 'comment-or-uncomment-region-or-line)

我收到一个错误

error: Invalid modifier in string

我尝试了不同的键绑定方式,不幸的是没有成功,并且在谷歌上搜索 \C-/ 也不是很有帮助。

感谢您的帮助。

【问题讨论】:

  • 那你用什么快捷键来撤销?

标签: emacs elisp


【解决方案1】:
(global-set-key (kbd "C-/") 'comment-or-uncomment-region-or-line)

【讨论】:

  • 是的,我可以在 5 分钟内完成;)
  • 至于为什么:键序列以字符串开始(即字符序列,当时也是字节),因为这在文本终端时代是有意义的。但是没有“home”或“mouse-1”这样的字符,所以我们必须将键序列从字符串更改为向量(即对象序列)。出于向后兼容性的原因,字符串仍然被接受,但您不能将它们用于鼠标绑定,或用于绑定到没有相应字符的键(ASCII(和 Unicode)包括 C-a 和 C-_ 的字符,但不用于 C -/)。你可以使用[?\C-/],而不是kbd
  • 这对我仍然不起作用。如果我按下此组合,我会在 minibuffer 中收到一条消息“C-_ 未定义”。在 Linux 的虚拟控制台中更有趣的是,C-/ 充当删除...我很困惑。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多