Tuesday, February 27, 2007

Ruby Screenshot of the Week #5

WARNING: This blog entry was imported from my old blog on blogs.sun.com (which used different blogging software), so formatting and links may not be correct.

Tim Bray just posted an entry on his first experiments with the Ruby and NetBeans support and in particular, talks about the syntax highlighting. I was already planning on spending this week's screenshot on the highlighting features, so I'll use Tim's ape.rb source code and show you a few more details:

Notice the following:

  • Notice how unused local variables are highlighted (see dummy which I inserted to make a point - that's not Tim's fault!).
  • Notice how the symbol under the caret gets highlighted along with all other uses of the same symbol! This is pretty useful when you're dealing with
    blocks for example - it will show you that a local variable may be used unintentionally as a block variable and will get modified as a side effect.
  • Notice how methods calls are highlighted in bold. This is handy when you have a typo, and what you thought was a local variable read is actually a call
    to an unbound method.
  • Notice how strings are lexed too. Here you can see that it's telling you (in red italics) "\n" is not expected as an escape code - this is a single quoted String after all.
  • Embedded Ruby code within Strings - #{ } - is properly shown as Ruby code. Occurrences highlighting and code completion works in these sections too.

Regarding the color choices, I should point out that these colors are consistent with the new colors in the Java support in NetBeans 6 - parameters are orange, fields green, unused items gray, and so on.

In doing this screenshot I noticed a couple of bugs I'm off to fix now!


  1. Juan Pablo TarquinoFebruary 27, 2007 at 6:53 AM

    Super nice! keep up the good work!

  2. Hi Tor!
    I also blogged lately about Ruby / Rails IDE comparison (and installation). I elected your NetBeans Module my editor of choice for the moment.

  3. This looks awesome! Can't wait until the final version! Do the current snapshots have debugger facilities?

  4. Nope - no debugger yet. I think that's scheduled for M8 - Martin (who's writing it) might be able to provide a more specific date.

  5. To get the bits, download NetBeans 6 M7, then go to the Daily update center, and in the "Features" category add "Ruby". That should pull in everything else you need.
    Be sure to update early & often.

  6. Congratulations! :-)
    When they optimize Ruby/JRuby's speed, it is going to be a marvel.

  7. Thanks. I have just installed and testing it out. Now, I can use in my mac too. [ I was able to compile it from linux and cygwin/winnt but able to compile netbeans on mac osx ]