Commit b76b7e53 authored by Ivan Mazhukin's avatar Ivan Mazhukin Committed by Vitaly Lipatov

bash & zsh completion: add path support for epmi (eterbug #17968)

parent 93004a9b
...@@ -60,10 +60,22 @@ __eepm_list_installed_packages() ...@@ -60,10 +60,22 @@ __eepm_list_installed_packages()
COMPREPLY=( $( compgen -W '${COMPREPLY[@]}' -- "$cur" ) ) COMPREPLY=( $( compgen -W '${COMPREPLY[@]}' -- "$cur" ) )
} }
__eepm_list_available_packages() __eepm_list_available_packages() {
{
COMPREPLY=( $( epm list --available --quiet --short --direct ) ) local cur="${COMP_WORDS[COMP_CWORD]}"
COMPREPLY=( $( compgen -W '${COMPREPLY[@]}' -- "$cur" ) ) local repo_results
if [[ "$cur" == ./* || "$cur" == ../* || "$cur" == /* ]]; then
_filedir
return
fi
repo_results=$(epm list --available --quiet --short --direct | grep "^$cur" )
COMPREPLY=( $(compgen -W "$repo_results" -- "$cur") )
if [[ -z "$COMPREPLY" ]]; then
_filedir
fi
} }
__eepm_list_available_prescription() __eepm_list_available_prescription()
......
...@@ -697,14 +697,26 @@ _epm_play_packages() { ...@@ -697,14 +697,26 @@ _epm_play_packages() {
} }
_epm_available_packages() { _epm_available_packages() {
local available_packages local cur=${words[CURRENT]}
available_packages=( $(epm list --available --quiet --short --direct) ) if [[ "$cur" == ./* || "$cur" == ../* || "$cur" == /* ]]; then
_describe -t available-packages 'available package' available_packages _files
if [[ ${words[CURRENT]} == -* ]]; then return
fi
repo_results=( ${(f)"$(epm list --available --quiet --short --direct | grep "^$cur")"} )
if (( ${#repo_results[@]} > 0 )); then
_describe -t available-packages 'available package' repo_results
else
_files
fi
if [[ "$cur" == -* ]]; then
_arguments -C "${EEPM_SHORT_ARGS[@]}" "${EEPM_FULL_ARGS[@]}" _arguments -C "${EEPM_SHORT_ARGS[@]}" "${EEPM_FULL_ARGS[@]}"
fi fi
} }
_epm_installed_packages() { _epm_installed_packages() {
local installed_packages local installed_packages
installed_packages=( $(epm list --installed --quiet --short --direct) ) installed_packages=( $(epm list --installed --quiet --short --direct) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment