Category Archives: KDE

Kate needs BiDi/Unicode aware developers ;)

During our long bug hunting and fixing sprint I came along some nasty BiDi or Unicode related bugs.

I and most others in the Kate team are not really able to fix such issues :( We lack both the knowledge of the underlying techniques and are not able to write/read any language that really uses complex unicode chars or BiDi text.

Therefore: If you know Qt and you want to help out with fixing BiDi/Unicode related bugs, please provide patches for them in the KDE Bugzilla!

Here are the relevant bugs:

Any help here is highly appreciated! If you have questions about the internals of KatePart needed to fix such an issue, just ask in the bug or kwrite-devel@kde.org.

Kate/KDevelop Sprint – Update

Its nice to be here in Vienna with all the other hackers ;)
Most have already arrived and are busy fixing issues in Kate & KDevelop, some more will arrive tomorrow.

Already got bit work done on existing bugs, one bug was really nasty: a nearly 8 year old typo by myself messing around with highlighting in combination with line continuation.

But a guy did a really perfect bug report: Bug 300009
He wrote even a example highlighting file + test to trigger the issue, with that help, the fix was trivial to do, after I got time to read the bug ;)

Thanks to all people reporting bugs in such a useful way!

Kate/KDevelop Sprint in Vienna

In some days our nice sprint will start, more information can be found on KDE Sprints.

I am very happy that Joseph Wenninger organizes this event and the KDE e.V. aided with additional sponsorship! Sprints are a real important thing for all KDE projects and it is nice to see that thanks to the help of the community our e.V. is able to sponsor a lot of such events.

I will head over to Vienna on Tuesday, lets see what happens during the week ;)

Project Plugin, Current State

After some days of more hacking on the plugin, there current state is already nice for my daily use.

A simple file like

{
     "name": "Kate"
   , "files": [ { "git": 1 } ]
}

defines already the complete project for the kate.git.

If you open any file with Kate inside your local kate.git clone (and the project plugin from master branch is loaded), Kate will auto-open the project and highlight the file you just opened there in the tree. No need to think about opening some project in the menu, just open the file you want to start working at and start. The project plugin won’t get into your way or require additional steps.

It will allow you nice and fast file switching between your project files in the filesystem tree like structure without any noise of non-git tracked files ;) Still the normal “Documents” view is around like it used to be, if you want to just navigate between currently opened files.

If you modify the project file, the project will auto-refresh itself, still a reload button is needed to trigger e.g. reparsing of git files, if your add/remove files and want a fresh project tree. The auto-reload won’t help there, as is is more or less a nop if the project file content was unchanged.

The “Search and Replace” plugin will integrate nicely and per default will do project wide searches, if any project is currently active (you can switch to other search modes like before in the combobox, just the default is changed, if the project plugin is active). Thanks to Kåre’s nice design of the plugin, this addition was really easy to implement.

Exuberant Ctags integration is work-in-progress. At the moment on project load, a background thread will generate a ctags index (after it has constructed the file tree from git/svn/…) and the auto-completion will use this index for all files associated with your project. An additional toolview, that allows you to search inside the index will be implemented, too. It is a bit like the current ctags plugin, but without any setup or manual indexing ;) For the kate.git, the indexing (in the background) needs less than half second, even for kdelibs frameworks branch it is only 2-3 seconds. On Kate exit the index files (created as temp files in your local temp directory) will vanish again. No index database polluting your checkouts/clones or homes.

Will try to add more features I like for my daily work, if you have any ideas to improve the plugin, just let me know here or on bugs.kde.org ;)