def main(): (options, args) = cmdpara(sys.argv) print >> sys.stderr, "*******Print the result to screen.*******" # -------------------macro------------------------------------- isRep = 0 isLoc = 0 # ------------------------------------------------------------- if options.seqfile != None: seqdict = {} ctIO.readseq(options.seqfile, seqdict) if options.seqrepfile != None: seqdict = {} repdict = {} ctIO.readseqrep(options.seqrepfile, seqdict, repdict) isRep = 1 if options.repfile != None: repdict = {} ctIO.readRep(options.repfile, repdict) isRep = 1 if options.locusfile != None: locusList = [line.strip() for line in open(options.locusfile)] isLoc = 1 if not isLoc: locusList = repdict.keys() if isRep else seqdict.keys() if isRep or isLoc: annodict = {} ctIO.readAnno(options.anno, annodict, 1, locusList) interproDict = {} ctIO.readInterpro(options.interpro, interproDict, locusList) # print locusList # print repdict.keys() # print repdict # print isRep # sys.exit(1) # ---------------------------------------------------------------- latexHead() latexExplain() # --------------------------------------------------------------- for id in locusList: if id not in seqdict: print >> sys.stderr, "Unknown locus %s" % id else: hasInterpro = 0 seq = list(seqdict[id]) # -------------get newDict-------------------------------- newDict = {} if id in interproDict: hasInterpro = 1 domainDespList = [] domainPosL = interproDict[id].keys() getnewDictDomain(interproDict[id], domainDespList, newDict) # ------------------------------------------------ if isRep: repDespList = [] repdictSonL = repdict[id] num = len(repdictSonL) if not hasInterpro: domainPosL = [] getnewDictRep(repdictSonL, domainPosL, repDespList, newDict) getnewDictRepDesp(id, num, repDespList) # ----------------get newDict--------------------------- modifySeq(seq, newDict) # --------------------------------------------------------- print "".join((r"\section{", id, "}")) annos = annodict[id].replace("_", r"\_") annos = annos.replace("%", r"\%") annos = annos.replace("~", r"\~") annos = annos.replace("&", r"\&") annos = r"\tair{" + id[:-2] + "} " + annos print r"\anno{", annos, "}" print r""" \noindent\begin{minipage}{\textwidth} \noindent\rule{\textwidth}{2pt} \DNA!""" # --without annotation seq = "".join(seq) print seq print r"""! \end{minipage} """ # ------------------------------------------------ print print "." * 100 print # ---------------Rep------------------------------ if isRep: for repSeq in repDespList: print repSeq print # -------------Domain desp---------------------- if hasInterpro: print "." * 100 print for domainDesp in domainDespList: print domainDesp print print r"\clearpage" print # ----------------End of else ---one locus------------- # ----------------END of for ---all locus------------------ latexTail()
def main(): (options, args) = cmdpara(sys.argv) if options.sort: print 'sort' sys.exit(1) else: print 'no sort' sys.exit(1) print >> sys.stderr, "*******Print the result to screen.*******" #-------------------macro------------------------------------- isRep = 0 isLoc = 0 #------------------------------------------------------------- if options.seqfile != None: seqdict = {} ctIO.readseq(options.seqfile, seqdict) if options.seqrepfile != None: seqdict = {} repdict = {} ctIO.readseqrep(options.seqrepfile, seqdict, repdict) isRep = 1 if options.repfile != None: repdict = {} ctIO.readRep(options.repfile, repdict) isRep = 1 if options.locusfile != None: locusList = [line.strip() for line in open(options.locusfile)] isLoc = 1 if not isLoc: locusList = repdict.keys() if isRep else seqdict.keys() locusList.sort() if isRep or isLoc: annodict = {} ctIO.readAnno(options.anno, annodict, 1, locusList) interproDict = {} ctIO.readInterpro(options.interpro, interproDict, locusList) #print locusList #print repdict.keys() #print repdict #print isRep #sys.exit(1) #---------------------------------------------------------------- latexHead() latexExplain() #--------------------------------------------------------------- for id in locusList: if id not in seqdict: print >> sys.stderr, "Unknown locus %s" % id else: hasInterpro = 0 seq = list(seqdict[id]) #-------------get newDict-------------------------------- newDict = {} if id in interproDict: hasInterpro = 1 domainDespList = [] domainPosL = interproDict[id].keys() getnewDictDomain(interproDict[id], domainDespList, newDict) #------------------------------------------------ if isRep: repDespList = [] repdictSonL = repdict[id] num = len(repdictSonL) if not hasInterpro: domainPosL = [] getnewDictRep(repdictSonL, domainPosL, repDespList, newDict) getnewDictRepDesp(id, num, repDespList) #----------------get newDict--------------------------- modifySeq(seq, newDict) #--------------------------------------------------------- shortAnno = '' annos = annodict[id].replace('_', r'\_') annos = annos.replace('%', r'\%') annos = annos.replace('~', r'\~') annos = annos.replace('&', r'\&') firstBr = annos.find('[') if firstBr != -1: shortAnno = annos[:firstBr] print ''.join((r'\section{', id, ' ', shortAnno, '}')) annos = r'\tair{' + id[:-2] + '} ' + annos print r'\anno{', annos, '}' print r''' \noindent\begin{minipage}{\textwidth} \noindent\rule{\textwidth}{2pt} \DNA!''' #--without annotation seq = ''.join(seq) print seq print r'''! \end{minipage} ''' #------------------------------------------------ print print '.' * 100 print #---------------Rep------------------------------ if isRep: for repSeq in repDespList: print repSeq print #-------------Domain desp---------------------- if hasInterpro: print '.' * 100 print for domainDesp in domainDespList: print domainDesp print print r'\clearpage' print #----------------End of else ---one locus------------- #----------------END of for ---all locus------------------ latexTail()
def main(): (options, args) = cmdpara(sys.argv) if options.sort: print 'sort' sys.exit(1) else: print 'no sort' sys.exit(1) print >>sys.stderr, "*******Print the result to screen.*******" #-------------------macro------------------------------------- isRep = 0 isLoc = 0 #------------------------------------------------------------- if options.seqfile != None: seqdict = {} ctIO.readseq(options.seqfile, seqdict) if options.seqrepfile != None: seqdict = {} repdict = {} ctIO.readseqrep(options.seqrepfile, seqdict, repdict) isRep = 1 if options.repfile != None: repdict = {} ctIO.readRep(options.repfile, repdict) isRep = 1 if options.locusfile != None: locusList = [line.strip() for line in open(options.locusfile)] isLoc = 1 if not isLoc: locusList = repdict.keys() if isRep else seqdict.keys() locusList.sort() if isRep or isLoc: annodict = {} ctIO.readAnno(options.anno, annodict, 1, locusList) interproDict = {} ctIO.readInterpro(options.interpro, interproDict, locusList) #print locusList #print repdict.keys() #print repdict #print isRep #sys.exit(1) #---------------------------------------------------------------- latexHead() latexExplain() #--------------------------------------------------------------- for id in locusList: if id not in seqdict: print >>sys.stderr, "Unknown locus %s" % id else: hasInterpro = 0 seq = list(seqdict[id]) #-------------get newDict-------------------------------- newDict = {} if id in interproDict: hasInterpro = 1 domainDespList = [] domainPosL = interproDict[id].keys() getnewDictDomain(interproDict[id], domainDespList, newDict) #------------------------------------------------ if isRep: repDespList = [] repdictSonL = repdict[id] num = len(repdictSonL) if not hasInterpro: domainPosL = [] getnewDictRep(repdictSonL, domainPosL, repDespList, newDict) getnewDictRepDesp(id, num, repDespList) #----------------get newDict--------------------------- modifySeq(seq, newDict) #--------------------------------------------------------- shortAnno = '' annos = annodict[id].replace('_', r'\_') annos = annos.replace('%', r'\%') annos = annos.replace('~', r'\~') annos = annos.replace('&', r'\&') firstBr = annos.find('[') if firstBr != -1: shortAnno = annos[:firstBr] print ''.join((r'\section{', id, ' ', shortAnno, '}' )) annos = r'\tair{' + id[:-2] + '} ' + annos print r'\anno{', annos, '}' print r''' \noindent\begin{minipage}{\textwidth} \noindent\rule{\textwidth}{2pt} \DNA!''' #--without annotation seq = ''.join(seq) print seq print r'''! \end{minipage} ''' #------------------------------------------------ print print '.' * 100 print #---------------Rep------------------------------ if isRep: for repSeq in repDespList: print repSeq print #-------------Domain desp---------------------- if hasInterpro: print '.' * 100 print for domainDesp in domainDespList: print domainDesp print print r'\clearpage' print #----------------End of else ---one locus------------- #----------------END of for ---all locus------------------ latexTail()