Skip to content

Commit 269f61d

Browse files
committed
Add uvx support and fix newline handling
1 parent 640b411 commit 269f61d

File tree

3 files changed

+22
-0
lines changed

3 files changed

+22
-0
lines changed

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ values = parser.parse_args()
3737
```
3838

3939
Run `argmark -f sample_argparse.py` and it would generate:
40+
41+
Alternatively, with [uv](https://github.com/astral-sh/uv) installed you can run:
42+
43+
```bash
44+
uvx argmark -f sample_argparse.py
45+
```
46+
4047
```markdown
4148

4249
sample_argparse.py

argmark/argmark.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ def _create_md_file_object(parser: _argparse.ArgumentParser) -> MdUtils:
2020
else:
2121
file_name_base = os.path.splitext(parser.prog)[0]
2222
md_file = MdUtils(file_name=file_name_base, title=parser.prog)
23+
24+
if parser.prog and not parser.prog.endswith(".py") and md_file.title.startswith("\n"):
25+
md_file.title = md_file.title.lstrip("\n")
26+
2327
return md_file
2428

2529
def _add_parser_description(md_file: MdUtils, parser: _argparse.ArgumentParser) -> None:
@@ -215,6 +219,11 @@ def md_help(parser: _argparse.ArgumentParser) -> None:
215219

216220
md_file.create_md_file()
217221

222+
md_path = md_file.file_name if md_file.file_name.endswith(".md") else md_file.file_name + ".md"
223+
with open(md_path, "a", encoding="utf-8") as f:
224+
if not open(md_path, "rb").read().endswith(b"\n"):
225+
f.write("\n")
226+
218227
def main():
219228
script_argv = [arg for arg in sys.argv[1:] if arg != '--']
220229
parser = _argparse.ArgumentParser(

pyproject.toml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,9 @@ Homepage = "https://github.com/devanshkv/argmark"
3131

3232
[project.scripts]
3333
argmark = "argmark.argmark:main"
34+
35+
[tool.uv]
36+
managed = true
37+
38+
[tool.uv.sources]
39+
argmark = { path = ".", editable = true }

0 commit comments

Comments
 (0)