From 7b502a4c7f24bab5630fd34c8c510b1f34808c26 Mon Sep 17 00:00:00 2001 From: nibon7 Date: Thu, 25 Aug 2022 19:57:48 +0800 Subject: [PATCH] register-plugin.nu: refactor register plugin (#6409) --- register-plugins.nu | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/register-plugins.nu b/register-plugins.nu index 7aed530c68..a1e0c8fdc2 100644 --- a/register-plugins.nu +++ b/register-plugins.nu @@ -3,19 +3,24 @@ def match [input, matchers: record] { echo $matchers | get $input | do $in } +# register plugin +def register_plugin [encoding, plugin] { + print $"registering ($plugin)" + nu -c $'register -e ($encoding) ($plugin)' +} + # get list of all plugin files from their installed directory let plugin_location = ((which nu).path.0 | path dirname) # for each plugin file, print the name and launch another instance of nushell to register it for plugin in (ls $"($plugin_location)/nu_plugin_*") { - print $"registering ($plugin.name)" match ($plugin.name | path basename | str replace '\.exe$' '') { - nu_plugin_custom_values: { nu -c $'register -e msgpack ($plugin.name)' } - nu_plugin_example: { nu -c $'register -e msgpack ($plugin.name)' } - nu_plugin_from_parquet: { nu -c $'register -e json ($plugin.name)' } - nu_plugin_gstat: { nu -c $'register -e msgpack ($plugin.name)' } - nu_plugin_inc: { nu -c $'register -e json ($plugin.name)' } - nu_plugin_query: { nu -c $'register -e json ($plugin.name)' } + nu_plugin_custom_values: { register_plugin msgpack $plugin.name } + nu_plugin_example: { register_plugin msgpack $plugin.name } + nu_plugin_from_parquet: { register_plugin json $plugin.name } + nu_plugin_gstat: { register_plugin msgpack $plugin.name } + nu_plugin_inc: { register_plugin json $plugin.name } + nu_plugin_query: { register_plugin json $plugin.name } } }