smarty.vim (2883B)
1 " Vim syntax file 2 " Language: Smarty Templates 3 " Maintainer: Manfred Stienstra manfred.stienstra@dwerg.net 4 " Last Change: Mon Nov 4 11:42:23 CET 2002 5 " Filenames: *.tpl 6 " URL: http://www.dwerg.net/projects/vim/smarty.vim 7 8 " For version 5.x: Clear all syntax items 9 " For version 6.x: Quit when a syntax file was already loaded 10 if !exists("main_syntax") 11 " quit when a syntax file was already loaded 12 if exists("b:current_syntax") 13 finish 14 endif 15 let main_syntax = 'smarty' 16 endif 17 18 syn case ignore 19 20 runtime! syntax/html.vim 21 "syn cluster htmlPreproc add=smartyUnZone 22 23 syn match smartyBlock contained "[\[\]]" 24 25 syn keyword smartyTagName capture config_load include include_php 26 syn keyword smartyTagName insert if elseif else ldelim rdelim literal 27 syn keyword smartyTagName php section sectionelse foreach foreachelse 28 syn keyword smartyTagName strip assign counter cycle debug eval fetch 29 syn keyword smartyTagName html_options html_select_date html_select_time 30 syn keyword smartyTagName math popup_init popup html_checkboxes html_image 31 syn keyword smartyTagName html_radios html_table mailto textformat 32 33 syn keyword smartyModifier cat capitalize count_characters count_paragraphs 34 syn keyword smartyModifier count_sentences count_words date_format default 35 syn keyword smartyModifier escape indent lower nl2br regex_replace replace 36 syn keyword smartyModifier spacify string_format strip strip_tags truncate 37 syn keyword smartyModifier upper wordwrap 38 39 syn keyword smartyInFunc neq eq 40 41 syn keyword smartyProperty contained "file=" 42 syn keyword smartyProperty contained "loop=" 43 syn keyword smartyProperty contained "name=" 44 syn keyword smartyProperty contained "include=" 45 syn keyword smartyProperty contained "skip=" 46 syn keyword smartyProperty contained "section=" 47 48 syn keyword smartyConstant "\$smarty" 49 50 syn keyword smartyDot . 51 52 syn region smartyZone matchgroup=Delimiter start="{" end="}" contains=smartyProperty, smartyString, smartyBlock, smartyTagName, smartyConstant, smartyInFunc, smartyModifier 53 54 syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,smartyZone 55 syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,smartyZone 56 syn region htmlLink start="<a\>\_[^>]*\<href\>" end="</a>"me=e-4 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc,smartyZone 57 58 59 60 hi def link smartyTagName Identifier 61 hi def link smartyProperty Constant 62 " if you want the text inside the braces to be colored, then 63 " remove the comment in from of the next statement 64 "hi def link smartyZone Include 65 hi def link smartyInFunc Function 66 hi def link smartyBlock Constant 67 hi def link smartyDot SpecialChar 68 hi def link smartyModifier Function 69 70 let b:current_syntax = "smarty" 71 72 if main_syntax == 'smarty' 73 unlet main_syntax 74 endif 75 76 " vim: ts=8