I know we all love Ruby, and doesn’t care that much about not having auto completion/IntelliSense available.
I don’t care that much about auto completion, when coding in Ruby, myself. What I really like in Java IDEs is their refactoring support. Eclipse and IntelliJ IDEA are simply awesome in this space for Java. We still have ReSharper for Visual Studio and others, targeting other languages. Ruby has NetBeans, Aptana RadRails, RubyMine and TurboRuby/3rdRail doing a great job in this area.
But, I have this feeling that most of Ruby developers do not use IDEs (including myself). We are using good text editors, such as TextMate, Vim, Emacs and GEdit. They are good enough. Why would I need something else?
I have to admit. I really miss some refactorings while programming in Ruby. Particularly, the lack of “Extract Method” and “Extract Variable” bothers me. They aren’t even complicated, why hasn’t someone already implemented them?
So, I would like to introduce Rfactor. It is a Ruby gem, which aims to provide common and simple refactorings for Ruby code. RubyParser from Ryan Davis is being used to analyze and manipulate the source code AST, in the form of Sexps.
In theory, we should be able to use Rfactor to power any editor, adding refactoring capabilities to it. I’m targeting TextMate, but I would love to see contributions for others. The TextMate Bundle is hosted on github:
Word movement in OS X Leopard Terminal.app is a pain! After long time searching, I must keep the solution documented here.
I’ve been searching for a long time, how to fix home/end keys and how to jump words. In every OS X application, cmd + arrows and option + arrows would do the trick, except Terminal.app. I had once fixed it for OS X Tiger, but I couldn’t remember how…
My choice is for fn + arrows (home/end) to begin/end of lines and ctrl + arrows to jump words. Fire your Terminal.app, hit cmd + , (yes, period); the alternative is Terminal -> Preferences. Go to Settings area, then Keyboard tab. Edit your combos as below:
The trick is the code \033b. It is produced through esc (\033) + b and represents “move one word backward”. Forward movement is esc + f, home is ctrl + a (\001) and end is ctrl + e (\005).
Recent Comments