summaryrefslogtreecommitdiff
path: root/plugins/pod/_pod
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pod/_pod')
-rw-r--r--plugins/pod/_pod273
1 files changed, 248 insertions, 25 deletions
diff --git a/plugins/pod/_pod b/plugins/pod/_pod
index 8c0f4460f..eb7be52e9 100644
--- a/plugins/pod/_pod
+++ b/plugins/pod/_pod
@@ -3,29 +3,31 @@
# -----------------------------------------------------------------------------
# FILE: _pod
-# DESCRIPTION: Cocoapods (0.27.1) autocomplete plugin for Oh-My-Zsh
+# DESCRIPTION: Cocoapods (0.33.0) autocomplete plugin for Oh-My-Zsh
# http://cocoapods.org
# AUTHOR: Alexandre Joly (alexandre.joly@mekanics.ch)
# GITHUB: https://github.com/mekanics
# TWITTER: @jolyAlexandre
-# VERSION: 0.0.3
-# LICENSE: MIT
+# VERSION: 0.0.4
# -----------------------------------------------------------------------------
local -a _1st_arguments
_1st_arguments=(
- 'help:Show help for the given command'
- 'init:Generate a Podfile for the current directory'
+ 'help:Show help for the given command.'
+ 'init:Generate a Podfile for the current directory.'
'install:Install project dependencies'
'ipc:Inter-process communication'
+ 'lib:Develop pods'
'list:List pods'
'outdated:Show outdated project dependencies'
- 'podfile-info:Shows information on installed Pods'
- 'push:Push new specifications to a spec-repo'
+ 'plugins:Show available CocoaPods plugins'
+ 'push:Temporary alias for the `pod repo push` command'
'repo:Manage spec-repositories'
'search:Searches for pods'
'setup:Setup the CocoaPods environment'
'spec:Manage pod specs'
+ 'trunk:Interact with trunk.cocoapods.org'
+ 'try:Try a Pod!'
'update:Update outdated project dependencies'
)
@@ -33,6 +35,7 @@ local -a _repo_arguments
_repo_arguments=(
'add:Add a spec repo'
'lint:Validates all specs in a repo'
+ 'push:Push new specifications to a spec-repo'
'remove:Remove a spec repo.'
'update:Update a spec repo'
)
@@ -51,24 +54,56 @@ _ipc_arguments=(
'list:Lists the specifications know to CocoaPods'
'podfile:Converts a Podfile to YAML'
'repl:The repl listens to commands on standard input'
- 'spec:Converts a podspec to YAML'
+ 'spec:Converts a podspec to JSON'
'update-search-index:Updates the search index'
)
+local -a _lib_arguments
+_lib_arguments=(
+ 'create:Creates a new Pod'
+ 'lint:Validates a Pod'
+)
+
+local -a _plugins_arguments
+_plugins_arguments=(
+ 'create:Creates a new plugin'
+ 'list:List all known plugins'
+ 'search:Search for known plugins'
+)
+
local -a _list_arguments
_list_arguments=(
'new:Lists pods introduced in the master spec-repo since the last check'
)
+local -a _trunk_arguments
+_trunk_arguments=(
+ 'add-owner:Add an owner to a pod'
+ 'me:Display information about your sessions'
+ 'push:Publish a podspec'
+ 'register:Manage sessions'
+)
+
+local -a _trunk_me_arguments
+_trunk_me_arguments=(
+ 'clean-sessions:Remove sessions'
+)
+
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]' \
+ '(--no-ansi)--no-ansi[Show output without ANSI codes]' \
'(--help)--help[Show help banner of specified command]'
)
+local -a _root_options
+_root_options=(
+ '(--version)--version[Show the version of CocoaPods]' \
+ '(--completion-script)--completion-script[Print the auto-completion script]'
+
+)
+
local -a _install_options
_install_options=(
'(--no-clean)--no-clean[Leave SCM dirs like `.git` and `.svn` intact after downloading]' \
@@ -76,6 +111,15 @@ _install_options=(
'(--no-repo-update)--no-repo-update[Skip running `pod repo update` before install]'
)
+local -a _lib_lint_options
+_lib_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]' \
+ '(--subspec=NAME)--subspec=[Lint validates only the given subspec]' \
+ '(--no-subspecs)--no-subspecs[Lint skips validation of subspecs]' \
+ '(--no-clean)--no-clean[Lint leaves the build directory intact for inspection]'
+)
+
local -a _update_options
_update_options=(
'(--no-clean)--no-clean[Leave SCM dirs like `.git` and `.svn intact after downloading]' \
@@ -93,7 +137,8 @@ _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]'
+ '(--osx)--osx[Restricts the search to Pods supported on OS X]' \
+ '(--web)--web[Searches on cocoapods.org]'
)
local -a _list_options
@@ -101,20 +146,23 @@ _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]' \
- '*:script or directory:_files'
+local -a _plugins_search_options
+_plugins_search_options=(
+ '(--full)--full[Search by name, author, and description]'
)
-local -a _push_options
-_push_options=(
+local -a _repo_push_options
+_repo_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]' \
'*:script or directory:_files'
)
+local -a _repo_add_options
+_repo_add_options=(
+ '(--shallow)--shallow[Create a shallow clone (fast clone, but no push capabilities)]'
+)
+
local -a _repo_lint_options
_repo_lint_options=(
'(--only-errors)--only-errors[Lint presents only the errors]'
@@ -122,6 +170,7 @@ _repo_lint_options=(
local -a _setup_options
_setup_options=(
+ '(--no-shallow)--no-shallow[Clone full history so push will work]'
'(--push)--push[Use this option to enable push access once granted]'
)
@@ -129,6 +178,8 @@ 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]' \
+ '(--subspec=NAME)--subspec=[Lint validates only the given subspec]' \
+ '(--no-subspecs)--no-subspecs[Lint skips validation of subspecs]' \
'(--no-clean)--no-clean[Lint leaves the build directory intact for inspection]' \
'*:script or directory:_files'
)
@@ -148,6 +199,11 @@ _spec_edit_options=(
'(--show-all)--show-all[Pick which spec to edit from all available versions of the given podspec]'
)
+local -a _trunk_register_options
+_trunk_register_options=(
+ '(--description=DESCRIPTION)--description=[An arbitrary description to easily identify your session later on.]'
+)
+
__first_command_list ()
{
@@ -192,9 +248,17 @@ __pod-repo() {
':feature:__repo_list'
;;
+ (push)
+ _arguments \
+ $_inherited_options \
+ $_repo_push_options \
+ ':feature:__repo_list'
+ ;;
+
(add)
_arguments \
- $_inherited_options
+ $_inherited_options \
+ $_repo_add_options
(remove)
_arguments \
@@ -211,6 +275,7 @@ __pod-spec() {
typeset -A opt_args
_arguments -C \
+ $_inherited_options \
':command:->command' \
'*::options:->options'
@@ -278,6 +343,145 @@ __pod-ipc() {
esac
}
+__pod-lib() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+
+ _arguments -C \
+ ':command:->command' \
+ '*::options:->options'
+
+ case $state in
+ (command)
+ _describe -t commands "pod lib" _lib_arguments
+ return
+ ;;
+
+ (options)
+ case $line[1] in
+ (create)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (lint)
+ _arguments \
+ $_inherited_options \
+ $_lib_lint_options
+ ;;
+ esac
+ return
+ ;;
+ esac
+}
+
+__pod-plugins() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+
+ _arguments -C \
+ $_inherited_options \
+ ':command:->command' \
+ '*::options:->options'
+
+ case $state in
+ (command)
+ _describe -t commands "pod plugins" _plugins_arguments
+ return
+ ;;
+
+ (options)
+ case $line[1] in
+ (create)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (list)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (search)
+ _arguments \
+ $_inherited_options \
+ $_plugins_search_options
+ ;;
+ esac
+ return
+ ;;
+ esac
+}
+
+__pod-trunk() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+
+ _arguments -C \
+ $_inherited_options \
+ ':command:->command' \
+ '*::options:->options'
+
+ case $state in
+ (command)
+ _describe -t commands "pod trunk" _trunk_arguments
+ return
+ ;;
+
+ (options)
+ case $line[1] in
+ (add-owner)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (me)
+ __pod-trunk-me
+ ;;
+
+ (push)
+ _arguments \
+ $_inherited_options
+ ;;
+
+ (register)
+ _arguments \
+ $_inherited_options \
+ $_trunk_register_options
+ ;;
+ esac
+ return
+ ;;
+ esac
+}
+
+__pod-trunk-me() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+
+ _arguments -C \
+ $_inherited_options \
+ ':command:->command' \
+ '*::options:->options'
+
+ case $state in
+ (command)
+ _describe -t commands "pod trunk me" _trunk_me_arguments
+ return
+ ;;
+
+ (options)
+ case $line[1] in
+ (clean-sessions)
+ _arguments \
+ $_inherited_options
+ ;;
+ esac
+ return
+ ;;
+ esac
+}
+
__pod-list() {
local curcontext="$curcontext" state line
typeset -A opt_args
@@ -314,6 +518,9 @@ _arguments -C \
case $state in
(command)
_describe -t commands "pod" _1st_arguments
+ _arguments \
+ $_inherited_options \
+ $_root_options
return
;;
@@ -325,10 +532,15 @@ case $state in
':help:__first_command_list'
;;
+ (init)
+ _arguments \
+ $_inherited_options
+ ;;
+
(push)
_arguments \
$_inherited_options \
- $_push_options \
+ $_repo_push_options \
':repo:__repo_list'
;;
@@ -344,6 +556,10 @@ case $state in
__pod-ipc
;;
+ (lib)
+ __pod-lib
+ ;;
+
(list)
__pod-list
;;
@@ -366,16 +582,23 @@ case $state in
$_outdated_options
;;
- (search)
+ (plugins)
+ __pod-plugins
+ ;;
+
+ (trunk)
+ __pod-trunk
+ ;;
+
+ (try)
_arguments \
- $_inherited_options \
- $_search_options
+ $_inherited_options
;;
- (podfile-info)
+ (search)
_arguments \
$_inherited_options \
- $_podfile_info_options
+ $_search_options
;;
(setup)