Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
[PATCH] _diff_options: support macOS Ventura or newer
- X-seq: zsh-workers 52544
- From: Jun T <takimoto-j@xxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxx
- Subject: [PATCH] _diff_options: support macOS Ventura or newer
- Date: Fri, 16 Feb 2024 14:05:50 +0900
- Archived-at: <https://zsh.org/workers/52544>
- List-id: <zsh-workers.zsh.org>
macOS was using diff from GNU diffutils, but Apple has replaced it
(in macOS Ventura, darwin22) with the one based on the FreeBSD version.
It has one Apple-specific option (-A/--algorithm).
The option --color is supported by all of gnu/freebsd/darwin.
diff --git a/Completion/Unix/Type/_diff_options b/Completion/Unix/Type/_diff_options
index 45b777dfe..03ea1d7fe 100644
--- a/Completion/Unix/Type/_diff_options
+++ b/Completion/Unix/Type/_diff_options
@@ -25,7 +25,8 @@ _diff_palette() {
return ret
}
-if _pick_variant -r variant -c $cmd gnu=GNU unix -v || [[ $OSTYPE = freebsd<12->.* ]]; then
+if _pick_variant -r variant -c $cmd gnu=GNU unix -v ||
+ [[ $OSTYPE = (freebsd<12->|darwin<22->).* ]]; then
(( $#words > 2 )) && ign='!'
# output formats
@@ -73,15 +74,18 @@ if _pick_variant -r variant -c $cmd gnu=GNU unix -v || [[ $OSTYPE = freebsd<12->
"($ofwl $ouc $oss)--unchanged-line-format=[set unchanged line format]:unchanged line format"
'(--to-file)--from-file=[compare specified file to all operands]:from file:_files'
'(--from-file)--to-file=[compare all operands to specified file]:to file:_files'
- '--color=-[use colors in output]::when [auto]:(never always auto)'
'--palette=[specify colors to use]:color:_diff_palette'
"${ign}(1 2)-v[display version information]"
)
else
args+=( '!--speed-large-files' )
+ if [[ $OSTYPE = darwin<22->.* ]]; then
+ args+=( '(-A --algorithm)'{-A+,--algorithm=}'[specify the algorithm to use]:algorithm:(myers patience stone)' )
+ fi
fi
_arguments -s $args \
+ '--color=-[use colors in output]::when [auto]:(never always auto)' \
'(-i --ignore-case)'{-i,--ignore-case}'[case insensitive]' \
'--ignore-file-name-case[ignore case when comparing file names]' \
'!(--ignore-file-name-case)--no-ignore-file-name-case' \
Messages sorted by:
Reverse Date,
Date,
Thread,
Author