"Python is the standard scripting language in graphics world, both for free software as for proprietary applications. Except Photoshop, which has... Javascript. So, for Krita we really want Python scripting! And done right, because we used to have Javascript-based scripting and cross-language-based scripting. But we never had a properly define scripting interface!
In the first place, we want scripts to have access to windows and views, the open images, the layer organization and definition, loading and saving. We want to make it possible to add dialogs and dockers. It should be possible to write color selectors using Python, or manage resources and bundles.
At first, we do not yet intend to give access to layers and masks at the pixel level, but it should be possible to save parts of layers, blend layers together, and modify layer properties such as visibility. But if there's time... Then we'll make it possible to write filters and generators, too."
Implies:
- No editor or debugger
- No safety... we'll need to have a nice default answer for this in the FAQ.
- Access to layer-nodes but not pixel data.
- Access to views.
- Access to GUI.
- Access to resources.
- Access to KoColor and palls.
Gotchas:
- We want it possible to run ad-hoc scripts and create plugins in Python
- The plugins need to be translatable
- We need a way to automatically set the python path to our extensions
Notes:
- This is a 10.000 euro stretcher.
- Only there because people claim that we have an audience for it. Let them prove it.
- Will take a long time to implement.