feat: add version option to markitdown CLI (#172)

Add a `--version` option to the markitdown command-line interface 
that displays the current version number.
This commit is contained in:
lumin
2024-12-21 09:24:45 +09:00
committed by GitHub
parent 73161982ff
commit cfd2319c14

View File

@@ -1,33 +1,35 @@
# SPDX-FileCopyrightText: 2024-present Adam Fourney <adamfo@microsoft.com> # SPDX-FileCopyrightText: 2024-present Adam Fourney <adamfo@microsoft.com>
# #
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
import sys
import argparse import argparse
import sys
from textwrap import dedent from textwrap import dedent
from .__about__ import __version__
from ._markitdown import MarkItDown, DocumentConverterResult from ._markitdown import MarkItDown, DocumentConverterResult
def main(): def main():
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
description="Convert various file formats to markdown.", description="Convert various file formats to markdown.",
prog="markitdown",
formatter_class=argparse.RawDescriptionHelpFormatter, formatter_class=argparse.RawDescriptionHelpFormatter,
usage=dedent( usage=dedent(
""" """
SYNTAX: SYNTAX:
markitdown <OPTIONAL: FILENAME> markitdown <OPTIONAL: FILENAME>
If FILENAME is empty, markitdown reads from stdin. If FILENAME is empty, markitdown reads from stdin.
EXAMPLE: EXAMPLE:
markitdown example.pdf markitdown example.pdf
OR OR
cat example.pdf | markitdown cat example.pdf | markitdown
OR OR
markitdown < example.pdf markitdown < example.pdf
OR to save to a file use OR to save to a file use
@@ -41,6 +43,14 @@ def main():
).strip(), ).strip(),
) )
parser.add_argument(
"-v",
"--version",
action="version",
version=f"%(prog)s {__version__}",
help="show the version number and exit",
)
parser.add_argument("filename", nargs="?") parser.add_argument("filename", nargs="?")
parser.add_argument( parser.add_argument(
"-o", "-o",