" Vim syntax file " Language: Django template " Maintainer: Dave Hodder " Last Change: 2006 Mar 22 " 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 syntax case match " Django template built-in tags and parameters " 'comment' doesn't appear here because it gets special treatment syn keyword djangoStatement contained as block endblock by cycle debug else syn keyword djangoStatement contained extends filter endfilter firstof for syn keyword djangoStatement contained endfor if endif ifchanged endifchanged syn keyword djangoStatement contained ifequal endifequal ifnotequal syn keyword djangoStatement contained endifnotequal in include load not now or syn keyword djangoStatement contained parsed regroup reversed spaceless syn keyword djangoStatement contained endspaceless ssi templatetag openblock syn keyword djangoStatement contained closeblock openvariable closevariable syn keyword djangoStatement contained widthratio with " Django templete built-in filters syn keyword djangoFilter contained add addslashes capfirst center cut date syn keyword djangoFilter contained default default_if_none dictsort syn keyword djangoFilter contained dictsortreversed divisibleby escape syn keyword djangoFilter contained filesizeformat first fix_ampersands syn keyword djangoFilter contained floatformat get_digit join length length_is syn keyword djangoFilter contained linebreaks linebreaksbr linenumbers ljust syn keyword djangoFilter contained lower make_list phone2numeric pluralize syn keyword djangoFilter contained pprint random removetags rjust slice slugify syn keyword djangoFilter contained stringformat striptags time timesince title syn keyword djangoFilter contained truncatewords unordered_list upper urlencode syn keyword djangoFilter contained urlize urlizetrunc wordcount wordwrap yesno " Django template constants (always surrounded by double quotes) syn region djangoArgument contained start=/"/ skip=/\\"/ end=/"/ " Django template tag and variable blocks syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument display syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument display " Django template 'comment' tag syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" " Define the default highlighting. " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet if version >= 508 || !exists("did_django_syn_inits") if version < 508 let did_django_syn_inits = 1 command -nargs=+ HiLink hi link else command -nargs=+ HiLink hi def link endif HiLink djangoTagBlock PreProc HiLink djangoVarBlock PreProc HiLink djangoStatement Statement HiLink djangoFilter Identifier HiLink djangoArgument Constant HiLink djangoComment Comment delcommand HiLink endif let b:current_syntax = "django"