我正在学习emacs,并已开始将其用于ruby编程 . 作为emacs的新手,我根据bbatsov(https://github.com/bbatsov/emacs-prelude)的Prelude软件包对其进行了配置,其中大体上都很棒 . 我正在使用http://emacsformacosx.com/builds的Mac Emacs 24预测试包 .
我遇到的问题可能与此无关 - 不确定它是否是ruby-mode包中的错误 .
当我处于ruby模式并且我点击“k”键时,就像键入“knackered”一样,“k”键充当前缀键(“k”未插入缓冲区但显示在迷你中-缓冲) . 我可以在ruby模式中插入“k”字符的唯一方法是C-q k,这真的很烦人 .
我已经完成了关于键盘映射的所有文档,并且已经完成了所有配置文件(ELPA,模块,自定义,初始化等),并且找不到任何可以打开它的内容,包括在ruby-mode配置文件中 . 我很困惑,有点沮丧 . 任何人都可以对此发光吗?
2 回答
所以,我自己就是一个emacs noob,我遇到了同样的问题 . 我发现我创建了一个自定义yasnippet,并且在自动生成的模板中有一个指令将代码段绑定到一个键:
binding: "keybinding"
. 一旦我删除了,问题就消失了 .TL; DR
我发现它是因为当我输入
C-h m
列出活动模式时,我看到了一些关于K E Y B I N D I N Prefix Command
的奇怪内容 . 在我看到之后,我点击C-h k keybinding
(显示哪个命令被绑定到那组击键)并且它出现了一些错误消息,其中还包括我记得大约一天前写的代码片段 . 我去了yasnippet目录并编辑了代码片段,我的问题就消失了 .我知道你已经解决了你的问题,但是对于其他可能遇到这个问题的人,但是没有按预期工作的关键,你可能会尝试寻找带有
binding: "keybinding"
指令的片段 .我不知道是什么开关,但你应该能够使用以下内容覆盖它:
您可以使用M-:运行它 . 您也可以将此行放在ruby模式钩子中 .