diff options
Diffstat (limited to 'oh-my-zsh/plugins/cask')
-rw-r--r-- | oh-my-zsh/plugins/cask/README.md | 15 | ||||
-rw-r--r-- | oh-my-zsh/plugins/cask/cask.plugin.zsh | 26 |
2 files changed, 41 insertions, 0 deletions
diff --git a/oh-my-zsh/plugins/cask/README.md b/oh-my-zsh/plugins/cask/README.md new file mode 100644 index 0000000..e1335c1 --- /dev/null +++ b/oh-my-zsh/plugins/cask/README.md @@ -0,0 +1,15 @@ +# Cask plugin + +[Cask](https://github.com/cask/cask) is a project management tool for Emacs that helps +automate the package development cycle; development, dependencies, testing, building, +packaging and more. + +This plugin loads `cask` completion from non-standard locations, such as if installed +via Homebrew or others. To enable it, add `cask` to your plugins array: + +```zsh +plugins=(... cask) +``` + +Make sure you have the `cask` directory in your `$PATH` before loading Oh My Zsh, +otherwise you'll get a "command not found" error. diff --git a/oh-my-zsh/plugins/cask/cask.plugin.zsh b/oh-my-zsh/plugins/cask/cask.plugin.zsh new file mode 100644 index 0000000..29120b3 --- /dev/null +++ b/oh-my-zsh/plugins/cask/cask.plugin.zsh @@ -0,0 +1,26 @@ +() { + emulate -L zsh + + if ! (( $+commands[cask] )); then + print "zsh cask plugin: cask command not found" >&2 + return + fi + + cask_base=${commands[cask]:h:h} + + # Plain cask installation location (for Cask 0.7.2 and earlier) + comp_files=($cask_base/etc/cask_completion.zsh) + + # Mac Homebrew installs the completion in a different location + if (( $+commands[brew] )); then + comp_files+=($(brew --prefix)/share/zsh/site-functions/cask_completion.zsh) + fi + + # Load first found file + for f in $comp_files; do + if [[ -f "$f" ]]; then + source "$f" + break + fi + done +} |