priority -50 # http://jinja.pocoo.org/ # jinja2 is a full featured template engine for Python. It has full # unicode support, an optional integrated sandboxed execution # environment, widely used and BSD licensed. # possible extends: #extends html snippet block "block" b {% block ${1:name} %} $2 {% endblock $1 %} endsnippet snippet {{ "variable" b {{ $1 }} endsnippet snippet {# "comment" b {# $1 #} endsnippet snippet # "comment" b {# $1 #} endsnippet snippet raw "escaped block" b {% raw %} $1 {% endraw %} endsnippet snippet extends "extends" b {% extends "${1:template}" %} endsnippet snippet include "include" b {% include "${1:template}" %} endsnippet snippet import "import" b {% import "${1:template}" %} endsnippet snippet from "from/import/as" b {% from "${1:template}" import ${2:name}${3: as ${4:$2}} %} endsnippet snippet filter "filter" b {% filter ${1:filter} %} $2 {% endfilter %} endsnippet # Being able to quickly remove the whole 'else' block seems faster to me than # choosing between 'for' and 'for/else' snippets from the menu. # snippet for "for" b # {% for ${1:item} in ${2:sequence} %} # $3${4: # {% else %} # $5} # {% endfor %} # endsnippet snippet for "for" b {% for ${1:item} in ${2:sequence} %} $3 {% endfor %} endsnippet snippet for "for/else" b {% for ${1:item} in ${2:sequence} %} $3 {% else %} $4 {% endfor %} endsnippet snippet if "if" b {% if ${1:expr} %} $2 {% endif %} endsnippet snippet if "if/else" b {% if ${1:expr} %} $2 {% else %} $3 {% endif %} endsnippet snippet if "if/elif/else" b {% if ${1:expr} %} $2 {% elif %} $3 {% else %} $4 {% endif %} endsnippet snippet macro "macro" b {% macro ${1:name}(${2:args}) %} $3 {% endmacro %} endsnippet snippet call "call" b {% call ${1:name}(${2:args}) %} $3 {% endcall %} endsnippet snippet set "set" b {% set ${1:name} = ${2:'value'} %} endsnippet snippet trans "translation" b {% trans %} $1 {% endtrans %} endsnippet snippet with "with" b {% with %} $1 {% endwith %} endsnippet snippet autoescape "autoescape" b {% autoescape ${1:true} %} $2 {% endautoescape %} endsnippet # Filters # @todo: expand only when snippet is preceeded by a | snippet batch "batch items" w batch(linecount=$1, fill_with=${2:None}) endsnippet snippet dictsort "sort and yield (key, value) pairs" w dictsort(case_sensitive=${1:False}, by=${2:'key'}) endsnippet snippet round "round number" w round(precision=${1:0}, method=${2:'common|ceil|floor'}) endsnippet snippet urlize "convert plain-text url to " w urlize(trim_url_limit=${1:None}, nofollow=${2:False}) endsnippet snippet wordwrap "wordwrap" w wordwrap(width=${1:79}, break_long_words=${2:True}) endsnippet snippet truncate "truncate" w truncate(lenght=${1:79}, killwords=${2:False}, end=${3:'...''}) endsnippet snippet sum "sum of sequence of numbers + start" w sum(attribute=${1:None}, start=${2:0}) endsnippet snippet sort "sort an iterable" w sort(reverse=${1:False}, case_sensitive=${2:False}, attribute=${3:None}) endsnippet snippet indent "indent" w indent(width=${1:4}, indentfirst=${2:False}) endsnippet # vim:ft=snippets: