mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-26 10:43:47 +08:00
573c539956
* Implement https://github.com/hanny24/gradle-fish/blob/master/gradle.load * Use XDG_CACHE_HOME * Use __funced_md5 * Fix fish_md5.fish * Actually use the new function. * Use string match for matching tasks * I goofed. Actually pass a string to complete -a * Fix attempt to remove needed function... * Fix regex * Fix fish_md5.fish to use a flag
62 lines
3.4 KiB
Fish
62 lines
3.4 KiB
Fish
# gradle is a build system.
|
|
# See: https://gradle.org
|
|
|
|
complete -c gradle -l help -s h -d 'Show help'
|
|
complete -c gradle -l no-rebuild -s a -d 'Don\'t rebuild dependencies'
|
|
complete -c gradle -l build-file -s b -r -d 'Specify build file'
|
|
complete -c gradle -l settings-file -s c -r -d 'Specify settings file'
|
|
complete -c gradle -l configure-on-demand -d 'Only relevent project are configured'
|
|
complete -c gradle -l console -x -d 'Specify console output type' -a 'plan auto rich'
|
|
complete -c gradle -l continue -d 'Continue task execution after failure'
|
|
complete -c gradle -l system-prop -s D -r -d 'Set system property of the JVM'
|
|
complete -c gradle -l debug -s d -d 'Log in debug mode'
|
|
complete -c gradle -l daemon -d 'Uses Gradle Daemon to run build'
|
|
complete -c gradle -l forground -d 'Uses Gradle Daemon in forground'
|
|
complete -c gradle -l gradle-user-home -s g -r -d 'Specify gradle user home directory'
|
|
complete -c gradle -l gui -d 'Launch Gradle GUI'
|
|
complete -c gradle -l initscript -s I -r -d 'Specify an initialization script'
|
|
complete -c gradle -l info -s i -d 'Set log level to info'
|
|
complete -c gradle -l include-build -r -d 'Include specified build in composite'
|
|
complete -c gradle -l dry-run -s m -d 'Runs build with all task actions disabled'
|
|
complete -c gradle -l max-workers -x -d 'Configure number of concurrent workers' -a '1\t 2\t 3\t 4\t 5\t 6\t 7\t 8\t 9\t 10\t'
|
|
complete -c gradle -l no-daemon -d 'Don\'t use deamon'
|
|
complete -c gradle -l offline -d 'Don\'t use network resources'
|
|
complete -c gradle -l project-prop -s P -x -d 'Set project property for build script'
|
|
complete -c gradle -l project-dir -s p -r -d 'Specify start directory'
|
|
complete -c gradle -l parallel -d 'Build project in parallel'
|
|
complete -c gradle -l profile -d 'Profile build execution time'
|
|
complete -c gradle -l project-cache-dir -r -d 'Specify project cache directory'
|
|
complete -c gradle -l quiet -s q -d 'Only log erros'
|
|
complete -c gradle -l recompile-scripts -d 'Force build script recompiling'
|
|
complete -c gradle -l refresh-dependencies -d 'Refresh state of dependencies'
|
|
complete -c gradle -l rerun-tasks -d 'Ignore previously cached dependencies'
|
|
complete -c gradle -l full-stacktrace -s S -d 'Print out full stacktrace for all exceptions'
|
|
complete -c gradle -l status -d 'Shows status of running andrecently stopped daemon'
|
|
complete -c gradle -l stop -d 'Stop daemon if running'
|
|
complete -c gradle -l continuous -s t -d 'Enable continuous build'
|
|
complete -c gradle -l no-search-upward -s u -d 'Don\'t search in parent folders for settings file'
|
|
complete -c gradle -l version -s v -d 'Print version'
|
|
complete -c gradle -l exclude-task -s x -x -d 'Specify task to be excluded from execution'
|
|
|
|
# https://github.com/hanny24/gradle-fish/blob/master/gradle.load
|
|
function __cache_or_get_gradle_completion
|
|
# Set up cache directory
|
|
if test -z $XDG_CACHE_HOME
|
|
set XDG_CACHE_HOME $HOME/.cache/
|
|
end
|
|
mkdir -m 700 -p $XDG_CACHE_HOME/gradle-completions
|
|
|
|
set -l hashed_pwd (fish_md5 -s $PWD)
|
|
set -l gradle_cache_file $XDG_CACHE_HOME/gradle-completions/$hashed_pwd
|
|
if not test -f $gradle_cache_file; or command test build.gradle -nt $gradle_cache_file
|
|
command gradle -q tasks ^/dev/null | string match -r '^[[:alnum:]]+ - .*' | string replace ' - ' \t > $gradle_cache_file
|
|
end
|
|
cat $gradle_cache_file
|
|
end
|
|
|
|
function __contains_gradle_build
|
|
test -f build.gradle
|
|
end
|
|
|
|
complete -x -c gradle -n '__contains_gradle_build' -a "(__cache_or_get_gradle_completion)"
|