New Year Calligra Words Sprint

When the streets are covered with snow and ice in many parts of Europe, it’s a good time to sit inside in front of our computers and to improve that software we are sharing here with each other.
With the porting of the apps, plugins & libs part of Calligra to Qt5/KF5 roughly done towards the end of 2015, it is now also a good time to work on features again.

Given a few Calligra developers interested in improving the text-handling modules, we looked into doing a developer meeting (a.k.a. “sprint”) on that quickly, and given January being a good candidate for snow and ice on the streets, we scheduled it for the 4th week-end of January, so the one that just passed.
In the end it was just three of us who could make it, but small can be also better 🙂

A big share of time of the sprint was invested into spreading knowledge about the current text-layout system by its architect Camilla, by explaining and discussing the current design and code.
To apply, test and enhance the learned things about the layout system, we started to draft and to implement support for the concept of text sections (as in OpenDocument Format’s <text:section>) to the system.

While talking about the text-layout system and the data structures, we also looked into the Calligra plugins for the document viewer Okular (learn more about the plugins). We checked and fixed a little the current calculation of the positions of headings for the table of contents. And drafted how to use the layout structure data for the calculation of characters positions on a given page, to finally implement support for text selections and hyperlinks with the plugins.

And with OpenDocument Format engaged people around, we also chatted about ODF-related things a little. E.g. that having a central database where all errors & artifacts injected into ODF files by the known ODF producer software is collected. Because with some N-number of ODF producer software all M-number of ODF consumer software need to each write support for possibly dealing with broken files from all N ODF producer software, and need to know what to care for and how. It might be nice to perhaps just have a single broken-ODF-file-fixup software one could use, so one’s ODF consumer software can simply expect sane ODF files.
While mentioning ODF here: consider visiting Jos’ talks at FOSDEM upcoming week-end, “The Future of OpenDocument (ODF)” and “Eternal Plugfest”.

It happened that due to a date mixup the Krita developer community did a small sprint at the same place at the same time. Which worked out nicely not only for the social parts of the sprint, which we all did together. Also during the working times often we were sitting mixed in the same rooms.
It was also an occasion to learn more about Krita’s OpenGL-based rendering, which could be an inspiration for a new generation of Calligra’s shape rendering system (which I personally am thinking about).

These are the sheets with explanations that I take home with me, next to the digital and mental notes:
WordsSprintJan2016SheetsOnTheDesk

(One day hopefully we finally will do such sketches not on real paper, but on virtual sheets, using Calligra + Krita modules :)) ).

It was a very productive and enjoyable week-end, in a wonderful atmosphere, I am happy we did this meeting.

Thanks a lot to Boudewijn and Irina for being the great hosts to our Calligra Words sprint and for giving us the free accomodation in their home, incl. breakfast, drinks and more, in a family-like way.

This sprint was also enabled by the supporters of KDE e.V., thanks to them to make it financially possible for us Calligra developers to meet up for face2face talking and working.
If you, dear reader, want to do your little contribution to the future of KDE software as well, consider to Join The Game as a supporter of KDE via the KDE e.V. !