Saturday, August 17, 2013

Calligra Author - The Next Step

Looking  Back

Today is one year and 3 days since we announced the Calligra Author project. The aim of the project is to produce a tool that helps writers produce ebooks with extra focus on novels, which are inherently long texts, and textbooks with lots of pictures and maybe dynamic contents like videos.

In the announcement I wrote: "We will make sure that Calligra Author will be a useful tool for all phases of the writing process". We analyzed the writing process together with some writer friends and came up with 4 phases of the process: planning, writing, review and publishing.

Our goal was to provide help to the writer in all these phases, giving him/her something above what a normal word processor does. Our starting point was Calligra Words, the word processor of the Calligra Suite.

The first step was to ask writers what they needed, which we did through a thread in the KDE Forum. The result was that we decided to start with the following features:
  • Planning: -
  • Writing: word count in the status bar and distraction free writing mode
  • Review: Notes, also known as annotations and export to MS DOCX format
  • Publishing: export to EPUB2 and MOBI formats.
EPUB2 is the standard for ebooks in general and MOBI is the format that is used for the Amazon Kindle book reader.

Two weeks ago, we released Calligra 2.7 and the status is that we have finished or almost finished every one of these features. I am very sorry to say that we didn't have time to finish the annotations or the docx export before the feature freeze so these features will be released in Calligra 2.8. But they are basically done now with just some polishing to finish them up.

Features that we have implemented in addition to the originally planned ones are partial export to EPUB3, including video and mathematical formulas, and support for book cover images.

I should perhaps also mention that all of the features above (perhaps except the book covers - I am not sure) are also available for Calligra Words users since they are of a more general nature.

Looking Forward

So... Since we managed to do all we set out to do in the first year, it is time to look into the next set of features.  In short: What do you want next?

I have asked some writers I know and also come up with one or two ideas myself and here is a short list of things that are hot right now:
Scene separators
of different kinds
  • A navigator. This will be a docker in the sidebar that will show you all the headings and let you easily navigate to any place in the text. We will probably also add support for bookmarks and separators (see below) in the same overview.
  • Section separators.  Or perhaps better: scene separators.  This are those small miniature things that you put between your scenes to indicate that something changes but where you still want to remain in the same chapter as before.
    You can see some examples of what we are thinking of to the right here. These were done by Dan Leinir Thutra Jensen, who also wished the feature in the first place.
  • Autocomplete of a limited set of words. This is a specific wish from one writer who wants autocompletion of some names and long words that are easy to get wrong when you write them many times.
  • Wiki export and import. Another specific wish from people who want to edit wiki pages with Calligra Author.This one will almost certainly happen. The export is partly done already and the import is planned. We are also working on a simple wiki navigator that lets you load and save pages in the wiki without help from a browser.
  • Import styles from another document or template. This is useful when you have a book and want to change the visual appearance of the whole text. Instead of tweaking all the styles of the document you would be able to just import all the styles from for instance a nice book template that you found on the web or a friend sent you.
So, what do you want? Are there any other features that you want us to implement? If they are simple enough to do they will probably be put on the list for 2.8, otherwise you will have to wait a little longer. Let us know in the comments or on the feature request thread on the KDE forum!

Finally, you may have noticed that I haven't mentioned anything about the planning phase. I am actually looking at implementing what is done in the Plume Creator or Scrivener or a number of other similar programs.  But this is a really big feature and will not be ready for 2.8. If we are lucky it could be done in a first version for 2.9 (or is that 3.0?).

Tuesday, May 21, 2013

Calligra Author Gets a Distraction Free Mode

I wanted to throw a little light on a feature that just landed in the Calligra repositories: A distraction-free writing mode for Calligra Author and Calligra Words.

The distraction-free mode means that we disable most UI elements and lets the user focus totally on the contents. This was one of the most asked-for features when I did a little survey half a year ago and asked which features that our potential users wanted. I say 'potential' because this was before the first release of Calligra Author and we didn't have any users at all by then.

A few brave souls that are building their own version from the source code have already used it and they report back good results. Here is a picture of a novel being written by Dan Leinir Turthra Jensen using the distraction-free mode.

The feature was developed by Mojtaba "moji" Shahi in a short time, taking a break from developing support for annotations.

As a side note, it's getting time to do a new feature survey. We have almost implemented everything that we got asked for in the first survey. Hot candidates right now are support for Master Documents and we got a feature request for making it easy to insert section separators (from leinir, actually).

Monday, December 31, 2012

New Year Causes Different Things...

Friday, November 02, 2012

Reminder: Calligra Week of Polish

When i write this it's just past midnight on Saturday November 3rd. This means that the Calligra Week of Polish (CWOP) has started.

In my last post I announced the CWOP and described how Calligra users of all kinds can register their issues so that the developers will find out about them. I have now also added a new thread at the KDE forum for users who are not comfortable with bugzilla and don't have a wiki account at the KDE community wiki.

