Mergenthaler
A blogging platform with its own markup language.
Installation
pip install git+https://github.com/jackr4bbit/mergenthaler
Features
| Feature | Status |
|---|---|
| Feed files parsing | ✅ |
| Author files parsing | ✅ |
| Post files parsing | ✅ |
| Elements: Images (both local and external), Links, Lists, Code blocks, Block quotes, and formatted text | ✅ |
| Text formats: Header, Italic, Underline, Bold, and Strikethrough | ✅ |
| Static site generator | ✅ |
| Server (automatically updates for new/edited posts/authors) | ✅ |
| Syntax checker | ✅ |
| Custom site themes | 🛠️ |
| Plugins | 🛠️ |
| RSS | ⏳ |
| Markdown to Mergenthaler Markup | ⏳ |
Usage
Markup Syntax
Images
[#Alt text#][/relative/to/feed/root.png]
[#Alt text#][relative/to/this/post.png]
[#Alt text#][https://picsum.photos/200/300]
Links
[Link][https://example.com/]
Lists
- item /*one*/
- item /*two*/
Each item can use text formatting.
Code blocks
:::
Line one
Line two
:::
Block quotes
> Line 1
> Line 2
Text
Formats:
[*Header*]/*Italic*/__Underlined__<*Bold*>--Strikethrough--
Files
Feed
Feed name
Feed tagline/short description
Feed description
:Default author name or author-id
:Default author name or author-id
Author
Author name
(custom-id)
[/image.png]
#group
#group
Bio/description using Mergenthaler Markup.
A custom id is optional. If none is specified, the id will be the alphanumeric and hyphen characters in the author's name with spaces replaced with hyphens.
An image is optional and can be external, relative to the post, or relative to the feed (see the section on Markup images).
Groups are optional.
All lines can be in any order except for the name.
Mergenthaler Markup text formats (e.g. bold) may be used in the bio, but elements (images, links, lists, code blocks, block quotes, or images) may not.
Post
Post title
Subtitle/description
(custom-id)
[/image.png]
:Author name or author-id
:Author name or author-id
:Author name or author-id
DD/MM/YYYY
#tag
#tag
Content using Mergenthaler Markup.
A custom id is optional. If none is specified, the id will be the alphanumeric and hyphen characters in the post's name with spaces replaced with hyphens.
An image is optional and can be external, relative to the post, or relative to the feed (see the section on Markup images).
Authors are optional (if none are specified, it will use the default authors defined in the feed file) and can be the authors id or the author's name (which will throw an error if there are multiple authors with the same name). If an author's file isn't found, it will have their name on the post but they won't have a page of their own.
Tags are optional.
All lines can be in any order except for the title and description.
CLI
Build
mg build
Builds a static site from a Mergenthaler feed.
mg build -l LOCATION
mg build --location LOCATION
Path to the feed file or directory containing it to build from (default current working dir).
mg build -o OUTPUT
mg build --output OUTPUT
Path to the output directory (default subdir "output" of current working dir).
mg build --nodelete
If present, Mergenthaler won't delete all existing files in the output directory.
Serve
mg serve
Serves a Mergenthaler feed that updates when you update the files
mg serve -l LOCATION
mg serve --location LOCATION
Path to the feed file or directory containing it to serve from (default current working dir).
mg serve -p PORT
mg serve --port PORT
Port to listen on (default 8080).
mg serve --host HOST
The IP address to bind the server to (default 0.0.0.0).
Test
mg test.
Tests a Mergenthaler feed's syntax.
mg test -l LOCATION
mg test --location LOCATION
Path to the feed file or directory containing it to test (default current working dir).
Release files for mergenthaler 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mergenthaler-1.0.3.tar.gz | 30.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mergenthaler-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 66.2 kB
Release files / mergenthaler-1.0.3.tar.gz
| Download URL | mergenthaler-1.0.3.tar.gz |
|---|---|
| Size | 30.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b9c43cc9629b151847ff73173102bcd82b6b521fa07b259bca08fa40a0fc72e0
|
|
BLAKE2b-256 checksum How to use checksums |
8448ce8356a72d42b7444983b93e95bd22de0915d6c4e58182486b635840d425
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / mergenthaler-1.0.3-py3-none-any.whl
| Download URL | mergenthaler-1.0.3-py3-none-any.whl |
|---|---|
| Size | 35.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f85af0f0d9aa3af7547522f1ecdfd5a7130ffe2b37c1a37db07eea968113330f
|
|
BLAKE2b-256 checksum How to use checksums |
32645976d14bb9f80a42181b8224845ae98022aebeda1cd5e09a5d12df9f7ee5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|