diff options
author | Michael Vetter <jubalh@iodoru.org> | 2021-09-29 14:21:33 +0200 |
---|---|---|
committer | Michael Vetter <jubalh@iodoru.org> | 2021-09-29 15:49:05 +0200 |
commit | 3b3a6b7a756e0f162d212249750524b7ce045cea (patch) | |
tree | bcd0d7b18a19fa02e43f6d7111c47b320c1be8f4 /src/command | |
parent | fd9ccec8dc604902bbb1d444dba4223ccee0a092 (diff) | |
download | profani-tty-3b3a6b7a756e0f162d212249750524b7ce045cea.tar.gz |
Remove `/python sourcepath`
I feel like this mostly is confusing people. Also don't see much value for it. To me it looks like a regular workflow is like: ``` /plugin install ~/src/profanity-plugins/my.py ``` The whole thing with sourcepath, install (which also loads without having that described anywhere), load etc is confusing. Also each plugin file that is present in `.local/share/profanity/plugins` will then be auto loaded. Which means after installation.
Diffstat (limited to 'src/command')
-rw-r--r-- | src/command/cmd_ac.c | 18 | ||||
-rw-r--r-- | src/command/cmd_defs.c | 8 | ||||
-rw-r--r-- | src/command/cmd_funcs.c | 64 |
3 files changed, 5 insertions, 85 deletions
diff --git a/src/command/cmd_ac.c b/src/command/cmd_ac.c index e821eb8b..39ab24bc 100644 --- a/src/command/cmd_ac.c +++ b/src/command/cmd_ac.c @@ -242,7 +242,6 @@ static Autocomplete console_ac; static Autocomplete console_msg_ac; static Autocomplete autoping_ac; static Autocomplete plugins_ac; -static Autocomplete plugins_sourcepath_ac; static Autocomplete plugins_load_ac; static Autocomplete plugins_unload_ac; static Autocomplete plugins_reload_ac; @@ -940,11 +939,6 @@ cmd_ac_init(void) autocomplete_add(plugins_ac, "unload"); autocomplete_add(plugins_ac, "reload"); autocomplete_add(plugins_ac, "python_version"); - autocomplete_add(plugins_ac, "sourcepath"); - - plugins_sourcepath_ac = autocomplete_new(); - autocomplete_add(plugins_sourcepath_ac, "set"); - autocomplete_add(plugins_sourcepath_ac, "clear"); filepath_ac = autocomplete_new(); @@ -1355,7 +1349,6 @@ cmd_ac_reset(ProfWin* window) autocomplete_reset(console_msg_ac); autocomplete_reset(autoping_ac); autocomplete_reset(plugins_ac); - autocomplete_reset(plugins_sourcepath_ac); autocomplete_reset(blocked_ac); autocomplete_reset(tray_ac); autocomplete_reset(presence_ac); @@ -2638,21 +2631,10 @@ _plugins_autocomplete(ProfWin* window, const char* const input, gboolean previou { char* result = NULL; - if (strncmp(input, "/plugins sourcepath set ", 24) == 0) { - return cmd_ac_complete_filepath(input, "/plugins sourcepath set", previous); - } - if (strncmp(input, "/plugins install ", 17) == 0) { return cmd_ac_complete_filepath(input, "/plugins install", previous); } - if (strncmp(input, "/plugins sourcepath ", 20) == 0) { - result = autocomplete_param_with_ac(input, "/plugins sourcepath", plugins_sourcepath_ac, TRUE, previous); - if (result) { - return result; - } - } - if (strncmp(input, "/plugins load ", 14) == 0) { if (plugins_load_ac == NULL) { plugins_load_ac = autocomplete_new(); diff --git a/src/command/cmd_defs.c b/src/command/cmd_defs.c index d86e62a3..898608af 100644 --- a/src/command/cmd_defs.c +++ b/src/command/cmd_defs.c @@ -2136,7 +2136,6 @@ static struct cmd_t command_defs[] = { { "/plugins", parse_args, 0, 3, NULL, CMD_SUBFUNCS( - { "sourcepath", cmd_plugins_sourcepath }, { "install", cmd_plugins_install }, { "uninstall", cmd_plugins_uninstall }, { "update", cmd_plugins_update }, @@ -2148,8 +2147,6 @@ static struct cmd_t command_defs[] = { CMD_NOTAGS CMD_SYN( "/plugins", - "/plugins sourcepath set <path>", - "/plugins sourcepath clear", "/plugins install [<path>]", "/plugins uninstall [<plugin>]", "/plugins update [<path>]", @@ -2160,9 +2157,7 @@ static struct cmd_t command_defs[] = { CMD_DESC( "Manage plugins. Passing no arguments lists currently loaded plugins.") CMD_ARGS( - { "sourcepath set <path>", "Set the default path to install plugins from, will be used if no arg is passed to /plugins install." }, - { "sourcepath clear", "Clear the default plugins source path." }, - { "install [<path>]", "Install a plugin, or all plugins found in a directory (recursive). Passing no argument will use the sourcepath if one is set." }, + { "install [<path>]", "Install a plugin, or all plugins found in a directory (recursive)." }, { "uninstall [<plugin>]", "Uninstall a plugin." }, { "update [<path>]", "Updates an installed plugin" }, { "load [<plugin>]", "Load a plugin that already exists in the plugin directory, passing no argument loads all found plugins." }, @@ -2170,7 +2165,6 @@ static struct cmd_t command_defs[] = { { "reload [<plugin>]", "Reload a plugin, passing no argument will reload all plugins." }, { "python_version", "Show the Python interpreter version." }) CMD_EXAMPLES( - "/plugins sourcepath set /home/meee/projects/profanity-plugins", "/plugins install", "/plugins install /home/steveharris/Downloads/metal.py", "/plugins update /home/steveharris/Downloads/metal.py", diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c index ad1b3331..b970c73b 100644 --- a/src/command/cmd_funcs.c +++ b/src/command/cmd_funcs.c @@ -6925,63 +6925,13 @@ cmd_receipts(ProfWin* window, const char* const command, gchar** args) } gboolean -cmd_plugins_sourcepath(ProfWin* window, const char* const command, gchar** args) -{ - if (args[1] == NULL) { - char* sourcepath = prefs_get_string(PREF_PLUGINS_SOURCEPATH); - if (sourcepath) { - cons_show("Current plugins sourcepath: %s", sourcepath); - g_free(sourcepath); - } else { - cons_show("Plugins sourcepath not currently set."); - } - return TRUE; - } - - if (g_strcmp0(args[1], "clear") == 0) { - prefs_set_string(PREF_PLUGINS_SOURCEPATH, NULL); - cons_show("Plugins sourcepath cleared."); - return TRUE; - } - - if (g_strcmp0(args[1], "set") == 0) { - if (args[2] == NULL) { - cons_bad_cmd_usage(command); - return TRUE; - } - - char* path = get_expanded_path(args[2]); - - if (!is_dir(path)) { - cons_show("Plugins sourcepath must be a directory."); - free(path); - return TRUE; - } - - cons_show("Setting plugins sourcepath: %s", path); - prefs_set_string(PREF_PLUGINS_SOURCEPATH, path); - free(path); - return TRUE; - } - - cons_bad_cmd_usage(command); - return TRUE; -} - -gboolean cmd_plugins_install(ProfWin* window, const char* const command, gchar** args) { char* path; if (args[1] == NULL) { - char* sourcepath = prefs_get_string(PREF_PLUGINS_SOURCEPATH); - if (sourcepath) { - path = strdup(sourcepath); - g_free(sourcepath); - } else { - cons_show("Either a path must be provided or the sourcepath property must be set, see /help plugins"); - return TRUE; - } + cons_show("Please provide a path to the plugin file or directory, see /help plugins"); + return TRUE; } else { path = get_expanded_path(args[1]); } @@ -7046,14 +6996,8 @@ cmd_plugins_update(ProfWin* window, const char* const command, gchar** args) char* path; if (args[1] == NULL) { - char* sourcepath = prefs_get_string(PREF_PLUGINS_SOURCEPATH); - if (sourcepath) { - path = strdup(sourcepath); - g_free(sourcepath); - } else { - cons_show("Either a path must be provided or the sourcepath property must be set, see /help plugins"); - return TRUE; - } + cons_show("Please provide a path to the plugin file or directory, see /help plugins"); + return TRUE; } else { path = get_expanded_path(args[1]); } |