An easy-to-use Python to Markdown generator.
Project description
markdownmaker
markdownmaker is an easy-to-use minimal library to generate a Markdown document with a Python API. Actually, this document you are reading right now was generated with markdownmaker for demonstration purposes (source). Currently it uses Github Flavored Markdown but more flavors might follow.
This library was developed to aid with generating a reference for Armory3D's logic nodes, thus its feature scope is rather small and the output might have some bugs when creating complex documents. If you encounter problems, please open an issue.
Installation
markdownmaker is installed via pip:
pip install markdownmaker
Usage (API)
Import the following:
from markdownmaker.document import Document
from markdownmaker.markdownmaker import *
Then, create a document:
doc = Document()
After you finished creating the document, doc.write()
returns the Markdown source code.
Emphasis
doc.add(Paragraph(Italic("This text will be italic!")))
doc.add(Paragraph(Bold("This text will be bold!")))
doc.add(Paragraph(f"You can also combine {Bold(Italic('bold and italic text!'))}"))
This text will be italic!
This text will be bold!
You can also combine bold and italic text!
Headers
doc.add(Header("This is a header"))
with HeaderSubLevel(doc):
doc.add(Header("This is a sub-header"))
with HeaderSubLevel(doc):
doc.add(Header("This is a sub-sub-header"))
This is a header
This is a sub-header
This is a sub-sub-header
Lists
doc.add(OrderedList((
"Item 1",
"Item 2",
UnorderedList((
Bold("Sub-item A"),
Italic("Sub-item B"))),
"Item 3")))
- Item 1
- Item 2
- Sub-item A
- Sub-item B
- Item 3
Horizontal Rule
doc.add(HorizontalRule())
Links and Images
doc.add(Link(label='Go to top', url='#markdownmaker'))
doc.add(Image(url='https://gitlab.com/uploads/-/system/project/avatar/21351489/markdownmaker.png?width=40', alt_text='logo'))
Code
doc.add(CodeBlock("""import this
import __hello__""", language="python"))
doc.add(Paragraph(f"{InlineCode('Inline code')} is also supported!"))
import this
import __hello__
Inline code
is also supported!
Quotes
doc.add(Quote(f"""Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Donec et quam at eros dignissim accumsan. Aenean quis sagittis dolor. Ut justo nisl,
lobortis nec elit id, dictum ullamcorper ipsum. Fusce eu ullamcorper eros, nec
feugiat lectus.
{Italic(Bold("Albert Einstein."))}"""))
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec et quam at eros dignissim accumsan. Aenean quis sagittis dolor. Ut justo nisl, lobortis nec elit id, dictum ullamcorper ipsum. Fusce eu ullamcorper eros, nec feugiat lectus.
Albert Einstein.
License
markdownmaker is licensed under the zlib license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file markdownmaker-0.4.0.tar.gz
.
File metadata
- Download URL: markdownmaker-0.4.0.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5aa5e41f9527325280dbee2aa902000e2142a6650b5b241b1090e8fce29f1b92 |
|
MD5 | 42fe274af8dc065e862f241618426662 |
|
BLAKE2b-256 | e576e5e9edf573ab781de57295ac35d8a65e47025e52e6d0594a8a0623b7728c |
File details
Details for the file markdownmaker-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: markdownmaker-0.4.0-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e62ef5a340ab9c9ce5b73cbf85a5865921821f147a99befb247f963992304a99 |
|
MD5 | 4eff6e4c54a6da7a12bd3f10ac5444b6 |
|
BLAKE2b-256 | cfc8453c1d88c195cc5831db6fe3fcaf8ea95c93e97ddd90b8a3b2d72b0ee835 |