1# -*- coding: utf-8 -*-
2"""
3    jinja2.defaults
4    ~~~~~~~~~~~~~~~
5
6    Jinja default filters and tags.
7
8    :copyright: (c) 2010 by the Jinja Team.
9    :license: BSD, see LICENSE for more details.
10"""
11from jinja2._compat import range_type
12from jinja2.utils import generate_lorem_ipsum, Cycler, Joiner
13
14
15# defaults for the parser / lexer
16BLOCK_START_STRING = '{%'
17BLOCK_END_STRING = '%}'
18VARIABLE_START_STRING = '{{'
19VARIABLE_END_STRING = '}}'
20COMMENT_START_STRING = '{#'
21COMMENT_END_STRING = '#}'
22LINE_STATEMENT_PREFIX = None
23LINE_COMMENT_PREFIX = None
24TRIM_BLOCKS = False
25LSTRIP_BLOCKS = False
26NEWLINE_SEQUENCE = '\n'
27KEEP_TRAILING_NEWLINE = False
28
29
30# default filters, tests and namespace
31from jinja2.filters import FILTERS as DEFAULT_FILTERS
32from jinja2.tests import TESTS as DEFAULT_TESTS
33DEFAULT_NAMESPACE = {
34    'range':        range_type,
35    'dict':         lambda **kw: kw,
36    'lipsum':       generate_lorem_ipsum,
37    'cycler':       Cycler,
38    'joiner':       Joiner
39}
40
41
42# export all constants
43__all__ = tuple(x for x in locals().keys() if x.isupper())
44