Replies: 1 comment 2 replies
|
When the Markdown syntax adopted by Marp needs to be referred to, we currently call it "Marp Markdown". Similarly, when describing the Marpit syntax, we call it "Marpit Markdown". At this moment, we do not see significant benefits in redefining these names, so we are not actively pursuing that. While giving the syntax a unique name sounds reasonable, there is a clear reason why we have not officially named it yet.
All that general consumers really need to know is "Marp". Marpit is the internal implementation of Marp and a framework for developers to create slide syntaxes. We originally want to avoid burdening general users with these technical details as much as possible, so we think it does not need to make the syntax of Marpit stand out by naming. |
Uh oh!
There was an error while loading. Please reload this page.
The observation
Marp is described as a "Markdown Presentation Ecosystem," and almost every part of that ecosystem has a clear, searchable name: Marpit (the framework), Marp Core (the converter), Marp CLI, and Marp for VS Code. Each one is a noun you can install, link to, and talk about.
There's exactly one thing that doesn't have a name: the syntax you actually write.
When we need to refer to it, we fall back on descriptions: "Markdown with Marp directives," "Marp-flavored Markdown," or just "Markdown, but with the slide stuff." Every one of those is a description, not a name. You can't
npm installit, you can't title a doc page with it, and you can't say it out loud in one word.Why it probably ended up nameless
This isn't an oversight so much as a side effect of how the project grew. Marpit was conceived as a framework first: its job is to turn Markdown into slide HTML + CSS. From that point of view the input was never "a language," it was just "the Markdown that Marpit happens to eat." So the engine got a name and the language it defines never did. Reasonable at the time; a little awkward now.
Why a missing name is a real problem
A nameless language quietly taxes everything around it:
Prior art: small languages that do have a name
This exact pattern, a focused language built on top of or by combining existing ones, is everywhere. The successful ones almost always have a name, and that name is precisely what lets their documentation open with one confident sentence:
Look at the shape of every one of those intro sentences:
You literally cannot write that sentence without a name. Right now the Marp docs can write it about Marpit-the-framework, about the CLI, about Marp Core, but not about the syntax itself, because the syntax has no subject to put at the front.
The proposal
Give the language a name. The most natural candidate is Marpit, the framework that already defines the syntax.
Reusing the framework's name for its language is not a conflict; it's the norm:
So Marpit-the-framework defining Marpit-the-language is clean and intuitive, not confusing. The framework is simply "the reference implementation of Marpit."
And with a name in hand, the documentation finally gets a real opening line:
Compare that to the current alternative:
The first is a definition. The second is an apology. The whole rest of the docs reads better when it can build on the first one.
If "Marpit" feels too overloaded
If reusing the framework's name is uncomfortable, a few alternatives keep the same spirit:
Open questions for discussion
If folks are open to it, the cheapest first step is just adopting the name in the docs: start a page with "Marpit is a language that…" and see how much clearer everything downstream reads.
All reactions