KBibTeX

Coding and Developing

This document summarizes some information on how to code and develop on KBibTeX for KDE 4. General information on how to program for KDE 4 can be found on KDE's TechBase page.

The build system, as standard for KDE 4 applications, is based on CMake. The source code is written in C++ heavily relying the KDE and Qt libraries. To process XML files, XSL transformations are used. External dependencies include libxslt, libxml, and Poppler

You can track the development by subscribing to the RSS feed on SVN commits.

Preparing Patches

Most parts of KDE's recommendations on patch creation and submission hold for KBibTeX, too. Your patch should always be minimal, i. e. only contain functional changes. To avoid containing changes on white space (e. g. indentation), please follow the coding style recommendations on the right.

Submit your patches along with a brief description to the bug tracker.

Coding Style

Most of KBibTeX's source code is a mixure of my personal coding style (developed and changed of the years) and how most core KDE libraries and applications are coded.

Source code in KBibTeX's repository is formatted following KDE's recommendations and enforced using Artistic Style (astyle):
astyle --indent=spaces=4 --brackets=linux --indent-labels --pad=oper --unpad=paren --one-line=keep-statements --convert-tabs --indent-preprocessor $(find src -type f -name '*.cpp' -o -name '*.h')

Junior Jobs

Looking for easy ways to contribute to KBibTeX? As stability and quality should go before features, try to write patches for bugs in KBibTeX. You can either write a patch for a bug you found yourself, or check the bug database.

Low hanging fruits in respect to writing new code are new online search engines. If the web service has an easy-to-access interface, a seasoned Qt/KDE programmer can write such a module in one evening.

KBibTeX's code is only partially documented. If you have problems understanding certain parts of the code, find out who is the code's author (all source code files should contain author and copyright statements) and contact him/her with your question.

Ohloh

Did you know that Ohloh tracks the development of KBibTeX? It provides an analysis of KBibTeX's development and source code. For example, it knows that KBibTeX is mostly written in C++ and estimates its project cost to about US$ 250,000.
KBibTeX on Ohloh