2010-03-02 4 views
31

vim에서 Visual Studio 또는 Eclipse와 같은 기능을 폴드하는 도구가 있습니까?vim에서 접기 기능

+0

"클래스와 함수를 자동으로 접는"것을 의미하는 경우 질문에 명시 적으로 명확하게해야합니다. –

+2

자동으로, 사용자는 어느 부분을 접을 지 선택할 수 있습니다. –

+0

vim은 꽤 좋은 문서를 가지고 있습니다. 시도해보십시오. 도움말 접기 –

답변

84
Vim folding commands 
--------------------------------- 
zf#j creates a fold from the cursor down # lines. 
zf/ string creates a fold from the cursor to string . 
zj moves the cursor to the next fold. 
zk moves the cursor to the previous fold. 
za toggle a fold at the cursor. 
zo opens a fold at the cursor. 
zO opens all folds at the cursor. 
zc closes a fold under cursor. 
zm increases the foldlevel by one. 
zM closes all open folds. 
zr decreases the foldlevel by one. 
zR decreases the foldlevel to zero -- all folds will be open. 
zd deletes the fold at the cursor. 
zE deletes all folds. 
[z move to start of open fold. 
]z move to end of open fold. 

출처 : vim docs.

+2

zc 커서 아래로 접기를 닫습니다. (경고 : 실험으로 알아 낸 것) – Srikanth

+4

za는 폴드를 토글합니다 (현재 닫혀 있으면 열리고 그 반대도 마찬가지입니다). 나는 그것이 꽤 편리하다고 생각한다; zc 또는 zo를 거의 사용하지 마십시오. http://vim.wikia.com/wiki/Folding#Opening_and_closing_folds – Aman

+1

'zfgg'는 모든 줄을 맨 위에서 커서로 접습니다. 'zfG '는 모든 줄을 커서에서 아래로 접습니다. –

2

예,은 'Z'키에 결합되고, 예를 들어

안부, zO가 모든 주름을 엽니 다. 자세한 내용은 vim의 ": fold fold"를 참조하십시오. 들여 쓰기와 같은 간단한 규칙에 따라 또는 코드 구문에 따라 접기를 수행 할 수 있습니다.

10
:set foldmethod=syntax 

은 언어에 대한 구문 파일이 있으면 모든 기능과 다른 블록을 자동으로 폴드해야합니다.

3

Vim은 우수한 접기 지원을 제공합니다. vim 도움말 시스템에는 좋은 설명서가 있습니다. 그냥 개방 정력과 할

: 일부 자세한 내용은

접는 도움 : 당신은 또한

을 읽을 수있는 읽은 후

usr_28.txt 도움이됩니다.

27

예. VIM은 뛰어난 접기 기능을 제공합니다. , 이것은 자동 들여 쓰기를 기반으로 열고 파일을 주름

set foldmethod=indent 
set foldlevel=1 
set foldclose=all 

: 내의 .vimrc에서

: 그래서 여기에 제가 개인적으로 사용하는 것입니다 내가 자동화를 선호, 너무 많은 컨트롤을 학습 좋아하지 않는다 모든 것이 1 단계 이상 들여 쓰기되기 때문입니다. foldclose 옵션을 사용하면 접기 밖으로 나간 후 자동으로 접기가 다시 닫힙니다.

에서 파일 컨트롤 :

zo - opens folds 
zc - closes fold 
zm - increases auto fold depth 
zr - reduces auto fold depth 

그리고 혹시 주름 짜증 경우,

: set foldmethod=syntax 

누르거나 사용

zR 

그들 모두 멀리 갈 수 있도록를 .

+1

이것이 가장 실용적인 답입니다. thks @bhekman –

+2

나는 유용하다고 느낍니다. 'set nofoldenable' 'set foldlevel = 99' 도 있습니다.그것은 오프닝 파일에서 자동 접기 기능을 사용하지 않습니다. (접히지 않고 "fors"와 "ifs"를 접거나 접는 것이 아닙니다.) 내 설정은 당신의 대답에 기반을 두었습니다. – merinoff