Category Archives: KDE

KDevelop and Kate advancements over the last weeks

Hey all,

I didn’t blog in a long while so I thought I’d dump some notable things I did over the last weeks. It’s probably neither complete nor thorough - you should try it all out to see it for yourself :)

Kate

Lets start small with my Kate contributions. I really concentrate on KDevelop nowadays since Kate works quite well for me and I don’t have many itches to scratch anymore :) So, what did I do these last weeks? Mostly cleanup and performance work, especially regarding MovingRanges which of course is mostly needed for a good experience in the upcoming KDevelop 4.2. With the help of Dominik Haumann I also went through our indentation unit tests and made sure we expect all currently failing test cases, as well as fixing those I could. Now we (finally!) have a passing test suite and get noticed about introduced regressions. Awesome!

KDevelop

Of course I still concentrate my contributions on KDevelop and related plugins. What I find quite interesting is that I’m now for over two months in a “polish-and-bugfixing”-mode, without adding much new features. I think that shows that I’m quite satisfied with the existing features, just not with the way they are integrated. E.g. the Kate performance improvements above were done in order to make “reformat source” not hang the IDE for a couple of seconds anymore, in KDevelop 4.2 it will only be like one second for really big source files. I’ve also tackled our black sheep, the “launch configuration” dialog. I didn’t rewrite it, but I did some polishing and have some more ideas to hopefully get it into a useable state. Oh, I just remember: I also spent some time on the “Snippets” plugin, restructured the editor dialogs a bit and made them use Katepart as well, for syntax highlighting and proper editor features :)

I generally care about small things nowadays, like e.g. that all widgets have a proper tooltip. This is also something where you all could help: If you find a widget in KDevelop master (4.2) that has no tooltip, please notify me! I’ve added those e.g. to the outline and quickopen toolbar widgets among others.

And since KDevelop 4.1 was in beta stage I’ve fixed lots of bugs and continue to do that. I triage each new bug for KDevelop/KDevplatform, request feedback and valgrind logs and try to fix whatever I can. Even now I can safely assume that KDevelop 4.2 will be more stable than 4.1, even though we did lots of architectural changes in the platform, esp. regarding MovingRanges.

And now to the last and to me most pleasing part: New features! Remember how I said I didn’t do lots of feature development at all these past days? This is basically true, instead I let others do the work :) We really get more and more patches and merge requests by other people, and I did merge quite some changes already. We have an improved “find in files” plugin now, and the French students are working hard on giving it replace functionality as well! We already merged their improved QtHelp plugin that gives you the ability to integrate arbitrary .qch files into KDevelop, e.g. the KDE Api documentation. They also work on [man integration](, which will be a joy for all STD C / C++ developers.

Furthermore we now have a “Filter…” line edit above the project manager view, “Argument Dependent Lookup” for the C++ plugin, a much improved “Problems” toolview, with the ability to show TODOs etc. pp.

This is just from the last few weeks, and it’s work done by many new contributors. It’s really very cool to see this happening.

Oh, and I personally worked a bit on the QMake support for KDevelop, I’m not sure whether I will manage to get this into a usable state for KDevelop 4.2, but I already use it at work.

Which brings me to the last part of this blog post, release schedules! I’ll finally release a KDevelop 4.1.1 bug fix version next week, and will make sure that there is a 4.2 release just before / shortly after the KDE 4.6 release in January. The big “issue” there is that KDevelop 4.1 will not work with KDE 4.6+, since there are no SmartRanges in Kate from 4.6 anymore. So a big fat warning to any adventurous tester out there: If you want to try KDE 4.6 betas, remember that you’ll have to get KDevelop master (== 4.2) as well somehow!

So, that’s it for now, have a nice sunday everyone :)

Kate History ;)

While setting up the new server for the Kate homepage, I actually found again old stuff ;)
Amazing that mails nearly ten years old can still be somewhere on the filesystem.
Perhaps a little hint, to post the beginnings of what today is Kate/KatePart/KWrite and KTextEditor.

Ten years ago, I asked the original author of KWrite, if he is interested in a MDI version of it (sorry, german, original mail):

From: Cullmann Christoph <crossfire@babylon2k.de>
To: digisnap@cs.tu-berlin.de
Subject: KWrite - Verbesserungsvorschläge
Date: Thu, 14 Dec 2000 18:38:42 +0100

Hallo
Ich benutze KWrite regelmässig um Quellcode zu bearbeiten und das
Syntaxhighlighting ist sehr praktisch.
Es wäre jedoch schön wenn KWrite eine MDI-Oberfläche hätte.
Ich baue gerade eine und falls jemand Interesse hat können sie sich ja melden.

Danke und Tschö
Christoph Cullmann

I actually never got any reaction from the author Jochen Wilhelmy. Guess the mail address was already abandoned at that time.
Later I tried my luck with kde-devel:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: kde-devel@max.tat.physik.uni-tuebingen.de
Subject: Need help - KWrite
Date: Thu, 4 Jan 2001 00:21:35 +0100

Hi,
i am building a mdi texteditor using the kwrite-widget.
I want to use most of the extended features of the kwrite class, like search
dialog, kspell, ....

Is there any way to do this using the KParts system or must i use the kwrite
include files and compile the kwrite widget into my program ?

cu and thanks for any answer
C. Cullmann

Not much reactions, thought, but I kept to be persistent ;)

