From 11da1ed19a0623d1c4663338fa719568e60016ae Mon Sep 17 00:00:00 2001 From: mdipierro Date: Sat, 19 Mar 2016 13:02:45 -0500 Subject: [PATCH] fixed issue #1206, translate T.M --- gluon/languages.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gluon/languages.py b/gluon/languages.py index e1908c1b..490d90d6 100644 --- a/gluon/languages.py +++ b/gluon/languages.py @@ -61,7 +61,13 @@ PY_STRING_LITERAL_RE = r'(?<=[^\w]T\()(?P'\ + r"(?:'(?:[^'\\]|\\.)*')|" + r'(?:"""(?:[^"]|"{1,2}(?!"))*""")|'\ + r'(?:"(?:[^"\\]|\\.)*"))' +PY_M_STRING_LITERAL_RE = r'(?<=[^\w]T\.M\()(?P'\ + + r"[uU]?[rR]?(?:'''(?:[^']|'{1,2}(?!'))*''')|"\ + + r"(?:'(?:[^'\\]|\\.)*')|" + r'(?:"""(?:[^"]|"{1,2}(?!"))*""")|'\ + + r'(?:"(?:[^"\\]|\\.)*"))' + regex_translate = re.compile(PY_STRING_LITERAL_RE, re.DOTALL) +regex_translate_m = re.compile(PY_M_STRING_LITERAL_RE, re.DOTALL) regex_param = re.compile(r'{(?P.+?)}') # pattern for a valid accept_language @@ -960,6 +966,7 @@ def findT(path, language=DEFAULT_LANGUAGE): + listdir(vp, '^.+\.html$', 0) + listdir(mop, '^.+\.py$', 0): data = read_locked(filename) items = regex_translate.findall(data) + items += regex_translate_m.findall(data) for item in items: try: message = safe_eval(item)