Exemple #1
0
    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()
Exemple #2
0
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