https://bugs.documentfoundation.org/show_bug.cgi?id=171582
--- Comment #3 from Valentin <[email protected]> --- Thanks for the quick responses. Yes, there are quite a few resources already, but as I wrote they could be made easier accessible and more complete. There is - as you mentioned: https://wiki.documentfoundation.org/Development/Extension_Development - Links out to external inofficial repositories, some of them no longer actively maintained, and official resources in the wiki. I will list the official pages that are linked from here below - https://wiki.documentfoundation.org/Development/Extension_Development/Python_Extensions_Development - very incomplete, contains some info about executing Python code in LO (remote scripting), but nothing regarding registering an extension, how to use uno, etc. - https://wiki.documentfoundation.org/Macros/Python_Guide - Some infos about macros that can be transferred, but not too detailed as well. - https://wiki.documentfoundation.org/Macros/Python_Design_Guide - The most extensive, but also incomplete (drafts; sometimes very old content), and a mix of general Python best practices and LO-specific information that makes it hard to tell what is relevant - Blog posts in the dev blog: https://dev.blog.documentfoundation.org/2023/11/25/libreoffice-extensions-with-python-part-1/, https://dev.blog.documentfoundation.org/2023/12/14/libreoffice-extensions-with-python-part-2-debugging/ what I have in mind would be a more comprehensive guide, the logical place for it would probably be https://wiki.documentfoundation.org/Development/Extension_Development/Python_Extensions_Development A rough outline could be: - Setting up the development environment, remote scripting - Introduction to uno: commonly used patterns, information on the API (how do I know which objects exist and what attributes they have) - Introduction to extensions: what makes up an extension, an example/template for a minimal installable extension - Refining the development process: Debugging. testing and external dependencies (pythonpath) - User interfaces: programmatically and with GUI helper tools, accessibility - Advanced topics: Assigning keyboard shortcuts, adding menu entries, user settings, running tasks concurrently without blocking the main thread... I'm sure there is more, but I hope this helps to clarify where I'm coming from and what after the fact I think would have made it easier for me to get started. -- You are receiving this mail because: You are the assignee for the bug.
