From d303dfa7f59aef999c43e2a7a56aac7099e40454 Mon Sep 17 00:00:00 2001 From: Jun-ichi Takimoto Date: Thu, 28 Dec 2017 11:35:34 +0900 Subject: 42175 + 42177 + 42178: avoid localized output from external commands _call_program and '_arguments --' will call _comp_locale before calling external command for easier analysis of the output. This is disabled by passing an option '-l'. --- Completion/Base/Utility/_call_program | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'Completion/Base/Utility/_call_program') diff --git a/Completion/Base/Utility/_call_program b/Completion/Base/Utility/_call_program index 9a44f2d8e..73f3ef6d2 100644 --- a/Completion/Base/Utility/_call_program +++ b/Completion/Base/Utility/_call_program @@ -1,6 +1,6 @@ #autoload +X -local curcontext="${curcontext}" tmp err_fd=-1 +local curcontext="${curcontext}" tmp err_fd=-1 clocale='_comp_locale;' local -a prefix if [[ "$1" = -p ]]; then @@ -10,6 +10,9 @@ if [[ "$1" = -p ]]; then zstyle -t ":completion:${curcontext}:${1}" gain-privileges && prefix=( $_comp_priv_prefix ) fi +elif [[ "$1" = -l ]]; then + shift + clocale='' fi if (( ${debug_fd:--1} > 2 )) || [[ ! -t 2 ]] @@ -21,12 +24,12 @@ fi if zstyle -s ":completion:${curcontext}:${1}" command tmp; then if [[ "$tmp" = -* ]]; then - eval "$tmp[2,-1]" "$argv[2,-1]" + eval $clocale "$tmp[2,-1]" "$argv[2,-1]" else - eval $prefix "$tmp" + eval $clocale $prefix "$tmp" fi else - eval $prefix "$argv[2,-1]" + eval $clocale $prefix "$argv[2,-1]" fi 2>&$err_fd } always { -- cgit 1.4.1