mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 06:00:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #compdef mv gmv zf_mv
 | |
| 
 | |
| local args variant aopts=( -A '-*' )
 | |
| 
 | |
| _pick_variant -r variant -b zsh gnu=GNU $OSTYPE --version
 | |
| case $variant; in
 | |
|   gnu)
 | |
|     aopts=()
 | |
|     args=(
 | |
|       '(-b --backup -n --no-clobber)--backup=[make a backup of each existing destination file]: : _values "backup type"
 | |
|         {none,off}"[never make backups]"
 | |
|         {numbered,t}"[make numbered backups]"
 | |
|         {existing,nil}"[numbered backups, if they already exist]"
 | |
|         {simple,never}"[always make simple backups]"'
 | |
|       '(-b --backup -n --no-clobber)-b[make a backup of each existing destination file]'
 | |
|       '(-f --force -i --interactive -n --no-clobber)'{-f,--force}"[don't prompt before overwriting]"
 | |
|       '(-f --force -i --interactive -n --no-clobber)'{-i,--interactive}'[prompt before overwriting existing file]'
 | |
|       '--strip-trailing-slashes[remove any trailing slashes from each source argument]'
 | |
|       '(-S --suffix)'{-S+,--suffix=}'[specify the backup suffix]:backup suffix [~]'
 | |
|       '(-t --target-directory)'{-t+,--target-directory=}'[move all source arguments into specified directory]:directory:_directories'
 | |
|       '(-T --no-target-directory)'{-T,--no-target-directory}'[treat final argument as a normal file]'
 | |
|       '(-u --update)'{-u,--update}'[move only when destination file is older or missing]'
 | |
|       '(-v --verbose)'{-v,--verbose}'[show file names after they are moved]'
 | |
|       '(- *)--help[display usage information]'
 | |
|       '(- *)--version[display version information]'
 | |
|     )
 | |
|     [[ $OSTYPE = linux* ]] && args+=(
 | |
|       '(-Z --context)'{-Z,--context}'[set SELinux security context of destination file to default type]'
 | |
|     )
 | |
|     ;;
 | |
|   *)
 | |
|     args=(
 | |
|       "(-i -n)-f[don't prompt before overwriting]"
 | |
|       '(-f -n)-i[prompt before overwriting existing file]'
 | |
|     )
 | |
|     ;|
 | |
|   darwin*|dragonfly*|freebsd*)
 | |
|     args+=(
 | |
|       "(-f -i)-n[don't overwrite existing file]"
 | |
|     )
 | |
|     ;|
 | |
|   darwin*|dragonfly*|*bsd*)
 | |
|     args+=(
 | |
|       '-v[show file names after they are moved]'
 | |
|     )
 | |
|     ;|
 | |
|   dragonfly*|freebsd*)
 | |
|     args+=(
 | |
|       "-h[if target is a symlink to a directory, don't follow it]"
 | |
|     )
 | |
|     ;;
 | |
| esac
 | |
| 
 | |
| _arguments -s -S $aopts $args \
 | |
|   '*: :_files'
 |