_sbt 2.32 KB
Newer Older
Mirko Caserta's avatar
Mirko Caserta committed
1
2
3
4
5
6
7
8
#compdef sbt
#autoload

local -a _sbt_commands
_sbt_commands=(
  'clean:delete files produced by the build'
  'compile:compile sources'
  'console:start the Scala REPL with project classes on the classpath'
9
10
  'consoleQuick:start the Scala REPL with project deps on the classpath'
  'consoleProject:start the Scala REPL w/sbt+build-def on the classpath'
Mirko Caserta's avatar
Mirko Caserta committed
11
12
13
  'dist:generate distribution artifacts'
  'dist\:clean:clean distribution artifacts'
  'doc:generate API documentation'
14
  'genIdea:generate Intellij Idea project files'
Mirko Caserta's avatar
Mirko Caserta committed
15
  'package:produce the main artifact, such as a binary jar'
16
17
  'packageDoc:produce a doc artifact, such as a jar containing API docs'
  'packageSrc:produce a source artifact, such as a jar containing sources'
Mirko Caserta's avatar
Mirko Caserta committed
18
  'publish:publish artifacts to a repository'
19
20
  'publishLocal:publish artifacts to the local repository'
  'publishM2:publish artifacts to the local Maven 2 repository'
Mirko Caserta's avatar
Mirko Caserta committed
21
  'run:run a main class'
22
  'runMain:run the main class selected by the first argument'
Mirko Caserta's avatar
Mirko Caserta committed
23
  'test:execute all tests'
24
25
  'testOnly:execute the tests provided as arguments'
  'testQuick:execute previously failed tests'
Mirko Caserta's avatar
Mirko Caserta committed
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
  'update:resolve and optionally retrieve dependencies'
)

local expl

_arguments \
  '(-help)-h[prints an help message]' \
  '(-h)-help[prints an help message]' \
  '(-verbose)-v[this runner is chattier]' \
  '(-v)-verbose[this runner is chattier]' \
  '(-debug)-d[set sbt log level to debug]' \
  '(-d)-debug[set sbt log level to debug]' \
  '-no-colors[disable ANSI color codes]' \
  '-sbt-create[start even if current dir contains no sbt project]' \
  '-sbt-dir[path to global settings/plugins dir (default: ~/.sbt)]' \
  '-sbt-boot[path to shared boot dir (default: ~/.sbt/boot)]' \
  '-ivy[path to local Ivy repository (default: ~/.ivy2)]' \
  '-mem[set memory options]' \
  '-no-share[use all local caches; no sharing]' \
  '-no-global[use global caches, but do not use global ~/.sbt dir]' \
  '-jvm-debug[turn on JVM debugging, open at the given port]' \
  '-batch[disable interactive mode]' \
  '-sbt-version[use the specified version of sbt]' \
  '-sbt-jar[use the specified jar as the sbt launcher]' \
  '(-sbt-snapshot)-sbt-rc[use an RC version of sbt]' \
  '(-sbt-rc)-sbt-snapshot[use a snapshot version of sbt]' \
  '-java-home[alternate JAVA_HOME]' \
  '*:: :->subcmds' && return 0

_describe -t commands "sbt subcommand" _sbt_commands
return