From 1133c0c82d67b77970bbd3ea260c1fb2fb881fe9 Mon Sep 17 00:00:00 2001 From: Paul Seyfert Date: Fri, 23 Aug 2019 14:16:57 +0200 Subject: [PATCH 1/4] prepare go 1.13 --- src/_golang | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/_golang b/src/_golang index 8d84caa..246ce78 100644 --- a/src/_golang +++ b/src/_golang @@ -155,6 +155,56 @@ case $state in '-u[show docs for unexported and exported symbols and methods]' ;; + env) + local -a goenvvars + goenvvars=("CC=" + "CGO_CFLAGS=" + "CGO_CPPFLAGS=" + "CGO_CXXFLAGS=" + "CGO_ENABLED=" + "CGO_FFLAGS=" + "CGO_LDFLAGS=" + "CXX=" + "GCCGO=" + "GOARCH=" + "GOBIN=" + "GOCACHE=" + "GOEXE=" + "GOFLAGS=" + "GOGCCFLAGS=" + "GOHOSTARCH=" + "GOHOSTOS=" + "GOMOD=" + "GOOS=" + "GOPATH=" + "GOPROXY=" + "GORACE=" + "GOROOT=" + "GOTMPDIR=" + "GOTOOLDIR=" + "PKG_CONFIG=" + ) + + if (( $CURRENT == 2 )); then + _arguments \ + '-json[print the environment in JSON format]' \ + '-u[unset environment variables]' \ + '-w[change the default setting of environment variables]' + else + case $words[2] in + -u) + _values -s ' ' -w 'environment variable' ${goenvvars%=} + ;; + -w) + if compset -P '*='; then + else + _values -S "=" 'environment variable' $goenvvars + fi + ;; + esac + fi + ;; + fix) _arguments '*:importpaths:__go_packages' ;; From c8647517f35fc967ca8c039d7adb3cbd3c109fd9 Mon Sep 17 00:00:00 2001 From: Paul Seyfert Date: Fri, 23 Aug 2019 14:22:52 +0200 Subject: [PATCH 2/4] fixup new env vars --- src/_golang | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/_golang b/src/_golang index 246ce78..724ad61 100644 --- a/src/_golang +++ b/src/_golang @@ -157,7 +157,8 @@ case $state in env) local -a goenvvars - goenvvars=("CC=" + goenvvars=("AR=" + "CC=" "CGO_CFLAGS=" "CGO_CPPFLAGS=" "CGO_CXXFLAGS=" @@ -166,20 +167,25 @@ case $state in "CGO_LDFLAGS=" "CXX=" "GCCGO=" + "GO111MODULE=" "GOARCH=" "GOBIN=" "GOCACHE=" + "GOENV=" "GOEXE=" "GOFLAGS=" "GOGCCFLAGS=" "GOHOSTARCH=" "GOHOSTOS=" "GOMOD=" + "GONOPROXY=" + "GONOSUMDB=" "GOOS=" "GOPATH=" + "GOPRIVATE=" "GOPROXY=" - "GORACE=" "GOROOT=" + "GOSUMDB=" "GOTMPDIR=" "GOTOOLDIR=" "PKG_CONFIG=" From 17239cec9686b24973db3cb0e5ee9730a4550047 Mon Sep 17 00:00:00 2001 From: Paul Seyfert Date: Fri, 23 Aug 2019 14:37:32 +0200 Subject: [PATCH 3/4] minor 1.13 changes --- src/_golang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/_golang b/src/_golang index 724ad61..db57926 100644 --- a/src/_golang +++ b/src/_golang @@ -108,6 +108,7 @@ case $state in '-linkshared[link against shared libraries]' '-pkgdir[install and load all packages from dir]:dir' '-tags[list of build tags to consider satisfied]:tags' + '-trimpath[remove all file system paths from the resulting executable]' '-toolexec[program to use to invoke toolchain programs]:args' ) @@ -134,7 +135,7 @@ case $state in case $words[1] in build) _arguments \ - '-o[force build to write to named output file]:file:_files' \ + '-o[force build to write to named output file or directory]:file or directory:_files' \ '-i[installs the packages that are dependencies of the target]' \ ${build_flags[@]} \ '*:importpaths:__go_packages' From 0a0894d07c2b637830eca1b8b9dbef2bf61f1f91 Mon Sep 17 00:00:00 2001 From: Paul Seyfert Date: Fri, 23 Aug 2019 14:42:29 +0200 Subject: [PATCH 4/4] go env can show values of individual environment variables --- src/_golang | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/_golang b/src/_golang index db57926..c895002 100644 --- a/src/_golang +++ b/src/_golang @@ -196,18 +196,19 @@ case $state in _arguments \ '-json[print the environment in JSON format]' \ '-u[unset environment variables]' \ - '-w[change the default setting of environment variables]' + '-w[change the default setting of environment variables]' \ + '*:[show environment variable]:_values ${goenvvars%=}' else case $words[2] in - -u) - _values -s ' ' -w 'environment variable' ${goenvvars%=} - ;; -w) if compset -P '*='; then else _values -S "=" 'environment variable' $goenvvars fi ;; + *) + _values -s ' ' -w 'environment variable' ${goenvvars%=} + ;; esac fi ;;