Ejemplo n.º 1
0
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("-i",
                        "--input",
                        required=True,
                        type=str,
                        help="Zip file containing schemas.")
    parser.add_argument(
        "--extra-input",
        type=argparse.FileType("r"),
        help="Optional input file containing extra token names.")
    parser.add_argument("constant_file",
                        metavar="CONSTANT-FILE",
                        nargs=1,
                        type=argparse.FileType("w"),
                        help="Output file to store constant values.")
    parser.add_argument("name_file",
                        metavar="NAME-FILE",
                        nargs=1,
                        type=argparse.FileType("w"),
                        help="Output file to store constant string names.")
    args = parser.parse_args()

    tokens = get_all_tokens_from_zip(args.input)

    if args.extra_input:
        extra_tokens = [x.strip() for x in args.extra_input.readlines()]
        tokens.update(extra_tokens)

    tokens = sorted(list(tokens))
    token_util.gen_token_constants(args.constant_file[0], tokens)
    token_util.gen_token_names(args.name_file[0], tokens)
Ejemplo n.º 2
0
def main(args):

    file = open(sys.argv[1], 'r')
    chars = file.read()
    file.close()

    parser = xml_parser(chars)
    parser.parse()
    tokens = parser.tokens.keys()
    tokens.sort()

    token_util.gen_token_constants(sys.argv[2], tokens)
    token_util.gen_token_names(sys.argv[3], tokens)
    gen_namespace_tokens(sys.argv[4], parser.ns_values)
Ejemplo n.º 3
0
def main (args):

    file = open(sys.argv[1], 'r')
    chars = file.read()
    file.close()

    parser = xml_parser(chars)
    parser.parse()
    tokens = parser.tokens.keys()
    tokens.sort()

    token_util.gen_token_constants(sys.argv[2], tokens)
    token_util.gen_token_names(sys.argv[3], tokens)
    gen_namespace_tokens(sys.argv[4], parser.ns_values)
Ejemplo n.º 4
0
def main ():
    parser = optparse.OptionParser()
    parser.add_option("-t", "--schema-type", dest="schema_type", default="ooxml", metavar="TYPE",
        help="Specify the schema type.  Possible values are: 'ooxml', or 'opc'.  The default value is 'ooxml'.")
    options, args = parser.parse_args()

    if len(args) < 3:
        parser.print_help()
        sys.exit(1)

    schema_type = options.schema_type
    if not schema_type in ['opc', 'ooxml']:
        token_util.die("Unsupported schema type: %s"%schema_type)

    tokens = get_all_tokens_from_zip(args[0])
    token_util.gen_token_constants(args[1], tokens)
    token_util.gen_token_names(args[2], tokens)
Ejemplo n.º 5
0
def main ():
    parser = argparse.ArgumentParser(description=desc)
    parser.add_argument('tokenlist', nargs=1, help='plain-text file that contains a list of tokens.')
    parser.add_argument('output1', nargs=1, help="output file that will contain XML token values.")
    parser.add_argument('output2', nargs=1, help="output file that will contain XML token names.")
    args = parser.parse_args(sys.argv[1:])

    file = open(args.tokenlist[0], 'r')
    tokens = {}
    for line in file.readlines():
        token = line.strip()
        tokens[token] = True

    tokens = tokens.keys()
    tokens.sort()
    token_util.gen_token_constants(args.output1[0], tokens)
    token_util.gen_token_names(args.output2[0], tokens)

    file.close()
Ejemplo n.º 6
0
def main():
    tokens = parse_file(sys.argv[1])
    token_util.gen_token_constants(sys.argv[2], tokens)
    token_util.gen_token_names(sys.argv[3], tokens)
Ejemplo n.º 7
0
def main ():
    tokens = parse_file(sys.argv[1])
    token_util.gen_token_constants(sys.argv[2], tokens)
    token_util.gen_token_names(sys.argv[3], tokens)
Ejemplo n.º 8
0
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument(
        "--ns-file-prefix",
        type=str,
        help="file name prefix for optioal namespace constant files")
    parser.add_argument(
        "--summary-output",
        type=Path,
        help="optional output file to write collected token data summary")
    parser.add_argument(
        "--token-constants",
        type=Path,
        help="path to C++ output file where token consants are to be written to"
    )
    parser.add_argument(
        "--token-names",
        type=Path,
        help="path to C++ output file where token names are to be written to")
    parser.add_argument("odf_schema",
                        metavar="ODF-SCHEMA",
                        type=Path,
                        help="path to RNG ODF schema file")
    args = parser.parse_args()

    if not args.odf_schema.is_file():
        print(f"{args.odf_schema} is not a valid file.", file=sys.stderr)
        sys.exit(1)

    schema_content = args.odf_schema.read_text()
    parser = TokenParser(schema_content)
    parser.parse()
    tokens = parser.tokens

    parser = NSParser(schema_content)
    parser.parse()
    ns_values = parser.ns_values

    if args.summary_output:
        summary_content_buf = list()
        summary_content_buf.append("list of tokens:")

        for token in tokens:
            summary_content_buf.append(f"- \"{token}\"")

        summary_content_buf.append("list of namespaces:")

        for ns, value in ns_values:
            summary_content_buf.append(f"- {ns}: \"{value}\"")

        args.summary_output.write_text("\n".join(summary_content_buf))

    if args.token_constants:
        with open(args.token_constants, "w") as f:
            token_util.gen_token_constants(f, tokens)

    if args.token_names:
        with open(args.token_names, "w") as f:
            token_util.gen_token_names(f, tokens)

    if args.ns_file_prefix is not None:
        gen_namespace_tokens(args.ns_file_prefix, ns_values)