1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: DSSSL 3071d4279SBram Moolenaar" Maintainer: Johannes Zellner <[email protected]> 4071d4279SBram Moolenaar" Last Change: Tue, 27 Apr 2004 14:54:59 CEST 5071d4279SBram Moolenaar" Filenames: *.dsl 6*5c73622aSBram Moolenaar" $Id: dsl.vim,v 1.1 2004/06/13 19:13:31 vimboss Exp $ 7071d4279SBram Moolenaar 8071d4279SBram Moolenaarif exists("b:current_syntax") | finish | endif 9071d4279SBram Moolenaar 10071d4279SBram Moolenaarruntime syntax/xml.vim 11071d4279SBram Moolenaarsyn cluster xmlRegionHook add=dslRegion,dslComment 12071d4279SBram Moolenaarsyn cluster xmlCommentHook add=dslCond 13071d4279SBram Moolenaar 14071d4279SBram Moolenaar" EXAMPLE: 15071d4279SBram Moolenaar" <![ %output.html; [ 16071d4279SBram Moolenaar" <!-- some comment --> 17071d4279SBram Moolenaar" (define html-manifest #f) 18071d4279SBram Moolenaar" ]]> 19071d4279SBram Moolenaar" 20071d4279SBram Moolenaar" NOTE: 'contains' the same as xmlRegion, except xmlTag / xmlEndTag 21071d4279SBram Moolenaarsyn region dslCond matchgroup=dslCondDelim start="\[\_[^[]\+\[" end="]]" contains=xmlCdata,@xmlRegionCluster,xmlComment,xmlEntity,xmlProcessing,@xmlRegionHook 22071d4279SBram Moolenaar 23071d4279SBram Moolenaar" NOTE, that dslRegion and dslComment do both NOT have a 'contained' 24071d4279SBram Moolenaar" argument, so this will also work in plain dsssl documents. 25071d4279SBram Moolenaar 26071d4279SBram Moolenaarsyn region dslRegion matchgroup=Delimiter start=+(+ end=+)+ contains=dslRegion,dslString,dslComment 27071d4279SBram Moolenaarsyn match dslString +"\_[^"]*"+ contained 28071d4279SBram Moolenaarsyn match dslComment +;.*$+ contains=dslTodo 29071d4279SBram Moolenaarsyn keyword dslTodo contained TODO FIXME XXX display 30071d4279SBram Moolenaar 31071d4279SBram Moolenaar" The default highlighting. 32071d4279SBram Moolenaarhi def link dslTodo Todo 33071d4279SBram Moolenaarhi def link dslString String 34071d4279SBram Moolenaarhi def link dslComment Comment 35071d4279SBram Moolenaar" compare the following with xmlCdataStart / xmlCdataEnd 36071d4279SBram Moolenaarhi def link dslCondDelim Type 37071d4279SBram Moolenaar 38071d4279SBram Moolenaarlet b:current_syntax = "dsl" 39