Vimのちょっとしたマクロ技。
:!!
と、前のコマンド実行をしているんですが、前のコマンドで:「!rm *」なんて事をしていると、ファイルをまるごと消してひどい目にあったりするので、なんか良い手はないかなぁ・・・と思ってたら、「そうだ、マクロがあった!!」
ふふ。便利な技を思いついてしまったので、Vimのマクロをキーボードの記録以外で使ってみようと思う。
マクロの使い方。
マクロの使い方を復習しておこう。
qaiほげほげ<ESC>q
qでマクロ開始。次のaはレジスタ名。なんか打って、qで終了。
@a
@aで、レジスタにa登録しておいたマクロを開始する。
そう、マクロには「レジスタ」を使うのだ。
:reg
で確認してほしい。
ってことは、
ソースにデバッグコードを埋め込んでおいて、マクロ実行すればいい!!
/* 手抜きcat.c :!gcc -o cat cat.c && ./cat < cat.c */ #include <stdio.h> #include <stdlib.h> int main(void) { int c; while ((c = getchar()) != EOF) { putchar(c); } exit(EXIT_SUCCESS); }
コメントのスクリプト行で1行コピーしてaレジスタにデバッグスクリプトを登録する。
"aY
後は実行するだけ。
@a
ふふ〜ん。快適。
ソースにデバッグコードを埋め込んでおけるので、テストa,テストb,テストc等も登録しておくとステキだと思う。
まとめ
素直にmakeを書いた方がいい(汗