enhancement: sorting the translations file so it's easier to find the keys that were added (since previously they could show up anywhere). Also adding key collision checks. If you use a key already in use, it'll prompt you if you want to overwrite the old value. If you select Cancel, it'll exit out with nothing printed or logged.
bugfix: adding a .blank? method to objects (though it's only used on string at the moment). Store the last used type (ruby, string, or html). Fixed a bug when the translation file existed but was blank, causing merge errors.
enhancement: show the last used key in the key dialog. Helps if you have long keys where only the last part changes. It should also be highlighted by default, so if you type anything, it'll be overwritten.
enhancement: moving the bulk of the command into Support/lib/rails_i18n.rb as it's easier to maintain in it's new class form. Adding checks to stop various errors like nil.gsub and nil.split
enhancement: detect which file we are editing and use the appropriate method in that file (t for controllers, helpers, and views, I18n.t elsewhere, like models and libs). Moved the hash class declarations to Support/lib/rails-i18n.rb file.
refinement: don't assume ruby in in /usr/bin/ruby. Use /usr/bin/env to determine the location (for Ruby enterprise edition installs for example). Also adding prompt for how to enter the key into the file (as erb, as #{} for ruby strings, or plain ruby). Saves time.