Vladimir Prus


vladimirprus.com

Wednesday, May 20, 2009

KDevelop error display

For quite a while I wanted KDevelop to display compilation errors directly inside the editor, as opposed to separate window you have to click in. It works now, as shown below. This was implemented by Ivan Ruchkin, a student at Moscow State University, who will be defending a term paper about various KDevelop-related work tomorrow. The patches will be posted to appropriate mailing lists right after that.

14 comments:

scomar said...

That is just awesome! Fantastic work and can't wait to try out the kdevelop4 release.

Zayed said...

Amusing! That will help to fix errors quickly. Keep the good work up.

Anonymous said...
This comment has been removed by a blog administrator.
Nick Shaforostoff said...

error highlighting is the only feature that amazed me when I first tried apple's xcode,

Justin said...

Best. Feature. Ever.

The way it's executed is just amazing. I think the only way it could get more amazing is if there was a button to access documentation for the Qt objects in the line.

Anonymous said...

It looks great, but I have perhaps one small criticism: wouldn't it better to swap the order of the "previous error"/"next error" buttons ?

Anyway, I'm really looking forward to the new KDevelop.

Benoit Jacob said...

Additional feature request: when doing c++ templated code, gcc often spits out a dozen "instantiated from here" traceback lines for each error, and often the actually interesting spot is one of those "instantiated from here" lines. So it would be great if you detected that and then added a button "Go to where this was instantiated"

Tim said...

Yeah previous and next are round the wrong way! They are also the wrong way in Firefox's search. Probably some misguided 'usability expert's idea.

Anyway looks like KDevelop4 is going to be good. :-)

Huy Phan said...

I have been using KDevelop 3.x.x full time at work (C++ development) in the last 3 years. Just love it. No doubt KDevelop is the best IDE for C++ on Linux (I use CentOS 4.x at work and Ubuntu/Kubuntu at home). I have tried out the 4.xx version (with Kubuntu 9.04). The new one just looks amazing. At first, I was looking for the "CTags" plugin. Later, I really that KDevelop 4.xx just did all 'ctags' in the background automatically. Also, the so called "inline" context-sensitive-info window (showing declaration, definitions, and uses) would be the best feature introduced by this 4.xx version. Good work and thank you!

Unknown said...

1. "Previous" and "Next" buttons are messed up.

2. Is it somehow possible to set up the color of that error tip (don't mind, black on dark-red looks great... I'm just looking for a way to make it black on black and thus even better)?

The same in fact is about the overall appearance. The red highlighting lies around the red gradient... well, beauty is in the eye of the beholder.

3. The text of an error is strangely positioned, to the left relatively to the buttons. Do you imagine a typical STL error, about 30 lines long, fitting into this error tip?

Placing all buttons below the text seems to be better idea. Hey, the world works with all-buttons-below-text for 14 years. It's really comfortable.

4. The buff highlight to the left of the code looks strange. I guess it isn't resized each time the error tip is expanded.

5. Does this work with any editor embedded into KDevelop? KYzis for instance?

Vladimir Prus said...

XimaEra,

2. Customizable colors should be possible. Thanks for suggesting black on black as default, it's good idea.

3. STL errors have to be processed specially anyway. Showing them all would
be fairly pointless.

4. That highlight is independent from error display.

5. It will only work with a text editor that implements the necessary interface. In fact, most of complexity is to make that interface work for Kate.

Anonymous said...

Similar to flymake :)

Anonymous said...

This feature is really awesome. Has this code been release somewhere ?

Anonymous said...

Has this already been released in SVN or somewhere else? I'd love to see it in action..