# HG changeset patch # User nickolay # Date 1512904221 -10800 # Node ID fb23f3c854dfaf1f2c31c6638eed03d6b1cf5aa3 # Parent c2a7d21175cea3272d1207f4e1b20da0d08f0b0b added new format for tamplates diff -r c2a7d21175ce -r fb23f3c854df src/implab/text/template-compile.js --- a/src/implab/text/template-compile.js Fri Dec 08 04:31:43 2017 +0300 +++ b/src/implab/text/template-compile.js Sun Dec 10 14:10:21 2017 +0300 @@ -5,7 +5,7 @@ // разбивает строку шаблона на токены, возвращает контекст для // дальнейшей обработки в visitTemplate var parseTemplate = function (str) { - var tokens = str.split(/(<%=|<%|%>)/); + var tokens = str.split(/(<%=|\[%=|<%|\[%|%\]|%>)/); var pos = -1; var data = [], code = []; @@ -63,9 +63,11 @@ while (context.next()) { switch (context.token()) { case "<%": + case "[%": visitCode(context); break; case "<%=": + case "[%=": visitInline(context); break; default: @@ -78,7 +80,7 @@ function visitInline(context) { var code = ["$p.push("]; while (context.next()) { - if (context.token() == "%>") + if (context.token() == "%>" || context.token() == "%]") break; code.push(context.token()); } @@ -89,7 +91,7 @@ function visitCode(context) { var code = []; while (context.next()) { - if (context.token() == "%>") + if (context.token() == "%>" || context.token() == "%]") break; code.push(context.token()); }