From 10ab2911d35c84c120bae8f4e103b087fe19ce08 Mon Sep 17 00:00:00 2001 From: Andrea Nanni <37385837+ananni13@users.noreply.github.com> Date: Mon, 2 Mar 2020 16:19:48 +0100 Subject: sdk: add support for local versions and optimize sed calls (#7870) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added support for local sdk versions Added support for local versions (prefixed by '+'), so they are filtered out in _listInstallableVersions() and they are displayed correctly by _listAllVersion() * Optimize sed calls Co-authored-by: Marc Cornellà --- plugins/sdk/sdk.plugin.zsh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'plugins/sdk/sdk.plugin.zsh') diff --git a/plugins/sdk/sdk.plugin.zsh b/plugins/sdk/sdk.plugin.zsh index d00459b16..13876bfd0 100644 --- a/plugins/sdk/sdk.plugin.zsh +++ b/plugins/sdk/sdk.plugin.zsh @@ -51,12 +51,13 @@ _listInstalledVersions() { } _listInstallableVersions() { - __sdkman_list_versions $1 | grep "^ " | sed -e "s/\* /*/g" | \ - sed -e "s/>//g" | xargs -n 1 echo | grep -v "^*" + # Remove local (+) and installed (*) versions from the list + __sdkman_list_versions $1 | sed -e '/^[^ ]/d;s/[+*] [^ ]\+//g;s/>//g' } _listAllVersion() { - __sdkman_list_versions $1 | grep "^ " | sed -e "s/\*/ /g" | sed -e "s/>//g" + # Remove (*), (+), and (>) characters from the list + __sdkman_list_versions $1 | sed -e '/^[^ ]/d;s/[*+>] //g' } _sdk () { -- cgit v1.2.3-70-g09d2 From a31dee2c14d926d681b96a8a80fb13a60bf8df64 Mon Sep 17 00:00:00 2001 From: Ross Goldberg Date: Tue, 10 Mar 2020 07:22:05 -0400 Subject: sdk: remove invalid value "candidates" from sdk flush completion (#8725) --- plugins/sdk/sdk.plugin.zsh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'plugins/sdk/sdk.plugin.zsh') diff --git a/plugins/sdk/sdk.plugin.zsh b/plugins/sdk/sdk.plugin.zsh index 13876bfd0..e49caaf2f 100644 --- a/plugins/sdk/sdk.plugin.zsh +++ b/plugins/sdk/sdk.plugin.zsh @@ -7,10 +7,10 @@ # sdk offline # # commands: -# install or i [version] +# install or i [version] [local-path] # uninstall or rm # list or ls [candidate] -# use or u [version] +# use or u # default or d [version] # current or c [candidate] # upgrade or ug [candidate] @@ -20,14 +20,15 @@ # offline [enable|disable] # selfupdate [force] # update -# flush +# flush # # candidate : the SDK to install: groovy, scala, grails, gradle, kotlin, etc. # use list command for comprehensive list of candidates # eg: $ sdk list -# # version : where optional, defaults to latest stable if not provided # eg: $ sdk install groovy +# local-path : optional path to an existing local installation +# eg: $ sdk install groovy 2.4.13-local /opt/groovy-2.4.13 local _sdk_commands=( install i @@ -68,7 +69,7 @@ _sdk () { compadd -- $SDKMAN_CANDIDATES ;; offline) compadd -- enable disable ;; selfupdate) compadd -- force ;; - flush) compadd -- candidates broadcast archives temp ;; + flush) compadd -- broadcast archives temp ;; esac ;; 4) case "$words[2]" in -- cgit v1.2.3-70-g09d2