1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: SMIL (Synchronized Multimedia Integration Language) 3071d4279SBram Moolenaar" Maintainer: Herve Foucher <[email protected]> 4071d4279SBram Moolenaar" URL: http://www.helio.org/vim/syntax/smil.vim 5b8ff1fb5SBram Moolenaar" Last Change: 2012 Feb 03 by Thilo Six 6071d4279SBram Moolenaar 7071d4279SBram Moolenaar" To learn more about SMIL, please refer to http://www.w3.org/AudioVideo/ 8071d4279SBram Moolenaar" and to http://www.helio.org/products/smil/tutorial/ 9071d4279SBram Moolenaar 1089bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1189bcfda6SBram Moolenaarif exists("b:current_syntax") 12071d4279SBram Moolenaar finish 13071d4279SBram Moolenaarendif 14071d4279SBram Moolenaar 15b8ff1fb5SBram Moolenaarlet s:cpo_save = &cpo 16b8ff1fb5SBram Moolenaarset cpo&vim 17b8ff1fb5SBram Moolenaar 18071d4279SBram Moolenaar" SMIL is case sensitive 19071d4279SBram Moolenaarsyn case match 20071d4279SBram Moolenaar 21071d4279SBram Moolenaar" illegal characters 22071d4279SBram Moolenaarsyn match smilError "[<>&]" 23071d4279SBram Moolenaarsyn match smilError "[()&]" 24071d4279SBram Moolenaar 25071d4279SBram Moolenaarif !exists("main_syntax") 26071d4279SBram Moolenaar let main_syntax = 'smil' 27071d4279SBram Moolenaarendif 28071d4279SBram Moolenaar 29071d4279SBram Moolenaar" tags 30071d4279SBram Moolenaarsyn match smilSpecial contained "\\\d\d\d\|\\." 31071d4279SBram Moolenaarsyn match smilSpecial contained "(" 32071d4279SBram Moolenaarsyn match smilSpecial contained "id(" 33071d4279SBram Moolenaarsyn match smilSpecial contained ")" 34071d4279SBram Moolenaarsyn keyword smilSpecial contained remove freeze true false on off overdub caption new pause replace 35071d4279SBram Moolenaarsyn keyword smilSpecial contained first last 36071d4279SBram Moolenaarsyn keyword smilSpecial contained fill meet slice scroll hidden 37071d4279SBram Moolenaarsyn region smilString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=smilSpecial 38071d4279SBram Moolenaarsyn region smilString contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=smilSpecial 39071d4279SBram Moolenaarsyn match smilValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 40071d4279SBram Moolenaarsyn region smilEndTag start=+</+ end=+>+ contains=smilTagN,smilTagError 41071d4279SBram Moolenaarsyn region smilTag start=+<[^/]+ end=+>+ contains=smilTagN,smilString,smilArg,smilValue,smilTagError,smilEvent,smilCssDefinition 42071d4279SBram Moolenaarsyn match smilTagN contained +<\s*[-a-zA-Z0-9]\++ms=s+1 contains=smilTagName,smilSpecialTagName 43071d4279SBram Moolenaarsyn match smilTagN contained +</\s*[-a-zA-Z0-9]\++ms=s+2 contains=smilTagName,smilSpecialTagName 44071d4279SBram Moolenaarsyn match smilTagError contained "[^>]<"ms=s+1 45071d4279SBram Moolenaar 46071d4279SBram Moolenaar" tag names 47071d4279SBram Moolenaarsyn keyword smilTagName contained smil head body anchor a switch region layout meta 48071d4279SBram Moolenaarsyn match smilTagName contained "root-layout" 49071d4279SBram Moolenaarsyn keyword smilTagName contained par seq 50071d4279SBram Moolenaarsyn keyword smilTagName contained animation video img audio ref text textstream 51071d4279SBram Moolenaarsyn match smilTagName contained "\<\(head\|body\)\>" 52071d4279SBram Moolenaar 53071d4279SBram Moolenaar 54071d4279SBram Moolenaar" legal arg names 55071d4279SBram Moolenaarsyn keyword smilArg contained dur begin end href target id coords show title abstract author copyright alt 56071d4279SBram Moolenaarsyn keyword smilArg contained left top width height fit src name content fill longdesc repeat type 57071d4279SBram Moolenaarsyn match smilArg contained "z-index" 58071d4279SBram Moolenaarsyn match smilArg contained " end-sync" 59071d4279SBram Moolenaarsyn match smilArg contained " region" 60071d4279SBram Moolenaarsyn match smilArg contained "background-color" 61071d4279SBram Moolenaarsyn match smilArg contained "system-bitrate" 62071d4279SBram Moolenaarsyn match smilArg contained "system-captions" 63071d4279SBram Moolenaarsyn match smilArg contained "system-overdub-or-caption" 64071d4279SBram Moolenaarsyn match smilArg contained "system-language" 65071d4279SBram Moolenaarsyn match smilArg contained "system-required" 66071d4279SBram Moolenaarsyn match smilArg contained "system-screen-depth" 67071d4279SBram Moolenaarsyn match smilArg contained "system-screen-size" 68071d4279SBram Moolenaarsyn match smilArg contained "clip-begin" 69071d4279SBram Moolenaarsyn match smilArg contained "clip-end" 70071d4279SBram Moolenaarsyn match smilArg contained "skip-content" 71071d4279SBram Moolenaar 72071d4279SBram Moolenaar 73071d4279SBram Moolenaar" SMIL Boston ext. 74071d4279SBram Moolenaar" This are new SMIL functionnalities seen on www.w3.org on August 3rd 1999 75071d4279SBram Moolenaar 76071d4279SBram Moolenaar" Animation 77071d4279SBram Moolenaarsyn keyword smilTagName contained animate set move 78071d4279SBram Moolenaarsyn keyword smilArg contained calcMode from to by additive values origin path 79071d4279SBram Moolenaarsyn keyword smilArg contained accumulate hold attribute 80071d4279SBram Moolenaarsyn match smilArg contained "xml:link" 81071d4279SBram Moolenaarsyn keyword smilSpecial contained discrete linear spline parent layout 82071d4279SBram Moolenaarsyn keyword smilSpecial contained top left simple 83071d4279SBram Moolenaar 84071d4279SBram Moolenaar" Linking 85071d4279SBram Moolenaarsyn keyword smilTagName contained area 86071d4279SBram Moolenaarsyn keyword smilArg contained actuate behavior inline sourceVolume 87071d4279SBram Moolenaarsyn keyword smilArg contained destinationVolume destinationPlaystate tabindex 88071d4279SBram Moolenaarsyn keyword smilArg contained class style lang dir onclick ondblclick onmousedown onmouseup onmouseover onmousemove onmouseout onkeypress onkeydown onkeyup shape nohref accesskey onfocus onblur 89071d4279SBram Moolenaarsyn keyword smilSpecial contained play pause stop rect circ poly child par seq 90071d4279SBram Moolenaar 91071d4279SBram Moolenaar" Media Object 92071d4279SBram Moolenaarsyn keyword smilTagName contained rtpmap 93071d4279SBram Moolenaarsyn keyword smilArg contained port transport encoding payload clipBegin clipEnd 94071d4279SBram Moolenaarsyn match smilArg contained "fmt-list" 95071d4279SBram Moolenaar 96071d4279SBram Moolenaar" Timing and Synchronization 97071d4279SBram Moolenaarsyn keyword smilTagName contained excl 98071d4279SBram Moolenaarsyn keyword smilArg contained beginEvent endEvent eventRestart endSync repeatCount repeatDur 99071d4279SBram Moolenaarsyn keyword smilArg contained syncBehavior syncTolerance 100071d4279SBram Moolenaarsyn keyword smilSpecial contained canSlip locked 101071d4279SBram Moolenaar 102071d4279SBram Moolenaar" special characters 103071d4279SBram Moolenaarsyn match smilSpecialChar "&[^;]*;" 104071d4279SBram Moolenaar 105071d4279SBram Moolenaarif exists("smil_wrong_comments") 106071d4279SBram Moolenaar syn region smilComment start=+<!--+ end=+-->+ 107071d4279SBram Moolenaarelse 108071d4279SBram Moolenaar syn region smilComment start=+<!+ end=+>+ contains=smilCommentPart,smilCommentError 109071d4279SBram Moolenaar syn match smilCommentError contained "[^><!]" 110071d4279SBram Moolenaar syn region smilCommentPart contained start=+--+ end=+--+ 111071d4279SBram Moolenaarendif 112071d4279SBram Moolenaarsyn region smilComment start=+<!DOCTYPE+ keepend end=+>+ 113071d4279SBram Moolenaar 114071d4279SBram Moolenaar" Define the default highlighting. 11589bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 116071d4279SBram Moolenaar 117*f37506f6SBram Moolenaarhi def link smilTag Function 118*f37506f6SBram Moolenaarhi def link smilEndTag Identifier 119*f37506f6SBram Moolenaarhi def link smilArg Type 120*f37506f6SBram Moolenaarhi def link smilTagName smilStatement 121*f37506f6SBram Moolenaarhi def link smilSpecialTagName Exception 122*f37506f6SBram Moolenaarhi def link smilValue Value 123*f37506f6SBram Moolenaarhi def link smilSpecialChar Special 124071d4279SBram Moolenaar 125*f37506f6SBram Moolenaarhi def link smilSpecial Special 126*f37506f6SBram Moolenaarhi def link smilSpecialChar Special 127*f37506f6SBram Moolenaarhi def link smilString String 128*f37506f6SBram Moolenaarhi def link smilStatement Statement 129*f37506f6SBram Moolenaarhi def link smilComment Comment 130*f37506f6SBram Moolenaarhi def link smilCommentPart Comment 131*f37506f6SBram Moolenaarhi def link smilPreProc PreProc 132*f37506f6SBram Moolenaarhi def link smilValue String 133*f37506f6SBram Moolenaarhi def link smilCommentError smilError 134*f37506f6SBram Moolenaarhi def link smilTagError smilError 135*f37506f6SBram Moolenaarhi def link smilError Error 136071d4279SBram Moolenaar 137071d4279SBram Moolenaar 138071d4279SBram Moolenaarlet b:current_syntax = "smil" 139071d4279SBram Moolenaar 140071d4279SBram Moolenaarif main_syntax == 'smil' 141071d4279SBram Moolenaar unlet main_syntax 142071d4279SBram Moolenaarendif 143071d4279SBram Moolenaar 144b8ff1fb5SBram Moolenaarlet &cpo = s:cpo_save 145b8ff1fb5SBram Moolenaarunlet s:cpo_save 146071d4279SBram Moolenaar" vim: ts=8 147