나는 명령 출력이 한 줄을 초과할 때 나타나는 이 메시지를 잘 알고 있습니다.
그러나 내가 작업하는 시스템 중 하나에서는 :w
메시지를 담을 수 있는 수평 공간이 충분함에도 불구하고 쓰기를 사용할 때마다 메시지가 표시됩니다. 예를 들어:
이것은 tmux 세션에서 vim을 사용할 때만 발생하는 것 같지만 왜 이런 일이 발생하는지 이해하지 못합니다. vim과 tmux의 다른 모든 측면은 제대로 작동하는 것 같습니다. tmux와는 아무 관련이 없는 것으로 나타났습니다.
고쳐 쓰다:vimrc에서 다음 줄을 찾았습니다.
set backupdir=/tmp
이 줄만 포함하는 vimrc를 사용하면 파일을 작성할 때 메시지를 트리거하기에 충분합니다. 웃긴 건 내가 글을 쓸 때만 그런 일이 일어난다는 거야기존 파일에.
왜 이런 일이 발생합니까? 이 컴퓨터에서만 발생합니까?
답변1
정확한 환경을 살펴보지 않고는 /tmp가 범인 컴퓨터에 존재하지 않는다는 것(또는 가득 차 있거나 일부 권한 문제가 있음)만 추측할 수 있습니다. 기존 파일에 쓸 때마다 vim은 백업을 저장할 수 없으므로 불평하고 메시지를 표시합니다.
다음 방법 중 하나를 시도하여 이러한 경우인지 확인할 수 있습니다.
- 메시지를 표시하지 않고 파일을 저장하는 데 사용할 수 있는지 확인하세요
:w!
. 다음을 추가하여 프롬프트 전에 오류 메시지를 받을 수 있는지 확인하세요
.vimrc
.set cmdheight=N
환경에 맞는 N=2, 3, 4를 시도해 보세요.
답변2
권한이 있는 파일을 열어 보십시오 sudo
. 예를 들어, 파일 이름이 이면 MyFile
문제 sudo vim MyFile
가 발생하지 않습니다. 파일이 읽기 전용인 경우에 발생합니다. 다음 방법을 사용하여 문제를 영구적으로 처리할 수 있습니다.
sudo chmod a+w MyFile
이제 sudo
.vim MyFile