From: Cullmann Christoph <crossfire@babylon2k.de>
To: kde-devel@max.tat.physik.uni-tuebingen.de
Subject: Re: Looking for kwrite developers.
Date: Thu, 11 Jan 2001 17:30:19 +0100

Hi all,
I have build up a editor using the KWrite Widget and a QTabWidget to provide
a multidocument interface :-)
It has some bugs at the moment (I think QTabWidget is the problem) but works
real nice.

Anybody interested in this ?

cu
C. cullmann

Shortly after this mail, one of the developers which stayed around for years joined, Anders Lund (more at the team page).
I named the starting project “KCEdit” and put it up on sourceforge.net:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: kde-devel@max.tat.physik.uni-tuebingen.de
Subject: MDI TextEditor - KCEdit
Date: Sat, 13 Jan 2001 12:04:33 +0100

Hi all,
I have build up a small mdi texteditor using the kwrite widget :-)
If someone is interested in helping to improve it or only wants to
test it a bit, i have set a sourceforge.net project up.

url : http://sourceforge.net/projects/kcedit

It would be nice if someone wants to take part in the development.

cu
C.Cullmann

After that, the next nice guy joined: Michael Bartl.
We searched for a new name for the editor, as KCEdit was not that nice, as very similar to KEdit and no longer only “Cullmann”‘s pet project.
What did we choose? Here you see:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: Michael Bartl <michael.bartl1@chello.at>
Subject: Kant is born ;-)
Date: Fri, 19 Jan 2001 20:55:59 +0100

Here it is ;-)
kant-0.1.0.tar.gz

As sourceforge.net failed to be a nice hosting, we moved the project to http://www.openave.net (and later back again, lol).
Because of family problems Michael dropped out of the time after sometime, still BIG THANK YOU.

Later, I tried to get my changes back in KDE, as I didn’t want to do a permanent fork:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: kde-devel@max.tat.physik.uni-tuebingen.de
Subject: How can I participate in the KWrite project ?
Date: Tue, 20 Feb 2001 20:25:15 +0100
Cc: kde-core-devel@max.tat.physik.uni-tuebingen.de

Hi,
I want to help as a developer in the kwrite project. I and some other people
are working on Kant (http://www.sourceforge.net/projects/kant), a MDI
texteditor for kde >=2.0 and we often find bugs in the kwrite code or missing
features we would need. It would be great if I could help to develop kwrite
because only sending bug reports and hoping that new features in kwrite will
come up sometime is really annoying.
How can I join the KWrite team and get CVS read/write access (perhaps ;-) ?
To have an overview about my skills please look at the Kant sourcecode or
simply download and test Kant out of the CVS at sourceforge.net.

cu and thx for you interest
Christoph Cullmann

P.S.
Sorry for the bad English ;-)

Without much problems, I got a CVS account on the KDE server and was allowed to add my code and the code of the others to the KWrite codebase.
All other contributors which were still active got accounts later, too. Worked all like a charm thanks to Waldo Bastian.
Still Kant itself was not in KDE, therefor next try:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: kde-devel@max.tat.physik.uni-tuebingen.de
Subject: Could Kant replace or extend KWrite in KDE ?
Date: Sat, 24 Feb 2001 17:28:58 +0100

Hi,
I am the projectmanager of Kant, a MDI texteditor which uses the KWrite
widget for displaying text (no MDI like you know it from windows, MDI like
you know it from Emacs or Konqueror :).

Kant has come to a level of stability which would it allow to put it into the
kde cvs i hope. I have talked with Carsten Pfeiffer (he likes Kant :) and he
told me to send a message to this list to start a discussion if and where
Kant could be integrated.

I just released a new Kant version (kant-0.2.0-prerelease) on sourceforge.net
for testing the app that you have an overview about its features.

Kant Homepage:

http://sourceforge.net/projects/kant/

newest Kant version to download:

http://download.sourceforge.net/kant/kant-0.2.0-prerelease.tar.gz

nice screenshot of Kant:

http://sourceforge.net/dbimage.php?id=1590

If you want to look at the unstable development code just look into the Kant
CVS at sourceforge.net, you find the exact description to checkout at the
Kant Homepage under "CVS" (cvs-modulename: kant).

Kant links dynamic to kwritepart and konsolepart. This must be considered if
you want to put Kant into kde cvs.

I hope you all like Kant, I think it would be a nice replacement for KWrite.

cu and thx
Christoph

P.S.
Sorry for my poor English and the big tar.gz file (something isn't right with
make dist in kant, must fix it :)

After some changes to the code, we were allowed to move the development completly to KDE CVS.
Joseph Wenninger joined the development, too.

Btw., my nice old e-mail footer:

| |  / /   - get an edge in editing -
| | / /    »»»» GET KANT ««««
| |/ /     a fast and capable multiple document,
|    \     multiple view text editor for KDE
| |\  \
| | \  \   http://devel-home.kde.org/~kant

Whereas Kant was just a fine name for us, it had some pronunciation in english which was not that political correct ;)
Therefor we searched a new name:

From: Cullmann Christoph <crossfire@babylon2k.de>
To: David Faure <david@mandrakesoft.com>
Subject: Hi, is Kate a good name ?
Date: Sat, 31 Mar 2001 15:15:47 +0200

Hi David,
would be Kate a political correct name for Kant ?

Kate - KDE Advanced Text Editor

cu
Christoph

We even asked the developers of Katy, an other text editor, if they would have problems with that name change ;)
Kate was born ;)