From c2943574773ad1584f1d868a1a2d38266af7dde4 Mon Sep 17 00:00:00 2001 From: Tanaka Akira Date: Sat, 11 Mar 2000 00:08:11 +0000 Subject: zsh-workers/10058 --- Completion/User/_diff | 2 +- Completion/User/_diff_options | 17 +++++++---------- Completion/User/_prcs | 2 +- 3 files changed, 9 insertions(+), 12 deletions(-) (limited to 'Completion/User') diff --git a/Completion/User/_diff b/Completion/User/_diff index 220102356..d242b3881 100644 --- a/Completion/User/_diff +++ b/Completion/User/_diff @@ -1,3 +1,3 @@ #compdef diff gdiff -_diff_options ':original file:_files' ':new file:_files' +_diff_options "$words[1]" ':original file:_files' ':new file:_files' diff --git a/Completion/User/_diff_options b/Completion/User/_diff_options index 5f5f70738..d5d16ad55 100644 --- a/Completion/User/_diff_options +++ b/Completion/User/_diff_options @@ -2,23 +2,20 @@ local of ofwuc ouc oss ofwy ofwg ofwl cmd -(( $+_diff_is_gnu )) || typeset -gA _diff_is_gnu +(( $+_is_gnu )) || typeset -gA _is_gnu -if (( ! $+_diff_is_gnu[$words[1]] )); then - if [[ "$words[1]" = *diff ]]; then - cmd="$words[1]" - else - cmd=diff - fi +cmd="$1" +shift +if (( ! $+_is_gnu[$cmd] )); then if [[ $(_call version $cmd -v /dev/null) = *GNU* ]]; then - _diff_is_gnu[$words[1]]=yes + _is_gnu[$cmd]=yes else - _diff_is_gnu[$words[1]]= + _is_gnu[$cmd]= fi fi -if [[ -n "$_diff_is_gnu[$words[1]]" ]]; then +if [[ -n "$_is_gnu[$cmd]" ]]; then # output formats of="-y --side-by-side -n --rcs -e -f --ed -q --brief -c -C --context -u -U \ --unified --old-group-format --new-group-format --changed-group-format \ diff --git a/Completion/User/_prcs b/Completion/User/_prcs index 394fefbab..fc80cd392 100644 --- a/Completion/User/_prcs +++ b/Completion/User/_prcs @@ -136,7 +136,7 @@ else '(--new)-N[compare new files against empty files]' \ "(-P)--exclude-project-file[don't diff the project file]" \ "(--exclude-project-file)-P[don't diff the project file]" \ - '--[introduce diff options]:*::diff options: _diff_options' \ + '--[introduce diff options]:*::diff options: _diff_options ${PRCS_DIFF_COMMAND:-diff}' \ ':project name:_prcs_projects' \ '*:file or directory:_files' ;; -- cgit 1.4.1