Add the GeanyCtags plugin

Hi Frank, is it OK to merge this new plugin? It adds support for generating a tag file using ctags for all project files and then querying the ctags file without any tag regeneration. This is mostly useful for really big projects which for which it might be too slow to regenerate tags every time some source is modified (one guy was interested in it at Prague Linux Days and I had this privately from the past).

Please have a look if I have provided everything what is needed by the plugin project - both autoconf and waf build works, I've created some documentation and other files present in other plugins.

(I have yet to ask Enrico if it works on Windows.)
Yes, that's right - ctags writes all the status messages to stderr
(probably because with some flag it can write the generated tags to stdout)
so I don't need stdout. Forgot about the leftover &out - thanks for
noticing.

On Tue, Oct 14, 2014 at 8:07 PM, Colomban Wendling <notifications@github.com
> wrote:

> In geanyctags/src/geanyctags.c:
>
> > +	argv[0] = g_strdup(cmd);
> > +	argv[1] = NULL;
> > +#endif
> > +			
> > +	utf8_cmd_string = utils_get_utf8_from_locale(cmd);
> > +	utf8_working_dir = g_strdup(dir);
> > +	working_dir = utils_get_locale_from_utf8(utf8_working_dir);
> > +
> > +	msgwin_clear_tab(MSG_MESSAGE);
> > +	msgwin_switch_tab(MSG_MESSAGE, TRUE);
> > +	msgwin_msg_add(COLOR_BLUE, -1, NULL, _("%s (in directory: %s)"), utf8_cmd_string, utf8_working_dir);
> > +	g_free(utf8_working_dir);
> > +	g_free(utf8_cmd_string);
> > +
> > +	if (!utils_spawn_sync(working_dir, argv, NULL, G_SPAWN_SEARCH_PATH,
> > +			NULL, NULL, &out, &err, &exitcode, &error) || exitcode != 0)
>
> AFAICT you don't use the output (?), and although the docs don't say it
> you can pass NULL to it if you don't want it.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/geany/geany-plugins/pull/161/files#r18846877>.
>