Skip to content

Plugin System

I plan to start working on a merge request soon to add support for Mousepad to load plugins using libpeas. I was waiting on !30 (merged) to land since it would've caused a lot of conflicts. I'm opening this issue to solicit feedback and see if anyone is opposed before I spend much time on it.

It would use libpeas for the loading of plugins and Gobject-Introspection for generating the bindings for non-C languages. It would involve moving most of Mousepad's code into a shared library that is used by a simple main() program.

Advantages:

  • Plugins!

Disadvantages:

  • Increased dependencies (libpeas plus anything its loaders depend on)
  • At some point we would probably want to start promising a stable API so it would make it a little harder to make changes to parts of the headers/API that would be exposed to plugins.

Related: !2 (closed)