KDE for scientific work

Cirkuit 0.4.2 release announcement

Version 0.4.2 of Cirkuit has just been released. Two major bugs have been fixed:

and additional bugs that could lead to segmentation faults are also fixed now.
A part from bugfixes, there is one change in the user interface: the status bar has been removed. I remember reading a discussion on plasma-devel about status bars in general, and I realized that the status bar in Cirkuit was really sub-optimal. For example, error messages were displayed on the statusbar only and they could easily be unnoticed. Now, a KMessageWidget is used to notify the user of preview generation events. I think it is quite an improvement over the statusbar: the messages are much more visible now and the user is still not required to click anything to go on with his work.
A couple of screenshots showing Cirkuit without the status bar and with active messages:
As always, you can find the release announcement here and the sources here.

Qalculate backend merged

Yesterday the Qalculate backend for Cantor has been merged into master, which means that it will be included in the upcoming SC 4.8 release. Looking at the activity on the repository, it looks like the Scilab backend has also been merged, making Cantor even more versatile. The Qalculate backend offers interesting features like:

  • customizable functions
  • units
  • arbitrary precision
  • plotting
You are encouraged to refresh your Cantor build and test the new backends. Head over to the project page and get the sources.

Progress on Qalculate backend for Cantor

This is a follow-up of the previous post about the Qalculate backend for Cantor. Thanks to the work of Martin Kuettler, the backend is already in a pretty good shape for inclusion in SC 4.8. The majority of the supported extensions has been implemented.

In the screenshot below, you can see the “Variable Manager” in action, with a trivial example of unit conversion

Another extension that has been implemented is plotting.
Additionally, some calculus and linear algebra operations can now be done with the help of the GUI.
If you want to test, checkout the qalculate-backend branch from the Cantor repository.
And again, a big thank you to Martin for working on this!

Qalculate backend for Cantor

A very popular request on the Qalculate forums is a port of the KDE3 interface to KDE4. While there is no progress that I know of on this task, there is now an alternative for KDE users: using Cantor as a graphical interface.

As some you already noticed, I have recently pushed a new branch, called qalculate-backend, into the Cantor git repository. The backend was originally created by Milian Wolff and recently I have also been working on it. The main functionality of the backend is already implemented, as you can see from the screenshot below.

Some work on the help system has also been already done, but it’s not complete yet:

What is still missing, compared to the other backends already available, is the ability to support LaTeX output, variable management, linear algebra support (to guide the user in the creation of vectors and matrices), syntax highlighting and tab completions.

If someone is interested in contributing, please leave a comment below! The target would be to implement most of these features before SC 4.8 and merge the backend into git master.

Cirkuit 0.4 released with many new features

Hello planet,

it’s been quite a long time since the last post, I’ve been extremely busy at work lately. I am pleased to announce a new version for Cirkuit. I’ve been using it quite a lot lately and I think it’s ready for public consumption.
Here’s a showcase of the main new features:
  • the preview widget has been completely reworked. Now it is possible to zoom in/out the preview or you can ‘Zoom to fit’ like in the previous releases of Cirkuit. This can be useful when you work on large figures and you want to work on some small details. Now you can zoom in the desired area and track the changes there easily. Additionally, the generation of the preview has been optimized and should be now much faster than in previous versions. The resizing of the widget is also now smoother and faster.
  • The templates used by Cirkuit to generate the preview are now editable. They can be configured with the new ‘Template manager’, which supports Get Hot New Stuff so that you can share and download new templates. This feature is mostly interesting if you want to use some LaTeX package inside your figure. You can now simply edit the template and add custom \usepackage instructions.
  • Are you particularly satisfied with the figure you just created with Cirkuit? You can now share it with the community via the built-in GHNS support. You can also download the diagrams shared by other users.

  • The keyboard shortcuts and toolbar are now fully configurable, so you can now redefine the shortcuts to generate the preview, export it and so on.
  • Especially interesting for developers, a new backend system (similar to the one used in Cantor) has been implemented. This means that it’s fairly easy to generate a new backend and add it to Cirkuit. As an example. a new PSTricks backend has been created and added in this release.
  • The help system has been also improved, providing the correct documentation for the currently used backend (if the backend supports it)
In addition to these new features, several bug fixes and minor improvements have been also implemented. So, get the sources here, test the application thoroughly and file bug reports and wishes at The source code is hosted on

