[libvirt] [PATCH v2 08/13] vsh: Fix completion error in case of multiple mac addresses
Lin Ma
lma at suse.com
Tue Nov 10 09:50:59 UTC 2020
We know that the bash completer automatically handle colon by preceding
it with an escape character backslash.
While our bash autompletion file vsh completes multiple items, In case
there're multiple items which have same prefix and the content of completion
items contain colon(say mac address), The vsh needs to correctly hands
the backslash which are added by bash completer, Otherwise the completion
won't be successful. This patch fixes this problem.
e.g.:
# virsh domiflist --domain VM
Interface Type Source Model MAC
-------------------------------------------------------------
vnet0 network default virtio 52:54:00:fb:7b:f5
vnet1 bridge br0 virtio 52:54:00:80:1b:21
Before:
# virsh detach-interface --domain VM --mac <TAB>
# virsh detach-interface --domain VM --mac 52\:54\:00\:<TAB><TAB>
After:
# virsh detach-interface --domain VM --mac <TAB>
# virsh detach-interface --domain VM --mac 52\:54\:00\:<TAB><TAB>
52:54:00:80:1b:21 52:54:00:fb:7b:f5
# virsh detach-interface --domain VM --mac 52\:54\:00\:
Signed-off-by: Lin Ma <lma at suse.com>
---
tools/bash-completion/vsh | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/bash-completion/vsh b/tools/bash-completion/vsh
index 8493cad28b..fb38e8616f 100644
--- a/tools/bash-completion/vsh
+++ b/tools/bash-completion/vsh
@@ -39,6 +39,7 @@ _vsh_complete()
fi
INPUT=( "${COMP_WORDS[@]:$i:$COMP_CWORD}" )
+ INPUT[-1]=${INPUT[-1]//\\:/:}
# Uncomment these lines for easy debug.
# echo;
--
2.26.0
More information about the libvir-list
mailing list