문제

나는 Eclipse와 Java를 사용하는 데 다소 버릇이 없었습니다.Linux 환경에서 C 코딩을 수행하기 위해 vim을 사용하기 시작했습니다. vim이 자동으로 블록에 대해 적절한 간격을 지정하도록 하는 방법이 있습니까?

따라서 {를 입력한 후 다음 줄에는 2개의 공백이 들여쓰기되고 해당 줄을 return하면 동일한 들여쓰기가 유지되고 }를 입력하면 2개의 공백이 뒤로 이동하게 됩니다.

도움이 되었습니까?

해결책

다음 두 명령이 이를 수행해야 합니다.

:set autoindent
:set cindent

보너스 포인트를 얻으려면 Linux의 홈 디렉터리에 있는 .vimrc라는 파일에 넣으세요.

다른 팁

vim에서 탭에 관한 모든 것을 작성했습니다., 이는 귀하가 묻지 않은 몇 가지 흥미로운 사항을 제공합니다.중괄호를 자동으로 들여쓰려면 다음을 사용하십시오.

:set cindent

두 개의 공백을 들여쓰려면(8개의 공백이 있는 탭 하나 대신 vim 기본값):

:set shiftwidth=2

vim이 공백 8개를 탭으로 변환하지 못하게 하려면:

:set expandtab

텍스트 블록의 들여쓰기를 변경하려면 < 및 >를 사용하세요.나는 보통 이것을 블록 선택 모드(v, 텍스트 블록 선택, < 또는 >)와 함께 사용합니다.

(나(그리고 대부분의 다른 사람들)가 읽기 어렵다고 생각하기 때문에 공백 두 개 들여쓰기를 사용하지 말라고 말하고 싶지만 그것은 또 다른 논의이다.)

vim의 많은 기능(예: autoindent 그리고 cindent)은 기본적으로 꺼져 있습니다.vim이 당신을 위해 무엇을 할 수 있는지 실제로 보려면 괜찮은 도구가 필요합니다. ~/.vimrc.

좋은 스타터가 있습니다 $VIMRUNTIME/vimrc_example.vim.사용해 보고 싶으시다면 이용해보세요

:source $VIMRUNTIME/vimrc_example.vim

vim에 있을 때.

실제로 내용을 복사하는 것이 좋습니다. ~/.vimrc 주석이 잘 달려 있고 vim 사용법을 배우기에 좋은 곳입니다.당신은 이것을 할 수 있습니다

:e $VIMRUNTIME/vimrc_example.vim
:w! ~/.vimrc

현재를 덮어쓰게 됩니다. ~/.vimrc, 그러나 Davr이 제안한 들여쓰기 설정만 있다면 vimrc 예제가 이를 처리해 주므로 힘들이지 않을 것입니다.예제의 전체 연습과 이 예제가 수행하는 작업을 보려면 다음을 참조하세요. :help vimrc-intro.

간단히 실행하세요:

user@host:~ $ echo set autoindent >> .vimrc

나는 가장 좋은 대답이 실제로 vim wikia에 설명되어 있다고 생각합니다.

http://vim.wikia.com/wiki/Indenting_source_code

"자동 인도 설정"을 사용하지 않는 것이 좋습니다. 이 설명에서 내가 찾은 가장 좋은 기능은 파일당 설정을 설정할 수 있다는 것입니다. 예를 들어 Python 및 C ++에서 프로그램을 프로그래밍하는 경우 특히 유용합니다. 후자의 공간.

공백 + 탭에 대한 다음의 훌륭한 설명을 항상 기억하세요.

http://www.jwz.org/doc/tabs-vs-spaces.html

노력하다:

sw=2로 설정

ts=2로 설정

스마트인덴트 설정

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top