Пример #1
0
def main():
    if len(sys.argv) < 2:
        showHelp()

    else:
        countArg = 0
        for arg in sys.argv:
            countArg += 1

            if arg == "init":
                if sys.argv[countArg] == '-n':
                    fileName = sys.argv[countArg + 1]
                    template = template_cpp()
                    init_single_file(f'{fileName}.cpp', template)
                    print(colored.yellow(f'Created {fileName}.cpp'))
                    break

                else:
                    contestName = sys.argv[countArg]
                    fileNames = get_filename()
                    init(contestName, fileNames)

            elif arg == "listen":
                listen()

            elif arg == "practice":
                contestName = sys.argv[countArg]
                practiceFiles = get_practice_files()
                init(contestName, practiceFiles)

            elif arg == "--help":
                showHelp()
                break
Пример #2
0
def main():

    if len(sys.argv) < 2:
        showHelp()

    else:
        countArg = 0
        for arg in sys.argv:
            countArg += 1

            if arg == "init":

                if sys.argv[countArg] == '-n':
                    file = sys.argv[countArg + 1]
                    path = '.'
                    f = open(path + '/' + file + '.cpp', "w+")
                    template = template_cpp()
                    f.write(template)
                    f.close()
                    print(colored.yellow("Created " + file + '.cpp'))
                    break

                else:
                    contestName = sys.argv[countArg]
                    fileNames = get_filename()
                    init(contestName, fileNames)

            elif arg == "listen":
                listen()

            elif arg == "practice":
                contestName = sys.argv[countArg]
                practiceFiles = get_practice_files()
                init(contestName, practiceFiles)
Пример #3
0
def main():
    arg = Parser()
    arg.parse(sys.argv[1:])

    # !Error while parsing
    if len(arg.error) > 0:
        print(arg.error)
        return
    # help command
    if arg.help: showHelp()
    # register an user and create `~/.codemon`
    if arg.register:
        codemonReg()
    # init single file
    if arg.init and arg.initFlags["single"]:
        fileName = arg.name
        if len(fileName) > 0: init_single_file(f'{fileName}', arg.initFlags)
        else:
            print('Cannot create file since no filename has been specified.')
            print("Try 'codemon init -n <filename>'.")
    # init contest directory
    if arg.init and not arg.initFlags["single"]:
        contestName = arg.name
        if len(contestName) > 0:
            fileNames = get_filename(contestName)
            init(contestName, fileNames, arg.initFlags)
            if arg.initFlags["fetch"]:
                fetchTestcases(fileNames, contestName)
        else:
            print(
                'Cannot create contest directory since no directory name has been specified.'
            )
            print("Try 'codemon init <dirName>'.")
    # fetch inside contest directory
    if arg.fetch:
        cwd = os.getcwd()
        contestName = os.path.basename(cwd)
        fileNames = get_filename(contestName)
        fetchTestcases(fileNames, contestName)
    # listen to a contest directory or file
    if arg.listen: listen()
    # clean contest directory
    if arg.clean:
        dirName = arg.name
        if len(dirName) > 0: codemonClean(dirName)
        else: print('Cannot clean since no directory name has been specified')
Пример #4
0
def main():
    arg = Parser()
    arg.parse(sys.argv[1:])

    if arg.Err == False:
        if arg.help:
            showHelp()
        elif arg.to_listen:
            listen()
        elif arg.to_practice:
            contestName = arg.name
            practiceFiles = get_practice_files()
            init(contestName, practiceFiles, arg.init_flags)
        elif arg.to_init:
            if arg.init_flags["is_single"]:
                fileName = arg.name
                if len(fileName) > 0:
                    init_single_file(f'{fileName}', arg.init_flags)
                else:
                    print(
                        'Cannot create file since no filename has been specified.'
                    )
                    print("Try 'codemon init -n <filename>'.")
            else:
                contestName = arg.name
                if len(contestName) > 0:
                    fileNames = get_filename(contestName)
                    init(contestName, fileNames, arg.init_flags)
                    if arg.init_flags["to_fetch"]:
                        fetch_tests(fileNames, contestName)
                else:
                    print(
                        'Cannot create contest directory since no directory name has been specified.'
                    )
                    print("Try 'codemon init <dirName>'.")
        elif arg.to_fetch:
            contestName = os.path.basename(os.getcwd())
            fileNames = get_filename(contestName)
            fetch_tests(fileNames, contestName)
        elif arg.Reg:
            codemonReg()
        else:
            print(
                "Invalid Command. Try 'codemon --help' to see commands supported by Codemon"
            )
Пример #5
0
def main():
    arg = Parser()
    arg.parse(sys.argv[1:])

    if arg.help:
        showHelp()

    elif arg.to_listen:
        listen()

    elif arg.to_practice:
        contestName = arg.name
        practiceFiles = get_practice_files()
        init(contestName, practiceFiles, arg.init_flags)

    elif arg.to_init:
        if arg.init_flags["is_single"]:
            fileName = arg.name
            init_single_file(f'{fileName}', arg.init_flags)
        else:
            contestName = arg.name
            fileNames = get_filename(contestName)
            init(contestName, fileNames, arg.init_flags)
            if arg.init_flags["to_fetch"]:
                fetch_tests(fileNames, contestName)
    elif arg.to_fetch:
        if arg.name == "":
            contestName = ''.join(
                re.findall(r'\d+',
                           os.getcwd().split('/')[-1]))
            fileNames = get_filename(contestName)
            fetch_tests(fileNames, contestName)
        else:
            contestName = arg.name
            fileName = get_filename(contestName)
            fetch_tests(fileName, contestName)
    elif arg.Reg:
        codemonReg()

    else:
        showHelp()
Пример #6
0
def main():
    arg = Parser()
    arg.parse(sys.argv[1:])

    if arg.help:
        showHelp()

    elif arg.to_listen:
        listen()

    elif arg.to_practice:
        contestName = arg.name
        practiceFiles = get_practice_files()
        init(contestName, practiceFiles, arg.init_flags)

    elif arg.to_init:
        if arg.init_flags["is_single"]:
            fileName = arg.name
            init_single_file(f'{fileName}', arg.init_flags)

        else:
            contestName = arg.name
            fileNames = get_filename(contestName)
            init(contestName, fileNames, arg.init_flags)
            if arg.init_flags["to_fetch"]:
                fetch_tests(fileNames, contestName)

    elif arg.to_fetch:
        contestName = os.path.basename(os.getcwd())
        fileNames = get_filename(contestName)
        fetch_tests(fileNames, contestName)

    elif arg.Reg:
        codemonReg()

    else:
        showHelp()