The coordination between the developers will be done in the #calligra IRC channel at  Well met!

And where will I be during this weekend?  I will take my son to a tabletennis tournament. If there is internet there, I might look in and chat a little.  Otherwise I will work offline and then go online again during the workweek.

Tuesday, October 23, 2012

Calligra Week of Polish

This is an announcement of the Calligra Week of Polish.

We in the Calligra team have grown tired of reviews saying things like "Calligra has great potential but is not mature yet.". So we decided to take the step from potential to maturity by doing the

Calligra Week of Polish

This week start at Saturday November 3rd, and ends at Saturday November  10th.

Until then we have time to collect as many issues as possible and either register bugs at the KDE Bugzilla or put them in the list at the page above.

Did I mention that this is about polishing the applications of Calligra during the Calligra Week of Polish? ;)

Saturday, September 22, 2012

MOBI export in Calligra Author

Here is a short update on the work towards Calligra Author 2.6, to be released in December.

Last week Calligra Author got support for export to MOBI, the eBook format used in the Amazon Kindle (and nothing else). This is mostly the result of work of Mojtaba Shahi Senobari with some assistance from me.

This work was not as simple as the EPUB export because the MOBI format is undocumented. It also uses some tricky compression scheme that we had to implement.

This means that 3 of the 5 target features of Author 2.6 are now done, leaving annotations and distraction free writing mode as yet unfinished.

MOBI export will also be available in Calligra Words.

Wednesday, September 05, 2012

More Progress in Calligra Author

Last post I wrote about the decided new features that we will include in the next version of Calligra Author.  Here is a quick recapitulation:
  • Export to EPUB 2 format
  • Export to MOBI format
  • Word count in the status bar
  • Distraction free writing mode
  • Annotations (a.k.a. Notes)
All of these were selected by popular vote by the future users in this thread of the KDE forums.

So, I thought I'd go through the ones we have worked on in a little more detail this time.

Export to EPUB2

The EPUB2 filter is more or less done. We can in Calligra Words and Calligra Author choose the EPUB2 format in the export file dialog and get a perfectly validated ebook. Here are the features that we support:
  • Convert an ODT to EPUB 2.0.1 (duh!)
  • Handle all text features (more or less - drop caps aren't handled yet) including tables and even tables in tables.
  • Split the odt file into chapters. This is done somewhat heuristically now by splitting at the paragraphs that have a page break.
  • Handle paragraph and text styles and convert them to CSS.
  • Handle ODF style inheritance and default styles and convert that to CSS too. This is somewhat tricky since HTML and CSS doesn't support inheritance between styles.
  • Include images into the ebook.
  • Convert images in unsupported vector formats, namely WMF, EMF, and SVM and convert them to SVG.
  • Handle internal links and bookmarks.
  • Handle footnotes and endnotes. Footnotes are created at the bottom of each chapter and endnotes get their own chapter (i.e.xhtml file) inside the ebook.
I would say that's a pretty ok list of features, especially converting the images from unsupported formats to SVG.

What is not supported yet and we don't know how to handle yet is to add a cover image to the book. But we will figure it out before the release.

Export to MOBI format

Mojtaba Shahi is working on this presently and expects a working prototype this week. Naturally we are reusing most of the code from the EPUB filter for this.

The tricky part is that MOBI itself is an unsupported format which we have to reverse engineer. Lucklly enough we have other free software to look at like Calibre.

Word Count in Status Bar

Many people who asked us for this were not aware that you could already get some extensive real-time statistics from Calligra Words. There is a statistics docker that can show word count, character count, Flesch reading index, and many other numbers. What did not work so well was to have this laid out horizontally in the status bar.

Shreya Pandit has now created an adaptable statistics docker that lays out it's content depending on where it is.  Here you can see a screenshot at the current state of it.

Note that there are a few things that we still want to fix: The text is a bit small, the title "Statistics" should go, there is too much vertical space. But in general it works now.

There are some discussions in the Calligra community right now about making all of the contents of the current statusbar into dockers and then make the lower dock widget the new status bar instead. That would make the status bar totally configurable but we will of course provide good defaults.

Distraction Free Writing Mode

This is what I am working on right now together with Gopalakrishna Bhat. we have some technical challenges but we are pretty confident that we will be able to produce something that works for the next release. The perfect solution may have to wait until the next version after that, but we will see in the next two weeks.

I will be back with more about this in the next report.


We have not started on this feature yet. Camilla Boemann, the Calligra Words maintainer, wants to do some refactorings in the deeper layers of Calligra and the timing was not right to work on this.

Naturally there are many other features being developed in Calligra at the same time, as well as bug fixing. So we have to be good Calligra citizens and wait for library work to be finished before we start on the user-visible layers.


Well, there you have it. In the next update I hope to be able to report that the MOBI export is done and talk about some features there.

And if you want to discuss the features -- present or upcoming -- of Calligra Author, please do that in the forums: for Calligra Author specific threads and for more general Calligra threads.