Hello everyone,
this is the sixth and the final post about the progress in my GSoC project. I want to present an overview of what was done in the last couple of days and to also provde the overall summary of the project.
The last phase of my project was about but fixing. There were several bugs reported earlier already and I selected seven bug to be fixed as part of my GSoC project. Those bugs are the most important ones and addressing those issues perfectly fits into the overall idea of my project to improve the usability of Cantor. Out of those 7 bugs, four were resolved. More on this below.
The first bug was about the tabulation behaviour. The tabulation in Cantor worked always as the auto-completion, also even if there was no need for the auto-completion, for example in the beginnig of the line. Now it works better. If the auto-completion logic says there are completion results, the tabulation works as the completion but if there're no completion results, the tabulation works as expected and the cursor is moved forward. Also, backward tabulation with Shift+Tab has been added and the multi-line tabulation is now supported, too.
The second bug was a problem with portability of Cantor's project files that have Image Entries. The image entries didn't store the original image in the project file but only their paths. So, if the project file was copied to another computer or the image file have been deleted, then the user didn't get any images in the worksheet after project opening. Now the image entries store the actual image as part of the project.
The third bug was about a wrong highlighting in R for functions and constants. Cantor didn't distinguish well between the constants, for example "pi", and functions, for example "abs". I improved the entire highlighting logic for R in Cantor and such problems have gone now.
The fourth and the last bug that was resolved recently was actually a feature requirement for variable manager in Cantor. For big variables, Cantor showed in the variable manager the text "big variable" which is not really informative. Now, in stead of this text the actual size of the variable in Bytes is shown for languages wehre it's possible to extract this information (Octave, Python, Julia).
That's was everything related to the bug fixing that was done in the final part of my GSoC project. Looking back at what was achieved this summer, all planned new features were implemented and the most relevant bugs were fixed. The project has reached its original goals. Even though the actual GSoC is considered to be done now, also because of the time frame, I continue invastigating now how to adress the still unresolved bugs. More on this maybe in another blog post later.