From 5c77b97c35ceafc5c60c4e9a7a6e06d4bd253f3a Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Fri, 4 Oct 2019 14:06:25 +0200 Subject: Introduce /reload command This command reloads the configuration file. Fix https://github.com/profanity-im/profanity/issues/627 --- src/command/cmd_defs.c | 13 +++++++++++++ src/command/cmd_funcs.c | 9 +++++++++ src/command/cmd_funcs.h | 1 + 3 files changed, 23 insertions(+) (limited to 'src/command') diff --git a/src/command/cmd_defs.c b/src/command/cmd_defs.c index 2c227153..e7ece238 100644 --- a/src/command/cmd_defs.c +++ b/src/command/cmd_defs.c @@ -2408,6 +2408,19 @@ static struct cmd_t command_defs[] = CMD_NOARGS CMD_NOEXAMPLES }, + + { "/reload", + parse_args, 0, 0, NULL, + CMD_NOSUBFUNCS + CMD_MAINFUNC(cmd_reload) + CMD_NOTAGS + CMD_SYN( + "/reload") + CMD_DESC( + "Reload preferences from configuration file.") + CMD_NOARGS + CMD_NOEXAMPLES + }, }; static GHashTable *search_index; diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c index 9f73cb07..30e7720f 100644 --- a/src/command/cmd_funcs.c +++ b/src/command/cmd_funcs.c @@ -8551,3 +8551,12 @@ cmd_save(ProfWin *window, const char *const command, gchar **args) prefs_save(); return TRUE; } + +gboolean +cmd_reload(ProfWin *window, const char *const command, gchar **args) +{ + log_info("Reloading preferences"); + cons_show("Reloading preferences."); + prefs_reload(); + return TRUE; +} diff --git a/src/command/cmd_funcs.h b/src/command/cmd_funcs.h index c623ca83..9102e1e1 100644 --- a/src/command/cmd_funcs.h +++ b/src/command/cmd_funcs.h @@ -227,4 +227,5 @@ gboolean cmd_omemo_policy(ProfWin *window, const char *const command, gchar **ar gboolean cmd_omemo_clear_device_list(ProfWin *window, const char *const command, gchar **args); gboolean cmd_save(ProfWin *window, const char *const command, gchar **args); +gboolean cmd_reload(ProfWin *window, const char *const command, gchar **args); #endif -- cgit 1.4.1-2-gfad0