2012-10-05 2 views
1

CVS를 사용하여 $HOME/.vim 폴더를 포함하여 다른 PC간에 구성 파일을 동기화합니다..vim/plugin/CVS/Base/*에서 스크립트 자동로드 방지 .vim

하지만 문제가 있습니다. CVS는 파일의 낡은 복사본을 .vim/plugin/CVS/Base/에 남겨두고 Vim은이 파일들을로드해야한다고 생각합니다. 나는 그들을 vim을 무시하고 싶습니다! $HOME/.vimrc 추가 하단에서

+2

10 년이나 2 년 후에도 인기가 있다면 git로 업그레이드 할 수 있습니다. 다행히 전 Subversion에 대한 "업그레이드"를 중단했습니다. – joeytwiddle

+0

이력서는 이력서에서 온 사람이라면 쉽게 배울 수 있습니다. 그리고 그 명령은 일관성이있는 것처럼 보입니다 (비록 제가 처음 사용 된 VCS이므로 주관적입니다). – ZyX

답변

2

: 여러 컴퓨터에 걸쳐 .vim과의 .vimrc를 공유 할 수

augroup ForbidCVS 
    autocmd! 
    autocmd SourceCmd */CVS/* :" Do nothing 
augroup END 
+0

완벽하게 작동합니다. 고마워요! – joeytwiddle

0

:

이 일반적으로 플러그인에서 스크립트/모든 하위 폴더를로드하는 기본 동작과 다른
" Disable normal auto-loading of plugins 
set noloadplugins 

" Now load just the plugins we want 
runtime! plugin/*.vim 

. 나는 대부분의 사용자가 하위 폴더를 만들지 않는다고 생각합니다. 그렇게하는 사용자에게는 이것이 작동하지 않습니다! 당신은이 사건에 대한 SourceCmd을 사용할 수 있습니다

+2

사용자는 하위 폴더를 많이 사용하지 않지만 복잡한 플러그인 작성자가 할 수 있습니다. 그건 그렇고, 이것은 파일 형식 플러그인에 대한 문제를 해결하지 못합니다. 서브 폴더를 가질 확률은 더 낮지 만'cvs '는 커밋 메시지에 사용되는 유효한 파일 유형입니다. 문제를보기 위해서는'ftplugin /'디렉토리의 버전 제어 파일 ('CVS /'에 오래된 복사본을 포함하도록), windows/mac (대소 문자를 무시하는 파일 시스템을 사용함)와 vim 커밋 메시지를 작성합니다. – ZyX

0

쉬운 방법은 보관함에 모두 넣고 각 컴퓨터의 $ HOME 디렉토리에 심볼릭 링크를하는 것입니다 너는 일하고있어. CVS는 필요하지 않으며 .vimrc에 대한 변경 사항은 다른 모든 컴퓨터에서 즉시 사용할 수 있습니다.

또 다른 유용한 팁은 vim gsession 플러그인을 사용하여 .vim 디렉토리에 저장된 글로벌 세션 파일을 만드는 것입니다. 따라서 한 대의 컴퓨터에서 세션을 만들면 다른 모든 컴퓨터에서도 세션을 사용할 수 있습니다.

+0

VCS는 여러 컴퓨터에서 구성 파일을 공유하는 용도로만 사용되는 것이 아니라 기록을 유지하기위한 용도로 사용됩니다. – ZyX

+0

물론. 하지만 .vim dir과 .vimrc에 버전 제어가 정말로 필요합니까? – dharnan

+1

@dharhan 인터넷에 연결되어 있지 않은 넷북에서 작업 할 때 편리하며 구성 파일을 편집합니다 (병합은 CVS의 강력한 측면이 아닙니다). 그리고 다른 것은 : 나는 실수로 커밋 된 구성을 풀지 않을 것이라고 절대 확신합니다. dropbox 마운트에서'rm .vimrc'를 실행하면 이러한 변경 사항이 다른 시스템에 전파되어 수은 정산에 동일하게 적용됩니다. 실제로는 실제로 사용되는 파일 대신 $ HOME에있는 기호 링크를 사용하는 경우는 드물지만 대부분 발생합니다. 내게는 수은 저장소에서 이러한 삭제를 실행 취소하면 백업에서 파일을 가져 오는 것이 훨씬 간단합니다. – ZyX

관련 문제