#!/usr/bin/env python

import gzip
import io
import sys

from Bio import SeqIO
from bioutils.digests import seq_vmc_id


def anyopen(path, encoding=None):
    if path == "-":
        # decoding is automatic in Python 3 based on locale
        # https://docs.python.org/3/library/sys.html#sys.stdin
        return sys.stdin
    elif path.endswith(".gz"):
        return gzip.open(path, mode="rt", encoding=encoding)
    else:
        return open(path, mode="r", encoding=encoding)


if __name__ == "__main__":
    for path in sys.argv[1:]:
        with anyopen(path) as fp:
            for rec in SeqIO.parse(fp, "fasta"):
                print(seq_vmc_id(str(rec.seq)) + "\t" + rec.id)
