[PATCH 2/2] completion: use new 'git config' options to reliably list variable names

2015-05-27 Thread SZEDER Gábor
List all set config variable names with 'git config --list-names' instead
of '--list' post processing.  Similarly, use 'git config
--get-name-regexp' instead of '--get-regexp' to get config variables in a
given section.

Signed-off-by: SZEDER Gábor sze...@ira.uka.de
---
 contrib/completion/git-completion.bash | 15 +++
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/contrib/completion/git-completion.bash 
b/contrib/completion/git-completion.bash
index 6abbd56..121aa31 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -744,9 +744,8 @@ __git_compute_porcelain_commands ()
 __git_get_config_variables ()
 {
local section=$1 i IFS=$'\n'
-   for i in $(git --git-dir=$(__gitdir) config --get-regexp 
^$section\..* 2/dev/null); do
-   i=${i#$section.}
-   echo ${i/ */}
+   for i in $(git --git-dir=$(__gitdir) config --get-name-regexp 
^$section\..* 2/dev/null); do
+   echo ${i#$section.}
done
 }
 
@@ -1774,15 +1773,7 @@ __git_config_get_set_variables ()
c=$((--c))
done
 
-   git --git-dir=$(__gitdir) config $config_file --list 2/dev/null |
-   while read -r line
-   do
-   case $line in
-   *.*=*)
-   echo ${line/=*/}
-   ;;
-   esac
-   done
+   git --git-dir=$(__gitdir) config $config_file --list-names 2/dev/null
 }
 
 _git_config ()
-- 
2.4.2.347.ge926c0d

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/2] completion: use new 'git config' options to reliably list variable names

2015-05-27 Thread Jeff King
On Wed, May 27, 2015 at 10:07:20PM +0200, SZEDER Gábor wrote:

 List all set config variable names with 'git config --list-names' instead
 of '--list' post processing.  Similarly, use 'git config
 --get-name-regexp' instead of '--get-regexp' to get config variables in a
 given section.
 
 Signed-off-by: SZEDER Gábor sze...@ira.uka.de
 ---
  contrib/completion/git-completion.bash | 15 +++
  1 file changed, 3 insertions(+), 12 deletions(-)

Nice diffstat. The less hacky bash parsing we can do, the better.

-Peff
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html