GSoC/2020/StatusReports/NikitaSirgienko: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2020‎ | StatusReports
(Add more content to Status Page)
(Image update - reduce size for better visibility)
Line 18: Line 18:
=== Comment/uncomment (from execution) cells (T12843 on phabricator) ===
=== Comment/uncomment (from execution) cells (T12843 on phabricator) ===
I have added possibility to Excluding some entries from execution useful for user, for example, when the user experiments with code and want to understand, which variant of code better. Exclusion of entries is more easy for user, what commenting parts of code. Especially, if language of the backend don't allow multiline commenting (for example, in python users comment multiline code via multiline strings). Excluding action can be done from entry context menu, which appears on right mouse button click.
I have added possibility to Excluding some entries from execution useful for user, for example, when the user experiments with code and want to understand, which variant of code better. Exclusion of entries is more easy for user, what commenting parts of code. Especially, if language of the backend don't allow multiline commenting (for example, in python users comment multiline code via multiline strings). Excluding action can be done from entry context menu, which appears on right mouse button click.
[[File:Exlcude from execution action.png|center]]
[[File:Exclude from execution.png|center]]


Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html
Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html
Line 27: Line 27:
It will be useful for visual separation of worksheet.
It will be useful for visual separation of worksheet.
[[File:HorizontalLine 1.png|center]]
[[File:HorizontalLine 1.png|center]]
[[File:HorizontalLine 2.png|center]]
[[File:HorizontalLine Example 2.png|center]]


Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html
Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html

Revision as of 15:45, 26 August 2020

Extend the usability and feature set of Cantor

Cantor is a KDE application providing a graphical interface to different open-source computer algebra systems and programming languages, like Octave, Maxima, Julia, Python etc. The main idea of this application is to provide one single, common and user-friendly interface for different systems instead of providing different GUIs for different systems. The details specific to the different languages are transparent to the end-user and are handled internally in the language specific parts of Cantor’s code.

Though the code base of Cantor is already in quite good shape, there is still room for improvements with respect to the missing features, user experience and functional issues. Given the existence of similar open-source applications like wxMaxima, Jupyter, Octave GUI but also commercial like Mathematica, it is important to address all issues and to add missing features to become competitive with other applications or even be ahead of them.

The idea of this project is not to implement one single and big "killer feature" but to address several smaller and bigger open and outstanding topics in Cantor.

Project mentor: Alexander Semke

Project log

Collapse/uncollapse all entries and remove all entries results

I have added this minor improvement first. It was easy, because Cantor already have a feature for hiding/showing/removing results of executed entry.

Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html

Comment/uncomment (from execution) cells (T12843 on phabricator)

I have added possibility to Excluding some entries from execution useful for user, for example, when the user experiments with code and want to understand, which variant of code better. Exclusion of entries is more easy for user, what commenting parts of code. Especially, if language of the backend don't allow multiline commenting (for example, in python users comment multiline code via multiline strings). Excluding action can be done from entry context menu, which appears on right mouse button click.

Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html

Possibility for adding horizontal line entry

I have added possibility for adding horizontal line entry. It is a minor, but useful feature, which allow add visible horizontal line in worksheet. It will be useful for visual separation of worksheet.

Plog post about it: https://cantorgsoc2020.blogspot.com/2020/06/cantor-new-features.html

Summary

Done

Features

  • Improved the handling of external packages in plot2d and plot3d extensions (T9475 on phabricator).
  • Possibility for adding horizontal line entry
  • Added tooltip notes in settings for better UX (T12492 on phabricator)
  • Collapse/uncollapse all entries (T12843 on phabricator) and remove all entries results.
  • Comment/uncomment (from execution) cells (T12843 on phabricator).
  • Possibility for adding horizontal line entry
  • Improve Cantor’s panels performance and usability.
  • Zoom bar (for more easy zoom changing).
  • Adding a new panel for file browsing.
  • Possibility to organize worksheet structure (T12844 on phabricator).
  • Copy/paste image into entries (for example, markdown entry) or as entries (for example, pasting image as ImageEntry).

Bug fixes

  • Fixed tabulation behaviour in Command Entry (bug №418358).
  • Fixing problems with portability Image Entry
  • Better information from variable manager (bug 409137).
  • Fixing wrong highlighting in R backend: the backend doesn’t distinguish system functions and system constants.

In Progress

Bug fixes

  • Fixing Julia interrupt code: it shouldn’t work as backend restart.
  • Fixing color problems on print, when using a theme with non-default colours
  • Fixing strange problems with plots in Octave backend (bug №408335).

Links to Blogs and other writing

  1. Blog
  2. Proporsal
  3. My commits in Cantor repository