Any recommendations on ruby editor

Daniel DeLorme wrote:

Daniel

I have experience with many more than two editors over the years, but
what I use is vim/gvim. It’s strictly force of habit, though, and not
because I think it’s fundamentally better in any way for any reason.

Just to my 2 cents but I would like to hear from anyone that is using
“Ruby In Steel” from http://www.sapphiresteel.com/

For anyone that may not be familiar, it uses Visual Studio 2005 from the
“great Satan of the northwest” as I heard MS called at the Ruby Hoedown
this last weekend:-) You must have VS 2005, and then purchase Ruby In
Steel
as an add in to VS.

I have used VS in many versions for more than 10 years and think it’s a
great
IDE. However the cost is high and before I spend the time and money for
Ruby In
Steel it would be great to hear from someone that uses it on a regular
basis.

Thanks,
Bill

As a Microsoft ISV (boo hiss!) I use Visual Studio 2005 constantly.
I’m new to Ruby, but I’m evaluating Ruby in Steel. So far I like it.

I will probably use NetBeans for my Ruby development since I already
use it for Java on Linux and Solaris.

-Robert

I’d recommend the Ruby plug-in for the IntelliJ IDEA IDE. Although
it’s still in active development it’s already feature-rich and has
plans for more features. I use it for Ruby/JRuby development on a
daily basis. This is especially a good choice if you’re already using
IDEA for Java like me. By the way, I’ve contributed a small bit toward
the plug-in so if you see a feature missing, let me know what it is.
Here’s a link for those that are interested:

http://www.jetbrains.net/confluence/display/RUBYDEV/IntelliJ+IDEA+Ruby+Plugin

On Aug 10, 2007, at 9:52 AM, harry pillei wrote:

I am looking into investing in an editor for working with ruby
(including
rails), any recommendations?.
Experience and feedback appreciated.

On the Mac, NetBeans is wicked fast. And, as of a couple of builds
ago, it has an actual useful Find Usages. Find Usages!!! That’s
the single most important thing an IDE can do for you after the basic
syntax help. Any other Ruby IDEs have that?

Screenshots, etc: ongoing by Tim Bray · 2007 · August · 14
NetBeans-Ruby

-T

On Aug 15, 2007, at 12:58 , Tim B. wrote:

basic syntax help. Any other Ruby IDEs have that?
TextMate has a find in project which works similarly.

~Wayne

s///g
Wayne E. Seguin
Sr. Systems Architect & Systems Administrator

On Friday 10 August 2007 18:52:43 harry pillei wrote:

Hi,
I am looking into investing in an editor for working with ruby(including
rails), any recommendations?.
Experience and feedback appreciated.

thanks
Hari

I use Gvim with the following extensions, which make it a charm to use.
Here
is a Screenshot. I turned off all Menus and Scrollbars, because I find
them
distractive. The advantage over console vim is scrolling with mousewheel
and
more coloschemes. With those plugins and a decent Colorscheme and some
time
to get used to the (cryptic seeming) usage, Gvim will be your best
friend for
years to come. Screenshot: http://mmisc.de/~tam/gvim.png, I’m following
the
example application in “Agile web development with rails 2nd ed.” (which
I
mention in case you also look for a good book to learn rails). The Gvim
colorscheme is a slightly modified “darkocean”
(DarkOcean.vim - Its really dark : vim online), I made the white
a
little more grey, so the contrast is not as hard and removed the
different
coloring of empty lines, because it confused me. %)

Have a lot of fun, turning your vim into a powerful rails development
IDE
machine, that’s actually fun to use!

PS: Anybody got other useful vim plugins for RoR dev?

