Replies: 3 comments
-
|
c.f. (Historical) discussion about moving the default Markdown to CommonMark, (as we are already installing a CommonMark parser with |
Beta Was this translation helpful? Give feedback.
-
|
Two initial thoughts:
The combination is Pelican has a somewhat distinct flavour of Markdown in practice. Changing the Markdown flavour runs the risk of introducing subtle rendering changes. For what it's worth, Pelican supports ReST out of the box, but requires additional downloads to support Markdown. |
Beta Was this translation helpful? Give feedback.
-
|
As for this proposal, on one hand, supporting MyST (or other additional parsers) seems fine. However, it would increase the maintenance burden as well. I'm also cautious about moving to another "special" Markdown flavour... CommonMark has done a good job of marketing themselves as the "final Markdown", but I still find myself reaching for extensions when using CommonMark. Moving to Markdown would have the same possible issues with rendering changes, but would, in theory, make Pelican posts more likely to be directly useful in other "Markdown" consuming applications (like Obsidian). |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
The top line proposal is what it says on the tin. I'd like to consider adopting MyST as the default markdown format for Pelican 5. A major version bump is reasonable, as it would change the parsing handling of .md files in a way that would require explicit modification.
For reference, here is the MyST project's documentation
Why should we do this?
MyST is a more metadata-friendly CommonMark markdown format, with support for many of the docutils-derived capabilities that are currently only really available to RST articles in Pelican. While pymarkdown supports extensions as well, MyST provides a more cohesive set of functions out of the box.
How should we do this?
My recommendation is to put it into core with two modes in the 4.x stream: With
.mystsupport by default, and.mdsupport as a configurable option.Configuration
During the 4.x series, the default
MARKDOWNsettings dict would be retained as configuration for the current markdown, and a newMYSTsettings dict would be added.After 5.0 settings would prefer
MYSTif present, and useMARKDOWNto configure myst if noMYSTblock is present. No settings merging would occur, to avoid confusion in upgrade scenarios. If usingMARKDOWNforMYST, thenLEGACY_MARKDOWNwill be used for the older parser.Content Upgrades
No automated content upgrades would take place.
Retaining the legacy markdown reader
I think we should do so, to provide an off-ramp for iterative migration of existing markdown blogs.
Prior Art
Beta Was this translation helpful? Give feedback.
All reactions