summaryrefslogtreecommitdiff
path: root/plugins/pod
diff options
context:
space:
mode:
authorAlexandre Joly <alexandre.joly@futurecom.ch>2013-07-09 14:41:41 +0200
committerAlexandre Joly <alexandre.joly@futurecom.ch>2013-07-09 14:41:41 +0200
commit0892bce00b73fdf75d70e554b1fd64ae0fd5e61a (patch)
tree688722a52d0294d74578b9a0dcf98da534c95b80 /plugins/pod
parentc48822b3a3a3f25922c184d1804fc11aea2b6432 (diff)
downloadzsh-0892bce00b73fdf75d70e554b1fd64ae0fd5e61a.tar.gz
zsh-0892bce00b73fdf75d70e554b1fd64ae0fd5e61a.tar.bz2
zsh-0892bce00b73fdf75d70e554b1fd64ae0fd5e61a.zip
supplemented with options
Diffstat (limited to 'plugins/pod')
-rw-r--r--plugins/pod/_pod241
1 files changed, 198 insertions, 43 deletions
diff --git a/plugins/pod/_pod b/plugins/pod/_pod
index 78644745b..bb4f782b3 100644
--- a/plugins/pod/_pod
+++ b/plugins/pod/_pod
@@ -12,19 +12,6 @@
# LICENSE: MIT
# -----------------------------------------------------------------------------
-#------------------
-# TODO:
-# - Parameters for
-# - install
-# - update
-# - outdated
-# - search
-# - list
-# - push
-# - podfile-info
-# - setup
-#------------------
-
local -a _1st_arguments
_1st_arguments=(
'help:Show help for the given command.'
@@ -71,6 +58,92 @@ _list_arguments=(
'new:Lists pods introduced in the master spec-repo since the last check'
)
+local -a _inherited_options
+_inherited_options=(
+ '(--silent)--silent[Show nothing]' \
+ '(--version)--version[Show the version of CocoaPods]' \
+ '(--no-color)--no-color[Show output without color]' \
+ '(--verbose)--verbose[Show more debugging information]' \
+ '(--help)--help[Show help banner of specified command]'
+)
+
+local -a _install_options
+_install_options=(
+ '(--no-clean)--no-clean[Leave SCM dirs like `.git` and `.svn` intact after downloading]' \
+ '(--no-integrate)--no-integrate[Skip integration of the Pods libraries in the Xcode project(s)]' \
+ '(--no-repo-update)--no-repo-update[Skip running `pod repo update` before install]'
+)
+
+local -a _update_options
+_update_options=(
+ '(--no-clean)--no-clean[Leave SCM dirs like `.git` and `.svn intact after downloading]' \
+ '(--no-integrate)--no-integrate[Skip integration of the Pods libraries in the Xcode project(s)]' \
+ '(--no-repo-update)--no-repo-update[Skip running `pod repo update before install]'
+)
+
+local -a _outdated_options
+_outdated_options=(
+ '(--no-repo-update)--no-repo-update[Skip running `pod repo update` before install]'
+)
+
+local -a _search_options
+_search_options=(
+ '(--full)--full[Search by name, summary, and description]' \
+ '(--stats)--stats[Show additional stats (like GitHub watchers and forks)]' \
+ '(--ios)--ios[Restricts the search to Pods supported on iOS]' \
+ '(--osx)--osx[Restricts the search to Pods supported on OS X]'
+)
+
+local -a _list_options
+_list_options=(
+ '(--update)--update[Run `pod repo update` before listing]'
+)
+
+local -a _podfile_info_options
+_podfile_info_options=(
+ '(--all)--all[Show information about all Pods with dependencies that are used in a project]' \
+ '(--md)--md[Output information in Markdown format]'
+)
+
+local -a _push_options
+_push_options=(
+ '(--allow-warnings)--allow-warnings[Allows pushing even if there are warnings]' \
+ '(--local-only)--local-only[Does not perform the step of pushing REPO to its remote]'
+)
+
+local -a _repo_lint_options
+_repo_lint_options=(
+ '(--only-errors)--only-errors[Lint presents only the errors]'
+)
+
+local -a _setup_options
+_setup_options=(
+ '(--push)--push[Use this option to enable push access once granted]'
+)
+
+local -a _spec_lint_options
+_spec_lint_options=(
+ '(--quick)--quick[Lint skips checks that would require to download and build the spec]' \
+ '(--only-errors)--only-errors[Lint validates even if warnings are present]' \
+ '(--no-clean)--no-clean[Lint leaves the build directory intact for inspection]'
+)
+
+local -a _spec_cat_options
+_spec_cat_options=(
+ '(--show-all)--show-all[Pick from all versions of the given podspec]'
+)
+
+local -a _spec_which_options
+_spec_which_options=(
+ '(--show-all)--show-all[Print all versions of the given podspec]'
+)
+
+local -a _spec_edit_options
+_spec_edit_options=(
+ '(--show-all)--show-all[Pick which spec to edit from all available versions of the given podspec]'
+)
+
+
__first_command_list ()
{
local expl
@@ -82,7 +155,7 @@ __first_command_list ()
}
__repo_list() {
- _wanted application expl 'command' compadd $(command ls -1 ~/.cocoapods 2>/dev/null | sed -e 's/ /\\ /g')
+ _wanted application expl 'repo' compadd $(command ls -1 ~/.cocoapods 2>/dev/null | sed -e 's/ /\\ /g')
}
__pod-repo() {
@@ -93,19 +166,32 @@ __pod-repo() {
':command:->command' \
'*::options:->options'
- case $state in
- (command)
- _describe -t commands "gem subcommand" _repo_arguments
- return
- ;;
-
- (options)
- case $line[1] in
- (update|lint)
- _arguments ':feature:__repo_list'
- ;;
- esac
- ;;
+ case $state in
+ (command)
+ _describe -t commands "pod repo" _repo_arguments
+ return
+ ;;
+
+ (options)
+ case $line[1] in
+ (lint)
+ _arguments \
+ $_inherited_options \
+ $_repo_lint_options \
+ ':feature:__repo_list'
+ ;;
+
+ (update)
+ _arguments \
+ $_inherited_options \
+ ':feature:__repo_list'
+ ;;
+
+ (add)
+ _arguments \
+ $_inherited_options
+ esac
+ ;;
esac
}
@@ -119,12 +205,41 @@ __pod-spec() {
case $state in
(command)
- _describe -t commands "gem subcommand" _spec_arguments
+ _describe -t commands "pod spec" _spec_arguments
return
;;
(options)
- #todo
+ case $line[1] in
+ (create)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (lint)
+ _arguments \
+ $_inherited_options \
+ $_spec_lint_options
+ ;;
+
+ (cat)
+ _arguments \
+ $_inherited_options \
+ $_spec_cat_options
+ ;;
+
+ (which)
+ _arguments \
+ $_inherited_options \
+ $_spec_which_options
+ ;;
+
+ (edit)
+ _arguments \
+ $_inherited_options \
+ $_spec_edit_options
+ ;;
+ esac
return
;;
esac
@@ -140,12 +255,13 @@ __pod-ipc() {
case $state in
(command)
- _describe -t commands "gem subcommand" _ipc_arguments
+ _describe -t commands "pod ipc" _ipc_arguments
return
;;
(options)
- #todo
+ _arguments -C \
+ $_inherited_options
return
;;
esac
@@ -156,48 +272,53 @@ __pod-list() {
typeset -A opt_args
_arguments -C \
+ $_inherited_options \
+ $_list_options \
':command:->command' \
'*::options:->options'
case $state in
(command)
- _describe -t commands "gem subcommand" _list_arguments
+ _describe -t commands "pod list" _list_arguments
return
;;
(options)
- #todo
+ _arguments -C \
+ $_inherited_options \
+ $_list_options
return
;;
esac
}
-
-
-local expl
-#local -a boxes installed_boxes
-
local curcontext="$curcontext" state line
typeset -A opt_args
_arguments -C \
+ $_inherited_options \
':command:->command' \
'*::options:->options'
case $state in
(command)
- _describe -t commands "gem subcommand" _1st_arguments
+ _describe -t commands "pod" _1st_arguments
return
;;
(options)
case $line[1] in
(help)
- _arguments ':feature:__first_command_list'
+ _arguments \
+ $_inherited_options \
+ ':help:__first_command_list'
;;
(push)
- _arguments ':feature:__repo_list'
+ _arguments \
+ $_inherited_options \
+ $_push_options \
+ ':repo:__repo_list'
;;
(repo)
@@ -216,8 +337,42 @@ case $state in
__pod-list
;;
- (install|outdated|podfile-info|search|setup|update)
- #_arguments ':feature:__repo_list'
+ (install)
+ _arguments \
+ $_inherited_options \
+ $_install_options
+ ;;
+
+ (update)
+ _arguments \
+ $_inherited_options \
+ $_update_options
+ ;;
+
+ (outdated)
+ _arguments \
+ $_inherited_options \
+ $_outdated_options
+ ;;
+
+ (search)
+ _arguments \
+ $_inherited_options \
+ $_search_options
+ ;;
+
+ (podfile-info)
+ _arguments \
+ $_inherited_options \
+ $_podfile_info_options
+ ;;
+
+ (setup)
+ _arguments \
+ $_inherited_options \
+ $_setup_options
+ ;;
+
esac
;;
esac