summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_vi
diff options
context:
space:
mode:
authorAxel Beckert <abe@deuxchevaux.org>2022-04-11 00:18:04 +0200
committerAxel Beckert <abe@deuxchevaux.org>2022-04-11 00:18:04 +0200
commit31bcc5c263aea983e967426e2b94269e7605dcd4 (patch)
tree7b48ad9d7799afe09b7d7d8adc980bd5db935bdf /Completion/Unix/Command/_vi
parent5086b5356abcef8849dc8a09902b7c55f01db3c0 (diff)
parentb09f4483416c54c1782824633dfabaf2ec0265b6 (diff)
downloadzsh-31bcc5c263aea983e967426e2b94269e7605dcd4.tar.gz
zsh-31bcc5c263aea983e967426e2b94269e7605dcd4.zip
Update upstream source from tag 'upstream/5.8.1.2-test'
Update to upstream version '5.8.1.2-test' with Debian dir b380d582bf51cd93149e4dea28fffa1ad85db4f5
Diffstat (limited to 'Completion/Unix/Command/_vi')
-rw-r--r--Completion/Unix/Command/_vi47
1 files changed, 47 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_vi b/Completion/Unix/Command/_vi
new file mode 100644
index 000000000..6201299a2
--- /dev/null
+++ b/Completion/Unix/Command/_vi
@@ -0,0 +1,47 @@
+#compdef ex vi view
+
+local -a args
+
+if _pick_variant vim='(N|)VIM' vi --version; then
+ _vim
+ return
+fi
+
+args=(
+ '-c+[execute command on the first file loaded]:command:'
+ '-r[recover the named files]'
+ '-t+[start editing at the specified tag]:tag:'
+ '-w+[set window size to specified number of lines]:lines:'
+ '*: :_files'
+)
+
+[[ $service != view ]] && args+=(
+ '-R[set readonly]'
+)
+
+[[ $service == ex ]] && args+=(
+ '-s[enter batch mode]'
+ '-v[start in vi mode]'
+)
+
+case $OSTYPE in
+ *bsd*|dragonfly*)
+ args+=(
+ "-F[don't copy the entire file on start]"
+ '-S[set the secure option]'
+ )
+ [[ $service != ex ]] && args+=(
+ '-e[start in ex mode]'
+ )
+ ;|
+ netbsd*)
+ args+=(
+ '-G[start in gtags mode]'
+ )
+ [[ $service == vi ]] && args+=(
+ '-l[set the lisp and showmatch options]'
+ )
+ ;;
+esac
+
+_arguments -s -S -A '-*' : $args