def METHOD_NAME(argv: list[str] | None = None) -> Namespace:
    """Processes command line arguments.
    Note that you don't _have to_ use the bultin argparse module for this; it
    is just what the module uses.
    Args:
        argv: A list of command line arguments, not including the binary path
            (sys.argv[0]).
    """
    parser = ArgumentParser(description="A simple text editor.")
    parser.add_argument("file", help="The file to read.", type=Path, nargs="?")
    parser.add_argument(
        "-s",
        "--string",
        help="String to edit, when file is not given.",
        metavar="STR",
    )
    parser.add_argument(
        "--highlight", action="store_true", help="Enable Python syntax highlighting."
    )
    return parser.parse_args(argv)