diff options
author | Oliver Kiddle <opk@users.sourceforge.net> | 2003-03-26 16:52:58 +0000 |
---|---|---|
committer | Oliver Kiddle <opk@users.sourceforge.net> | 2003-03-26 16:52:58 +0000 |
commit | a9293199ec03d0a941504b06b3f4f07d97626fef (patch) | |
tree | d4cee2058fd1f8ac3a04444464301631644e93d7 /Completion/Unix/Command/_prcs | |
parent | 913d5266003fb75a9acd2f19fdd8e5a1ccbf9221 (diff) | |
download | zsh-a9293199ec03d0a941504b06b3f4f07d97626fef.tar.gz zsh-a9293199ec03d0a941504b06b3f4f07d97626fef.tar.xz zsh-a9293199ec03d0a941504b06b3f4f07d97626fef.zip |
18390: tidy up _prcs and update _xmlsoft for latest xsltproc version
Diffstat (limited to 'Completion/Unix/Command/_prcs')
-rw-r--r-- | Completion/Unix/Command/_prcs | 239 |
1 files changed, 112 insertions, 127 deletions
diff --git a/Completion/Unix/Command/_prcs b/Completion/Unix/Command/_prcs index c5a5313b1..29a1c8652 100644 --- a/Completion/Unix/Command/_prcs +++ b/Completion/Unix/Command/_prcs @@ -1,11 +1,17 @@ #compdef prcs +local curcontext="$curcontext" state line subcmds +typeset -A opt_args + # lookup project names in the repository # (this does not handle subprojects) (( $+functions[_prcs_projects] )) || _prcs_projects() { - compadd $@ - ${~opt_args[-R]:-${opt_args[--repository]:-${PRCS_REPOSITORY:-$HOME/PRCS}}}/*(/:t) + local expl + + _wanted prcs-projects expl 'project name' compadd "$@" - \ + ${~opt_args[-R]:-${opt_args[--repository]:-${PRCS_REPOSITORY:-~/PRCS}}}/*(/:t) } # standard options for all subcommands @@ -13,194 +19,173 @@ _prcs_projects() { (( $+functions[_prcs_arguments] )) || _prcs_arguments() { _arguments -s \ - '(-f)--force[resolve interactive queries in some fixed way]' \ - '(--force)-f[resolve interactive queries in some fixed way]' \ - '(-h -H)--help[print out help]' \ - '(--help -H)-h[print out help]' \ - '(--help -h)-H[print out help]' \ - '(-j)--jobs=[spawn many child processes at once]:number:' \ - '(--jobs)-j[spawn many child processes at once]:number:' \ - '(-l)--long-format[long format]' \ - '(--long-format)-l[long format]' \ - '(-L)--long-long-format[long format]' \ - '(--long-long-format)-L[longer format]' \ - '(-n)--no-action[no action]' \ - '(--no-action)-n[no action]' \ - '(-q)--quiet[suppress normal informational messages]' \ - '(--quiet)-q[suppress normal informational messages]' \ + '(-f --force)'{-f,--force}'[resolve interactive queries in some fixed way]' \ + '(-h -H --help)'{-h,-H,--help}'[print out help]' \ + '(-j --jobs)'{-j,--jobs=}'[spawn many child processes at once]:number:' \ + '(-l -L --long-format --long-long-format)'{-l,--long-format}'[long format]' \ + '(-l -L --long-format --long-long-format)'{-L,--long-long-format}'[longer format]' \ + '(-n --no-action)--no-action[show what would happen but leave files unchanged]' \ + '(-q --quiet)'{-q,--quiet}'[suppress normal informational messages]' \ "--plain-format[don't break lines at screen width]" \ - '(-R)--repository=[set the repository directory]:directory:_files -/' \ - '(--repository)-R[set the repository directory]:directory:_files -/' \ - '(-v)--version[print PRCS version and exits]' \ - '(--version)-v[print PRCS version and exits]' \ - $@ + '(-R --repository)'{-R,--repository=}'[specify the repository directory]:directory:_files -/' \ + "$@" } -if (( CURRENT == 2 )); then - _arguments \ - ':prcs command:(( - admin\:"admin subcommand" - checkin\:"checkin project revision" - checkout\:"checkout project revision" - config\:"verify configuration" - delete\:"delete named revision of project" - depopulate\:"remove named files from project descriptor" - diff\:"show differences between two revisions" - execute\:"execute a command for each file in a project" - info\:"print information about versions of project" - merge\:"reconcile differences between working files and another revision" - package\:"package the project and all its revisions into packagefile" - populate\:"add named files to project descriptor" - rekey\:"set keywords in selected files" - unpackage\:"unpackage project in packagefile"))' -else - shift words - (( --CURRENT )) - case "$words[1]" in +_arguments -C \ + '(* -)'{-h,-H,--help}'[print out help]' \ + '(* -)--version[display program version]' \ + '*:: :->subcmd' && return 0 + +if (( CURRENT == 1 )); then + subcmds=( + 'admin:admin subcommand' + 'checkin:checkin project revision' + 'checkout:checkout project revision' + 'config:verify configuration' + 'delete:delete named revision of project' + 'depopulate:remove named files from project descriptor' + 'diff:show differences between two revisions' + 'execute:execute a command for each file in a project' + 'info:print information about versions of project' + 'merge:reconcile differences between working files and another revision' + 'package:package the project and all its revisions into packagefile' + 'populate:add named files to project descriptor' + 'rekey:set keywords in selected files' + 'unpackage:unpackage project in packagefile' + ) + + _describe -t commands 'prcs command' subcmds + return +fi + +curcontext="${curcontext%:*}-$words[1]:" + +case "$words[1]" in admin) if (( CURRENT == 2 )); then - _arguments \ - ':admin subcommand:(( - access\:"set the access permissions on the repository" - compress\:"instruct PRCS to save disk space for project" - init\:"create a repository entry" - pdelete\:"delete a repository entry" - pinfo\:"list all projects in the repository" - prename\:"rename a repository entry" - rebuild\:"reconstruct PRCS data files in the repository" - uncompress\:"instruct PRCS to save time in processing project"))' + subcmds=( + 'access:set the access permissions on the repository' + 'compress:instruct PRCS to save disk space for project' + 'init:create a repository entry' + 'pdelete:delete a repository entry' + 'pinfo:list all projects in the repository' + 'prename:rename a repository entry' + 'rebuild:reconstruct PRCS data files in the repository' + 'uncompress:instruct PRCS to save time in processing project' + ) + _describe -t commands 'admin subcommand' subcmds else shift words (( --CURRENT )) + curcontext="${curcontext%:*}-$words[1]:" case "$words[1]" in - access|compress|init|pdelete|prename|rebuild) - _prcs_arguments ':project name:_prcs_projects' + access|compress|init|pdelete|prename|rebuild) + _prcs_arguments ':project name:_prcs_projects' ;; - pinfo) - _prcs_arguments + pinfo) + _prcs_arguments ;; - uncompress) - _prcs_arguments \ - '-i[expand the entire project immediately]' \ - ':project name:_prcs_projects' + uncompress) + _prcs_arguments \ + '-i[expand the entire project immediately]' \ + ':project name:_prcs_projects' ;; - *) - _message "unknown prcs administrative subfunction: $words[1]" + *) + _message "unknown prcs administrative subfunction: $words[1]" ;; esac fi - ;; + ;; checkin) _prcs_arguments \ - '(-r)--revision=[version of the project]:revision:' \ - '(--revision)-r[version of the project]:revision:' \ - '(-s)--skilled-merge[turn off most of the safety features of merge]' \ - '(--skilled-merge)-s[turn off most of the safety features of merge]' \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ + '(-s --skilled-merge)'{-s,--skilled-merge}'[turn off most of the safety features of merge]' \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; checkout) _prcs_arguments \ - '(-r)--revision=[version of the project]:revision:' \ - '(--revision)-r[version of the project]:revision:' \ - '(-p)--preserve[preserve permissions on files that are checked out]' \ - '(--preserve)-p[preserve permissions on files that are checked out]' \ - "(-u)--unlink[don't overwrite symbolic link references]" \ - "(--unlink)-u[don't overwrite symbolic link references]" \ - "(-P)--exclude-project-file[don't checkout the project file]" \ - "(--exclude-project-file)-P[don't checkout the project file]" \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ + '(-p --preserve)'{-p,--preserve}'[preserve permissions on files that are checked out]' \ + '(-u --unlink)'{-u,--unlink}"[don't overwrite symbolic link references]" \ + '(-P --exclude-project-file)'{-P,--exclude-project-file}"[don't checkout the project file]" \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; config) _prcs_arguments - ;; + ;; delete) _prcs_arguments \ - '(-r)--revision=[version of the project]:reversion:' \ - '(--revision)-r[version of the project]:reversion:' \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ ':project name:_prcs_projects' - ;; + ;; depopulate) _prcs_arguments \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; diff) _prcs_arguments \ - '*--revision=[version of the project]:revision:' \ - '*-r[version of the project]:revision:' \ - '(-k)--keywords[compare keywords too]' \ - '(--keywords)-k[compare keywords too]' \ - '(-N)--new[compare new files against empty files]' \ - '(--new)-N[compare new files against empty files]' \ - "(-P)--exclude-project-file[don't diff the project file]" \ - "(--exclude-project-file)-P[don't diff the project file]" \ + '*'{-r+,--revision=}'[specify version of the project]:revision:' \ + '(-k --keywords)'{-k,--keywords}'[compare keywords too]' \ + '(-N --new)'{-N,--new}'[compare new files against empty files]' \ + '(-P --exclude-project-file)'{-P,--exclude-project-file}"[don't diff the project file]" \ '--[introduce diff options]:*::diff options:= _diff_options ${PRCS_DIFF_COMMAND:-diff}' \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; execute) - _prcs_arguments \ - '(-r)--revision=[version of the project]:reversion:' \ - '(--revision)-r[version of the project]:reversion:' \ - '--pre[list directories first]' \ - '(--pipe)--all[execute command once, with all files as arguments]' \ - '(--all)--pipe[supply file contents as the standard input]' \ - '--match[execute command on files matching a pattern]:pattern:' \ - '--not[execute command on files not matching a pattern]:pattern:' \ - '--:command: _command_names -e:*::arguments: _normal' \ - ':project name:_prcs_projects' \ - '*:file or directory:_files' - ;; + _prcs_arguments \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ + '--pre[list directories first]' \ + '(--pipe)--all[execute command once, with all files as arguments]' \ + '(--all)--pipe[supply file contents as the standard input]' \ + '--match[execute command on files matching a pattern]:pattern:' \ + '--not[execute command on files not matching a pattern]:pattern:' \ + '--:command: _command_names -e:*::arguments: _normal' \ + ':project name:_prcs_projects' \ + '*:file or directory:_files' + ;; info) _prcs_arguments \ - '(-r)--revision=[version of the project]:revision:' \ - '(--revision)-r[version of the project]:revision:' \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ '--sort=[set sorting type]:sorting type:(version date)' \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; merge) _prcs_arguments \ - '(-r)--revision=[version of the project]:revision:' \ - '(--revision)-r[version of the project]:revision:' \ - '(-s)--skilled-merge[turn off most of the safety features of merge]' \ - '(--skilled-merge)-s[turn off most of the safety features of merge]' \ - "(-u)--unlink[don't overwrite symbolic link references]" \ - "(--unlink)-u[don't overwrite symbolic link references]" \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ + '(-s --skilled-merge)'{-s,--skilled-merge}'[turn off most of the safety features of merge]' \ + '(-u --unlink)'{-u,--unlink}"[don't overwrite symbolic link references]" \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; package) _prcs_arguments \ - '(-r)--revision=[version of the project]:revision:' \ - '(--revision)-r[version of the project]:revision:' \ - '(-z)--compress=[compress the output]' \ - '(--compress)-z[compress the output]' \ + '(-r --revision)'{-r+,--revision=}'[specify version of the project]:revision:' \ + '(-z --compress)'{-z,--compress=}'[compress the output]' \ ':project name:_prcs_projects' \ ':file:_files' - ;; + ;; populate) _prcs_arguments \ - '(-d)--delete=[perform optional deletions]' \ - '(--delete)-d[perform optional deletions]' \ + '(-d --delete)'{-d,--delete=}'[perform optional deletions]' \ ':project name:_prcs_projects' \ '*:file or directory:_files' - ;; + ;; rekey) _prcs_arguments \ - "(-u)--unlink[don't overwrite symbolic link references]" \ - "(--unlink)-u[don't overwrite symbolic link references]" \ + '(-u --unlink)'{-u,--unlink}"[don't overwrite symbolic link references]" \ ':project name:_prcs_projects' - ;; + ;; unpackage) _prcs_arguments \ ':file:_files' \ ':project name:_prcs_projects' - ;; + ;; *) _message "unknown prcs command: $words[1]" ;; - esac -fi +esac |