mirror of
https://github.com/weechat/weechat.git
synced 2026-06-28 05:46:38 +02:00
trigger: add hook config
This commit is contained in:
@@ -48,21 +48,25 @@ char *trigger_option_default[TRIGGER_NUM_OPTIONS] =
|
||||
{ "on", "signal", "", "", "", "", "ok" };
|
||||
|
||||
char *trigger_hook_type_string[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "signal", "hsignal", "modifier", "print", "command_run", "timer" };
|
||||
{ "signal", "hsignal", "modifier", "print", "command_run", "timer", "config" };
|
||||
char *trigger_hook_option_values =
|
||||
"signal|hsignal|modifier|print|command_run|timer|config";
|
||||
char *trigger_hook_default_arguments[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "xxx", "xxx", "xxx", "", "/cmd", "60000;0;0" };
|
||||
{ "xxx", "xxx", "xxx", "", "/cmd", "60000;0;0", "xxx" };
|
||||
char *trigger_hook_default_conditions[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "${...}", "${...}", "${...}", "${...}", "${...}", "${...}" };
|
||||
{ "${...}", "${...}", "${...}", "${...}", "${...}", "${...}", "${...}" };
|
||||
char *trigger_hook_default_regex[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "/abc/def", "/abc/def", "/abc/def", "/abc/def", "/abc/def", "/abc/def" };
|
||||
{ "/abc/def", "/abc/def", "/abc/def", "/abc/def", "/abc/def", "/abc/def",
|
||||
"/abc/def" };
|
||||
char *trigger_hook_default_command[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "/cmd", "/cmd", "/cmd", "/cmd", "/cmd", "/cmd" };
|
||||
{ "/cmd", "/cmd", "/cmd", "/cmd", "/cmd", "/cmd", "/cmd" };
|
||||
char *trigger_hook_default_rc[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "ok,ok_eat,error", "ok,ok_eat,error", "", "ok,error", "ok,ok_eat,error",
|
||||
"ok" };
|
||||
"ok", "ok" };
|
||||
|
||||
char *trigger_hook_regex_default_var[TRIGGER_NUM_HOOK_TYPES] =
|
||||
{ "tg_signal_data", "", "tg_string", "tg_message", "tg_command", "" };
|
||||
{ "tg_signal_data", "", "tg_string", "tg_message", "tg_command", "",
|
||||
"tg_value" };
|
||||
|
||||
char *trigger_return_code_string[TRIGGER_NUM_RETURN_CODES] =
|
||||
{ "ok", "ok_eat", "error" };
|
||||
@@ -367,6 +371,22 @@ trigger_hook (struct t_trigger *trigger)
|
||||
}
|
||||
}
|
||||
break;
|
||||
case TRIGGER_HOOK_CONFIG:
|
||||
if (argv && (argc >= 1))
|
||||
{
|
||||
trigger->hooks = malloc (argc * sizeof (trigger->hooks[0]));
|
||||
if (trigger->hooks)
|
||||
{
|
||||
trigger->hooks_count = argc;
|
||||
for (i = 0; i < argc; i++)
|
||||
{
|
||||
trigger->hooks[i] = weechat_hook_config (argv[i],
|
||||
&trigger_callback_config_cb,
|
||||
trigger);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (!trigger->hooks)
|
||||
|
||||
Reference in New Issue
Block a user