diff --git a/Pmodules/bash_completion b/Pmodules/bash_completion index 76c789af84d56835a981a058a398ddd6bbf5a03a..ed471535373234cb283a05ea2746e6b3f733c6c5 100644 --- a/Pmodules/bash_completion +++ b/Pmodules/bash_completion @@ -39,9 +39,9 @@ _module() { COMPREPLY=() - cmds="add apropos avail clear dependencies display help\ + cmds="add apropos avail clear display help\ initadd initclear initlist initprepend initrm initswitch\ - keyword list load purge refresh rm search show swap switch sync\ + keyword list load purge refresh rm search show swap switch \ unload unuse update use whatis" opts="-c -f -h -i -l -s -t -u -v -H -V\ diff --git a/Pmodules/modulecmd.bash.in b/Pmodules/modulecmd.bash.in index dde1dd88e9658d6aee05812434b2b4cf68682cd4..f620f21d04a64f6fd778c53b40f66b428ad907e0 100644 --- a/Pmodules/modulecmd.bash.in +++ b/Pmodules/modulecmd.bash.in @@ -262,6 +262,7 @@ subcommand_generic0() { args+=( "$1" ) ;; esac + shift 1 done if (( ${#args[@]} > 0 )); then std::die 3 "%s %s: %s\n" \ @@ -459,7 +460,7 @@ subcommand_load() { while (($# > 0)); do case $1 in -H | --help ) - print_help "${subcommand_load}" + print_help "${subcommand}" ;; -f | --force ) opts+=(' -f') @@ -2294,6 +2295,24 @@ if [[ -z "${Subcommands[${subcommand}]}" ]]; then std::die 1 "${CMD}: unknown sub-command -- ${subcommand}\n" fi +case ${subcommand} in + add ) + subcommand='load' + ;; + display ) + subcommand='show' + ;; + keyword ) + subcommand='apropos' + ;; + rm ) + subcommand='unload' + ;; + switch ) + subcommand='swap' + ;; +esac + if [[ -n ${PMODULES_ENV} ]]; then eval "$("${base64}" -d <<< "${PMODULES_ENV}" 2>/dev/null)" if [[ -z ${Version} ]] || [[ ${Version} != ${PMODULES_VERSION} ]]; then @@ -2335,7 +2354,7 @@ if (( ${#GroupDepths[@]} == 0 )); then fi case ${subcommand} in - load|purge|search|switch ) + load|purge|search|swap ) declare -r tmpfile=$( ${mktemp} /tmp/Pmodules.XXXXXX ) \ || std::die 1 "Oops: unable to create tmp file!" ;;