#compdef meteor #autoload # Meteor Autocomplete plugin for Oh-My-Zsh, based on homebrew completion # Original author: Dimitri JORGE (https://github.com/jorge-d) _meteor_all_packages() { packages=(`meteor list | cut -d" " -f1`) } _meteor_installed_packages() { installed_packages=(`meteor list --using`) } local -a _1st_arguments _1st_arguments=( "run: [default] Run this project in local development mode." "debug: Run the project, but suspend the server process for debugging." "create: Create a new project." "update: Upgrade this project's dependencies to their latest versions." "add: Add a package to this project." "remove: Remove a package from this project." "list: List the packages explicitly used by your project." "add-platform: Add a platform to this project." "remove-platform: Remove a platform from this project." "list-platforms: List the platforms added to your project." "build: Build this project for all platforms." "lint: Build this project and run the linters printing all errors and warnings." "shell: Launch a Node REPL for interactively evaluating server-side code." "mongo: Connect to the Mongo database for the specified site." "reset: Reset the project state. Erases the local database." "deploy: Deploy this project to Meteor." "logs: Show logs for specified site." "authorized: View or change authorized users and organizations for a site." "claim: Claim a site deployed with an old Meteor version." "login: Log in to your Meteor developer account." "logout: Log out of your Meteor developer account." "whoami: Prints the username of your Meteor developer account." "test-packages: Test one or more packages." "admin: Administrative commands." "list-sites: List sites for which you are authorized." "publish-release: Publish a new meteor release to the package server." "publish: Publish a new version of a package to the package server." "publish-for-arch: Builds an already-published package for a new platform." "search: Search through the package server database." "show: Show detailed information about a release or package." ) local expl local -a packages installed_packages if (( CURRENT == 2 )); then _describe -t commands "meteor subcommand" _1st_arguments return fi case "$words[2]" in help) _describe -t commands "meteor subcommand" _1st_arguments ;; remove) _meteor_installed_packages _wanted installed_packages expl 'installed packages' compadd -a installed_packages ;; add) _meteor_all_packages _wanted packages expl 'all packages' compadd -a packages ;; esac