2012-09-04 2 views
2

"github 프로젝트에 기여"하는 데 상당히 익숙하지만 기쁘게 생각합니다. github 프로젝트에 기여하면서 기존의 것과 들여 쓰기를 얻는 방법에 대해 궁금합니다. . 예를 들어 나는 VIM을 사용하고, 내 자신의 .vimrc 파일을 가지고있다. 그러나 루비 프로젝트를 포크 한 다음 복제하면 같은 들여 쓰기를 어떻게 사용할 수 있는가?github 프로젝트에 기여하는 동안 코드에 들여 쓰기

답변

2

많은 프로젝트는 파일 하단의 주석에 :help modeline 옵션이 있습니다. 예 :

# vim: noet 

이러한 종류의 옵션은 ~/.vimrc의 옵션보다 우선합니다. 프로젝트 관리자는 종종 코드 전반에 걸쳐 일관성을 유지하기 위해 이러한 작업을 수행합니다. 일부 프로젝트에는 이러한 규칙이 없지만 여전히 일련의 규칙을 준수합니다. 예를 들어 하드 스페이스 대신 탭을 사용할 수 있습니다. 하드 스페이스를 사용하고 탭을 사용하는 프로젝트에 기여하는 경우 일관성을 유지하는 것이 가장 좋습니다. 몇 가지 방법으로이를 수행 할 수 있습니다. 한 가지 예는 그 소원을 프로젝트에 부착하는 것을 잊지 않도록이

au BufRead,BufNewFile /path/to/project/** set noet 

처럼의 vimrc에서 해당 프로젝트에 대한 자동 명령을 설정하는 것입니다. 또 다른 방법은 수동으로 설정하는 것입니다. 또한 프로젝트 탭을 하드 공간으로 변경 한 다음 다시 변경할 수 있습니다. 예를 들어

:retab! 

을 입력하여 원하는대로 탭을 변경할 수 있습니다. 그럼 당신은 당신이 그들의 기본 설정으로 다시 설정을 변경 할 수있는 편집을 완료하면 다른 :

:set noet 
:retab! 
2

당신은 얼룩 청소 필터 (this part of the Pro-Git book 참조)를 사용하고, 필터 탭을 변경하는 것이 필요 무엇이든 할 수 있습니다 또는 들여 쓰기에 사용 된 공간. 그런 식으로 편안하게 작업 한 다음 커밋시 업스트림 버전으로 변환 할 수 있습니다.

2

열린 파일의 들여 쓰기를 확인하고 (필요한 경우) 버퍼의 들여 쓰기 설정을 조정하는 여러 플러그인이 있습니다. 내 자신의 플러그인은 IndentConsistencyCop이라고합니다. 플러그인 페이지에는 대안에 대한 링크가 포함되어 있습니다. 이는 여러 프로젝트에 패치를 제출할 때 특히 유용합니다. 일관된 가이드 라인조차 갖지 못할 수도 있습니다.

몇 가지 프로젝트에 깊이 관여하고 있다면 디렉토리 로컬 구성을 허용하는 일부 플러그인을 사용하는 것이 좋습니다. :setlocal expandtab tabstop=...을 프로젝트 루트에있는 .lvimrc 파일에 넣기 만하면됩니다. 파일 유형별 로컬 구성을 허용하기 때문에 localrc.vim을 권장합니다.