def _debug_tags(self): nos = [i + 1 for i in range(len(self.tags))] closes = ['{}'.format(tag.Close) for tag in self.tags] names = ['"{}"'.format(tag.name) for tag in self.tags] types = ['"{}"'.format(tag.type_) for tag in self.tags] texts = ['"{}"'.format(tag.text) for tag in self.tags] urls = ['"{}"'.format(tag.url) for tag in self.tags] dicfs = ['"{}"'.format(tag.dicf) for tag in self.tags] rownos = ['{}'.format(tag.rowno) for tag in self.tags] cellnos = ['{}'.format(tag.cellno) for tag in self.tags] inherent = [] for tag in self.tags: subtags = [] for subtag in tag.inherent: subtags.append(subtag.name) subtags = ', '.join(subtags) inherent.append(subtags) iterable = [ nos, closes, names, types, texts, urls, dicfs, inherent, rownos, cellnos ] headers = (_('#'), _('CLOSING'), _('NAME'), _('TYPE'), _('TEXT'), 'URL', 'DICF', _('OPEN'), _('ROW'), _('CELL')) # 10'' monitor: 13 symbols per a column # 23'' monitor: 30 symbols per a column mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=13, maxrows=self.maxrows).run() return _('Tags:') + '\n' + mes
def _debug_wanted(self): f = '[MClient] plugins.multitrancom.utils.subjects.compile.Missing._debug_wanted' nos = [i + 1 for i in range(len(self.lst_wanted))] headers = (_('#'), _('TEXT')) iterable = [nos, self.lst_wanted] mes = sh.FastTable(headers=headers, iterable=iterable, maxrow=50).run() return f + ':\n' + mes
def get_upage_glue(self): f = '[MClient] plugins.multitrandem.tests.Tests.get_upage_glue' upage = UPage(gt.objs.get_files().iwalker.get_glue1()) upage.get_parts() part1 = list(upage.part1) part2 = list(upage.part2) part1l = [] for i in range(len(part1)): if part1[i]: unpacked = struct.unpack('<b', part1[i])[0] unpacked = '"{}"'.format(unpacked) part1l.append(unpacked) else: part1l.append('""') part2l = [] for i in range(len(part2)): if part2[i]: unpacked = struct.unpack('<h', part2[i])[0] unpacked = '"{}"'.format(unpacked) part2l.append(unpacked) else: part2l.append('""') header = ('CHUNK1', '<b', 'CHUNK2', '<h') data = [part1, part1l, part2, part2l] mes = sh.FastTable(headers=header, iterable=data, sep=3 * ' ').run() sh.com.run_fast_debug(f, mes)
def report(self): f = '[CompressMedia] tests.Compression.report' if self.Success: nos = [i + 1 for i in range(len(self.ifiles))] ''' old_sizes = [sh.com.get_human_size(ifile.old_size) \ for ifile in self.ifiles ] ''' new_sizes = [sh.com.get_human_size(ifile.new_size) \ for ifile in self.ifiles ] compression = ['{}%'.format(ifile.compression) \ for ifile in self.ifiles ] files = [ifile.file for ifile in self.ifiles] filesw = [ifile.filew for ifile in self.ifiles] iterable = [nos,files,filesw,new_sizes,compression] headers = (_('#'),_('INPUT FILE'),_('OUTPUT FILE') ,_('NEW SIZE'),_('COMPRESSION') ) mes = sh.FastTable (iterable = iterable ,headers = headers ).run() sh.com.run_fast_debug(f,mes) else: sh.com.cancel(f)
def _debug_rows(self): f = '[MClient] plugins.multitrancom.utils.subjects.extract.EndPage._debug_rows' # 'self.rows' contains blocks of certain types count = 0 for row in self.rows: for block in row: count += 1 nos = [i + 1 for i in range(count)] rownos = [] types = [] texts = [] dic = [] dicf = [] for row in self.rows: for block in row: rownos.append(block.rowno) types.append(block.type_) texts.append(block.text) dic.append(block.dic) dicf.append(block.dicf) headers = (_('#'), _('ROW #'), 'DIC', 'DICF', _('TYPE'), _('TEXT')) iterable = [nos, rownos, dic, dicf, types, texts] # 10'' screen: 30 symbols mes = sh.FastTable(headers=headers, iterable=iterable, maxrow=30).run() return f + ':\n' + mes
def debug(self,maxrow=20,maxrows=1000): f = '[MClient] plugins.dsl.elems.Elems.debug' if self.Debug and self.blocks: headers = ('NO','DIC','DICF','WFORM' ,'SPEECH','TRANSC','TYPE' ,'TEXT','SAME','SELECT' ) rows = [] for i in range(len(self.blocks)): rows.append ([i + 1 ,self.blocks[i].dic ,self.blocks[i].dicf ,self.blocks[i].wform ,self.blocks[i].speech ,self.blocks[i].transc ,self.blocks[i].type_ ,self.blocks[i].text ,self.blocks[i].same ,self.blocks[i].select ] ) mes = sh.FastTable (headers = headers ,iterable = rows ,maxrow = maxrow ,maxrows = maxrows ,Transpose = True ).run() mes = _('Non-DB blocks:') + '\n\n' + mes sh.com.run_fast_debug(f,mes) else: sh.com.rep_lazy(f)
def _debug_tagged(self): nos = [i + 1 for i in range(len(self.tagged))] texts = [item.text for item in self.tagged] tags = [', '.join(item.tags) for item in self.tagged] iterable = [nos, tags, texts] headers = (_('#'), _('TAGS'), _('TEXT')) mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=50, maxrows=self.maxrows).run() return _('Tags:') + '\n' + mes
def _debug_blocks(self): nos = [i + 1 for i in range(len(self.blocks))] texts = [block.text for block in self.blocks] types = [block.type_ for block in self.blocks] iterable = [nos, types, texts] headers = (_('#'), _('TYPES'), _('TEXT')) mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=50, maxrows=self.maxrows).run() return _('Blocks:') + '\n' + mes
def _debug_full2abbr(self): f = '[MClient] logic.SpeechPrior._debug_full2abbr' full2abbr = self.get_full2abbr() if full2abbr: full = sorted(full2abbr.keys()) abbr = [full2abbr.get(item) for item in full] headers = (_('NAME'),_('ABBREVIATION')) iterable = [full,abbr] mes = sh.FastTable(iterable,headers).run() sh.com.run_fast_debug(f,mes) else: sh.com.rep_empty(f)
def _debug_abbr2full(self): f = '[MClient] logic.SpeechPrior._debug_abbr2full' abbr2full = self.get_abbr2full() if abbr2full: abbr = sorted(abbr2full.keys()) full = [abbr2full.get(item) for item in abbr] headers = (_('ABBREVIATION'),_('NAME')) iterable = [abbr,full] mes = sh.FastTable(iterable,headers).run() sh.com.run_fast_debug(f,mes) else: sh.com.rep_empty(f)
def debug(self): f = '[MClient] plugins.multitrandem.tests.Subject.debug' if self.Success: headers = ('#', 'FULL (1)', 'ABBR (1)', 'FULL (2)', 'ABBR (2)') iterable = (self.dic_nos, self.en_dicf, self.en_dic, self.ru_dicf, self.ru_dic) mes = sh.FastTable(headers=headers, iterable=iterable).run() sub = _('File: "{}"').format(self.file) mes = sub + '\n\n' + mes sh.com.run_fast_debug(f, mes) else: sh.com.cancel(f)
def debug_blocks(self): f = '[MClient] plugins.multitrandem.tags.Tags.debug_blocks' headers = ('NO', 'TYPE', 'TEXT') rows = [] for i in range(len(self.blocks)): rows.append([i + 1, self.blocks[i].type_, self.blocks[i].text]) mes = sh.FastTable(headers=headers, iterable=rows, maxrow=self.maxrow, maxrows=self.maxrows, Transpose=True).run() sh.com.run_fast_debug(f, mes)
def debug(self): f = '[MClient] plugins.multitrandem.tests.Ending.debug' if self.Success: ends = list(self.ends) ends = [str(end) for end in ends] headers = ('#', 'ENDINGS') iterable = (self.nos, ends) mes = sh.FastTable(iterable=iterable, headers=headers).run() sub = _('File: "{}"').format(self.file) mes = sub + '\n\n' + mes sh.com.run_fast_debug(f, mes) else: sh.com.cancel(f)
def _debug_missing(self): f = '[MClient] plugins.multitrancom.utils.subjects.compile.Missing._debug_missing' rows = [] for i in range(len(self.missing)): row = list(self.missing[i]) row.insert(0, i + 1) rows.append(row) headers = (_('#'), 'EN', 'RU', 'DE', 'ES', 'UK') mes = sh.FastTable(iterable=rows, headers=headers, maxrow=20, Transpose=True).run() return f + ':\n' + mes
def _debug_blocks(self): f = '[MClient] plugins.multitrancom.utils.subjects.extract.StartPage._debug_blocks' nos = [i + 1 for i in range(len(self.blocks))] types = [] texts = [] urls = [] for block in self.blocks: types.append(block.type_) texts.append(block.text) urls.append(block.url) headers = (_('#'), _('TYPE'), _('TEXT'), 'URL') iterable = [nos, types, texts, urls] # 10'' monitor: 40 symbols per row mes = sh.FastTable(headers=headers, iterable=iterable, maxrow=40).run() return f + '\n' + mes
def debug_all2prior(self): f = '[MClient] logic.SpeechPrior.debug_all2prior' if self.Success: all2prior = self.get_all2prior() if all2prior: all_ = all2prior.keys() prior = [all2prior.get(key) for key in all2prior.keys()] headers = (_('NAME'),_('PRIORITY')) iterable = [all_,prior] mes = sh.FastTable(iterable,headers).run() sh.com.run_fast_debug(f,mes) else: sh.com.rep_empty(f) else: sh.com.cancel(f)
def _debug_blocks(self): f = '[MClient] cells.BlockPrioritize._debug_blocks' headers = ('NO', 'TYPE', 'TEXT', 'BLOCK', 'DIC', 'DICPR', 'SPEECH', 'SPEECHPR') rows = [] for block in self.blocks: rows.append([ block.no, block.type_, block.text, block.block, block.dic, block.dprior, block.speech, block.sprior ]) mes = sh.FastTable(headers=headers, iterable=rows, maxrow=20, maxrows=self.maxrows, Transpose=True).run() return f + ':\n' + mes
def get_majors_en(self): f = '[MClient] tests.Commands.get_majors_en' import plugins.multitrancom.subjects as sj groups = [] shorts = [] titles = [] for key in sj.SUBJECTS.keys(): if sj.SUBJECTS[key]['Major']: groups.append(sj.SUBJECTS[key]['major_en']) shorts.append(sj.SUBJECTS[key]['en']['short']) titles.append(sj.SUBJECTS[key]['en']['title']) nos = [i + 1 for i in range(len(groups))] headers = (_('#'), _('MAJOR (EN)'), _('SHORT'), _('TITLE')) iterable = [nos, groups, shorts, titles] mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=30).run() sh.com.run_fast_debug(f, mes)
def debug(self): f = '[MClient] cells.Pos.debug' if self.Debug: headers = ('NO', 'TYPE', 'TEXT', 'POS1', 'POS2') rows = [] for block in self.blocks: rows.append([ block.no, block.type_, block.text, block.first, block.last ]) mes = sh.FastTable(headers=headers, iterable=rows, maxrow=70, maxrows=self.maxrows, Transpose=True).run() mes = f + '\n' + mes sh.com.run_fast_debug(f, mes)
def _debug_subjects(self): f = '[MClient] plugins.multitrancom.utils.subjects.extract.EndPage._debug_subjects' nos = [i + 1 for i in range(len(self.subjects.keys()))] dic = [] dicf = [] keys = [] for key in self.subjects.keys(): keys.append(key) dic.append(self.subjects[key]['dic']) dicf.append(self.subjects[key]['dicf']) headers = (_('#'), _('DIC'), _('DICF'), _('KEY')) iterable = [nos, dic, dicf, keys] # 10'' screen: 40 symbols mes = sh.FastTable(headers=headers, iterable=iterable, maxrow=40, encloser='"').run() return f + ':\n' + mes
def debug(self): f = '[MClient] cells.Cells.debug' if self.Debug: headers = ('NO', 'TYPE', 'FIXED', 'TEXT', 'DIC', 'WFORM', 'SPEECH', 'SPEECHPR', 'ROWNO', 'COLNO', 'CELLNO', 'SAME') rows = [] for block in self.blocks: rows.append([ block.no, block.type_, block.Fixed, block.text, block.dic, block.wform, block.speech, block.sprior, block.i, block.j, block.cellno, block.same ]) mes = sh.FastTable(headers=headers, iterable=rows, maxrow=15, maxrows=self.maxrows, Transpose=True).run() mes = f + '\n' + mes sh.com.run_fast_debug(f, mes)
def _debug_blocks(self): nos = [i + 1 for i in range(len(self.blocks))] types = [block.type_ for block in self.blocks] texts = ['"{}"'.format(block.text) for block in self.blocks] urls = ['"{}"'.format(block.url) for block in self.blocks] dics = ['"{}"'.format(block.dic) for block in self.blocks] dicfs = ['"{}"'.format(block.dicf) for block in self.blocks] rownos = [block.rowno for block in self.blocks] cellnos = [block.cellno for block in self.blocks] iterable = [nos, types, texts, urls, dics, dicfs, rownos, cellnos] headers = (_('#'), _('TYPE'), _('TEXT'), 'URL', 'DIC', 'DICF', _('ROW #'), _('CELL #')) # 10'' monitor: 20 symbols per a column # 23'' monitor: 50 symbols per a column mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=20, maxrows=self.maxrows).run() return _('Blocks:') + '\n' + mes
def debug(self): f = '[MClient] mkhtml.Fonts.debug' if not self.Success: sh.com.cancel(f) return if not self.Debug: sh.com.rep_lazy(f) return nos = [i + 1 for i in range(len(self.fonts))] texts = [] families = [] colors = [] sizes = [] bolds = [] italics = [] rownos = [] colnos = [] col_widths = [] for ifont in self.fonts: texts.append(ifont.text) families.append(ifont.family) colors.append(ifont.color) sizes.append(ifont.size) bolds.append(ifont.Bold) italics.append(ifont.Italic) rownos.append(ifont.rowno) colnos.append(ifont.colno) col_widths.append(ifont.col_width) headers = (_('#'),_('ROW #'),_('COLUMN #'),_('COLUMN WIDTH (%)') ,_('TEXT'),_('COLOR'),_('FAMILY'),_('SIZE'),_('BOLD') ,_('ITALIC') ) iterable = [nos,rownos,colnos,col_widths,texts,colors,families ,sizes,bolds,italics ] # 10'' screen: 20 symbols mes = sh.FastTable (headers = headers ,iterable = iterable ,maxrow = 20 ,maxrows = self.maxrows ).run() sh.com.run_fast_debug(f,mes)
def debug_blocks (self): f = '[MClient] plugins.stardict.tags.Tags.debug_blocks' headers = ('NO','TYPE','TEXT','URL','SAMECELL') rows = [] for i in range(len(self.blocks)): rows.append ([i + 1 ,self.blocks[i].type_ ,self.blocks[i].text ,self.blocks[i].url ,self.blocks[i].same ] ) mes = sh.FastTable (headers = headers ,iterable = rows ,maxrow = self.maxrow ,maxrows = self.maxrows ,Transpose = True ).run() mes = _('Non-DB blocks:') + '\n\n' + mes sh.com.run_fast_debug(f,mes)
def _debug_attrs(self): f = '[MClient] plugins.multitrancom.utils.subjects.compile.Compile._debug_attrs' nos = [i + 1 for i in range(len(self.subjects.keys()))] keys = [] single = [] en = [] majors = [] groups = [] for key in self.subjects: keys.append(key) en.append(self.subjects[key]['en']['title']) single.append(self.subjects[key]['Single']) majors.append(self.subjects[key]['Major']) groups.append(self.subjects[key]['major_en']) headers = (_('#'), _('KEY'), 'EN', _('SINGLE'), _('MAJOR'), _('MAJOR (EN)')) iterable = [nos, keys, en, single, majors, groups] # 10'' monitor: 25 symbols per column mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=25).run() return f + '\n' + mes
def _debug_subjects(self): f = '[MClient] subjects.subjects.ArticleSubjects._debug_subjects' nos = [i + 1 for i in range(len(self.subjects.keys()))] keys = [] shorts = [] titles = [] blocked = [] priorities = [] for key in self.subjects.keys(): keys.append(key) shorts.append(self.subjects[key]['short']) titles.append(self.subjects[key]['title']) blocked.append(self.subjects[key]['block']) priorities.append(self.subjects[key]['priority']) headers = (_('#'), _('KEY'), _('SHORT'), _('TITLE'), _('BLOCKED'), _('PRIORITY')) iterable = [nos, keys, shorts, titles, blocked, priorities] # 10'' monitor: 30 symbols per column mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=30).run() return f + ':\n' + mes
def debug(self): f = 'plugins.multitrandem.elems.Elems.debug' if self.Debug: mes = _('Debug table:') sh.objs.get_mes(f, mes, True).show_debug() headers = ('NO', 'TYPE', 'TEXT', 'SAME', 'CELLNO', 'ROWNO', 'COLNO', 'POS1', 'POS2') rows = [] for i in range(len(self.blocks)): rows.append([ i + 1, self.blocks[i].type_, self.blocks[i].text, self.blocks[i].same, self.blocks[i].cellno, self.blocks[i].i, self.blocks[i].j, self.blocks[i].first, self.blocks[i].last ]) mes = sh.FastTable(headers=headers, iterable=rows, maxrow=self.maxrow, maxrows=self.maxrows, Transpose=True).run() sh.com.run_fast_debug(f, mes)
def _debug_langs(self): f = '[MClient] plugins.multitrancom.utils.subjects.compile.Compile._debug_langs' nos = [i + 1 for i in range(len(self.subjects.keys()))] keys = [] single = [] en_short = [] en = [] ru_short = [] ru = [] de_short = [] de = [] sp_short = [] sp = [] uk_short = [] uk = [] for key in self.subjects: keys.append(key) single.append(self.subjects[key]['Single']) en_short.append(self.subjects[key]['en']['short']) en.append(self.subjects[key]['en']['title']) ru_short.append(self.subjects[key]['ru']['short']) ru.append(self.subjects[key]['ru']['title']) de_short.append(self.subjects[key]['de']['short']) de.append(self.subjects[key]['de']['title']) sp_short.append(self.subjects[key]['es']['short']) sp.append(self.subjects[key]['es']['title']) uk_short.append(self.subjects[key]['uk']['short']) uk.append(self.subjects[key]['uk']['title']) headers = (_('#'), _('KEY'), _('SINGLE'), 'ENS', 'EN', 'RUS', 'RU', 'DES', 'DE', 'SPS', 'SP', 'UKS', 'UK') iterable = [ nos, keys, single, en_short, en, ru_short, ru, de_short, de, sp_short, sp, uk_short, uk ] # 10'' monitor: 8 symbols per column mes = sh.FastTable(iterable=iterable, headers=headers, maxrow=8, ShowGap=False).run() return f + '\n' + mes
def debug_stems(self): f = '[MClient] plugins.multitrandem.tests.UPage.debug_stems' if self.Success: if self.part2: part1 = [chunk.decode(gt.CODING,'ignore') \ for chunk in self.part1 ] part2 = [struct.unpack('<h',chunk)[0] \ for chunk in self.part2 ] mes = sh.FastTable(headers=('STEM', 'PAGEREF'), iterable=(part1, part2), sep=3 * ' ').run() if mes: mes = _('File: {}').format(self.file) + '\n\n' + mes sh.com.run_fast_debug(f, mes) else: sh.com.rep_empty(f) else: sh.com.rep_empty(f) else: sh.com.cancel(f)
def debug(self): f = 'plugins.multitrancom.elems.Elems.debug' if self.Debug: headers = ('NO', 'TYPE', 'TEXT', 'URL', 'SAME', 'SEMINO', 'ROWNO', 'CELLNO', 'SELECT', 'DIC', 'DICF', 'TERM') rows = [] for i in range(len(self.blocks)): rows.append([ i + 1, self.blocks[i].type_, '"{}"'.format(self.blocks[i].text), '"{}"'.format(self.blocks[i].url), self.blocks[i].same, self.blocks[i].semino, self.blocks[i].rowno, self.blocks[i].cellno, self.blocks[i].select, self.blocks[i].dic, self.blocks[i].dicf, self.blocks[i].term ]) # 10'' monitor: 12 symbols per a column # 23'' monitor: 20 symbols per a column mes = sh.FastTable(headers=headers, iterable=rows, maxrow=12, maxrows=self.maxrows, Transpose=True).run() sh.com.run_fast_debug(f, mes)