vimを使用するときは、コマンドライン(メッセージ、警告、エラーを印刷する行)を空白のままにすることをお勧めします。ファイルを保存した後、通常は画面を再度消去するために<C-l>
aを実行します。
コマンドラインからn秒間印刷して自動的に実行するようにこのプロセスを自動化する方法はありますか<C-l>
?
答え1
次の自動コマンドは目的の操作を実行できます。
" Clear cmd line message
function! s:empty_message(timer)
if mode() ==# 'n'
echon ''
endif
endfunction
augroup cmd_msg_cls
autocmd!
autocmd CmdlineLeave : call timer_start(5000, funcref('s:empty_message'))
augroup END
CmdlineLeave
イベントがトリガされてから5秒後、コマンドライン出力はクリアされます。あなたが望むように動作します。必要に応じて時間を調整できます。
答え2
@jdhaoの回答に加えて、CursorHold
値をupdatetime
タイムアウトとして使用し、キーを押さない限り、このイベントを実行できます。
たとえば、
autocmd CursorHold * echon ''