REdit
Linked stacktraces (open gvim on click, bzw change the opened file)
and “footnotes” on your development page.
(script/plugin install http://svn.antono.info/redit)
(rake redit:install)

BlockComment 1.1:
(Un-)Comment everything you mark with one shortcut “.c” to comment, “.C”
to
uncomment
(BlockComment.vim - Simple commenting and uncommenting of blocks of code : vim online)

matchit :
“%” lets you jump between if and end, between class and end, so see
instantly
where to go, even with bad indentation.
(Ships with vim under: /usr/share/vim/macros/matchit.*)
(else Error : vim online)

project 1.4.1:
Sidebar with Project files (When used with rails.vim, type “:Rproject”,
it
will be preconfigured)
(Error : vim online)

rails.vim 2.00:
A bunch of interesting stuff, read
http://svn.tpope.net/rails/vim/railsvim/doc/rails.txt
(Error : vim online)

Autocomplete function names:
rubycomplete 0.7:
http://segfault.hasno.info/vim/rubycomplete.vim
type the beginning, strg-x, strg-o to see a (ugly) list of
possibilities.

snippetsEmu 1.1:
The autocompletion snippet magic with tab.
(snippetsEmu - An attempt to emulate TextMate's snippet expansion : vim online)
(I needed to hack this a little. The tags (“<{” and “}>”) conflict with
html
so I set it to something unneeded (“Д and “Æ”),
(~/.vim/plugins/snippetsEmu.vim Lines 113 and 117) does look confusing,
but
works like a charm. Plus you really should change the default behavior
for
ruby files. There is one error in the ruby definition file (you’ll have
another ‘>’ char and wonder why as well as annoying on the
closure
of your codeblock, which accumulate when you use it recursivly. For
completion, here is my tweaked ~/.vim/after/ftplugin/ruby_snippets.vim:

if !exists(‘loaded_snippet’) || &cp
finish
endif

let st = g:snip_start_tag
let et = g:snip_end_tag
let cd = g:snip_elem_delim

exec “Snippet do do “.st.et.”end”.st.et
exec “Snippet class class “.st.“className”.et.”
“.st.et.”end”.st.et
exec “Snippet begin begin “.st.et.”rescue “.st.“Exception”.et.”
=> “.st.“e”.et.””.st.et.“end”.st.et
exec “Snippet each_with_index0 each_with_index
do |”.st.“element”.et.“, “.st.“index”.et.”|
“.st.“element”.et.”.”.st.et.“end”.st.et
exec “Snippet collect collect
{ |”.st.“element”.et.“| “.st.“element”.et.”.”.st.et." }“.st.et
exec “Snippet forin for “.st.“element”.et.”
in “.st.“collection”.et.”
“.st.“element”.et.”.”.st.et.”end".st.et
exec “Snippet doo do |”.st.“object”.et.“| “.st.et.”end”.st.et
exec “Snippet : :”.st.“key”.et." => "“.st.“value”.et.”"“.st.et
exec “Snippet def def “.st.“methodName”.et.”
“.st.et.”end”.st.et
exec “Snippet case case “.st.“object”.et.”
when “.st.“condition”.et.””.st.et.”end".st.et
exec “Snippet collecto collect do |”.st.“element”.et.“|
“.st.“element”.et.”.”.st.et.“end”.st.et
exec “Snippet each each
{ |”.st.“element”.et.“| “.st.“element”.et.”.”.st.et." }“.st.et
exec “Snippet each_with_index each_with_index
{ |”.st.“element”.et.”, “.st.“idx”.et.”| “.st.“element”.et.”.“.st.et.”
}“.st.et
exec “Snippet if if “.st.“condition”.et.” “.st.et.”end”.st.et
exec “Snippet eacho each do |”.st.“element”.et.”|
“.st.“element”.et.”.“.st.et.”end".st.et
exec “Snippet unless unless “.st.“condition”.et.”
“.st.et.”end”.st.et
exec “Snippet ife
if “.st.“condition”.et.” “.st.et.”else
“.st.et.”end”.st.et
exec “Snippet when when “.st.“condition”.et.st.et
exec “Snippet selecto select do |”.st.“element”.et.”|
“.st.“element”.et.”.”.st.et.“end”.st.et
exec “Snippet injecto inject(”.st.“object”.et.“)
do |”.st.“injection”.et.“, “.st.“element”.et.”|
“.st.et.”end”.st.et
exec “Snippet reject
{ |”.st.“element”.et.“| “.st.“element”.et.”.”.st.et." }“.st.et
exec “Snippet rejecto reject do |”.st.“element”.et.”|
“.st.“element”.et.”.“.st.et.”end".st.et
exec “Snippet inject inject(”.st.“object”.et.“)
{ |”.st.“injection”.et.“, “.st.“element”.et.”| “.st.et.” }”.st.et
exec “Snippet select select
{ |”.st.“element”.et.“| “.st.“element”.et.”.”.st.et." }".st.et

On Aug 15, 2007, at 7:20 PM, Wayne E. Seguin wrote:

Usages!!! That’s the single most important thing an IDE can do
for you after the basic syntax help. Any other Ruby IDEs have that?

TextMate has a find in project which works similarly.

Well, that one is a project-wide grep, so to speak. I’d expect from
Find Usages to understand the language, for instance, I select a
method on some class definition and it finds those matches. Same for
variables in a certain scope, etc.

In practice Find/Replace in Project with the ability of selecting
which occurrences to act upon is good enough in my refactorings (as
provided by TM). Of course the more intelligent the assistance the
better, so that Find Usage, if it was as accurate as in a statically
typed language it would be great.

– fxn

I just switched from textmate to ruby-netbeans.
Being an ide it can do semantic-level things an editor can’t do
because it’s aware of the code structure.
Among other things, it points out variables in the code that aren’t
used (usually left over from some change). That’s great. I also like
the ‘find occurrences’.
It’s also quite a good ruby editor. The ruby syntax coloring and
source formatting are as good as textmate. Many editors don’t do that
well.
I’ve also tried eclipse-ruby, jedit, and probably every mac editor
there is. Right now I think netbeans is the best ruby editor around
and it’s growing fast.
–Dave

Chris T. wrote:

… there’s ruby extensions
abound for emacs already, many of which I find quite useful.
Anyhow, my 2 cents.

Chris

Chris,

What tools do you use for running parts (or all) of the current buffer
with Ruby or IRB? What other functionality do you use? I have inf-ruby
installed, but haven’t learned to use it. What tricks do you find most
useful, and where do you get them? In short, is there any advice you
could give about how to most efficiently use emacs for ruby development?

Thanks,
Dan

I’m quite suprised to see no one’s posted emacs yet, so I’ll be the
first.
I’ll admit I barely tried out Textmate, and only briefly toyed with RDT
in
Eclipse, but after watching my boss use emacs to write ruby, I was
quickly
sold on how productive I could be with it. I’d never used it before, and
thus had a rather steep learning curve to get over…but now I doubt I’d
trade it for much of anything to write ruby, until some of these other
tools
get far more advanced than than they currently are when it comes to
refactoring support, etc.
Emacs combined with a knowledge of lisp and enough time, and you can
pretty
well emulate most anything any of these others can do, granted with a
fair
amount of code writing and tweaking. The up side to this is there’s a
lot of
smart people who have already done that for you, and there’s ruby
extensions
abound for emacs already, many of which I find quite useful.
Anyhow, my 2 cents.

Chris