I wanted to be able to open helper methods from irb using sublime text on Mac OS X.
In order to do this you first need to create a command line helper to for sublime text.
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
This creates a symlink that you can use from the command line to open sublime text 2. Now we can use it in our .irbrc method. Here is what i added to our .irbrc file:
def sublime(method_name) file, line = method(method_name).source_location `sublime '#{file}:#{line}'` end
Now from IRB you can do this sort of thing:
>> helper.sublime(:link_to)
And it opens sublime text at the line number of the link_to method.
This is pretty nice. But, of course, what i’d really like is a way of opening the source for any method. Not sure how to go about that.
Also, if i could only get this to work with emacs. I can get emacs to open, but i haven’t spent the time to figure out how to get it to open to a given line number. Here is what i have:
def emacs(method_name) file, line = method(method_name).source_location `emacs '#{file}'` end
The only clue to opening on a given line i found here, on stack overflow: