#! /usr/bin/env python
import argparse
import sys

from condent import Condenter


parser = argparse.ArgumentParser(
    description="A collection reindenter for Python.",
)

parser.add_argument(
    "input",
    nargs="*",
    help="a file containing the container to reindent",
    default=[sys.stdin],
    type=argparse.FileType("r"),
)

parser.add_argument(
    "-o", "--output",
    help="output file for reindented container (default: stdout)",
    default=sys.stdout,
    type=argparse.FileType("w"),
)

parser.add_argument(
    "-s", "--no-symmetric-colons",
    help="output {foo: bar} rather than {foo : bar}",
    dest="symmetric_colons",
    action="store_false"
)


parser.add_argument(
    "-c", "--no-trailing-comma",
    help="don't add trailing commas",
    dest="trailing_comma",
    action="store_false"
)


# parser.add_argument(
#     "-C", "--single-line-trailing-comma",
#     dest="single_line_trailing_comma",
#     action="store_true"
# )


arguments = parser.parse_args()
condenter = Condenter(arguments)

for file in arguments.input:
    with file:
        arguments.output.writelines(condenter.redent(file))
