" Vim syntax file" Language: GSP - GNU Server Pages (v. 0.86)" Created By: Nathaniel Harward nharward@yahoo.com" Last Changed: Dec. 12, 2000" Filenames: *.gsp" URL: http://www.constructicon.com/~nharward/vim/syntax/gsp.vim" For version 5.x: Clear all syntax items" For version 6.x: Quit when a syntax file was already loadedif version < 600 syntax clearelseif exists("b:current_syntax") finishendifif !exists("main_syntax") let main_syntax = 'gsp'endif" Source HTML syntaxif version < 600 source <sfile>:p:h/html.vimelse runtime! syntax/html.vimendifunlet b:current_syntaxsyn case match" Include Java syntaxif version < 600 syn include @gspJava <sfile>:p:h/java.vimelse syn include @gspJava syntax/java.vimendif" Add <java> as an HTML tag name along with its argssyn keyword htmlTagName contained javasyn keyword htmlArg contained type file page" Redefine some HTML things to include (and highlight) gspInLine code in" places where it's likely to be foundsyn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,gspInLinesyn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,gspInLinesyn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc,gspInLinesyn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError,gspInLinesyn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,gspInLinesyn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster,gspInLinesyn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster,gspInLine" Define the GSP java code blockssyn region gspJavaBlock start="<java\>[^>]*\>" end="</java>"me=e-7 contains=@gspJava,htmlTagsyn region gspInLine matchgroup=htmlError start="`" end="`" contains=@gspJavalet b:current_syntax = "gsp"if main_syntax == 'gsp' unlet main_syntaxendif
" Vim syntax file
" Language: GSP - GNU Server Pages (v. 0.86)
" Created By: Nathaniel Harward nharward@yahoo.com
" Last Changed: Dec. 12, 2000
" Filenames: *.gsp
" URL: http://www.constructicon.com/~nharward/vim/syntax/gsp.vim
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
if !exists("main_syntax")
let main_syntax = 'gsp'
endif
" Source HTML syntax
if version < 600
source <sfile>:p:h/html.vim
else
runtime! syntax/html.vim
endif
unlet b:current_syntax
syn case match
" Include Java syntax
if version < 600
syn include @gspJava <sfile>:p:h/java.vim
else
syn include @gspJava syntax/java.vim
endif
" Add <java> as an HTML tag name along with its args
syn keyword htmlTagName contained java
syn keyword htmlArg contained type file page
" Redefine some HTML things to include (and highlight) gspInLine code in
" places where it's likely to be found
syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,gspInLine
syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,gspInLine
syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc,gspInLine
syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError,gspInLine
syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,gspInLine
syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster,gspInLine
syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster,gspInLine
" Define the GSP java code blocks
syn region gspJavaBlock start="<java\>[^>]*\>" end="</java>"me=e-7 contains=@gspJava,htmlTag
syn region gspInLine matchgroup=htmlError start="`" end="`" contains=@gspJava
let b:current_syntax = "gsp"
if main_syntax == 'gsp'
unlet main_syntax
endif