2009/6/28 Andreas Mokros <am@medienpensionat.com>
Hi.

I started to write a plugin for auto-completion of haxe-code. The
Haxe compiler has a feature that it compiles up to a certain point
in a file and then spits out a list of possible classes and types
for the file at that point, see here:
http://ncannasse.fr/blog/haxe_completion
There once was a plugin for using it called hxDev (latest version
hxDev2):
http://lib.haxe.org/p/hxDev2
But it doesn't compile with the newest plugin-API anymore. I couldn't
really figure out what to change and where to make it work, so I
tried to start from scratch. Thanks to your nice plugin-API and good
documentation of it I managed to get a running plugin in a couple of
days, although it's my very first attempt in GTK-programming.

Now I have a couple of questions:
- Would it make sense to add it to the geany-plugins repository
 (because it's very language-specific)?
- I'm not sure what kind of build-system to use now. ATM I simply added
 my plugin to wscript and use waf. Is waf deprecated now with the new
 merged plugin-build-system? Is a makefile or a autogen.sh script
 better?
- The plugin depends on editor-notify of PluginCallback. Is it OK to
 add that signal globally (will be called for all documents then,
 right?) and then check for haxe-files or would it be better to add
 that signal only when a haxe-file is active?
- I saw a property "type" in the GeanyProjects-struct that seems to
 mean that projects can be extended by plugins. Is there some
 documentation for this? It would be really nice to be able to add
 some options for haxe-projects. I also read in a post here that there
 is a build-system-upgrade in the making with lots of options that can
 be set from projects. Maybe this would do already. Any plans when
 this will be merged in the trunk?

The build-system upgrade is making the build menu fully configurable from projects and/or preferences overriding the defaults, allowing both menu item labels and commands to be configured.  I'm not sure if this will help you, although extra filetype configurable commands may be helpfull.  Currently the structures and functions relating to this are not part of the plugin api, more discussion would be needed about extending the api (pro more capability for plugins, con more to maintain and limits on changing Geany internals, potential unexpected interactions between plugins and configuration).

It is progressing, although it is taking longer than expected to untangle interactions with other parts of Geany.  A prototype should be available on the build-system branch late next week, watch this ML.  With such a big change I guess a bit ;-) of testing will be needed prior to merge to trunk.

Cheers
Lex


Best regards and thanks for making this great editor.

--
Mockey
_______________________________________________
Geany-devel mailing list
Geany-devel@uvena.de
http://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel