From f78ef27c35bf67f70eda4c754c340e8bc2a79a25 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: Wed, 13 Oct 2010 14:39:43 +0400 Subject: [PATCH] Modified method of printing variables. --- i18n/cl_lib_ru.mo | Bin 24494 -> 24500 bytes pym/cl_datavars.py | 53 ++++++++++++++++++++++++++++++++++----------- 2 files changed, 40 insertions(+), 13 deletions(-) diff --git a/i18n/cl_lib_ru.mo b/i18n/cl_lib_ru.mo index dfe20287df8eef32b2ff8403fcbe57798e617382..06181a183d317ddf3be0ebafaedda79f8593c85a 100644 GIT binary patch delta 2516 zcmXZddrZ}39LMqRG0Nct4k{N(;DCZ55GbI4xiH67_s9M&WO`97l07mL!`+V;$a$TQCFP zM*eJo4Og9T*AQ{KwOw9#614mHn zMA4as@i+?$QR_Z|GqGug<1XxHAf15^F#*qED&D|Yj7xDN%)uD?OHh%nMIEdK_56Np z!p|@h6Bt~KTn``xK!Moe~@+Mhnj6 zX%$r`K8D@+04B_J54H}qz-y?t)zoOpr|B&QZ24UA@Jraw3fnj(Bi}9~uzbK#l zhci%?Z}uS8;_Z{6QZ$T{jr zqB3(nXf*lOm90R^!FHpbJAulWbAv`QjckskBC1ABXhp8cI)nX7s8mLBKU$y_m*Z(v zB$IeWbjR^Xwk;ifxE@n*Z_rLuMt^j_cPwP7*)t5JpsMvCs+hjTRJ@5gxsQ_9!YfeE zy^31+4DQ80a3?lXI4|LKT!Gsja(`F)F^&G8r~qTj&Gx7oifL$|4^^$BsJl+BFnbCe zWG%af)tF!D7S{nxq~C$D_zkK!htP|+kmOp}GB?9jsPDH0`|Y@o{p|#eEL`v~i{sNc z1v@YUzr-fIf)jBic~>UZVG{{N#T<;;^T~Kiga5G5|S=-TU zm8hFm(?K;Z&YU?2wxTW5P1`6}6U}t#)XG}3*8Ah{YtFy3r2R$&ajixaRPr{Vxc;15`iw{bESCYWixDx8fCn1=h2 zKO5o0jW_T?44Pq{`wNH9F!Sd^90p(_>V`B_09hE0Wf+JXQ2{jJa%{(FJco&R1GP>V zlj#_ZsW>0C?mC=_TM|9a!f$ioAub%jSUii#cnhasRFacn21YSog37cG6<8DM{x+<~ zPcR*)aj^i4a6Wcm5PpfO~} zjN0H&)H?pN%z`lrLvbc*pFDJ?EqPx9LCySipHGfC^+|+l6!4-})G2a^X6vi>H&mHp)O{{unO9 z16YDrky|Zij??|?aTW7EtjCENX4&{W>dcR!HXK7@vKTg7fkl|d{2k0qfFveg9 zW^=ci>L{+q<5-B(<~f0_MJ@0a>Mc2m3Tzbhp5H@?V=1J)8mp09tQQ0E7hHmW_~v=J z)IW#|%W^3*R^t80P$e3}0-R0#9>wiA4SP_TpYa)(&zr-%*k>E+_h1+s@n`J9vWL}i zX8+*}*t&q(vkd;?>13K_8>?y~FZEOA7m#DKXzE&x#Xb+CzW*0h+JeRWNa1GG^Y0;l zc9D-zj3o;-bp|TYTAY9fJq%QVV;GE|V-${HC0;^K$MRT}WUT>J;*W7Revj&zO+=$J ze+N~W^FAk2Zyi}V(hk;wy6-bo#XPqdBrr%PEHzOX>Va0|nCz%;ehF2|AkIe%v|>4) zLS+)nE21-wMyhSI(2eUc319Yk6jjmhobNs6TF$w0ApzB`UQ{!EjmdZy6?qITuZ7D| z_q~A%d=Ov5E4T}vp>bZpYgmDe#m?`_5T-Ey6_sGvN`9==4GS6Q!XTa1o}Fh34DPqf&mzfa=+g z*n`Q`O_7gc9mcJ47H&qB{0u69JE#QG>C{NXm~y6^~W% zcshe&E@$}FkI`KjKB69FHnK|t#SUdNk;X|4x~7C z896n}f695?IxwI4SEzveLe@GzB&nzj8oWCLvt6A%U4d6!t`_g!;P+kT%?zn>UGTPt Y>~nq86Ce6|a8I{8H>KxV(KiwQ1CpUUEC2ui diff --git a/pym/cl_datavars.py b/pym/cl_datavars.py index 04331a3..b2f9394 100644 --- a/pym/cl_datavars.py +++ b/pym/cl_datavars.py @@ -612,6 +612,7 @@ storage of variables templates")%location) %str(varsFilter)) cl_overriding.exit(1) ret = {} + dictServicesVars = {} for section, moduleVar, fillobj in self._importList: dataVar = moduleVar.Data dictVars = dir(dataVar) @@ -624,30 +625,43 @@ storage of variables templates")%location) if reFilter and not reFilter.search(nameVar): continue self.Get(nameVar) - ret[nameVar] = getattr(self, nameVar) - return ret + variable = getattr(self, nameVar) + service = variable.service.lower() + ret[nameVar] = variable + if not service in dictServicesVars: + dictServicesVars[service] = {} + dictServicesVars[service][nameVar] = variable + return ret, dictServicesVars def printVars(self, varsFilter=None, varsNames=[], outFormat="default", verbose=1): """распечатать список переменных с значениями""" - var=self.getVars(varsFilter, varsNames, verbose=verbose) - if outFormat == "default": + def getLenElements(varsDict): mlen_name=0; mlen_type=0; mlen_mode=0; - for i,j in var.items(): + for i,j in varsDict.items(): if len(i)>mlen_name: mlen_name=len(i) - if not '[' in var[i].mode: - mode="[%s]"%(var[i].mode.lower()) - var[i].mode=mode + if not '[' in varsDict[i].mode: + mode="[%s]"%(varsDict[i].mode.lower()) + varsDict[i].mode=mode if len(mode)>mlen_mode: mlen_mode=len(mode) - plist=var.keys() + return mlen_name, mlen_type, mlen_mode + + def printVarsTable(varsDict, title, lenList=()): + """print variables table""" + if lenList: + mlen_name, mlen_type, mlen_mode = lenList; + else: + mlen_name, mlen_type, mlen_mode = getLenElements(varsDict) + plist=varsDict.keys() plist.sort() br = fillstr("-",mlen_name) + " " +\ fillstr("-",mlen_mode) + " " + fillstr("-",10) - cl_overriding.printSUCCESS(_("The list of variables:")) + cl_overriding.printSUCCESS(title) + cl_overriding.printSUCCESS(br) cl_overriding.printSUCCESS(\ _toUNICODE(_("Variable name")).center(mlen_name).encode('UTF-8') +\ " " + _("Mode") + " " +_("Value")) @@ -656,9 +670,22 @@ storage of variables templates")%location) if i.endswith("_pw"): p_val = "***" else: - p_val=var[i].value - columnWrite(i, mlen_name, var[i].mode.lower(), mlen_mode, p_val) - cl_overriding.printSUCCESS(br) + p_val=varsDict[i].value + columnWrite(i, mlen_name, varsDict[i].mode.lower(), + mlen_mode, p_val) + var, dictPkgVars = self.getVars(varsFilter, varsNames, verbose=verbose) + if outFormat == "default": + lenList = getLenElements(var) + libService = 'main' + if libService in dictPkgVars: + var = dictPkgVars.pop(libService) + printVarsTable(var, _("The list of %s variables:")%'library', + lenList=lenList) + for service in dictPkgVars.keys(): + var = dictPkgVars[service] + cl_overriding.printSUCCESS("") + printVarsTable(var, _("The list of %s variables:")%service, + lenList=lenList) elif outFormat == "xml": xmlObj = _varsXML() varNames = sorted(var.keys())