Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Minor mode for editing RubyOnRails code in Emacs
Emacs Lisp
Pull request Compare This branch is 233 commits ahead of tomtt:master.
Failed to load latest commit information.
.gitignore Ignore *.elc
LICENSE Added GPL 2 license as LICENCE and dropped unused History and
README.textile cleanup setup of auto-mode-alist and add Capfile and *.prawn
behave-rails.el Adding some functionality to rails-lib, experimenting with elisp BDD …
inflections.el [#13306] Defer construction of the inflections list at evaluation
rails-bytecompile.el Silence 'cl compile warnings
rails-cmd-proxy.el improve running specs for rails 3 and capybara
rails-controller-layout.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"
rails-controller-minor-mode.el rails-model-layout.el (rails-model-layout:keymap): created
rails-core.el Fix matching rails version from Gemfile.lock.
rails-features.el Remove snippet.el integration
rails-find.el Modified emacs-rails for RSpec support
rails-fixture-minor-mode.el rails-model-layout.el (rails-model-layout:keymap): created
rails-functional-test-minor-mode.el rails.el (auto-mode-alist): added Rakefile to auto-mode-alist
rails-helper-minor-mode.el rails-model-layout.el (rails-model-layout:keymap): created
rails-integration-test-minor-mode.el add rails-integration-test-minor-mode, and fix form_for snippet.
rails-layout-minor-mode.el updated copyright
rails-lib-layout.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"
rails-lib-minor-mode.el Modified emacs-rails for RSpec support
rails-lib.el Remove abbrev-mode integration
rails-log.el Ability to specify number of lines initially shown when opening log file
rails-mailer-minor-mode.el rails-model-layout.el (rails-model-layout:keymap): created
rails-migration-minor-mode.el rails-model-layout.el (rails-model-layout:keymap): created
rails-model-layout.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"
rails-model-minor-mode.el Modified emacs-rails for RSpec support
rails-navigation.el Navigation to templates and associated models now recognizes ruby 1.9…
rails-plugin-minor-mode.el updated copyright
rails-project.el * rails-spec.el: base support for rspec. Function
rails-rake.el Use "bundle exec" when available for rspec and starting the webserver.
rails-refactoring.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"
rails-rspec-controller-minor-mode.el Merge commit 'remvee/master' into work
rails-rspec-fixture-minor-mode.el Modified emacs-rails for RSpec support
rails-rspec-lib-minor-mode.el Merge commit 'remvee/master' into work
rails-rspec-minor-mode.el Modified emacs-rails for RSpec support
rails-rspec-model-minor-mode.el Merge commit 'remvee/master' into work
rails-ruby.el Properly set `inf-ruby-buffer' variable on rails >= 3.
rails-scripts.el Allow script to be ran when visiting a file in the project; current w…
rails-shoulda.el improved rails-test:run-current-method for shoulda
rails-spec.el Use "bundle exec" when available for rspec and starting the webserver.
rails-speedbar-feature.el F1 is not my help key!
rails-test.el Make running current test easier
rails-ui.el Typo in `rails-minor-mode-local-prefix-key' customization documentation.
rails-unit-test-minor-mode.el rails.el (auto-mode-alist): added Rakefile to auto-mode-alist
rails-view-minor-mode.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"
rails-ws.el Run default webserver with correct invocation.
rails.el Replace "C-c" with "C-c ," and "C-c C-c" with "C-c , ,"


It is minor mode for editing Ruby On Rails code with Emacs.


  • Navigation
    Go from unit test to model to controller to functional test to view to spec etc.
  • Running tests and specs
    Run test or spec for the current model, controller, lib etc.
  • Console and webserver
    Run this console and webserver in a buffer.
  • Snippets
    Use snippets to speedup code writing and editing.

Try C-h b to find out what key bindings are available and see M-x customize-group <RET> rails for all the knobs and switches.



Before you install this package make sure the following dependencies met:

  • Ruby Mode
  • Inferior Ruby Mode

These are installable via the ELPA or using apt-get install ruby-elisp. Some Emacs distributions include them by default.


Pull the latest version from github:

  git clone git:// ~/.emacs.d/rails-minor-mode

Hook it up in your .emacs or .emacs.d/init.el with something like:

  (add-to-list 'load-path (expand-file-name "~/.emacs.d/rails-minor-mode"))
  (require 'rails)

You’re ready to go.


You can find HAML and SASS support via ELPA.


The latest from github:

  git clone git:// ~/.emacs.d/rhtml-minor-mode

Hook it up:

  (add-to-list 'load-path (expand-file-name "~/.emacs.d/rhtml-minor-mode"))
  (require 'rhtml-mode)


Latest from subversion repo:

  svn co ~/.emacs.d/yaml-mode

Hook it up:

  (add-to-list 'load-path (expand-file-name "~/.emacs.d/yaml-mode"))
  (require 'yaml-mode)


Yes! Plenty! And most of them known, ignored and yearning for your attention! Please fork this repository and fix the stuff that bothers you.


A big thanks to Dmitry Galinsky for starting this project. Since then a lot of people touched it too, checkout the commit logs.

Something went wrong with that request. Please try again.