mutt를 사용하여 이메일을 작성할 때 vim이 첫 번째 줄로 이동하고 삽입 모드로 들어가도록 합니다.

mutt를 사용하여 이메일을 작성할 때 vim이 첫 번째 줄로 이동하고 삽입 모드로 들어가도록 합니다.

Mutt는 vim을 편집기로 사용하며 임시 파일은 /tmp/mutt-*에 있습니다.

mutt에서 이메일에 답장할 때 vim이 자동으로 첫 번째 줄을 삽입하도록 하고 싶습니다. 내 .vimrc에 적용 가능한 줄은 다음과 같습니다.

autocmd BufRead /tmp/mutt-* execute 'normal gg/\n\n\n^M2j'

이 줄은 삽입되지 않은 것 같지만("i"를 추가해야 할 것 같습니다) 지금 당장은 그게 문제가 아닙니다. 문제는 vimrc에 이렇게 추가했음에도 불구하고 mutt가 호출한 vim이 여전히 마지막 줄의 커서로 시작한다는 것입니다.

그렇다면 내가 뭘 잘못하고 있는 걸까요? 그리고 가장 중요한 것은,mutt를 사용할 때 응답 상단에 vim을 삽입하는 방법은 무엇입니까?

편집하다:"실행" 후에 의도적으로 쓰레기를 입력하면 응답 시 vim 오류가 발생하기 때문에 내 .vimrc를 사용하고 있다는 것을 알고 있습니다.

고쳐 쓰다:나는 제안을 시도했고 삽입 제안은 훌륭하게 작동했지만 응답의 상단(예: vim이 열 때 tmp 파일의 상단)에서 삽입이 시작되도록 할 수 없습니다.

답변1

이 작업을 수행하려면 두 가지 자동 명령이 필요합니다. 제목과 메시지 사이의 간격을 찾으려면 빈 줄을 검색하세요.

autocmd BufRead /tmp/mutt-* execute "normal /^$/\n"

그런 다음 삽입 모드로 들어갑니다.

autocmd BufRead /tmp/mutt-* execute ":startinsert"

답변2

거기에 삽입 하면 1G파일의 첫 번째 줄에 도달해야 합니다.

관련 정보