zsh-workers
 help / color / mirror / code / Atom feed
From: Matthew Martin <phy1729@gmail.com>
To: zsh-workers@zsh.org
Subject: PATCH: Add OpenBSD to _diff_options
Date: Tue, 7 Jul 2015 20:15:38 -0500	[thread overview]
Message-ID: <CAGnh9tBzgxTkrvAS+Knc-ORnhd60fRRvyatAS5hKTieaKY-c3Q@mail.gmail.com> (raw)

Based of a patch that has been sitting in OpenBSD's ports tree for
quite some time. I don't know if it's OK to add -s to _arguments for
Solaris, but that is what the original patch did.

- Matthew Martin

diff --git a/Completion/Unix/Type/_diff_options
b/Completion/Unix/Type/_diff_options
index d76c265..1345e71 100644
--- a/Completion/Unix/Type/_diff_options
+++ b/Completion/Unix/Type/_diff_options
@@ -101,33 +101,63 @@ if _pick_variant -c $cmd gnu=GNU unix -v; then
     '--help[display help info]' \
     "$@"
 else
+  of="-c -e -f"
   case $OSTYPE in
     solaris2.<9->)
+      of="$of -u -U"
       args=(
- '(-c -e -f -C -U)-u[output a unified diff]'
- '(-c -e -f -C -u)-U[output a unified diff]:lines of context'
+        "($of)-u[output a unified diff]"
+        "($of)-U[output a unified diff]:lines of context"
       )
     ;&
     solaris*)
+      of="$of -C -h -n -D"
       args+=(
- '-i[case insensitive]'
+        '-i[case insensitive]'
         '-t[expand tabs to spaces]'
- '-w[ignore all white space]'
- '(-c -e -f -n -u -U -h -D)-C+[output a context diff]:lines of context'
- '(-c -e -f -n -u -U -C -D)-h[do a fast, half-hearted job]'
- '(-c -e -f -u -U -h -C -D)-n[reversed ed script]'
- '(-c -e -f -n -u -U -h -C)-D[output merged file with preprocessor
directives]:preprocessor symbol'
+        '-w[ignore all white space]'
+        "($of)-C+[output a context diff]:lines of context"
+        "($of)-h[do a fast, half-hearted job]"
+        "($of)-n[reversed ed script]"
+        "($of)-D[output merged file with preprocessor
directives]:preprocessor symbol"
         '-l[output through pr]'
- '-s[report on identical files]'
+        '-s[report on identical files]'
         '-S+[set first file in comparison]:start with file:_files'
       )
     ;;
+    openbsd*)
+      of="$of -n -q -u -C -D -U"
+      args=(
+        "($of)-n[produce an rcsdiff(1)-compatible diff]"
+        "($of)-q[only print a line when the files differ; does not
produce a list of changes]"
+        "($of)-u[produce a unified diff with 3 lines of context]"
+        "($of)-C+[produce a context diff]:number of lines of context"
+        "($of)-D[produce a merged file with preprocessor
directives]:preprocessor symbol"
+        "($of)-U+[produce a unified diff with NUMBER lines of
context]:number of lines of context"
+        '-a[treat all files as ASCII text]'
+        '-d[try to produce the smallest diff possible]'
+        '-I[ignore changes whose lines match the extended regular
expression]:extended regular expression pattern'
+        '-i[ignore case]'
+        '*-L[print a label instead of the file name and time]:label'
+        '-l[long output format (paginate with pr(1))]'
+        '-p[show characters from the last line before the context]'
+        '-T[consistently align tabs]'
+        '-t[expand tabs in output lines]'
+        '-w[like -b, but totally ignore whitespace]'
+        '-N[treat absent files in either directory as if they were empty]'
+        '-P[treat absent files in the second directory as if they were empty]'
+        '-S[start a directory diff from a file name]:file name'
+        '-s[report files that are the same]'
+        '*-X[Exclude files and subdirectories whose basenames match
lines in a file]:file name'
+        '-x[Exclude files and subdirectories whose basenames match a
pattern]:pattern'
+      )
+    ;;
   esac
-
-  _arguments "$args[@]" \
-    "(-e -f -u -n)-c[output a context diff]" \
-    "(-c -f -u -n)-e[output an ed script]" \
-    "(-c -e -u -n)-f[output a reversed ed script]" \
+
+  _arguments -s "$args[@]" \
+    "($of)-c[output a context diff]" \
+    "($of)-e[output an ed script]" \
+    "($of)-f[output a reversed ed script]" \
     '-b[skip trailing white spaces]' \
     '-r[recursively compare subdirectories]' \
     "$@"


                 reply	other threads:[~2015-07-08  1:15 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAGnh9tBzgxTkrvAS+Knc-ORnhd60fRRvyatAS5hKTieaKY-c3Q@mail.gmail.com \
    --to=phy1729@gmail.com \
    --cc=zsh-workers@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).