驚いたあまりこの記事を書くことにしました。
頑張ってGDBのプラグインを探してたが、vim単体でGDBを使えるのは感動感激です。
忙しい人のためにvimでGDBを手軽に始める方法をご紹介します。(手抜き記事です)
前提
vimでGDBを使うにはvim 8.1.X以上のバージョンで使えます。
.vimrcに次のように追加します
.vimrc
packadd termdebug
'マウスを使用
set mouse=a
let g:termdebug_wide = 163
余談ですが、初めてvimのマウス操作が楽しいと思いました。
サンプルコード
一応使ったサンプルのCソースを置いときますね
timmer.c
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
int main() {
struct timeval myTime;
struct tm *time_st;
const char weekName[7][4] = {
"Sun",
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat"
};
gettimeofday(&myTime, NULL);
for(int i = 0; i < 3; i++){
time_st = localtime(&myTime.tv_sec);
printf("Date : %d/%02d/%02d(%s) %02d:%02d:%02d.%06d\n",
time_st->tm_year+1900,
time_st->tm_mon+1,
time_st->tm_mday,
weekName[time_st->tm_wday],
time_st->tm_hour,
time_st->tm_min,
time_st->tm_sec,
myTime.tv_usec
);
}
}
ソースコードをコンパイルをしてあげます。
gcc -g3 -o timmer timmer.c
実際動作
vimでtimmer.cを開きます。
デバッグを開始するには :Termdebug または :TermdebugCommand に続けてコマン
ド名を入力します。例:
:Termdebug ./timmer
そこからの動作は次のとおりです。
ああ〜〜なんという素晴らしい!!
ちなみにここに書かれている物は日本語ドキュメントに乗っています。
詳しく知りたければ、ご覧ください → https://vim-jp.org/vimdoc-ja/terminal.html#terminal-debug