New features for Cirkuit

Good news everyone!

a major update of Cirkuit is approaching with a lot of bug fixes/improvements on existing features and of course a whole bunch of new features.


  • a much improved preview widget with variable zoom levels
  • manuals and examples of each backend can be accessed in the main interface
  • improved multi-threading -> Cirkuit generates the previews faster
  • improved parsing of log files and error handling
  • increased usage of K* instead of Q* classes for a better integration with the KDE environment
  • redesigned configuration dialog

New features:

  • a new backend system (heavily inspired by Cantor) which will make it much easier to write new plugins for your favorite graphic tools
  • new template system with GHNS (Get Hot New Stuff) support
  • you can now share your figures with the rest of the community via GHNS (the idea would be to create something along the lines of Tikzexamples)
  • configurable keyboard shortcuts and toolbars

Just a screenshot to show off a new feature:

In the coming days/weeks I’ll add new posts to explain the new functionality in detail. In the meantime, you can compile latest master from and try the new features yourself. For any bug/wish, please use Stay tuned!

Cirkuit released

Cirkuit has been updated to version The main differences with respect to version 0.3 are:

  • Added possibility to export to TeX source
  • Can export to GIF
  • Fixed a bug that caused wrong syntax highlighting detection in Kate
  • Correct escaping of mathematical expressions in the Gnuplot backend
  • Fixed a bug that prevented the user to overwrite an exported file even when the user has confirmed that he wants to overwrite it
  • Fixed compilation issues
  • Improved localization
  • Various minor bugfixes

Additionally, the migration of Cirkuit to the KDE infrastructure is now completed. This means you can now find the code at, you can submit bugs and feature requests to, and you can use to propose patches. From now on please use these tools, so that bugs, patches and feature requests do not get lost in comments or mails. Thanks to the KDE sysadmins for the great job!

Introducing Cirkuit

Hello Planet!

in this post I would like to introduce another project I have been working on lately: Cirkuit. It was born as a KDE interface to Circuit macros (hence the name), a great set of macros that can be used to produce high-quality diagrams typically (but not limited) for inclusion in a TeX/LaTeX document. The main purpose of Cirkuit was then to provide a “live preview” of Circuit macros code and to export the result in various formats (PDF, EPS, SVG, PNG, JPEG).

However, since I used also other graphical tools to produce graphics for my publications/presentations, I wanted to add support for other “backends” in addition to Circuit macros. At the moment, there are two additional working backends: TikZ/PGF and Gnuplot. So, it is now possible to write TikZ and Gnuplot code and get a preview of the result. The interface in based on the Kate part and so it also supports syntax highlighting. Here are a couple of screenshots:

Notice the use of LaTeX in both the examples to nicely format the legends/symbols.

Cirkuit just moved to (thanks to the sysadmin team). If you are interested in it and want to check out/contribute code, visit the project page.

Advanced calculator runner

Hello Planet!

since this is my first post on the Planet, I’ll shortly introduce myself and my activities in KDE. My name is Matteo and I am the maintainer of the Qalculate plasmoid and runner since SC 4.5. I am also the founder and maintainer of Cirkuit, a KDE app to produce publication-ready graphics using different backends (TikZ, Circuit Macros, Gnuplot).

In this post, I would like to describe some features that have been introduced in SC 4.5 (and polished for SC 4.6) in the Calculator runner. The reason for this post is that apparently many people are not familiar with many of the features offered by the Calculator runner since 4.5.

First of all, how do you use the runner? Simply press ALT+F2 and type a mathematical expression with a ‘=’ sign at the beginning or at the end of the statement, as shown in the figure below.

Since KDE SC 4.5, the calculator runner has an optional (compile-time) dependency on libqalculate. So, if you compiled kdebase with libqalculate support enabled, the runner has some “advanced” features, like unit conversion, exchange rates, equation solving, and many more.

This means that you can perform calculations involving Newton’s laws of motion or Ohm’s law just by pressing ALT+F2 and typing the expression (see pictures below).

You can’t remember the derivative or integral of a certain function? This can also be accomplished by the runner:

You can also solve equations:

You can find out additional features at the Qalculate website. I will write an additional post about the Qalculate plasmoid, illustrating more features of the Qalculate engine. Feel free to suggest improvements in the comments.