I’ve been using NetBeans for my mod-atom work for a while now, and while it was better than Emacs, the C support has still had a way to go.

In particular, the March 7th pre-6.1 snapshot fixed a lot of my irritants: Apache-style indenting works, it sorts out the complicated snarl of #include files properly, and the new-project dialogue is easier to understand.

NetBeans editing C code

Now autocomplete knows all the included names, not just my own. Pity C doesn’t have Javadocs; Doxygen hooks maybe?

The Apache httpd culture tends to a relatively small number of relatively huge C files. I’ve gone along. The feature that tempted me away from Emacs is the Navigator; you just hover over this little button and this thing pops up... a really nice way to navigate around a big honkin’ C file.

NetBeans Navigator on a big C file

For my next trick, I have to get this thing to debug httpd with my dynamically-loaded module, which is pretty hairy even from the command line. It wouldn’t work previously, but on a recent trip to the Mothership, I tracked down the actual developer whose problem it is, and he says it should now. But if it doesn’t, Gordon will be hearing from me.

Now that NetBeans is working a little better, and the OOXML process is about done, my excuses for avoiding the boring (but important, I think) mod-atom work are fading away.


Comment feed for ongoing:Comments feed

From: Harvey Swik (Mar 11 2008, at 21:59)

Since you're already trying different editors, have you considered Eclipse or Xcode?


From: Stuart Dootson (Mar 12 2008, at 03:45)

It's interesting to see the current state of IDEs on platforms other than Windows. My current C++ IDE of choice is VS(2003, 2005 or 2008) with an add-in called Visual Assist. And it's Visual Assist that gives me the features you mention from NetBeans, as well as a documentation style one - it'll display a comment field for a fundtion in a tool-tip (see http://www.wholetomato.com/products/features/hover.asp).

As for the debugging...well, I can think of several ways of doing that under VS/Windows (if httpd & mod_atom were built with VS):

1) Compile a DebugBreak(); into the extension and rely on JIT debugging to take you into VS (yuk, to be honest)

2) Attach to a running httpd from VS and set a breakpoint on mod_atom

3) Tell the mod_atom.so project that it should debug by running httpd.

If there's one development thing that Windows does do well, it's support for debugging (IMO).


From: sztywny (Mar 14 2008, at 05:52)

Imenu can do something similiar in Emacs:



author · Dad · software · colophon · rights

March 11, 2008
· Technology (87 fragments)
· · Coding (98 more)

By .

The opinions expressed here
are my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.