Import python from markdown files.
In a file named hello_module.md
define a function. I'm escaping the fence, use a real three-tick fence.
Here is a function
``(`)python
def hello() -> str:
return "Hello"
``(`)
Generate a type stub and import using the usual syntax. generate_side_by_side_pyi
will write a .pyi
file to the file system and enable IDEs type hinting to work.
import sys
import markmodule
markmodule.generate_side_by_side_pyi("hello_module")
sys.meta_path.append(markmodule.MdFinder())
import hello_module
print(hello_module.hello())
Import with path to file.
import markmodule
markmodule.import_md("hello_module.md")
import hello_module
print(hello_module.hello())
You can use markdown:
- as a place to put module code, markmodule, this library
The do-everything-with-markdown ecosystem is surprisingly robust.
- as a Makefile alternative, mask
- as a place to put scripts, eg python's markdown-exec, or ruby's markdown_exec
- as a place to put unit tests, pytest-markdown-docs, pytest-codeblocks, and pytest-markdown
- as a string template, proof-of-concept gist
- 0.1.0 - Basic idea.
- 0.2.0 - Updates to readme
- 0.3.0 - Generates pyi and you can use
import
syntax