403Webshell
Server IP : 51.89.169.208  /  Your IP : 216.73.216.211
Web Server : Apache
System : Linux ns3209505.ip-198-244-202.eu 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Tue Nov 5 04:50:16 EST 2024 x86_64
User : yellowleaf ( 1019)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /proc/self/root/usr/share/zsh/5.5.1/functions/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/usr/share/zsh/5.5.1/functions/_vcsh
#compdef vcsh

function __vcsh_repositories () {
	local -a repos
	repos=( ${(f)"$(_call_program repositories vcsh list)"} )
	_describe -t repositories 'repository' repos
}

function _vcsh-clone () {
	_default #TODO
}

local func
for func in help init list list-tracked pull push version; do
  _vcsh-$func() { _nothing }
done
for func in delete enter list-tracked-by upgrade write-gitignore; do
  _vcsh-$func() { (( CURRENT == 2 )) && __vcsh_repositories }
done

function _vcsh-rename () {
  case $CURRENT in
    2) __vcsh_repositories ;;
    3) _message "new repository name" ;;
    *) _nothing ;;
  esac
}

function _vcsh-run () {
	(( CURRENT == 2 )) && __vcsh_repositories
	if (( CURRENT >= 3 )); then
		words=( "${(@)words[3,-1]}" )
		(( CURRENT -= 2 ))
		_complete
	fi
}

function _vcsh () {
	local curcontext="${curcontext}" ret=1
	local state vcshcommand
	local -a args subcommands

	subcommands=(
		"clone:clone an existing repository"
		"delete:delete an existing repository"
		"enter:enter repository; spawn new <\$SHELL>"
		"help:display help"
		"init:initialize an empty repository"
		"list:list all local vcsh repositories"
		"list-tracked:list all files tracked by vcsh"
		"list-tracked-by:list files tracked by a repository"
		"pull:pull from all vcsh remotes"
		"rename:rename a repository"
		"run:run command with <\$GIT_DIR> and <\$GIT_WORK_TREE> set"
		"upgrade:upgrade repository to currently recommended settings"
		"version:print version information"
		"which:find <substring> in name of any tracked file"
		"write-gitignore:write .gitignore.d/<repo> via git ls-files"
	)

	args=(
		'-c[source <file> prior to other configuration files]:config files:_path_files'
		'-d[enable debug mode]'
		'-v[enable verbose mode]'
		'*:: :->subcommand_or_options_or_repo'
	)

	_arguments -C ${args} && ret=0

	if [[ ${state} == "subcommand_or_options_or_repo" ]]; then
		if (( CURRENT == 1 )); then
			_describe -t subcommands 'vcsh sub-commands' subcommands && ret=0
			__vcsh_repositories && ret=0
		else
			vcshcommand="${words[1]}"
			if ! (( ${+functions[_vcsh-$vcshcommand]} )); then
				# There is no handler function, so this is probably the name
				# of a repository. Act accordingly.
				_dispatch git git && ret=0
			else
				curcontext="${curcontext%:*:*}:vcsh-${vcshcommand}:"
				_call_function ret _vcsh-${vcshcommand}
			fi
		fi
	fi
	return ret
}

_vcsh "$@"

Youez - 2016 - github.com/yon3zu
LinuXploit