Mac(High Sierra)上のvimでtermdebugする

先日のVimConf 2018でujihisaさんがお話されていたtermdebug、早速試してみたところ、主にMacgdbでハマったので自分用にメモ。

まずは、ありがたくujihisaさんのスライドを見ましょう。
Modes / VimConf 2018 - Speaker Deck

最新のHomeBrewでgdbを入れると、今だと8.2がインストールされ、Mac(High Sierra)だと動かないらしいので、以下の記事を参考に、8.0を入れる。(Mojaveだとまた違うかもしれない)
macOS High Sierra 10.13 では gdb 8.1 は動かない - Qiita

gdbを動かすために、コード署名が必要なので、以下の記事を参考に署名する。
mac OS 10.13(High Sierra) で gdb を使う - Qiita

ujihisaさんのスライドを参考に

  1. git clone https://github.com/vim/vim
  2. cd ./vim
  3. ./src/Makefile を手動編集 (ujihisaさんスライド参照)
  4. make
  5. ./src/vim ができる。
  6. ./src/vim を実行 (.vimrcなど読まれたくなければ適宜-u NONE -Nなどをつける)
  7. :set packpath+=./runtime (termdebugをpackaddで追加するため)
  8. :packadd termdebug
  9. :Termdebug ./src/vim
  10. terminal上でgdb表示される。
  11. run -u NONE -N

:Termdebug めっちゃ便利

P.S.
6. 以降は別にビルドしたvim使わなくてもMacVimなどでも良かった。
ただし、:Termdebug ./src/vimにはビルドしたvimを指定すること