Simple shortcodes for Python.
Project description
shrtcodes
pip install shrtcodes
Shortcodes for Python.
Example:
A toy example.
Define our shortcodes:
# example.py
from shrtcodes import Shrtcodes
shortcodes = Shrtcodes()
# {% img src alt %} will create an image.
@shortcodes.register_inline("img")
def handle_img(src: str, alt: str) -> str:
return f'<img src="{src}" alt="{alt}"/>'
# {% repeat n %}...{% / %} will repeat a block n times.
@shortcodes.register_block("repeat")
def handle_repeat(block: str, n: str) -> str:
return block * int(n)
# we can call process_text to get the final text.
in_text = "..."
out_text = shortcodes.process_text(in_text)
# or, we can create a CLI.
shortcodes.create_cli()
python example.py --help
usage: example.py [-h] [--check_file CHECK_FILE] in_file
positional arguments:
in_file File to be processed
options:
-h, --help show this help message and exit
--check_file CHECK_FILE
Checks the output against this file and errors if
there is a diff
Write some text:
# example.txt
Hello!
{% img http://cutedogs.com/dog123.jpg "A very cute dog" %}
Foo bar baz...
{% repeat 3 %}
Woop
{% / %}
Bye!
Process the text:
python example.py example.txt
Hello!
<img src="http://cutedogs.com/dog123.jpg" alt="A very cute dog"/>
Foo bar baz...
Woop
Woop
Woop
Bye!
A more useful example would be the generation of this README itself.
See make_readme.py
and .README.template.md
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
shrtcodes-1.2.0.tar.gz
(3.4 kB
view details)
Built Distribution
File details
Details for the file shrtcodes-1.2.0.tar.gz
.
File metadata
- Download URL: shrtcodes-1.2.0.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.10.6 Darwin/22.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a7fbf4f4be4ca20dd7165d597b1bec2c4c47d1f555034add29d1e7cbe55f538 |
|
MD5 | 60d866bb39d8507a25115a481ce3e035 |
|
BLAKE2b-256 | 36ae709a568d82268e67815dee3462b3571172db69fad24fef8bbe69287c430b |
File details
Details for the file shrtcodes-1.2.0-py3-none-any.whl
.
File metadata
- Download URL: shrtcodes-1.2.0-py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.10.6 Darwin/22.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 941f665cfb1adc16ea8d4e1236c131329df072f3d63652113d3d9145f67c74d5 |
|
MD5 | 46b795d939132397b7e1224e06e7622c |
|
BLAKE2b-256 | f43d7fefd4cf56615e13782762d0f5c942fd2d9ebd02b25d7c84d3bf058164c4 |