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,bloggerergets 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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|