버퍼를 수정한 후에 vim이 파일에만 쓰도록 하려면 어떻게 해야 합니까?

버퍼를 수정한 후에 vim이 파일에만 쓰도록 하려면 어떻게 해야 합니까?

vim에서 수정된 경우에만 .zshrc를 선택하는 이 기능이 있지만 최근에 Windows와 WSL을 다시 설치한 다음 이전 .zshrc 및 .vimrc를 사용하여 설정을 복원했지만 이 이전에는 특정 기능이 작동하지 않았습니다. 이전과:

function zshrc () {
    local original_ctime="$(zstat +ctime -- ~/.zshrc)" 2>/dev/null
    vim ~/.zshrc || return
    [[ -n $original_ctime ]] || return
    if [[ $original_ctime != "$(zstat +ctime -- ~/.zshrc 2>/dev/null)" ]]
    then
        source ~/.zshrc
    fi
}

이 함수는 파일 생성 시간이 변경되었는지 확인해야 합니다.이봐.

WSL을 다시 설치하기 전에 zshrcvim을 실행하고(변경 사항 없이) 버퍼를 저장할 수 있었습니다 :wq. 그런 다음 vim은 원본 파일을 덮어쓰지 않으므로 그렇지 않을 것입니다 source ~/.zshrc. 그리고 변경한 경우 vim만 원본 파일을 덮어쓰므로 기능이 작동합니다. source ~/.zshrcvim의 일부 기본 설정이 변경되었을 수 있다고 가정하는데, 해당 특정 동작을 어떻게 복원할 수 있습니까 ?

나는 이것을 얻기 위해 vim을 종료할 수 있다는 것을 알고 있지만 :q!다른 파일을 빠르게 편집한 다음 아무런 변경 없이 .zshrc를 다시 가져올 때 :wq생각 없이 그것을 사용합니다 .

답변1

ZZ 실행하는 습관을 들이십시오(예: Shift+ Z, Shift+ ) Z. 버퍼가 수정된 경우 이 작업이 수행됩니다 :wq. 버퍼가 수정되지 않은 경우 저장하지 않고 종료됩니다.

관련 정보