From 08af40911eda3beb3885c2d10ab422c1df98d25d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=B0=D0=BC=D0=BE=D1=83=D0=BA=D0=B8=D0=BD=20=D0=90?= =?UTF-8?q?=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9?= Date: Thu, 20 Jan 2011 17:20:31 +0300 Subject: [PATCH] Added option 'empty' to load() function. --- pym/cl_template.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pym/cl_template.py b/pym/cl_template.py index b2bf9ff..e925ecd 100644 --- a/pym/cl_template.py +++ b/pym/cl_template.py @@ -2406,6 +2406,8 @@ class templateFunction(_error, _shareTemplate, _shareTermsFunction): "(?:[a-z]?)(?:(?:_(?:pre|p|beta|alpha|rc)\d*)*)" "(?:-r\d+)?$") + reEmptyLoad = re.compile("^\s*$|^\s*;|^\s*#") + # Имя обрабатываемого шаблона nameTemplate = "" @@ -2633,10 +2635,11 @@ class templateFunction(_error, _shareTemplate, _shareTermsFunction): _("Third argument function is not 'root'")) cl_overriding.exit(1) if lenTerms >= 2: - if not terms[0] in ["ver","num","char","key"]: + if not terms[0] in ["ver","num","char","key","empty"]: self.printErrTemplate() cl_overriding.printERROR(\ - _("first argument function is not 'ver' or 'num' or 'char'")) + _("first argument function is not 'ver' or 'num' or 'char'" + " or 'empty'")) cl_overriding.exit(1) if lenTerms == 1: @@ -2660,6 +2663,9 @@ class templateFunction(_error, _shareTemplate, _shareTermsFunction): FD = open(fileName) replace = FD.read().strip() FD.close + if replace and lenTerms >= 2 and terms[0] == "empty": + replace ="\n".join(filter(lambda x: not self.reEmptyLoad.search(x), + replace.split("\n"))) if not replace and lenTerms >= 2 and terms[0] in ["ver","num"]: replace = "0" textTemplateTmp = textTemplateTmp[:resS.start()] + replace +\