This demo proxy does not actually do anything useful. It simply loads
pseudo-plugins from an ini-style file. The point is that there will be a plugin
in the PM dialog for each ini. Each ini-plugin also causes a menu item to be
generated.
There is no need to do it differently as Linux here, and it confuses the
autotools based compilation of geany-plugins which installs to libdir/geany
unconditionally.
This will allow plugins to link against the core when accessing API
functions, now that the macro/struct/funcptr stuff is gone.
Also convert the helper libraries into Libtool helper libraries as
linking a shared library against static libraries is (apparently) not
portable.
Add rest of headers needed for declarations of all public API
functions. Add HAVE_PLUGINS define to geanyplugins.h since some headers
need this and it should always be valid for this header.
geanyfunctions.h left for source-level backwards compatibility for
plugins which might `#include` this header directly. I don't know why
they do it, but some Geany-Plugins do this.
The export plugin uses the pow() function from libm without linking against
it. It has worked so far because Geany itself has a link against libm, but
should that be removed in the future, this would fail to resolve symbols.
Signed-off-by: Chow Loong Jin <hyperair@debian.org>
Signed-off-by: Colomban Wendling <ban@herbesfolles.org>
Split ctags and tagmanager sources, as follows:
tagmanager/ctags: the parsers, more or less upstream CTags;
tagmanager/mio: local MIO library copy;
tagmanager/src: actual tagmanager sources.
avoid having to type the function pointer names manually.
E.g. plugin_add_toolbar_item(...) is expanded to
p_plugin->add_toolbar_item(...).
Note: For now, building on Windows or with Waf needs genapi.py to be
run manually when adding plugin API functions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3305 ea778897-0a13-0410-b9d1-a72fbfd435f5
Siamashka (thanks). It was adapted from the SVN Diff plugin.
Currently it supports SVN, CVS and GIT.
Fixed GTK warnings when the current file has no filename and when
the current directory has no version control system.
Made some refactoring changes to make the VC_RECORD struct contain
all necessary attributes about each version control system.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2048 ea778897-0a13-0410-b9d1-a72fbfd435f5
Remove compiler specific flags.
Add configure option to specify the path to libvte.so.
Remove many unnecessary configure checks.
Stop configure if msgfmt was not found(gettext not installed).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1961 ea778897-0a13-0410-b9d1-a72fbfd435f5
keybinding support will be added later.
Add plugin functions for inserting text into the current document.
Add plugin support for disabling a menu item when no documents are
open.
Destroy plugin_fields->menu_item on unloading if set by a plugin.
Use G_MODULE_BIND_LOCAL for plugins to prevent symbol shadowing by
other modules, and to help detect unresolved symbols at loading time.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1734 ea778897-0a13-0410-b9d1-a72fbfd435f5
Add some function pointers to the plugin API (for the class builder).
Don't use G_MODULE_BIND_LAZY when loading plugins otherwise we can
potentially get unresolved symbols at runtime, causing a segfault.
Capitalize 2 menu item labels.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1659 ea778897-0a13-0410-b9d1-a72fbfd435f5
/lib/geany are loaded at startup. Windows support will be
added later.
Added Demo plugin (currently installed by default), which adds an
item in the Tools menu.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1643 ea778897-0a13-0410-b9d1-a72fbfd435f5