Multilingual NetBeans: PHP, Python, Scala

I've mostly been writing about Ruby and JavaScript on this blog, but NetBeans is getting strong language support in other languages as well!

First, take a look at the PHP support. Petr Pisl, Tomas Slota, Radek Matous, Tomas Mysik and others have been posting screenshots and
feature descriptions regularly on their team NetBeans PHP blog. Check it out - code completion,
quick fixes, semantic highlighting - we're going to have a fantastic PHP IDE! Here's a screenshot - look at the unused method detection for example:

The Python support is starting to shape up too - here's a screenshot of code folding, semantic highlighting and instant rename refactoring.

Coming soon - code completion and other editing goodies.

And I just now noticed a post from Caoyuan Deng
that his Scala support for NetBeans is now built on top of the native scala compiler. His editing support is already feature packed (take a look at his blog for some of the past entries) and now that he has 100% language parity things are looking very very good!

Last but not least: InfoWorld has reviewed 9 Ruby IDEs,
and NetBeans came out on top!


And while I have not had a chance to use it yet, all this new language support is made better and easier by GSF. By all accounts, you did a great job and set a trail for many to follow.

Posted by Tom Wheeler on July 15, 2008 at 05:10 AM PDT #

I once wanted to make netbeans able to edit a custom scripting language for a game. At the time Procect Schielmann seemed the way, and I emailed several Sun people about it asking for help. They seemed interested but just pointed me to weblogs like this : (which you can clearly see is dead) and I found the tutorial and wiki beyond my comprehension (I've never done AST and still don't really understand what its about) so it never materialized. All I needed to do was take the base C++ and add some extra functions for it to recognize and auto-complete. Oh well. They continue to use Visual Studio. Good enough.

Posted by Chess on July 15, 2008 at 05:50 AM PDT #

Tor, thanks for your GSF, it makes writing support for new language easy.

Posted by Caoyuan on July 15, 2008 at 10:52 PM PDT #

Don't forget Groovy and Grails support as well. I'm a bit disappointed that Groovy and Grails is often overlooked on your blog and the Java Posse. It's great stuff and I think it is deserving of a little more attention. It's been much more valuable to me than Scala.


Posted by Sourceseed on July 16, 2008 at 12:05 AM PDT #

I think you should add Clojure support too

Posted by Anuradha Gunasekara on July 16, 2008 at 07:19 AM PDT #

We really need Groovy and Grails support, there's a great opportunity for NetBeans to become an Enterprise IDE by getting in with G2 support comparable to that provided for Ruby. I think the G2 is going to win as the next step for the Enterprise, the leap to Ruby is too far. I'm sure we will see G2 support in NetBeans, any info of what we are going to get and when? Must be a great time to work on a product like NetBeans!

Posted by Paul Wallace on July 16, 2008 at 07:29 AM PDT #

Yes, full-blown Groovy support is coming too! It was just an oversight on my part. I had seen the PHP guys' blog, so I wanted to point people to it, and since I'm involved with the Python work I thought I'd post a screenshot of the progress there. And then I noticed Caoyuan's latest blog entry on his Scala support, so I included that as well. Definitely I should have included a screenshot of the Groovy and Grails support - if only the main developers (Martin - , Matthias - ) would blog more often!! But I watch their commits and assist with GSF issues when I can, so I know the project is moving forwards full steam ahead even if their blogs aren't!

Posted by Tor Norbye on July 16, 2008 at 07:38 AM PDT #

Good day, Tor! What is the state of developing of haml module for netbeans - was it stopped, or being continued? May be there is a blog where I can found this? Thanks.

Posted by ruby.freeman on July 16, 2008 at 03:15 PM PDT #

Thanks Tor,
Great wrok :)

and we hope somthing like Symfony and django to be intgrated soon ....

regards ....

Posted by ahmad ramadan on July 17, 2008 at 07:11 PM PDT #

Tor, just wondering if there are any plans for syntax highlighting for Unix scrips. That is BASH shell scripts. Greg

Posted by Greg on July 18, 2008 at 11:59 AM PDT #

'My delving into writing a NetBeans module
So, NetBeans is this IDE many folks have tried or read about, but haven't really felt the peer pressure to use...'

Posted by Joao Pedrosa on July 20, 2008 at 05:57 AM PDT #

Hi Tor, sorry if this is a bit off-topic, but I notice you're using Netbeans on Mac OS as am I.
I was wondering if there is or ever will be a way to turn off font smoothing. There's an option in advanced options for antialiasing but it has no effect on the system font smoothing.
I know there's a system-wide setting for turning it off below a certain size, but that messes up most UIs. What I really want is to use a 12 point font like monaco in the editors, but have smoothing off only in the editors. I find the smoothing unbearably blurry (as do many others)

I faced the same problem with Eclipse, and I (sort of) solved it with a system default for Eclipse:

"org.eclipse.eclipse" = {
AppleAntiAliasingThreshold = 20;

This is not ideal because it basically tells the system to turn off antialiasing for all fonts below 20 pts _only in eclipse_, which makes the editor fonts MUCH more readable, but spoils the fonts in the explorers. Ideally I'd like to set this threshold just in editors, but since this is the text we read the most, the tradeoff is worth it.

I can't find any mention of netbeans when I run "defaults read" on my mac, so I don't see a way to do the same trick. Ideally netbeans on the mac would support this option for editors.

Is there any way I can do this?

Posted by rhunarb on July 23, 2008 at 07:23 PM PDT #

Tor, you are my hero for working on Python support. We are working with Google App Engine and since we can't use Java we're dependent on someone creating reasonable developer tools with refactoring and code completion.

Oh, and how about automatic import statements? As a Java developer now trying to use Python I consistently make the same two mistakes over and over:

\* I forget to add an import statement
\* I forget to call for methods, using the implicit self syntax foo() like I would do in java

Posted by Charlie Evett on July 25, 2008 at 11:52 PM PDT #

Hi Rhunarb,
Are you by any chance running JDK 6 on your Mac instead of JDK 5? In JDK 5, NetBeans will by default be running with Apple's own font rendering which should be identical to the rest of the system. In JDK 6, the Apple JVM switched away from their native rendering (Quartz) to the JDK one (used on other platforms) which looks slightly different than the rest of the system. To use Quartz in JDK 6, try this flag (add to startup command line, or your etc/netbeans.conf arguments line):

thanks for those ideas, I'll look into it! (By the way, see my latest blog entry for more Python stuff, I just added quickfixes.)

Posted by Tor Norbye on July 26, 2008 at 03:01 AM PDT #

I just noticed I missed some other comments.

Greg, I thought we already had syntax highlighting etc. of scripts. There's definitely a Schliemann-based module in there to support it.

Ruby.freeman, the HAML module was contributed by somebody else so I have no information about its state or plans. So far the Sun team working on Ruby has been focusing on Rails and ERb. And it looks like Joao might soon have Tenjin support to contribute! (Thanks!)

Ahmad, Django and Turbogears support is planned for Python. I'm not sure about Symphony.

Posted by Tor Norbye on July 26, 2008 at 03:24 AM PDT #

Post a Comment:
Comments are closed for this entry.

Tor Norbye


« April 2014