vim-delveでGoのプログラムをデバッグする
|
VIm、NeovimでGoをデバッグするときprintデバッグで頑張るのも大変なので、開発につまったときはvscodeに切り替えてデバッグしていたですが、vimでも高機能エディタと同じようにできることがわかったので試しました。
事前準備
delveのインストール
Go言語のデバッグツールdelveが必要なのでインストールします。
go install github.com/go-delve/delve/cmd/dlv@latest
vim-delveのインストール
delveだけでもデバッグできますが、より使いやすくするために vim-delve というvimプラグインをインストール。
vim-delveでデバッグしてみた
↓こんな感じに。
vim-delveでデバッグしてみた。
vim-delveの使い方
:DlvAddBreakpoint
…ブレイクポイントのセット:DlvRemoveBreakpoint
…ブレイクポイントの解除:DlvClearAll
…全てのブレイクポイントとトレースポイントをクリア:DlvToggleBreakpoint
…ブレイクポイントのセット/解除の切り替え:DlvDebug
…デバッグ起動
その他の操作は vim-delveのREADME.md を参照のこと。
コマンドを直接打つのは大変なので、私はキーマップを下記のように設定しています。
nmap <silent> <Leader>9 :DlvToggleBreakpoint<CR>
nmap <silent> <Leader>5 :DlvDebug<CR>
delveの使い方
デバッグが起動すると (dlv)
というプロンプトが表示され、delveのコマンドで操作します。
ブレイクポイントが設定されている場合はそこで処理が止まるので、変数の中身をみたり、次のブレイクポイントに進んだりできます。
n
…次の行の処理に進むc
…次のブレイクポイントまで処理を進めるp ${変数名}
…変数の中身を確認する
その他のdelveの操作は本家のドキュメントか、 help
コマンドで確認できます。
vim-delveでテストコードのデバッグ
下記コマンドでテストコードをデバッグすることも可能。
:DlvTest
まとめ
vim-delve便利でした。やったね!