Emacs/Ruby设置推荐

11

目前我对我的Clojure/Emacs设置非常满意,但是在使用Ruby时却远远达不到这种体验。我尝试了改进的 ruby mode(没有语法高亮)和 robe(当控制台启动时便出现语法错误)。我真的很感激任何可以提供如何为Ruby配置Emacs的适当指南的提示。

顺便说一下:我不需要任何Rails支持,只需要纯粹的Ruby支持。


我也是……… :( - Arup Rakshit
为什么不尝试提交问题报告?(当控制台启动时会出现语法错误) - Dmitry
因为我不确定这个错误是我的问题。与此同时,我意识到问题是emacs中路径定义不正确导致的。因此使用了Ruby 1.8。 - rogergl
重新安装后,增强的Ruby模式现在可以正常工作了。修复路径问题后,Robe也可以正常工作。尽管如此,我决定卸载Robe,因为ctags导航更适合我的工作风格。 - rogergl
啊,很酷。好知道。 - Dmitry
2个回答

19
我认为以下设置非常好:
  • Emacs 24.4或更高版本的ruby-mode-它比Emacs 24.3中的版本有很大改进
  • inf-ruby -在Emacs内运行irb/pry的方式
  • smartparens -出色地处理诸如()[]{}do/end等分隔符。
  • yari - Emacs的ri接口
  • ruby-tools - 添加命令将字符串转换为符号、符号转换为字符串、单引号字符串转换为双引号字符串、双引号字符串转换为单引号字符串、清除字符串、插值等......
  • flycheck+RuboCop进行实时的代码检查和风格检查
据我所知,许多Ruby程序员也在使用yasnippet。我放弃了在Emacs中寻找一个好的“智能提示”替代方案,但除此之外,我认为上述设置非常稳定。这基本上就是使用Prelude的Ruby模块所得到的。

yasnippet很好用。我遇到的一个问题是,我不得不将ruby-mode片段目录重命名为enh-ruby-mode,否则在增强的Ruby模式下无法使用片段。RuboCop真的很酷。但似乎我必须在.emacs中设置LANG环境变量。否则,我会遇到UTF8源文件的问题。我决定使用dash-at-point而不是yari。 - rogergl
只是一个快速的评论/问题:你认为我应该使用增强版Ruby模式吗?我现在正在使用它,但我并不完全满意...而且存储库似乎有点死了。 - art-solopov
不,不要使用它。这个想法很好,但实现从未走得太远。现在内置的 ruby-mode 已经非常好了。 - Bozhidar Batsov

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接