2009年10月20日 星期二

關於 vim + gdb

有朋友問 vim 如何整合 gdb ,這是個好問題。 其實 vim 裡頭可以開啟 shell 來呼叫外部程式。但是這個作法實在不大好。 output 很容易亂掉編輯畫面,再者,也不方便 scroll 輸出的訊息。

其實是有簡單的解法的。基本上,我們可以利用 screen 的 share 功能來從外部送一些相關指令餵給 Terminal 的 gdb shell 或是利用簡單的 IPC 來操作外部程式,譬如說 設定 breakpoint , step , continue ... 等等功能。

再延伸一點,這麼多指令,肯定很容易衝突到其他的 key mapping ,要不,就是得延長 key mapping 的序列才行。所以可以透過 augroup 來在特定的情況下,將一整組 key mapping override 現有的 key mapping ,在不需要的時候再把這些 key mapping unmap 掉。

這邊先賣一下關子,有空再來寫。 XD 時候不早了,先去睡覺。 XDD