#!/usr/bin/env python

# executing script allowing direct input of a protein name to get a graph back
# import stuff for making CLI

import os
import argparse

# import functionality to get a sequence
from getSequence.getseq import visseq as visualize_seq


if __name__ == "__main__":
    # Parse command line arguments.
    parser = argparse.ArgumentParser(description='Get a sequence from a protein name or UniProt accession number.')

    parser.add_argument('name', nargs='+', help='Name of the protein.')

    parser.add_argument('-r', '--residues', nargs='+', help='Residues to examine for spacing.')


    # parse the args
    args = parser.parse_args()

    # get protein name 
    if len(args.name) == 1:
        final_name = args.name[0]
        just_protein_name = True

    else:
        final_name = ''
        for i in args.name:
            final_name += i
            final_name += ' '
        final_name = final_name[:len(final_name)-1]
        just_protein_name = False

    if args.residues == None:
        vis_res=['Q']
    else:
        vis_res=[]
        for res in args.residues:
            if len(res)>1:
                for re in res:
                    vis_res.append(re)
            else:
                vis_res.append(res)

    # sequence and name
    visualize_seq(final_name, show_patterning=vis_res)







