Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Interactive editor

Drew Neil has made it the subject of one of his vimcasts: vimcasts #20: running Vim within IRB, and Chad Perrin has written an article about it on TechRepublic: Use interactive_editor with irb for an inside-out Ruby IDE. There's also an outdated blog post which predates the gem from 2009: Integrating vim and IRB.


$ gem install interactive_editor

Put the following in your .irbrc:

require 'rubygems'
require 'interactive_editor'

Then, from within irb:

$ irb                        # or ripl
> vi                         # (use vi w/ temp file)
> vi 'filename.rb'           # (open filename.rb in vi)
> ed                         # (use EDITOR env variable)
> [emacs|vim|mvim|nano|mate] # (other editors)

Bonus: editing of objects on the fly (inspired by _why's object aorta)

$ irb
> { 'chunky' => 'bacon' }.vi

To try it out without installing the gem:

$ git clone git://
$ cd interactive_editor
$ rake console

interactive_editor also works with the IRB alternatives ripl and pry.


Giles Bowkett, Greg Brown, and several audience members from Giles' Ruby East presentation: Use vi or any text editor from within IRB.

With contributions from: