Skip to main content

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
  • Support for inline images
    • WordPress incorrectly considers data: URIs to be dangerous in <img> and CSS url()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.)

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

This version

0.9

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bloggerer-0.9.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

bloggerer-0.9-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

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

Hashes for bloggerer-0.9.tar.gz
Algorithm Hash digest
SHA256 672bf4a05459746e4dcd098c4348e4afe0c254ee4f06cc171dce4f07cda469f7
MD5 2962967c8c2704c2677abcb6c54784fc
BLAKE2b-256 a80334e1dc27e1bc5f9709db6391d8a737cf5c73eb3230ceea7c547434d6027d

See more details on using hashes here.

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

Hashes for bloggerer-0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 832c534e20fd94dde2014dec735e3bcbf48c2b3859e155a737ef709ccbdc30b8
MD5 a11f907c52c09c15077a06ff59b7814c
BLAKE2b-256 6aa07ff690c60f437d65bd8c7e05a98e85eb9c8778d5032a30af47b4744abe8d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page