Currently, Geany plugins can only be written in C, Python, and Lua.
Plugins can be written in Vala, see https://github.com/geany/geany-plugins/tree/1.38.0/multiterm/src for example. That plugin was removed because it was never updated from GTK2, not because of anything Vala related AFAIK.
I should make it clearer. Please provide up-to-date bindings for Vala. Don't you expect the users to write the vapi files for Geany headers themselves? It's possible to write Geany plugins in Vala but it's no way the same level support as Python and Lua. The vapi files should be **_provided_** and **_maintained_** by the Geany project, just like what you are doing with Python and Lua. Btw, the vapi files the author of the plugin you mentioned that he translated manually himself from Geany headers, are several years old and have never been updated to sync with the latest Geany headers!
The vapi files should be provided and maintained by the Geany project
There is no "should" in a totally volunteer project, if someone wants to contribute something they will, otherwise that thing won't exist in teh project.
IIUC the Geany build scripts can build the GIR from the Geany API. [This](https://github.com/kugel-/peasy) project provides it for Python to access Geany and (presumably by vapigen) a vapi all mechanically, not hand built.
Note that IIRC the reason Geany doesn't actually install the GIR file is that there (was) not enough testing regarding its quality. And also that the only *direct* consumer would be Vala, as other languages would still require a loader ([Peasy](https://github.com/kugel-/peasy) being the obvious candidate).
I don't know how many plugins exist using Peasy, or basically how tested is the GIR file; but if it's tested enough and has appeal, we could install it. We probably would *not* commit to any stability there (yet), but that might be acceptable to most (and I don't mean we'd willfully break it, but that we probably wouldn't carefully *not* break it, at least not until it shows some actual users).
github-comments@lists.geany.org