homeblogprojectstextabout

sirtaj.code

KDE bits
developer
CVS tools
physics
hacks

This is a collection of free software tools I've written or initiated. Much of this has been for the KDE project, so many of these applications and tools are now distributed with it. Links to download, docs and bug reporting are provided where sensible.

If you use any of this stuff I would be happy to receive your feedback, even if it's "it works fine for me".

For comprehensive information on KDE development, see the developer site.

KDE bits

kview

This image viewer was my first try at a "full" KDE application and is one of the oldest apps in KDE. It was also a testbed for kimageio and the additional image formats it supports. Simon Hausmann converted it into a KPart component, making it one of the first to use the new KParts framework. When you click on an image in Konqueror, you are likely to be using kview.

korn

This poorly-named application (in my defence, I was a lot younger then) monitors multiple local and remote mailboxes for new messages. The number of new messages in each box is displayed in a panel tray icon or an optional window. Handles a number of mailbox formats and protocols, including mbox, maildir, imap, pop3 and nntp (usenet news). Part of the KDE network tools package.

This app is currently maintained by is Mart Kelder, who can be reached at mart.kde at hccnet.nl.

karm

A useful little time tracker tool, allowing you to record time spent on tasks or subtasks. Part of the KDE personal information management (PIM) package. Initially inspired by Harald Alveistrand's titrax application, which used Athena widgets.

This app is currently maintained by is Mark Bucciarelli.

kimageio

Adds support for additional image formats (JPEG, PNG, TIFF and others) to all KDE applications. Usage by programmers using Qt and the KDE libraries is almost transparent and is enabled by default in the KDE libraries.

developer

kdoc

Similar to javadoc, this is a documentation generator for C++ and IDL, capable of generating docs in a variety of formats. This tool is currently used to generate the KDE API docs. The codebase is mostly orphaned now as I am working on a replacement, but lives on as the kalyptus project. more...

I learned a lot about parsing, compilers, trees and graphs from writing this. The experience has paid off all over the place. I also learned a lot about perl, though that knowledge has mainly resulted in my using python a lot more.

cxxmetric

Source metrics for C and C++. This perl script provides stats such as number of lines of code, comments, blank lines, code/comment ratios etc. Distributed with the KDE software development kit.

pymetric

Similar to the above, but for and implemented in python.

CVS tools

cvschanged

Lists changed or missing files in a checked out CVS module without needing to contact the server. A great help when dealing with remote servers over slow or intermittent connections, a common situation for most free software developers.

noncvslist

Lists files in a checked out CVS module that are not known to the repository. This is handy when adding new files or building a distribution, and doesn't need to contact the server.

cvs2pack

Packages applications in KDE modules into standalone, separately distributable apps. Superceded now by cvs2dist, but still useful for roll-your-own packaging as it is a small and simple perl script.

cvsloginfo

Send CVS commit info via email in real time. This is used for the kde-cvs mailing list. If you are administrating a CVS repository and wish to send mail on each commit, modify it to match your development environment and configure your CVSROOT/loginfo config file to call it.

hacks

dumpvim2html.pl

Converts the VIM editor documentation to hyperlinked HTML, for reading in a browser. This is now shipped as part of the official VIM distribution in the doc/ directory (or atleast with vim 6.1).