|
@@ -1,9 +1,10 @@
|
|
-# From : http://golang.org/misc/zsh/go?m=text
|
|
|
|
|
|
+# install in /etc/zsh/zshrc or your personal .zshrc
|
|
|
|
+
|
|
# gc
|
|
# gc
|
|
prefixes=(5 6 8)
|
|
prefixes=(5 6 8)
|
|
for p in $prefixes; do
|
|
for p in $prefixes; do
|
|
- compctl -g "*.${p}" ${p}l
|
|
|
|
- compctl -g "*.go" ${p}g
|
|
|
|
|
|
+ compctl -g "*.${p}" ${p}l
|
|
|
|
+ compctl -g "*.go" ${p}g
|
|
done
|
|
done
|
|
|
|
|
|
# standard go tools
|
|
# standard go tools
|
|
@@ -19,6 +20,7 @@ __go_tool_complete() {
|
|
'build[compile packages and dependencies]'
|
|
'build[compile packages and dependencies]'
|
|
'clean[remove object files]'
|
|
'clean[remove object files]'
|
|
'doc[run godoc on package sources]'
|
|
'doc[run godoc on package sources]'
|
|
|
|
+ 'env[print Go environment information]'
|
|
'fix[run go tool fix on packages]'
|
|
'fix[run go tool fix on packages]'
|
|
'fmt[run gofmt on package sources]'
|
|
'fmt[run gofmt on package sources]'
|
|
'get[download and install packages and dependencies]'
|
|
'get[download and install packages and dependencies]'
|
|
@@ -39,12 +41,17 @@ __go_tool_complete() {
|
|
build_flags=(
|
|
build_flags=(
|
|
'-a[force reinstallation of packages that are already up-to-date]'
|
|
'-a[force reinstallation of packages that are already up-to-date]'
|
|
'-n[print the commands but do not run them]'
|
|
'-n[print the commands but do not run them]'
|
|
- "-p[number of parallel builds]:number"
|
|
|
|
|
|
+ '-p[number of parallel builds]:number'
|
|
|
|
+ '-race[enable data race detection]'
|
|
'-x[print the commands]'
|
|
'-x[print the commands]'
|
|
- "-work[print temporary directory name and keep it]"
|
|
|
|
- "-gcflags[flags for 5g/6g/8g]:flags"
|
|
|
|
- "-ldflags[flags for 5l/6l/8l]:flags"
|
|
|
|
- "-gccgoflags[flags for gccgo]:flags"
|
|
|
|
|
|
+ '-work[print temporary directory name and keep it]'
|
|
|
|
+ '-ccflags[flags for 5c/6c/8c]:flags'
|
|
|
|
+ '-gcflags[flags for 5g/6g/8g]:flags'
|
|
|
|
+ '-ldflags[flags for 5l/6l/8l]:flags'
|
|
|
|
+ '-gccgoflags[flags for gccgo]:flags'
|
|
|
|
+ '-compiler[name of compiler to use]:name'
|
|
|
|
+ '-installsuffix[suffix to add to package directory]:suffix'
|
|
|
|
+ '-tags[list of build tags to consider satisfied]:tags'
|
|
)
|
|
)
|
|
__go_list() {
|
|
__go_list() {
|
|
local expl importpaths
|
|
local expl importpaths
|
|
@@ -62,7 +69,7 @@ __go_tool_complete() {
|
|
install)
|
|
install)
|
|
_arguments -s -w : ${build_flags[@]} \
|
|
_arguments -s -w : ${build_flags[@]} \
|
|
"-v[show package names]" \
|
|
"-v[show package names]" \
|
|
- '*:importpaths:__go_list'
|
|
|
|
|
|
+ '*:importpaths:__go_list'
|
|
;;
|
|
;;
|
|
get)
|
|
get)
|
|
_arguments -s -w : \
|
|
_arguments -s -w : \
|
|
@@ -87,7 +94,10 @@ __go_tool_complete() {
|
|
"-cpu[values of GOMAXPROCS to use]:number list" \
|
|
"-cpu[values of GOMAXPROCS to use]:number list" \
|
|
"-run[run tests and examples matching regexp]:regexp" \
|
|
"-run[run tests and examples matching regexp]:regexp" \
|
|
"-bench[run benchmarks matching regexp]:regexp" \
|
|
"-bench[run benchmarks matching regexp]:regexp" \
|
|
- "-benchtime[run each benchmark during n seconds]:duration" \
|
|
|
|
|
|
+ "-benchmem[print memory allocation stats]" \
|
|
|
|
+ "-benchtime[run each benchmark until taking this long]:duration" \
|
|
|
|
+ "-blockprofile[write goroutine blocking profile to file]:file" \
|
|
|
|
+ "-blockprofilerate[set sampling rate of goroutine blocking profile]:number" \
|
|
"-timeout[kill test after that duration]:duration" \
|
|
"-timeout[kill test after that duration]:duration" \
|
|
"-cpuprofile[write CPU profile to file]:file:_files" \
|
|
"-cpuprofile[write CPU profile to file]:file:_files" \
|
|
"-memprofile[write heap profile to file]:file:_files" \
|
|
"-memprofile[write heap profile to file]:file:_files" \
|
|
@@ -97,7 +107,7 @@ __go_tool_complete() {
|
|
help)
|
|
help)
|
|
_values "${commands[@]}" \
|
|
_values "${commands[@]}" \
|
|
'gopath[GOPATH environment variable]' \
|
|
'gopath[GOPATH environment variable]' \
|
|
- 'importpath[description of import paths]' \
|
|
|
|
|
|
+ 'packages[description of package lists]' \
|
|
'remote[remote import path syntax]' \
|
|
'remote[remote import path syntax]' \
|
|
'testflag[description of testing flags]' \
|
|
'testflag[description of testing flags]' \
|
|
'testfunc[description of testing functions]'
|
|
'testfunc[description of testing functions]'
|
|
@@ -147,4 +157,4 @@ __go_tool_complete() {
|
|
esac
|
|
esac
|
|
}
|
|
}
|
|
|
|
|
|
-compdef __go_tool_complete go
|
|
|
|
|
|
+compdef __go_tool_complete go
|