mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-11-04 07:21:06 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			73 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
#compdef vim exim gvim gex gview rvim rview rgvim rgview evim eview vimdiff gvimdiff
 | 
						|
 | 
						|
(( $+functions[_vim_files] )) ||
 | 
						|
_vim_files () {
 | 
						|
  case $PREFIX in
 | 
						|
    (+*) _files -P './' $* && return 0 ;;
 | 
						|
    (*) _files $* ;;
 | 
						|
  esac
 | 
						|
  case $PREFIX in
 | 
						|
    (+) _message -e 'start at a given line (default: end of file)' ;;
 | 
						|
    (+<1->) _message -e 'line number' ;;
 | 
						|
  esac
 | 
						|
}
 | 
						|
 | 
						|
local arguments
 | 
						|
 | 
						|
arguments=(
 | 
						|
  '(   -e -s -d -y)-v[vi mode]'
 | 
						|
  '(-v       -d -y)-e[ex mode]'
 | 
						|
  '(-v -e -s    -y)-d[diff mode]'
 | 
						|
  '(-v -e -s -d   )-y[easy mode]'
 | 
						|
  '-R[readonly mode]'
 | 
						|
  '-Z[restricted mode]'
 | 
						|
  '-m[modifications (writing files) not allowed]'
 | 
						|
  '-M[modifications in text not allowed]'
 | 
						|
  '-b[binary mode]'
 | 
						|
  '-l[lisp mode]'
 | 
						|
  '-C[make vim compatible with vi]'
 | 
						|
  '-N[do not force compatibility with vi]'
 | 
						|
  '-V-[verbosity level]::verbosity:((0\:"do not display any messages"
 | 
						|
                                     1\:"display when viminfo file is read or written"
 | 
						|
                                     2\:"display sourced files"
 | 
						|
                                     5\:"display every searched tag-file"
 | 
						|
                                     8\:"display files that trigger autocommands"
 | 
						|
                                     9\:"display every triggered autocommand (default)"
 | 
						|
                                    12\:"display every executed function"
 | 
						|
                                    13\:"report every thrown, caught, finished, or discarded exception"
 | 
						|
                                    14\:"display anything pending in a \:finally clause"
 | 
						|
                                    15\:"display every executed ex-command"))'
 | 
						|
  '-D[debugging mode]'
 | 
						|
  '-n[no swap file (memory only)]'
 | 
						|
  {-r,-L}'[list swap files and exit or recover from a swap file]::swap file:_vim_files -g \*.sw\?'
 | 
						|
  '(   -H -F)-A[start in Arabic mode]'
 | 
						|
  '(-A    -F)-H[start in Hebrew mode]'
 | 
						|
  '(-A -H   )-H[start in Farsi mode]'
 | 
						|
  '-T[set terminal type]:::_terminals'
 | 
						|
  '-u[use given RC file instead of default .vimrc]::rc file:_files'
 | 
						|
  '--noplugin[do not load plugin scripts]'
 | 
						|
  '-o-[number of windows to open (default: one for each file)]::window count: '
 | 
						|
  '-O-[number of windows to vertically split open (default is one for each file)]::window count: '
 | 
						|
  '*--cmd[execute given command before loading any RC files]:command: '
 | 
						|
  '-c[executed given command after loading the first file]:command: '
 | 
						|
  '-S[source a session file after loading the first file]:session file:_files'
 | 
						|
  '-s[read normal-mode commands from script file]:script file:_files'
 | 
						|
  '-w[append all typed commands to given file]:output file:_files'
 | 
						|
  '-W[write all typed commands to given file]:output file:_files'
 | 
						|
  '-x[edit encrypted files]'
 | 
						|
  '-X[do not connect to X server]'
 | 
						|
  '--remote[edit given files in a vim server if possible]:*:file:_vim_files'
 | 
						|
  '--remote-silent[as --remote but without complaining if not possible]:*:file:_vim_files'
 | 
						|
  '--remote-wait[as --remote but wait for files to have been edited]:*:file:_vim_files'
 | 
						|
  '--remote-wait-silent[as --remote-wait but without complaining if not possible]:*:file:_vim_files'
 | 
						|
  '--remote-send[send given keys to vim server if possible]:keys: '
 | 
						|
  '--remote-expr[evaluate given expression in a vim server and print result]:expression: '
 | 
						|
  '(- *)--serverlist[list available vim servers and exit]'
 | 
						|
  '--servername[name of vim server to send to or name of server to become]:server name: '
 | 
						|
  '-i[use given viminfo file instead of default .viminfo]:viminfo file:_files'
 | 
						|
  '(- *)'{-h,--help}'[print help and exit]'
 | 
						|
  '(- *)--version[print version information and exit]'
 | 
						|
  '*:file:_vim_files'
 | 
						|
)
 | 
						|
 | 
						|
_arguments -S $arguments
 |