На оф.форуме тему создал, никто не ответил.
В общем нашёл тему по плагам Geany, там первая ссылка простой плаг как пример.
Переделал его пока так
; Лицензия будет тут ; #include <geanyplugin.h> XIncludeFile "geanyplugin.pbi" ; *plugin - структура GeanyPlugin ; pdata - указатель gpointer, возможно на структуру Procedure.b hello_init(*plugin, gpointer pdata) ; printf("Привет мир из плагина!\n"); MessageRequester("", "Привет мир из плагина!"); ; Выполните расширенную настройку здесь Return #True EndProcedure Procedure hello_cleanup(*plugin, pdata) ; printf("Bye World :-(\n"); MessageRequester("", "Прощай мир :-("); EndProcedure ; G_MODULE_EXPORT ProcedureCDLL geany_load_module(*plugin) ; Шаг 1: Устанавливает метаданные *plugin\nfo\name = "ПриветМир" *plugin\info\description = "Просто еще один инструмент, чтобы сказать Привет мир" *plugin\info\version = "1.0" *plugin\info\author = "John Doe <john.doe@example.org>" ; Шаг 2: Устанавливает функции *plugin\funcs\init = @hello_init() *plugin\funcs\cleanup = @hello_cleanup() ; Шаг 3: Регистрация плагина GEANY_PLUGIN_REGISTER(*plugin, 225); ; В качестве альтернативы: ; GEANY_PLUGIN_REGISTER_FULL(*plugin, 225, Data, free_func); EndProcedure
Погуглил geanyplugin.h, но в нём просто куча инклудов, почти 30 штук. Предположим из них мне нужен только plugindata.h. Как я понял функция geany_load_module() как и в AkelPad получает указатель на структуру *plugin, из которого в примере видны некоторые поля, но мне надо лишь получить дескриптор окна Scintilla ну и как обычно указатель на функцию из Scintilla. Также как и в Notepad++ есть функция подключения плага hello_init() и отключения hello_cleanup(). Ищу структуру, возможно она в plugindata.h.