Kate/KDevelop October Sprint: What's new in Kate

After the successful developer sprint in Berlin in 2010, the Kate and KDevelop teams met for the second time from the 23rd to the 29th of October. This time, the developer sprint was held in the beautiful city of Vienna. In total, 13 contributors discussed and collaborated on the future of Kate and KDevelop for a whole week.

The developer sprint was organized and partly financed by Joseph Wenninger, who also showed himself to be an excellent city guide in Vienna. The remaining travel costs were kindly supported by the KDE e.V., which is possible thanks to our supporting members and the Join The Game campaign. Further, a special thanks goes to Vivid Planet for supporting the joint Kate/KDevelop with a really tasty dinner.

Kate/KDevelop Sprint in Vienna

The developer sprint was very productive, so this sprint report is split into two parts. In this Dot story, information about Kate is presented. KDevelop sprint activities will be provided soon.

What's new in Kate

The developers worked hard to make Kate, KDE's Advanced Text Editor, an even more pleasant experience. There were about 400 commits in Kate's source code in just this week, ranging from major changes to small details such as bug fixes or fine tuning.

Notification System

Replace text notification

The editor component Kate Part (also used in KDevelop and Kile) received a new message interface. This message interface allows the applications to show passive, interactive notifications in the editor text view. For instance, this notification system is used to notify the user when loading remote files will take a long time, when the document content needs to be recovered, or when text is being replaced (see screenshot).

Minimap as Scrollbar


Kate gained the feature to show a minimap of the document in the scroll bar. Minimap shows text in a miniature view and is useful for fast text navigation in the document (screen shot). While the feature itself is stable, it may be changed and should be considered experimental.

Project Plugin

Kate gained a new Project Management plugin. This powerful plugin reads simple .kateproject files in the project root folder. A sidebar shows all the files belonging to the project, either through filters or by querying git or subversion. It is tightly integrated into the Search & Replace plugin, enabling the user to search & replace only in the files belonging to the project. It seamlessly integrates into the new Quick Open feature, accessible either through the menu or the shortcut Ctrl+Alt+o. The Project Management plugin uses ctags in the background to parse all project files. This way, basic yet convenient auto completion support is available in all project files. Get more details in this blog post.

Predefined Color Schemes

Dark Colors predefined color scheme

Another improvement is that Kate now has several predefined color schemes. An example can be seen in the screen shot, and further information is available on the Kate homepage. Colors may change in the future (e.g., to improve contrast).

Additional Changes

In addition to these updates, minor changes include a small tooltip while scrolling that shows the current line number. Next, the option to remove trailing spaces on save was improved. Documents in read-only mode now show an additional suffix "[read only]" to make the read-only mode more visible to the user. The scripting API was improved and contains experimental support for zen-like quick coding also for arbitrary languages.

Concluding Remarks

We read almost all of the 850 bug reports and brought the number down to a manageable size of just 60 open bug reports and 300 wishlist items. Assistance with finding and reporting bugs is much appreciated. The buq squashing trend is reflected in the following chart:

Bug status

Many thanks to all our supporters who made this productive developer sprint happen. All the functions mentioned above are available in KDE Software Release 4.10. We are looking forward to more dedicated developer sprints in the coming years!

Dot Categories: 


by Francesco Riosa (not verified)

Olà, just installed whole kde-sc from git, helped by gentoo live ebuilds. The improvements are pretty nice, with "minimap" and "projects" being the ones which make a real difference to me.

Minimap used as a scrollbar could use some improvement in mouse handling. But it proves to be useful in a fast understanding of where we are working, even more useful in split view.
Projects, it's a great start, and could be the basis for a really powerful project manager in the future. Some seamless integration with git and svn (commit, diff to master, etc) could make it a killer app.

A regression since 4.8 is that in "column selection" mode, the cursor automatically moves to the end of the current line, while before it was allowed to stay past the EOL. This make impossible to select multi-line correctly in column mode unless the last selected line is the longest of the section (or you don't need to select to the end). Hopefully it's a bug and not a design decision :)

When I first saw such a notification in Dolphin (A folder cannot be dropped on itself) I could not believe it!

Irritating no, these CAPS? But that's how it is for some users...
Now the computer is continously asking for attention.

Definitely NOT how I want my computer to behave, the applications should be out of the way as much as possible, allowing me to focus on my WORK, not satisfying attention-craving applications...

by Dominik (not verified)

First of all, thanks for your feedback. The idea behind the notification system is to have a unified way to show notifications that require the user's attention: data recovery, lines were wrapped on load and the document is read-only, encoding problems, delayed loading for remote files, ...

This is valuable information, and, in fact, we had quite some complaints that the feed-back for e.g. the read-only mode was simply not there. For most of the other cases, there were modal popup windows, which is even more "in the face" than the notifications.

What I wonder is whether you at least tried the current behavior, since it's been in git master just for a few weeks.

Besides that, it would be cool to have constructive feedback: if you know a way to make it better: awesome ;) But then, tell us how. And, even cooler, provide a patch :-)

by Jarl E. Gjessing (not verified)

I most certainly like the new notification (limited to the experience I've had with Dolphin).

It does get my attention and I've gotten used to it being there. But then again, I have experienced that it did not prevent me from continuing work and therefore too late responding to the error.

In critical cases, the view should be locked from further action. But this is difficult because what is a critical error in my case compared to others?

So in short, it is really nice, looks good, but does not have the same "fatal" consequence as a popup. So if it could stop further interaction it would be perfect (in my opinion)--a button for "okay, I've seen the message". Of course, this would not be for information or other non-fatal actions :-)

Actually, it's asking for less attention. Most of those messages you see in Dolphin used to be pop-up dialogs that were way worse. Now they are passive and stay out of your way until you want to deal with them instead of demanding you click on them immediately.

by Paul L (not verified)

This is an article about changes in KATE. Why are the images from KWrite?

Because the changes happened in the Katepart, which is the editor component of not only Kwrite and Kate but also KDevelop, Kile and probably others.

Also note that the project plugin is part of Kate. All the rest is built into Katepart thus available for all users of that (you can have the minimap in KDevelop for example).

by Anders Karlsson (not verified)

Many thanks for all the time and brains you have spent on doing Kate as good as it is!

Doing a text editor might not always appear to be the coolest thing in the world of quickly evolving software, but your Kate is silently used by millions! I use Kate every workday at my work at Opera Software, as part of KDevelop, and the text editing works just beautiful! When I have shown colleagues how well it works developing in KDevelop several of them have changed to KDE! :-)