Transforms markdown (and probably other things too) into WordPress-compatible "Custom HTML" with pandoc and additional magic.
Project description
Bloggerer: Markdown (and other things, probably) sprucer upperer
bloggerer
is a very thin wrapper around a panflute-based Pandoc filter script
that does some preprocessing magic for publishing things as (generally) HTML.
I have mainly used it for generating better-looking and more functional HTML
than WordPress' own Markdown handling, but also for some other quality-of-life
features.
Usage
$ bloggerer path/to/post.md
The resulting HTML will be located in path/to/post.md.html
and can be copied
into a WordPress "Custom HTML" block.
Features
- Handles footnotes properly
- Proper code-block formatting and syntax highlighting
- Handled by
highlight
- Handled by
- Support for inline images
- WordPress incorrectly considers
data:
URIs to be dangerous in<img>
and CSSurl()
s,bloggerer
gets around that. (Working in prod for 3+ years. Caveat emptor, this causes the HTML to blow up and you may run into WordPress' or other blogging systems' character limits.)
- WordPress incorrectly considers
Installation
Prerequisites
$ sudo apt-get install pandoc highlight
Note: If your distro has an older version of pandoc (e.g. 2.9.x), get it from https://github.com/jgm/pandoc/releases/.
$ wget https://github.com/jgm/pandoc/releases/download/<ver>/pandoc-<...>.deb
$ sudo dpkg -i ./pandoc-*.deb
Install
$ pip3 install --user bloggerer
From Source
$ git clone https://github.com/ChaosData/bloggerer && cd bloggerer
$ python3 -m pip install --user --upgrade pip setuptools
$ python3 -m pip install --user .
Packaging
$ python3 -m pip install --user wheel build
$ python3 -m build --sdist --wheel .
$ python3 -m pip install --user dist/bloggerer-*.whl
Cleaning
$ rm -rf ./build ./dist ./src/bloggerer.egg-info ./src/bloggerer/__pycache__
FAQ
Why is the first top level heading removed from the HTML?
The first top-level heading is typically the title, which handled by WordPress or other blogging things.
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
Built Distribution
File details
Details for the file bloggerer-0.9.tar.gz
.
File metadata
- Download URL: bloggerer-0.9.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 672bf4a05459746e4dcd098c4348e4afe0c254ee4f06cc171dce4f07cda469f7 |
|
MD5 | 2962967c8c2704c2677abcb6c54784fc |
|
BLAKE2b-256 | a80334e1dc27e1bc5f9709db6391d8a737cf5c73eb3230ceea7c547434d6027d |
File details
Details for the file bloggerer-0.9-py3-none-any.whl
.
File metadata
- Download URL: bloggerer-0.9-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 832c534e20fd94dde2014dec735e3bcbf48c2b3859e155a737ef709ccbdc30b8 |
|
MD5 | a11f907c52c09c15077a06ff59b7814c |
|
BLAKE2b-256 | 6aa07ff690c60f437d65bd8c7e05a98e85eb9c8778d5032a30af47b4744abe8d |