vimspectorの使い方

vimデバッグできるプラグインvimspectorの使い方。
細かい使い方はわかっていないが、とりあえず手元の環境(WSL2 / Python3.9)で動いたので備忘がてら記事にする。

インストール

vimspectorのインストール

READEME の通りでOK。
自分はvim-plugを使っているため、vimrcに以下の行を追加した。

Plug 'puremourning/vimspector'

gadgetsのインストール

デバッグしたい言語ごとに、デバッグ用のモジュール(gadgets)をインストールする。
Pythonの場合はdebugpyを利用する。
vimspectorに以下の行を追加して、 :VimspectorInstall を実行する。

let g:vimspector_install_gadgets = ['debugpy']

設定ファイル

vimspector.json というファイルに設定を書き込む。 詳細はこちらを参照。

ファイルの場所

詳細はこちらを参照。
<vimspector home>/configurations/<os>/<filetype>/vimspector.json が読み込まれる。
<vimspector home>g:vimspector_base_dir という変数で設定できる。
linuxpythonを実行する場合は以下の通り。
<vimspector home>/configurations/linux/python/vimspector.json

vimspector.json

実行したい環境によってjsonファイルを実装する。
以下はPythonの例。

{
  "configurations": {
    "launch": {
      "adapter": "debugpy",
      "filetypes": [
        "python"
      ],
      "breakpoints": {
        "exception": {
          "caught": "Y",
          "uncaught": "Y"
        }
      },
      "configuration": {
        "name": "launch",
        "type": "python",
        "request": "launch",
        "python": "${HOME}/.pyenv/shims/python",
        "stopOnEntry": true,
        "console": "externalTerminal",
        "debugOptions": [],
        "program": "${file}"
      }
    }
  }
}

参考