Mercurial > vim
view runtime/syntax/kwt.vim @ 23453:b0ea0dd2298a
Added tag v8.2.2269 for changeset 8fa9d31cd248b9f2983a496ade9f1247708e0c91
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 01 Jan 2021 21:45:04 +0100 |
parents | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Language: kimwitu++ " Maintainer: Michael Piefel <entwurf@piefel.de> " Last Change: 2 May 2001 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Read the C++ syntax to start with runtime! syntax/cpp.vim unlet b:current_syntax " kimwitu++ extentions " Don't stop at eol, messes around with CPP mode, but gives line spanning " strings in unparse rules syn region cCppString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat syn keyword cType integer real casestring nocasestring voidptr list syn keyword cType uview rview uview_enum rview_enum " avoid unparsing rule sth:view being scanned as label syn clear cUserCont syn match cUserCont "^\s*\I\i*\s*:$" contains=cUserLabel contained syn match cUserCont ";\s*\I\i*\s*:$" contains=cUserLabel contained syn match cUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=cUserLabel contained syn match cUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=cUserLabel contained " highlight phylum decls syn match kwtPhylum "^\I\i*:$" syn match kwtPhylum "^\I\i*\s*{\s*\(!\|\I\)\i*\s*}\s*:$" syn keyword kwtStatement with foreach afterforeach provided syn match kwtDecl "%\(uviewvar\|rviewvar\)" syn match kwtDecl "^%\(uview\|rview\|ctor\|dtor\|base\|storageclass\|list\|attr\|member\|option\)" syn match kwtOption "no-csgio\|no-unparse\|no-rewrite\|no-printdot\|no-hashtables\|smart-pointer\|weak-pointer" syn match kwtSep "^%}$" syn match kwtSep "^%{\(\s\+\I\i*\)*$" syn match kwtCast "\<phylum_cast\s*<"me=e-1 syn match kwtCast "\<phylum_cast\s*$" " match views, remove paren error in brackets syn clear cErrInBracket syn match cErrInBracket contained ")" syn match kwtViews "\(\[\|<\)\@<=[ [:alnum:]_]\{-}:" " match rule bodies syn region kwtUnpBody transparent keepend extend fold start="->\s*\[" start="^\s*\[" skip="\$\@<!{\_.\{-}\$\@<!}" end="\s]\s\=;\=$" end="^]\s\=;\=$" end="}]\s\=;\=$" syn region kwtRewBody transparent keepend extend fold start="->\s*<" start="^\s*<" end="\s>\s\=;\=$" end="^>\s\=;\=$" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link kwtStatement cppStatement hi def link kwtDecl cppStatement hi def link kwtCast cppStatement hi def link kwtSep Delimiter hi def link kwtViews Label hi def link kwtPhylum Type hi def link kwtOption PreProc "hi def link cText Comment syn sync lines=300 let b:current_syntax = "kwt" " vim: ts=8