docs/tutorial/testlib/arguments_printer.py
author Pulkit Goyal <7895pulkit@gmail.com>
Tue, 16 Jan 2018 17:14:32 +0530
changeset 3459 218fbcc3220c
parent 3376 aad37ffd7d58
permissions -rw-r--r--
evolve: store the replacements occurred during `hg evolve` at top level This patch starts storing the replacements made during the `hg evolve` command. The current dictionary is not used anywhere but will be used in future as we want to introduce abort functionality, so we want to delay writing of obsmarkers, storing these exchanges in statefile etc.

import sys

formatted_args = []

UNSAFE_CHARACTERS = [" ", "!", "\"", "#", "$", "&", "'", "(", ")", "*", ",", ";", "<", ">", "?", "[", "\\", "]", "^", "`", "{", "|", "}", ":", "~", "/"]


def find_unsafe(arg):
    for unsafe in UNSAFE_CHARACTERS:
        if unsafe in arg:
            return True

    return False


for arg in sys.argv[1:]:
    if find_unsafe(arg):
        formatted_args.append('"%s"' % arg)
    else:
        formatted_args.append(arg)

print("$ " + " ".join(formatted_args))