jsp.vim (2678B)
1 " Vim syntax file 2 " Language: JSP (Java Server Pages) 3 " Maintainer: Rafael Garcia-Suarez <rgarciasuarez@free.fr> 4 " URL: http://rgarciasuarez.free.fr/vim/syntax/jsp.vim 5 " Last change: 2004 Feb 02 6 " Credits : Patch by Darren Greaves (recognizes <jsp:...> tags) 7 " Patch by Thomas Kimpton (recognizes jspExpr inside HTML tags) 8 9 " quit when a syntax file was already loaded 10 if exists("b:current_syntax") 11 finish 12 endif 13 14 if !exists("main_syntax") 15 let main_syntax = 'jsp' 16 endif 17 18 " Source HTML syntax 19 runtime! syntax/html.vim 20 unlet b:current_syntax 21 22 " Next syntax items are case-sensitive 23 syn case match 24 25 " Include Java syntax 26 syn include @jspJava syntax/java.vim 27 28 syn region jspScriptlet matchgroup=jspTag start=/<%/ keepend end=/%>/ contains=@jspJava 29 syn region jspComment start=/<%--/ end=/--%>/ 30 syn region jspDecl matchgroup=jspTag start=/<%!/ keepend end=/%>/ contains=@jspJava 31 syn region jspExpr matchgroup=jspTag start=/<%=/ keepend end=/%>/ contains=@jspJava 32 syn region jspDirective start=/<%@/ end=/%>/ contains=htmlString,jspDirName,jspDirArg 33 34 syn keyword jspDirName contained include page taglib 35 syn keyword jspDirArg contained file uri prefix language extends import session buffer autoFlush 36 syn keyword jspDirArg contained isThreadSafe info errorPage contentType isErrorPage 37 syn region jspCommand start=/<jsp:/ start=/<\/jsp:/ keepend end=/>/ end=/\/>/ contains=htmlString,jspCommandName,jspCommandArg 38 syn keyword jspCommandName contained include forward getProperty plugin setProperty useBean param params fallback 39 syn keyword jspCommandArg contained id scope class type beanName page flush name value property 40 syn keyword jspCommandArg contained code codebase name archive align height 41 syn keyword jspCommandArg contained width hspace vspace jreversion nspluginurl iepluginurl 42 43 " Redefine htmlTag so that it can contain jspExpr 44 syn clear htmlTag 45 syn region htmlTag start=+<[^/%]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,jspExpr,javaScript 46 47 " Define the default highlighting. 48 " Only when an item doesn't have highlighting yet 49 " java.vim has redefined htmlComment highlighting 50 hi def link htmlComment Comment 51 hi def link htmlCommentPart Comment 52 " Be consistent with html highlight settings 53 hi def link jspComment htmlComment 54 hi def link jspTag htmlTag 55 hi def link jspDirective jspTag 56 hi def link jspDirName htmlTagName 57 hi def link jspDirArg htmlArg 58 hi def link jspCommand jspTag 59 hi def link jspCommandName htmlTagName 60 hi def link jspCommandArg htmlArg 61 62 if main_syntax == 'jsp' 63 unlet main_syntax 64 endif 65 66 let b:current_syntax = "jsp" 67 68 " vim: ts=8