Un exemple complet d'extension, qui ajoute une commande /double affichant deux fois les paramètres passés sur le canal courant (d'accord ce n'est pas très utile mais ceci est un exemple !) :
#include <stdlib.h>
#include "weechat-plugin.h"
char plugin_name[] = "Double";
char plugin_version[] = "0.1";
char plugin_description[] = "Plugin de test pour WeeChat";
/* gestionnaire de commande "/double" */
int double_cmd (t_weechat_plugin *plugin, char *serveur,
char *commande, char *arguments,
char *handler_args, void *handler_pointer)
{
if (arguments && arguments[0] && (arguments[0] != '/'))
{
plugin->exec_command (plugin, NULL, NULL, arguments);
plugin->exec_command (plugin, NULL, NULL, arguments);
}
return PLUGIN_RC_OK;
}
int weechat_plugin_init (t_weechat_plugin *plugin)
{
plugin->cmd_handler_add (plugin, "double",
"Affiche deux fois un message",
"msg",
"msg: message a afficher deux fois",
NULL,
&double_cmd,
NULL, NULL);
return PLUGIN_RC_OK;
}
void weechat_plugin_end (t_weechat_plugin *plugin)
{
/* on ne fait rien ici */
}