summaryrefslogtreecommitdiff
path: root/clients/cli/nmcli-completion
diff options
context:
space:
mode:
Diffstat (limited to 'clients/cli/nmcli-completion')
-rw-r--r--clients/cli/nmcli-completion11
1 files changed, 8 insertions, 3 deletions
diff --git a/clients/cli/nmcli-completion b/clients/cli/nmcli-completion
index 2e9a149f5b..7b653da414 100644
--- a/clients/cli/nmcli-completion
+++ b/clients/cli/nmcli-completion
@@ -763,19 +763,24 @@ _nmcli_compl_PROPERTIES()
{
while [[ "${#words[@]}" -gt 0 ]]; do
if [[ ${#words[@]} -le 1 ]]; then
- local PREFIX=""
+ local PREFIX="" item list=""
if [[ "${words[0]:0:1}" == [+-] ]]; then
PREFIX="${words[0]:0:1}"
fi
- _nmcli_list_nl "$(echo -e 'print\nquit\nyes' |nmcli c edit "$@" 2>/dev/null |awk -F: '/\..*:/ {print "'$PREFIX'"$1}')"
+ item="$(nmcli c modify --complete "$@" 2>/dev/null)"
+ ### add prefix to each element
+ for item in $item; do
+ list="${list}${PREFIX}${item} "
+ done
+ _nmcli_list "$list"
return 0
elif [[ ${#words[@]} -le 2 ]]; then
return 0
fi
_nmcli_array_delete_at words 0 1
done
- _nmcli_list_nl "$(echo -e 'print\nquit\nyes' |nmcli c edit "$@" 2>/dev/null |awk -F: '/\..*:/ {print $1}')"
+ _nmcli_list "$(nmcli c modify --complete "$@" 2>/dev/null)"
}
_nmcli()