Version 1
[yaffs-website] / node_modules / grunt / node_modules / grunt-cli / completion / zsh
diff --git a/node_modules/grunt/node_modules/grunt-cli/completion/zsh b/node_modules/grunt/node_modules/grunt-cli/completion/zsh
new file mode 100755 (executable)
index 0000000..c2841ff
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/zsh
+
+# grunt-cli
+# http://gruntjs.com/
+#
+# Copyright (c) 2016 Tyler Kellen, contributors
+# Licensed under the MIT license.
+# https://github.com/gruntjs/grunt/blob/master/LICENSE-MIT
+
+# Usage:
+#
+# To enable zsh <tab> completion for grunt, add the following line (minus the
+# leading #, which is the zsh comment character) to your ~/.zshrc file:
+#
+# eval "$(grunt --completion=zsh)"
+
+# Enable zsh autocompletion.
+function _grunt_completion() {
+  local completions
+  # The currently-being-completed word.
+  local cur="${words[@]}"
+  # The current grunt version, available tasks, options, etc.
+  local gruntinfo="$(grunt --version --verbose 2>/dev/null)"
+  # Options and tasks.
+  local opts="$(echo "$gruntinfo" | awk '/Available options: / {$1=$2=""; print $0}')"
+  local compls="$(echo "$gruntinfo" | awk '/Available tasks: / {$1=$2=""; print $0}')"
+  # Only add -- or - options if the user has started typing -
+  [[ "$cur" == -* ]] && compls="$compls $opts"
+  # Trim whitespace.
+  compls=$(echo "$compls" | sed -e 's/^ *//g' -e 's/ *$//g')
+  # Turn compls into an array to of completions.
+  completions=(${=compls})
+  # Tell complete what stuff to show.
+  compadd -- $completions
+}
+
+compdef _grunt_completion grunt