はじめに
golangは趣味でやっていてVSCodeにも詳しくないので、より簡単な対処法ご存知の方いらっしゃったら教えていただきたいです。
環境
- macOS 10.13.4
- VSCode: 1.22.2
- Go for Visual Studio Code: 0.6.78
何が起きたか
久しぶりにGoを触ってみようと思いVSCodeでGoファイルを開いたところ、以前は有効になっていた補完機能や自動import機能、ジャンプ等が軒並み動作しなくなっていた。
Visual Studio Code(vscode-go)のコード補完が効かなくなるを参考にgocode
アップデートgocode close
を試したり
Go for Visual Studio Codeの再インストールをやってみたが動作しない。
この時、コマンドパレットのGo: Install/Update Tools
を実行してみたらcommand 'go.tools.install' not found
というエラーが出た。
Go: Current GOPATH
を実行するとこちらもcommand 'go.gopath' not found
とエラー。GOPATH設定しているのに...
一つ前VersionのGo for Visual Studio Codeをインストールする
Go for Visual Studio Codeの最新版(0.6.78)が壊れているのではないかと思い一つ前のVersionを入れてみることにした。
過去Versionの拡張機能をインストールする方法についてはこちらのサイトを参考にさせていただきました。
ファイルのダウンロード・インストール
Go for Visual Studio Code 0.6.77をダウンロードしたい場合
${publisher} -> lukehoban
${extension_name} -> go
${version} -> 0.6.77
https://lukehoban.gallery.vsassets.io/_apis/public/gallery/publisher/lukehoban/extension/go/0.6.77/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage
で、DLしたファイルを拡張子vsixにリネームして、コマンドパレットの拡張機能:VSIXからのインストール
で選択してインストールする。
拡張機能の自動更新をオフにする
これを忘れるとVSCodeを再起動するとGo for Visual Studio Codeが最新になってしまうので設定しておく。
"extensions.autoUpdate": false
必要なパッケージのインストール
コマンドパレットのGo: Install/Update Tools
を実行する。
今度は正常にgocode
やgopkgs
などがインストールされて...
無事、補完やジャンプが動作するようになった!
結局、0.6.78がバグってるということなんだろうか。