2012-04-06 13 views
5

Używam "foldax" foldmethod w vim 7.3. W .vimrc:Składanie składni VIM: wyłączanie składanych komentarzy wieloliniowych

set foldmethod=syntax 

Podczas otwierania Test.cpp, zawierające

/* A function with a multi-line 
* comment. This takes at least 
* four lines and I want to be 
* able to read all of them. 
*/ 
void TheFunction() 
{ 
    DoStuff(); 
} 

I są opisane w następujących po złożeniu:

+-- 5 lines: A function with a multi-line--------------------------------------------- 
void TheFunction() 
+-- 3 lines: {------------------------------------------------------------------------ 

I jak korpus składający funkcję, ale nie składanie komentarzy. Chcę go wyłączyć, aby wyglądał następująco:

Jak to zrobić? Widzę grupę składni, który jest istotny z: SYN lista cComment

cComment  xxx matchgroup=cCommentStart start=+/\*+ end=+\*/+ extend fold contains 
[email protected],cCommentStartError,cSpaceError,@Spell 
        links to Comment 

Ale oprzyrządowania około godzinę z dokumentacją vim i google nie powiedział mi jak usunąć „spasować” atrybut z tej grupy.

Czy moim jedynym odwołaniem jest edycja pliku składni języka? Przypuszczam, że mniej brzydkie jest kopiowanie pliku składni systemu i używanie go, ale powinienem być w stanie wyłączyć określoną grupę za pomocą polecenia w moim .vimrc.

+0

Odpowiedź Keva działa idealnie. Można to znaleźć w sekcji "syn-file-notes" w dokumentacji ': help ft-c-syntax'. Możesz również spasować komentarze w stylu #if 0' za pomocą 'let c_no_if0_fold = 1'. – reasgt

Odpowiedz

5

Kiedy 'foldmethod' jest ustawiony na "syntax" następnie /* */ comments i { } blocks będzie stać się krotnie. Jeśli nie chcesz, aby komentarze były składane, należy:

:let c_no_comment_fold = 1 
Powiązane problemy