スーパーレターありがとうございます。

Go 言語でお仕事、良いですね。

Vim で Go を書く時におおよそ必要なのは以下です。

必須プラグイン

vim-lsp と vim-lsp-settings と gopls

Go の Language Server です。Vim から Language Server を利用する方法に合わせて gopls を導入する必要があります。

Vim から Language Server を利用する方法は幾らかあるのですが、僕は prabirshrestha/vim-lsp を使っています。prabirshrestha/vim-lsp は mattn/vim-lsp-settings と組み合わせる事で、世の中に存在する多くの Language Server を簡単にインストールして使いだす事が出来る様になっています。

go コマンドにパスが通っている状態で Go ファイルを開き以下を実行すると gopls がインストールできます。

:LspInstallServer gopls

gopls がインストールされると、入力補完や定義位置ジャンプ、変数や関数のリネーム等が簡単にできる様になります。

mattn/vim-goimports

Vim で Go を書いていると、import 文を追加したい事があります。このプラグインを使う事で

:GoImport github.com/mattn/go-colorable

といった風に import を追加する事ができます。go get と同時に import を追加するのであれば

:GoImport! github.com/mattn/go-colorable

です。

mattn/vim-gomod

Vim 標準で Go のシンタックスハイライトに対応していますが、go.mod には対応していません。このプラグインを入れると go.mod に色が付きます。

mattn/vim-gotmpl

Vim 標準で Go の html/template 記法や text/template 記法をコーディングする事があると思います。ただこちらもハイライトが効きません。

このプラグインをインストールする事で色が付きます。

以下はお好みに合わせて

mattn/vim-godoc

Vim から Godoc を引くためのプラグインです。

:Godoc word

で検索できます。

mattn/vim-gorun

Vim から現在開いている Go ファイルを go run で実行する為のプラグインです。

:GoRun [arguments]

で実行できます。

僕はこれで十分なので使っていませんが、この他にも Vim で Go をプログラミングする際に便利なプラグインが沢山あります。ぜひ見付けて試して下さい。

なお Neovim の場合はまた違う方法で Language Server を使わなければなりませんが、すみません僕は Neovim に詳しくありません。

4時間4時間更新

利用規約プライバシーポリシーに同意の上ご利用ください

mattnさんの過去の回答
    Loading...