From 453ba566097aeb6b4ea811f02858a06dc5549fd7 Mon Sep 17 00:00:00 2001 From: Clint Adams Date: Thu, 27 Sep 2007 11:47:23 +0000 Subject: 23814: fixes for Darwin. --- ChangeLog | 7 ++++++- Completion/BSD/Command/_chflags | 2 +- Completion/Unix/Command/_comm | 24 +++++++++++++++++------- Completion/Unix/Command/_ls | 9 ++++++++- Completion/Unix/Type/_file_systems | 4 ++++ 5 files changed, 36 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 64e72e1a6..47ca4d181 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,9 @@ -2007-09-25 Clint Adams +2007-09-27 Clint Adams + + * Jun Takimoto: 23814: Completion/Unix/Command/_ls, Command/_ls, + Completion/BSD/Command/_chflags, + Completion/Unix/Type/_file_systems, Completion/Unix/Command/_comm: + fixes for Darwin. * 23841: Completion/Unix/Command/_git: complete tag hashes for git verify-tag. diff --git a/Completion/BSD/Command/_chflags b/Completion/BSD/Command/_chflags index d6bcfe4b3..6d5b6e973 100644 --- a/Completion/BSD/Command/_chflags +++ b/Completion/BSD/Command/_chflags @@ -25,7 +25,7 @@ if (( ! EUID )); then unset own fi -if [[ $OSTYPE = (freebsd|dragonfly)* ]]; then +if [[ $OSTYPE = (freebsd|dragonfly|darwin)* ]]; then flags=( $flags[@] '(nouunlnk)uunlnk[set the user undeletable flag]' '(uunlnk)nouunlnk[unset the user undeletable flag]' diff --git a/Completion/Unix/Command/_comm b/Completion/Unix/Command/_comm index c55378420..e90c317f6 100644 --- a/Completion/Unix/Command/_comm +++ b/Completion/Unix/Command/_comm @@ -1,10 +1,20 @@ #compdef comm -_arguments -s \ - '-1[suppress lines unique to FILE1]' \ - '-2[suppress lines unique to FILE2]' \ - '-3[suppress lines that appear in both files]' \ - '--help' \ - '--version' \ - '1:file1 to compare:_files' \ +local -a args + +args=( + '-1[suppress lines unique to FILE1]' + '-2[suppress lines unique to FILE2]' + '-3[suppress lines that appear in both files]' + '1:file1 to compare:_files' '2:file2 to compare:_files' +) + +if _pick_variant gnu=GNU unix --version; then + args+=( + '(- : *)--version[display version information]' + '(- : *)--help[display help information]' + ) +fi + +_arguments -s $args diff --git a/Completion/Unix/Command/_ls b/Completion/Unix/Command/_ls index e5ef1fe03..7680f9273 100644 --- a/Completion/Unix/Command/_ls +++ b/Completion/Unix/Command/_ls @@ -5,7 +5,7 @@ local arguments is_gnu _pick_variant -r is_gnu gnu=gnu unix --help -if [[ "$OSTYPE" = (netbsd*|freebsd*|openbsd*) && "$is_gnu" != gnu ]]; then +if [[ "$OSTYPE" = (netbsd*|freebsd*|openbsd*|darwin*) && "$is_gnu" != gnu ]]; then arguments=( '(-A)-a[list entries starting with .]' '(-a)-A[list all except . and ..]' @@ -54,6 +54,13 @@ if [[ "$OSTYPE" = (netbsd*|freebsd*|openbsd*) && "$is_gnu" != gnu ]]; then '*:files:_files' ) + if [[ "$OSTYPE" = (freebsd*|darwin*) ]]; then + arguments+=( + '-G[enable colorized output]' + '-H[follow symlinks on the command line]' + '-P[do not follow symlinks]' + ) + fi else arguments=( '(--all -a -A --almost-all)'{--all,-a}'[list entries starting with .]' diff --git a/Completion/Unix/Type/_file_systems b/Completion/Unix/Type/_file_systems index ffbf5ac68..fd75e2fa5 100644 --- a/Completion/Unix/Type/_file_systems +++ b/Completion/Unix/Type/_file_systems @@ -20,6 +20,10 @@ case $OSTYPE in fss=( cd9660 devfs ext2fs fdesc kernfs linprocfs mfs msdos nfs ntfs null nwfs portal procfs std udf ufs umap union ) ;; + darwin*) + fss=( afp cd9660 cddafs devfs fdesc hfs lfs msdos nfs + ntfs smbfs synthfs udf ufs volfs webdav ) + ;; *) # default for all other systems fss=( ufs ) -- cgit 1.4.1