Região do Vim com palavras-chave em padrões de sintaxe

1

Eu preciso criar uma região vim personalizada com determina classes e estruturas. O código, por exemplo,

syn region myCxxClass start="\(class\|struct\)\_[ \t]\+" end="}[^;]*;" transparent

Os padrões para início e fim provavelmente serão alterados, mas o problema é que esse tipo de região não funciona, porque class e struct são palavras-chave.

Como solucionar esse problema?

    
por user14416 14.11.2013 / 19:59

1 resposta

2

Você está certo sobre a correspondência de palavra-chave que impede uma correspondência de sua nova região. Para contornar, você precisa redefinir as palavras-chave a serem contidas em sua região:

syn clear cStructure
syn clear cppStructure
syn keyword cStructure struct contained
syn keyword cppStructure class contained
syn region myCxxClass start="\(class\|struct\)\_[ \t]\+" end="}[^;]*;" contains=cStructure,cppStructure
    
por 15.11.2013 / 09:24