def main( klas, optz2 =None, args2 =None): klas.fix_std_encoding() klas._init() klas.opts() if optz2 or args2: options,args = optz.oparser.parse_args( args2 or ()) if optz2: options._update_loose( optz2) else: options,args = optz.get() for o in optz.iter_opt_defs(): if o.action != 'append': continue k = o.dest #uniq setattr( options, k, listif( p.strip() for p in (getattr( options, k) or ()) )) if options.opisi: OPISIpat[:] = options.opisi global use_stderr if options.stderr: use_stderr = True info.options = options info.args = args klas.zaredi_danni( args) info.vse_prefix = commonprefix( [ dirname( i.fname) for i in info.vse.values() ]) #_real info.vse_prefix_orig = commonprefix( [ dirname( i.origfname) for i in info.vse.values() ]) klas.all()
def izdanie_sglobi( nositel, izdatel, nomer, neznajno =False, godina =None, opis= False, godina2nomer =False): #prn( locals(), koi_izdatel( nomer), koi_nositel( nomer) ) if not nomer: if koi_nositel( izdatel) ==nositel: nositel = '' else: if koi_izdatel( nomer) ==izdatel: izdatel = '' if koi_nositel( nomer) ==nositel: nositel = '' if opis: izdatel = izdatel4opis( izdatel) #nositel = nositel4opis( nositel) nomer = nomer4opis( nomer) r = '-'.join( listif( [a for a in (nositel, nomer, izdatel) if a])) if godina and not godina2nomer: r+='/'+str(godina) if '?' not in r and neznajno: r += '?' return r