X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/84247591a3718d345e182780b9207f85b17e3999..d8b4fecc8ee4a725eb10d200f3aea92f0bc3a915:/_vcsh diff --git a/_vcsh b/_vcsh index 59cdcfe..926dbc5 100644 --- a/_vcsh +++ b/_vcsh @@ -45,15 +45,20 @@ function _vcsh-list-tracked-by () { function _vcsh-rename () { (( CURRENT == 2 )) && __vcsh_repositories - #TODO tell the user to add a new name + (( CURRENT == 3 )) && _message "new repository name" + (( CURRENT > 3 )) && _nothing } function _vcsh-run () { (( CURRENT == 2 )) && __vcsh_repositories - #TODO normal commands + if (( CURRENT >= 3 )); then + words=( "${(@)words[3,-1]}" ) + (( CURRENT -= 2 )) + _complete + fi } -function _vcsh-setup () { +function _vcsh-upgrade () { (( CURRENT == 2 )) && __vcsh_repositories } @@ -85,7 +90,7 @@ function _vcsh () { "list-tracked-by:list files tracked by a repository" "rename:rename a repository" "run:run command with <\$GIT_DIR> and <\$GIT_WORK_TREE> set" - "setup:set up repository with recommended settings" + "upgrade:upgrade repository to currently recommended settings" "version:print version information" "which:find in name of any tracked file" "write-gitignore:write .gitignore.d/ via git ls-files" @@ -109,8 +114,7 @@ function _vcsh () { if ! (( ${+functions[_vcsh-$vcshcommand]} )); then # There is no handler function, so this is probably the name # of a repository. Act accordingly. - _message "git sub-command" - #TODO and now we need to complete on git subcommands + _dispatch git git else curcontext="${curcontext%:*:*}:vcsh-${vcshcommand}:" _call_function ret _vcsh-${vcshcommand}