syn keyword FiddlePackage option package nextgroup=FiddleName skipwhite syn keyword FiddleDecl reg buffer instance at location reserved nextgroup=FiddleIdent skipwhite syn keyword FiddleTypeDecl type regtype bits nextgroup=FiddleIdent skipwhite syn keyword FiddleEnum enum syn keyword FiddleBuiltin assert_pos skip_to syn keyword FiddleModifier wo ro rw syn keyword FiddleStorageClass struct union bitstruct bitunion syn match FiddleUsing +using+ nextgroup=FiddleName skipwhite syn match FiddleColon +:+ skipwhite nextgroup=FiddleContainedType syn match FiddleContainedType +[a-zA-Z0-9_.]\++ contained syn match FiddleName +\<[a-zA-Z0-9_.]\+\>+ contained syn match FiddleIdent +[A-Za-z0-9_]\++ contained syn match FiddleComment +\/\/.*$+ syn region FiddleDocComment start=+/\*\*+ end=+*/+ syn region FiddleString start=+"+ end=+"+ skip=+\\.+ syn region FiddleDirective start=+\[\[+ end=+\]\]+ contains=FiddleString syn match FiddleNumber +\<[0-9_]\+\([xb]\)\@!\|0x[0-9A-Fa-f][0-9A-Fa-f_]*\|0b[01]\+\>+ syn match FiddleImport +import+ nextgroup=FiddleImportString skipwhite syn region FiddleImportString start=+"+ end=+"+ skip=+\\.+ skipwhite nextgroup=FiddleImportList contained syn region FiddleImportList start=+(+ end=+)+ skipwhite contained contains=FiddleImportValue syn match FiddleImportValue +[a-zA-Z0-9_]\++ contained hi! link FiddleImportString FiddleString hi! link FiddleImportList PreProc hi! link FiddleImportValue Type hi! link FiddleImport FiddleStorageClass hi! link FiddleString String hi! link FiddleDirective PreProc hi! link FiddleContainedType Type hi! link FiddleModifier StorageClass hi! link FiddleUsing StorageClass hi! link FiddleBuiltin Function hi! link FiddleEnum StorageClass hi! link FiddleStorageClass FiddleEnum hi! link FiddleDecl Type hi! link FiddleNumber Number hi! link FiddleDocComment Comment hi! link FiddleComment Comment hi! link FiddlePackage Include hi! link FiddleTypeDecl StorageClass hi! link FiddleIdent Identifier hi! link FiddleName Identifier