Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
patch/suggestion: _module completion
- X-seq: zsh-workers 39856
- From: Felix Neumärker <xdch47@xxxxxxxxx>
- To: zsh-workers@xxxxxxx
- Subject: patch/suggestion: _module completion
- Date: Mon, 7 Nov 2016 15:22:23 +0100
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
follow symbolic link in module path + _multi_parts completion
diff --git a/Completion/Unix/Command/_module b/Completion/Unix/Command/_module
index 060f05b..8659876 100644
--- a/Completion/Unix/Command/_module
+++ b/Completion/Unix/Command/_module
@@ -85,7 +85,7 @@ _module_available_modules()
{
if [[ -n $MODULEPATH ]] && [[ ${+_available_modules} -eq 0 ]]
then
- _available_modules=(${$(find ${(e)=MODULEPATH//:/ } -xtype f -print 2>/dev/null | grep -v \\.version | sed -e 's,\('${${(e)=MODULEPATH//:/\/\\\|}%\\\|}'\),,g' -e 's,^/*,,g'):#*\~})
+ _available_modules=(${$(find -L ${(e)=MODULEPATH//:/ } -type f -print 2>/dev/null | grep -v \\.version | sed -e 's,\('${${(e)=MODULEPATH//:/\/\\\|}%\\\|}'\),,g' -e 's,^/*,,g'):#*\~})
fi
}
@@ -93,14 +93,14 @@ _module_available_modules()
(( $+functions[_module_help] )) || _module_help()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for load|add
(( $+functions[_module_load] )) || _module_load()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for unload|rm
@@ -114,14 +114,14 @@ _module_available_modules()
{
# Actually first argument could be a loaded module
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for display|show
(( $+functions[_module_display] )) || _module_display()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for avail
@@ -145,35 +145,35 @@ _module_available_modules()
(( $+functions[_module_whatis] )) || _module_whatis()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for initadd
(( $+functions[_module_initadd] )) || _module_initadd()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for initprepend
(( $+functions[_module_initprepend] )) || _module_initprepend()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for initrm
(( $+functions[_module_initrm] )) || _module_initrm()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
# Completion function for initswitch
(( $+functions[_module_initswitch] )) || _module_initswitch()
{
_module_available_modules
- compadd "$@" -a -- _available_modules
+ _multi_parts / "($_available_modules)"
}
_module "$@"
Messages sorted by:
Reverse Date,
Date,
Thread,
Author