스왑 파일 비활성화
기존 버퍼의 경우 다음을 수행 할 수 있습니다 :setlocal noswapfile
. 이렇게하면 기존 항목이 제거되고 복구 기능이 꺼집니다. 새 버퍼를 열 때 직접 추가 할 수도 있습니다:noswapfile edit ...
Git 리포지토리 감지
Git 루트 디렉토리에서 Vim을 항상 열면 간단합니다 isdirectory('.git')
. 그렇지 않으면 부모 디렉토리도 확인해야합니다.
let gitDirspec = finddir('.git', '.;')
let isGitRepo = !empty(gitDirspec)
또는 vcscommand.vim 플러그인 은 다양한 버전 제어 시스템 유형 (Git 중)에 대한 탐지 기능을 제공합니다.
let isGitRepo = VCSCommandGetVCSType('') ==? 'git'
그것을 연결
Git 리포지토리의 정적 목록이 있다면 경로를 :autocmd
파일 사양 패턴에 직접 넣을 수 있습니다.
:autocmd BufNew,BufRead /path/to/repo1/**,/path/to/repo2/** setlocal noswapfile
탐지를 실행하려면 열린 각 파일에서 autocmds를 실행해야합니다.
:autocmd BufNew,BufRead * if VCSCommandGetVCSType('') ==? 'git' | setlocal noswapfile | endif