On Sat, 2013-09-21 at 01:00 +0200, Krzysztof KosiĆski wrote:
- Real script bindings, designed using the "worse is better"
principle of Unix. We currently have a DBus binding, which has some nice features (e.g. language neutrality), but is not very practical or used a lot. We also can't use it for anything even remotely performance-sensitive due to the IPC overhead. Scripting could become a lot more practical if we provided a conventional binding to Python, used it internally to implement high-level features, and provided a scripting console where you can execute commands in the same way as in the interactive Python interpreter. gedit has something similar. In the extreme case, all non-UI functionality of Inkscape could eventually become a library with a Python binding.
I agree +1, I like the idea of keeping the dbus binding, just because with the latest commits we should be able to run more headless than before. But I also like the idea of having python built right in, such that writing a new plugin would be made much easier. Feedback and ownership is critical and I think a group mechanism would be ideal.
An example from my own work. The barcodes plugin doesn't take ownership over the objects it makes afterwards. that means you can't edit it on canvas and you can't script it with say an mail-merge type extension.
Martin,