2012-04-06 17 views
5

Utilizo el método de plegado "sintaxis" en vim 7.3. En .vimrc:Plegado de sintaxis VIM: deshabilitar plegar comentarios de varias líneas

set foldmethod=syntax 

Al abrir Test.cpp, que contiene:

/* 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(); 
} 

veo la siguiente cuando se pliega:

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

me gusta el plegado cuerpo de la función, pero no el comentario-plegable. Quiero deshabilitarlo para que se vea así:

/* 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() 
+-- 3 lines: {------------------------------------------------------------------------ 

¿Cómo puedo hacer esto? Puedo ver el grupo de sintaxis que es relevante con: Lista syn cComment

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

Pero dando vueltas durante una hora con la documentación de vim y Google no me ha dicho cómo quitar el atributo de "doblar" de este grupo.

¿Mi único recurso es realmente editar el archivo de sintaxis del idioma? Supongo que es menos feo copiar el archivo de sintaxis del sistema y usarlo, pero debería poder desactivar un grupo específico con un comando en mi .vimrc.

+0

La respuesta de kev funciona perfectamente. Esto se encuentra en la sección syn-file-remarks de los documentos ': help ft-c-syntax'. También puede doblar los comentarios del estilo '#if 0' con' let c_no_if0_fold = 1'. – reasgt

Respuesta

5

Cuando 'foldmethod' se establece en "syntax" entonces /* */ comments y { } blocks se convertirse en un pliegue. Si no desea que los comentarios se conviertan en un uso doble:

:let c_no_comment_fold = 1 
Cuestiones relacionadas