1 _enumerateGrailsScripts() {
3 directories=($GRAILS_HOME/scripts ~/.grails/scripts ./scripts)
5 # Check all of the plugins directories, if they exist
8 directories+=(plugins/*/scripts)
11 # Enumerate all of the Groovy files
13 for dir in $directories;
17 files+=($dir/[^_]*.groovy)
21 # Don't try to basename ()
22 if [ ${#files} -eq 0 ];
31 # - Remove all scripts with a leading '_'
32 # - PackagePlugin_.groovy -> PackagePlugin
33 # - PackagePlugin -> Package-Plugin
34 # - Package-Plugin -> package-plugin
35 command=$(basename $file \
36 | sed -E -e 's/^_?([^_]+)_?.groovy/\1/'\
37 -e 's/([a-z])([A-Z])/\1-\2/g' \
38 | tr "[:upper:]" "[:lower:]" \
47 if (( CURRENT == 2 )); then
48 scripts=( $(_enumerateGrailsScripts) )
50 if [ ${#scripts} -ne 0 ];
52 _multi_parts / scripts
60 compdef _grails grails