valagimpgobjectgobject-introspection

where can i find vala binding for libgimp?


Where can I find vala binding for libgimp?

Or, can someone point me to clear (complete) instructions to get it from gimp source code? The instructions at https://wiki.gnome.org/Projects/Vala/Bindings are really too light for me.


Solution

  • There are no Vala bindings for GIMP at this time. GIMP has had it "cross-process", "cross-language" procedure calling for long before gobject introspection (GIR) was in place, and that is exposed as the Procedural Database (PDB), which can be browsed at GIMP's help menu.

    However, these PDB calls have never been re-written to take advantage of GIR, and can not be accessed in this way. There have been over the years several language bindings for GIMP using the PDB, all of it but for Python's and Script-fu had fallen unmaintained over the years. GIMP-Perl was long lived, and used to even be packaged in some Linux distributions. Other than that, there have been at least experimental bindings for Java and Ruby.

    On the other hand, all image and pixel manipulation being made in current GIMP (the 2.9 development branch, soon to become GIMP 2.10) is made through GEGL (Generic Graphics Library). GEGL is a modern gobject library that can be used with gobject introspection bindings, and will work from Vala using the instructions on the page you linked in the question.