2014/04/24

cgdbとgdbのTUIモードでGoのコンソールデバッグをしてみる

デバッグにはGUIを使ってもよい派なので、liteIDEとかIntellijを使うほうが幸せになりそうですが、Goのコンソールデバッグするために、gdbをコンソールでちょっと使いやすくしたcgdbと、gdbのTUIモードを試してみました。

なお、Goでこれらを利用するにはまずgdbを最新のものにする必要があります。詳細は以前の記事「MacでGoのデバッグ環境を構築する」を参照してください。

cgdb

cgdbの構成は2ペイン表示になっており、上がコードで下がgdbコンソールになっています。

2つのペインの往き来はvi風に行います。上のコードモードにはESCで入ります。gdbコンソールに戻るにはiを押します。

上のコードモードではスペースキーで現在行にブレークポイントを張れたりします (Solarizedを使っているせいで現在行がすごくわかりづらいです)。 なお、tの一回だけ止まるブレークポイントは地味に便利そうでした。

ちなみに、brewで入れるだけです。

gdbのTUIモード

gdb実行中にC-x C-aするか、gdb program-name -tuiでTUI (Text User Interface) モードに入ることができます。

viキーバインディング風なcgdbに対して、gdbのTUIモードはEmacsキーバインディング風です (さすがGNU) 。

C-x oでペイン移動とかです。ブレークポイントを張るにはコンソールからしかできないので面倒な反面、スタックトレースやレジスタ表示ができたりします。

あと、わりと画面表示が崩れることがあるので、C-lをする必要があるのもちょっと面倒。

関連リンク

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。