Vim은 자동으로 명령줄을 지웁니다

Vim은 자동으로 명령줄을 지웁니다

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 ''

관련 정보