reponse.delimiters, thanks Denes
This commit is contained in:
@@ -23,6 +23,7 @@
|
|||||||
- def index(): return dict(a=gluon.tools.Expose(folder))
|
- def index(): return dict(a=gluon.tools.Expose(folder))
|
||||||
- new DAL syntax: db(...).select().group_by_value(db.table.field) (thanks Yair)
|
- new DAL syntax: db(...).select().group_by_value(db.table.field) (thanks Yair)
|
||||||
- auth.is_impersonating()
|
- auth.is_impersonating()
|
||||||
|
- reponse.delimiters = ('\\[','\\]') (thanks Denes)
|
||||||
- 100's of small bug fixes and small improvements
|
- 100's of small bug fixes and small improvements
|
||||||
|
|
||||||
## 1.99.4
|
## 1.99.4
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
Version 1.99.4 (2012-02-28 13:16:50) stable
|
Version 1.99.4 (2012-02-28 13:48:35) stable
|
||||||
|
|||||||
@@ -168,6 +168,7 @@ class Response(Storage):
|
|||||||
self.menu = [] # used by the default view layout
|
self.menu = [] # used by the default view layout
|
||||||
self.files = [] # used by web2py_ajax.html
|
self.files = [] # used by web2py_ajax.html
|
||||||
self.generic_patterns = [] # patterns to allow generic views
|
self.generic_patterns = [] # patterns to allow generic views
|
||||||
|
self.delimiters = ('{{','}}')
|
||||||
self._vars = None
|
self._vars = None
|
||||||
self._caller = lambda f: f()
|
self._caller = lambda f: f()
|
||||||
self._view_environment = None
|
self._view_environment = None
|
||||||
|
|||||||
+6
-2
@@ -228,6 +228,7 @@ class Content(BlockNode):
|
|||||||
|
|
||||||
class TemplateParser(object):
|
class TemplateParser(object):
|
||||||
|
|
||||||
|
default_delimiters = ('{{','}}')
|
||||||
r_tag = re.compile(r'(\{\{.*?\}\})', re.DOTALL)
|
r_tag = re.compile(r'(\{\{.*?\}\})', re.DOTALL)
|
||||||
|
|
||||||
r_multiline = re.compile(r'(""".*?""")|(\'\'\'.*?\'\'\')', re.DOTALL)
|
r_multiline = re.compile(r'(""".*?""")|(\'\'\'.*?\'\'\')', re.DOTALL)
|
||||||
@@ -285,10 +286,13 @@ class TemplateParser(object):
|
|||||||
|
|
||||||
# allow optional alternative delimiters
|
# allow optional alternative delimiters
|
||||||
self.delimiters = delimiters
|
self.delimiters = delimiters
|
||||||
if delimiters!=('{{','}}'):
|
if delimiters != self.default_delimiters:
|
||||||
escaped_delimiters = (re.escape(delimiters[0]),re.escape(delimiters[1]))
|
escaped_delimiters = (re.escape(delimiters[0]),re.escape(delimiters[1]))
|
||||||
self.r_tag = re.compile(r'(%s.*?%s)' % escaped_delimiters, re.DOTALL)
|
self.r_tag = re.compile(r'(%s.*?%s)' % escaped_delimiters, re.DOTALL)
|
||||||
|
elif context['response'].delimiters != self.default_delimiters:
|
||||||
|
escaped_delimiters = (re.escape(context['response'].delimiters[0]),
|
||||||
|
re.escape(context['response'].delimiters[1]))
|
||||||
|
self.r_tag = re.compile(r'(%s.*?%s)' % escaped_delimiters, re.DOTALL)
|
||||||
|
|
||||||
# Create a root level Content that everything will go into.
|
# Create a root level Content that everything will go into.
|
||||||
self.content = Content(name=name)
|
self.content = Content(name=name)
|
||||||
|
|||||||
Reference in New Issue
Block a user