From a6d58351e7cb73786b58b8c4f805bfaac6451a10 Mon Sep 17 00:00:00 2001 From: Kent Sutherland Date: Mon, 4 Mar 2013 21:39:05 -0500 Subject: [PATCH] Fixed defaults autocompletion. Need to use grep WITHOUT case-sensitivity. Otherwise results such as com.apple.iChat and com.apple.imagent won't be handled correctly and neither one can be completed. Fixed another comparison that prevented "defaults read com.apple.iChat " from correctly returning the available defaults keys in that file. --- completion/available/defaults.completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/completion/available/defaults.completion.bash b/completion/available/defaults.completion.bash index 5a8d0340..1a4ad620 100644 --- a/completion/available/defaults.completion.bash +++ b/completion/available/defaults.completion.bash @@ -13,7 +13,7 @@ _defaults_domains() COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} - local domains=$( defaults domains | sed -e 's/, /:/g' | tr : '\n' | sed -e 's/ /\\ /g' | grep -i "^$cur" ) + local domains=$( defaults domains | sed -e 's/, /:/g' | tr : '\n' | sed -e 's/ /\\ /g' | grep "^$cur" ) local IFS=$'\n' COMPREPLY=( $domains ) if [[ $( echo '-app' | grep "^$cur" ) ]]; then @@ -56,7 +56,7 @@ _defaults() # Both a domain and command have been specified - if [[ ${COMP_WORDS[1]} == [${cmds// /|}] ]]; then + if [[ ${COMP_WORDS[1]} =~ [${cmds// /|}] ]]; then cmd=${COMP_WORDS[1]} domain=${COMP_WORDS[2]} key_index=3