In another thread http://lists.uvena.de/geany/2012-February/007808.html a couple of things were mentioned about guidelines for plugins to be good citizens. So I thought it worthwhile gathering any suggestions so the docs could be updated in one go.
Items mentioned to date:
1. don't set default keybindings, users will be annoyed if you override their personal bindings. Always let the user tell the plugin what to use. 2. don't spread menu items through the Geany menus, users don't know where to look and if several plugins add things to the same place the menu may become unworkable. You don't know what other plugins the user will enable at the same time.
I add the following for consideration:
3. be aware of the performance, especially if your plugin does something on every keystroke or change or at startup, other plugins are likely to want to as well. Just because the plugin works ok or your computer by itself doesn't mean it will work well when the user combines it with 15 others on their old notebook and they have heaps of files open.
And on the development side, these have been mentioned before ad-nauseum but still need emphasis:
4. make your plugin compile clean with -Wall -Wextra -O2 -Wno-unused-parameter with and without -ansi, and 64bit clean 5. don't use anything not *documented* in the plugin interface, a change in Geany can make your plugin fail if you do. But you are protected against changes in the interface.
Any other thoughts?
Cheers Lex