ruby - Emacs 更新 ruby​​ 主模式

标签 ruby emacs elisp

我使用的是 emacs 23.1,其中包含 ruby​​ 的主要模式。 这个突出显示错误的正则表达式语法让我发疯: http://redmine.ruby-lang.org/issues/show/4242

如前所述,该错误已在较新版本的 ruby​​-mode.el 中修复
我想更新到这个更新版本的 ruby​​-mode.el。执行此操作的最佳方法是什么?

我尝试过的:
1.我安装了ruby 1.9.2-p180
2.我验证了/ruby-1.9.2-p180/misc/ruby-mode.el是固定版本
3.我把它复制到.emacs.d
4. 在我的 .emacs 文件中添加:

(autoload 'ruby-mode "ruby-mode" "Ruby Mode." t)
(add-to-list 'auto-mode-alist '("\\.rb$" . ruby-mode))

然而,这个错误并没有被修复:(

感谢任何帮助,谢谢。另外,如果有人知道,这是否已在 emacs 23.2 或 23.3 中修复?

编辑: 好的,事实证明它正在正确读取新的 ruby​​-mode.el——我将 ruby​​-mode.elc 重命名为 ruby​​-mode.elc2 以确保情况确实如此。

也许这是一个新的边缘案例,我很快就会提交错误报告。
这是任何好奇的人的测试用例

method /^"([^"]*)"$/ do |arg|

它似乎与方法参数周围的 () 一起正常工作,所以这将是我现在的解决方法:)

最佳答案

尝试添加自动加载的显式路径:

(autoload 'ruby-mode "~/.emacs.d/ruby-mode" "Ruby Mode." t)

顺便说一句,如果你想知道在哪个文件中加载了 emacs 库,请使用 M-x locate-library

关于ruby - Emacs 更新 ruby​​ 主模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6674163/

相关文章:

emacs - 如何在模式行中显示不同颜色的文本

ruby-on-rails - 将 i18n 翻译存储在 activerecord 中 — Rails 3.2

javascript - OpalRb 与 MeteorJS?

ruby - Net::SSH gem non_interactive无效选项?

ruby - initialize 方法是 Ruby 中的内置方法吗?

list - lisp 从列表中过滤掉不匹配谓词的结果

emacs - 在组织模式下颠倒笔记顺序

emacs - emacs auctex命令进行编译和查看

clojure - 学习一种 Lisp 有助于学习另一种吗?

plugins - 邪恶的 Emacs : is there a way to disable vim-like keys in «insert» mode?