Minutes of the design meeting 2018-Jan-31

Michel RENON renon at mr-consultant.net
Sat Feb 3 19:58:12 UTC 2018


Hi,

Le 31/01/2018 à 21:48, Heiko Tietze a écrit :
> [...]
> GSoC
> 
>   * Full list of ideas https://pad.documentfoundation.org/p/UX-GSoC_Ideas
>   * Public list https://wiki.documentfoundation.org/Development/GSoC/Ideas#User_Interface

Here are some suggestions based on my recent experience in teaching 
LibreOffice and writing a python macro :



Impress : work on "papercut" bugs
----------------------------------


1 - Animations sets for a text box with several paragraphs don't affect 
new paragraphs (not inherited)
https://bugs.documentfoundation.org/show_bug.cgi?id=57581

This is the most annoying problem that new users face :
   - they create a slide with few lines of text,
   - they add an animation on the text, to make it appear line by line
   - they test : it works correctly
   - they add one line of text (inside or at the end)
   - they test and boom... the animation is "broken"
   - they make a pause, then... close impress and open powerpoint...



2 - Editing: Text spacing changes when click in textbox
https://bugs.documentfoundation.org/show_bug.cgi?id=89060

It is a subtle but very annoying visual effect.






Python macros
----------------


I had to create a macro embedded in a file.
As I had not written basic for a long time, I tried to write it in python.

The fist problem is that on Ubuntu, it is necessary to install a 
specific package 'libreoffice-script-provider-python'


The second problem is that, by default, there is no tool to integrate a 
python macro in a document.
I found the APSO extension [1] that allows that and is very useful.

I found some difficult points in writing python macro with that extension :
   - after modifying a python script, you have to close and re-open the 
odf file
   - some inline documentation is missing : about API, and some sample code
   - the context (available via XSCRIPTCONTEXT) is missing some API, 
compared to basic





So here are my suggestions for GSoC :
   - allow an easy activation of python support : a simple button would 
download and install all necessary packages
   - integrate the functionality of APSO (to allow embedding/managing 
python script in odf file)
   - remove the need to re-open the odf file before using a new version 
of python script



Other points can be done directly in the current extension :
   - add some inline documentation about API [2]
   - add inline documentation on both ways to use python script :
     - an external script that connects to LibreOffice
     - an internal script that get called by menu/button
   - allow to create scripts empty or with comments (that provide 
minimum documentation and good practice)
   - add a library of sample code (a list of "how-to ?"), that can be 
easily copied in script files


Adding API to the context (available via XSCRIPTCONTEXT) can be done by 
working on LibreOffice code :
/usr/lib/libreoffice/program/pythonscript/py






Cheers,

Michel






[1] 
https://extensions.libreoffice.org/extensions/apso-alternative-script-organizer-for-python

[2] based on very useful page 
https://wiki.openoffice.org/wiki/Python/Transfer_from_Basic_to_Python


More information about the LibreOffice mailing list