Tuesday, April 01, 2008

SpeedCrunch 0.10 Released!

After about 4 months of very strong dedication (and I mean it), a new version is out there. You can get it as usual from the project website download page. NOTE: now there is also a portable edition available in addition to the normal installer, please read the instructions on the page. There, you can also read the major changes in this version (box on the right). If you're really interested, you can always read the changelog or, why not, the list of all the bug fixes and enhancements registered in the issue tracker.

My personal very favorite new features are:
  • the ability to calculate, inside an immediate tooltip, the result of the selected text (in addition to the calculate-as-you-type feature that SpeedCrunch introduced a long time ago)

  • the possibility to save and restore sessions, keeping your variables between them. It also makes it possible for you to send your calculations to someone. In addition, it is also possible to run a batch calculation from a file, as well as the text export that was broken in the previous version

  • the ability to change the language of the application on-the-fly, with no need to restart, as well as a close to complete support for right-to-left written languages (Hebrew, for now, but I'd love to be contacted by an arabic or whatever translator)

  • automatic generation of high contrast colors to be used on the syntax highlighting of the expression being entered, adapting automatically to the system background and foreground colors, thus removing the need for a human (tedious) reconfiguration of the colors

  • a new dock window serving as a browsable mathematics manual, with geometry figures, quadratic equation, etc, allowing the immediate insertion of the formulas displayed in the book pages into the expression editor

  • reorganized menus and virtual keypad

I need to mention this. There's a sort of an "easter egg" in SpeedCrunch that just a few people seem to know about. If you press Ctrl+Space, you'll get a popup with all the constant categories. If you press Enter, Return or Right Arrow on one of them, a new view will slide in the popup - the list of constants belonging to the category you chose. Pretty handy for those who use the calculator through the keyboard and need frequent and fast access to the constants they need.

I'd like to say a huge thank you to Wolf Lammen for his active development, especially on the math engine and parser; Petri Damstén for his original idea of the math book and prototype implementation; Marco Wegner for his testings, tips and work related on our translation tools; Yonathan Avraham for his help on the RTL support; Johan Thelin for being always available to help me with my deep questions about Qt and packaging the application on Windows; Ariya Hidayat, the original author, for his important contributions on the last days and what not (and we both started working for Trolltech today, life's funny sometimes, hurray!).


I hope you enjoy the new release, it should be the most complete and polished release ever.
For the Linux users, a dynamically linked portable edition will be shipped soon as well (that shall work on any Linux distribution with Qt 4.2 or higher version), and requiring no installation, just like the new Windows Portable Edition. That's it for now!

Saturday, March 22, 2008

Some more mentions

A quick googling allowed me to find some more reviews about SpeedCrunch on:

Lightweight Linux Review
Go2Linux
nixCraft

Wednesday, March 12, 2008

SOTD



SpeedCrunch trunk running on KDE 4. The new (optional, as almost everything else in the application) status bar and the new automatically generated syntax hilighting colors are shown. Not shown is the new feature that allows the user to select a part of the expression being inserted and get its result immediately in a tooltip (just like calc-as-you-type). The math book also got a new style sheet. I hope that in the future we can adapt it automatically to the system colors as well (the only tricky part is to make images adaptive).

Thursday, February 21, 2008

Generating syntax highlighting colors based on system colors

For quite some time it came to my mind that the colors used for syntax highlighting should be automatically generated by the application, removing the need of forcing the user to manually edit each and every color everytime a new color scheme is chosen for the whole system. In the SpeedCrunch case, there's at least the need of choosing 3 colors for the expression editor syntax highlighting: variables, functions and numerals.

The problem is when the text box background or the text color is not the expected (generally white and black, respectively). So I started playing with some code in order to try to reach an easy and acceptable enough algorithm that could make SpeedCrunch adapt to any text and background color combinations (or at least the most common and wise ones). Certainly, predefined color sets (that also include and overwrite the system background and text colors) shall always be provided, in order to ensure that nobody needs to switch off syntax highlighting.

Let's look at the examples. The surrounding color represents the system base color, used for text input boxes, for instance. The first colored square represents the system text color. The remaining squares are the generated colors for highlighting. If you see no surrounding color, that's because it's white.

KDE / Windows * / MacOs X / BeOS


Solaris


CDE


Digital CDE


Black on light grey


Blue on almost black


Blue on black


Blue on dark blue


Green on black


White on black


White on dark blue


White on light grey


Yellow on blue


All the three squares to the right of each image where generated from the first one from the left and the background color. It seems to me that even in "dummy" color sets like in the last example, the algorithm performs really well. I guess I'll introduce this in SpeedCrunch for 0.10.

Edit: this feature is now in SpeedCrunch's trunk. 0.10 will come with it.

Tuesday, February 19, 2008

0.10 Preview

Next release won't take long to hit the streets and is reaching a stable point. Here's a preview screenshot tour:


Radio groups for angle unit and number base selection are gone now, in order to release some screen space. The very same options are available in a quickly reachable menu inside Settings and are also available through even faster keyboard shortcuts. Note that the previously available Clear and Evaluate buttons are also gone. Their actions are now available in the optional virtual keypad and through faster keyboard shortcuts as well.

For those who really like to preserve space, it's even possible to hide the menu bar. To show it again, a keyboard shortcut is available to perform the action (a tool tip is shown to warn the user about this).
Let's now look at a full demonstration of all the optionally available visual elements.

You can see all the dock windows that were already available (nested and tabbed on the left and right side), a reworked virtual keypad and a new toy to play with: a mathematics book (floating on the right). One can browse it like a website and insert the formulas directly into the expression editor. If the required variables are already defined, the result will be calculated and presented.

And of course you can hide the virtual keypad again in order to get more space available for the docks. In the example, we can see a page for the quadratic equation. Currently there are additional pages for various 2D and 3D objects. If you want to contribute with more pages to enrich our book, just contact us. Physics and other areas are also welcome, not only plain mathematics. The pages are trivial to design (you can easily do it with the lamest text editor). We'll help you out with your first one. I must say they are also translatable (I always try to make sure everything is translatable :) So the book will be available in other languages, just like the rest of the application.

In 0.10 it will also be possible to run SpeedCrunch in full screen mode (additionally to the stay-always-on-top mode). The mathematical core was also very much reworked and is better than ever. There are plans to introduce rational and complex numbers to the application. Not sure if for 0.11 or later, since 0.11's main focus will be a complete port for KDE4. Also still possible to be ready for 0.10 is the "portable" (as in take it with you) build. So then you just need to copy a directory to your flash drive and run your favorite calculator anywhere :)

Monday, January 14, 2008

SpeedCrunch with Oxygen style

Work is continuing to bring SpeedCrunch closer to become a real KDE 4 application. In the mean time, with the recent launch of KDE 4.0 that sports a new widget style, Oxygen, it's also worth to mention that SpeedCrunch already integrates nicely (with respect to appearance) and does not feel out of place, as evidenced from the following click-to-enlarge screenshot:




Saturday, December 22, 2007

SpeedCrunch runs on Maemo-based tablets

Jean-Luc Biord announced the availability of Qt4 for Maemo tablets. Maemo provides an open source development platform for Nokia Internet Tablets and other Linux-based devices. Since Qt4 now runs on it, applications based on our beloved popular framework can now be compiled to work on nice handheld devices:
A first application is already ported, it's SpeedCrunch a fast, high precision and powerful desktop calculator...