views:

315

answers:

3

What are the best modes, configuration settings, or anything that makes developing a ruby on rails app in emacs better.

+8  A: 

You should try all the RoR and settle on the one you like best.

First you should check out Marshall Vandegrift's excellent screencast using ECB, ruby-mode, emacs-rails, and some other stuff. It gives you a good feel for how cool writing RoR on Emacs can be.

In short here are some of the modes you should try:

  • Rinari - A simple framework for getting around your code, running tests, and managing consoles, web-servers, etc. It's minimalistic and revolves around a series of key-bindings.
  • Emacs-rails - the grandfather of Emacs RoR modes. It hasn't been updated in a while, and in fact the primary homepage no longer exists. But it's quite powerful and lets you do almost everything.
  • Emacs-rails-reloaded - This is a re-design of the original emacs-rails, I believe by the same guy. It uses the the great anything mode to help you find things and get around. I am using this AND rinari currently.

Here are some other modes that are useful:

  • ECB - the Emacs Code Browser. Use it for project management, and getting around your code.
  • Yasnippet - provides all kinds of useful snippets, automatically inserted with the TAB key.
  • Nxhtml - For editing rhtml, erb, etc.

More modes you might try:

  • Ri - for viewing ri documentation inline.
  • Flymake-ruby - on the fly syntax checking.
  • Ri - for viewing ri documentation

Oh and of course you need ruby-mode, which comes with the ruby source, and is maintained by Matz himself.

Hope this helps

thermans
+3  A: 

rspec-mode (Run single or multiple specs easily)

j2s-mode (Java script syntax highlighting)

ido (find files/buffers in your project super fast)

sahglie
A: 

emacs sucks for working with rails. I've dumped emacs after working with it for about 5years because it really sucks. vim has a much better support for rails and also TextMate if you are on a mac. there's this new IDE called RubyMine which I am using at the moment and it's the best I could find so far

Cezar