neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

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