:! や :mak 実行時に以前の画面をクリアするハック
vim で :! や :mak を実行すると、画面に以前のコマンドの出力が残っているので、どこからが今実行したコマンドの出力なのかわかりづらい。そこで以前の画面をクリアするようにした。
--- ../src.orig/ex_cmds.c Sun Apr 23 03:56:56 2006 +++ ex_cmds.c Sat Dec 2 20:38:38 2006 @@ -1396,6 +1396,8 @@ if (!swapping_screen()) windgoto(msg_row, msg_col); cursor_on(); + redraw_later_clear(); + out_str(T_CL); (void)call_shell(cmd, SHELL_COOKED | flags); did_check_timestamps = FALSE; need_check_timestamps = TRUE;
スクリプトだけでできないかと思い、
au QuickFixCmdPre * :!clear
としてみたけどダメだった。
ShellCmdPost はあるのに ShellCmdPre はないんだな。