The Markua Specification
This book is 98% complete
Last updated on 2019-04-16
About the Book
Imagine you owned a magical typewriter.
When you used this magical typewriter, you wrote with fewer distractions. You didn't just write faster, you wrote better.
With your magical typewriter, you never worried about layout. The book formatted itself.
You could hit a key on your magical typewriter to create an ebook from your manuscript with one click.
All ebook formats would be created, and they'd all look good. You'd have PDF for computers, MOBI for Kindle, and EPUB for everywhere else. The book would look great on phones.
With your magical typewriter, you could publish your book before it was even done, and get feedback from readers all over the world. You could automatically share book updates with them. You would press one key on your magical typewriter to publish a new version, and all your readers would have it instantly.
With your magical typewriter, you could easily compare your current manuscript to any other version of your manuscript that had ever existed.
When the book was done, if you decided to make a print book, you could press a key on your magical typewriter to generate InDesign with one click. Your designer or publisher could use this as a starting point for producing a great looking print book.
With your magical typewriter, you'd only have to do one thing: Write.
Wouldn't it be great if such a magical typewriter existed?
It does. At Leanpub, we're building it.
But there's one requirement for this magical typewriter to exist: a simple, coherent, open source, free, plain text format for a book manuscript.
This simple format is what authors will write their books in, instead of Word. It will enable an ecosystem of tools to emerge around it.
This simple format will be the basis for the magical typewriter.
This simple format is called Markua.
This is its specification.
- The Magical Typewriter
- Note for Leanpub Authors
- What is Markua?
- How to Write a Novel in Markua
- Minimal Formatting
- Markua: Markdown for Books
- Text Formatting
- Design Goals of Markua Headings
Differences with Markdown Headings
- Setext Headings in Markdown
- atx Headings in Markdown
- Paragraphs and Blank Lines
Resource Insertion Methods
- Inserting Resources Into a Span Context
- Local Resources
- Web Resources
- Inline Resources
Resource Types and Formats
- Resource Insertion Methods
Whitespace: Spaces, Tabs and Newlines
- Single Newline = Forced Line Break
- Three or More Newlines = Two Newlines = One Blank Line
- One Blank Line Is Added When Concatenating Manuscript Files
- All Blank Lines at the Beginning and End of a File are Removed
Spaces and Tabs
- Spaces and Tabs at the Beginning of a Line are Only to Determine List Containment, and Extra Spaces are Removed
- Spaces and Tabs at the End of a Line are Removed
- Internal Spaces are Collapsed to One Space, Except At the End of Sentences
- Bulleted Lists
- In Markua, There Are No Single-Element Numbered Lists
- Numbered List Numbering Rules
- Simple Lists
- Flat Lists
- Blank Lines in Complex Lists
- Parsing of Inline Code Resources Inside List Items
- Definition Lists
Scene Breaks (
* * *)
Page Breaks (
- Supported Attributes for Blurbs
Syntactic Sugar for Specific Blurb Classes:
Using Blurbs to Center Text with
Using Extension Attributes on Blurbs to add
- Inserting Block Elements Inside Paragraphs
- Scene Breaks (
Quizzes and Exercises
- Quiz and Exercise Headings and Other Content
- An Empty Quiz or Exercise is Not an Error
- A Malformed Quiz or Exercise is an Error
- Supported Attributes on Quizzes and/or Exercises
Question Types: Multiple Choice, Multiple Selection, Fill In The Blank, Written
- Multiple Choice Questions
- Multiple Selection Questions
- Fill In The Blank Questions
- Written Questions
- Hints on Questions
- Markua Processor Behaviour
- Creating a Course or MOOC from a Markua Document
- Question Alternates
- Inline Links
- Automatic Links
Explicitly Creating Spans with
- Sometimes a Square Bracket is Just a Square Bracket
Footnotes and Endnotes
- Single Reference to Footnotes and Endnotes
- Footnotes and Endnotes Support Required for Paragraphs Only
Crosslinks and ids
- Defining an id
idWith a Crosslink
ids and Crosslinks
- Referencing Chapter, Section and Figure Heading Names and Numbers in Crosslinks
Character Substitution (
X --for X –,
- Optional Automatic Curly Quotes Outside of Code Blocks and Spans
- Placeholder Identifiers
- Span Placeholders
- Block Placeholders
- Soft Hyphen
Escaping Special Characters with Backslash (
Code Spans and Backticks (
Unicode Entities with
- Attribute List Format
- Attribute Keys
- Attribute Values
Conditional Inclusion Attributes on Headings:
- Extension Attributes
- Index Entries
- Book Section Directives
- Markua-Defined Settings
- Settings for Courses
- Origins of Markua
- Why the Name “Markua”?
- Plain Text Encoding in UTF-8
- No Inline HTML
- Markua Specification Scope
- No Canonical HTML Mapping
Differences with Markdown
- Differences with Inserting Block Elements Inside Paragraphs
- Differences with Leanpub Flavoured Markdown
- Example of Why One Blank Line Is Added When Concatenating Manuscript Files
- Markua Specification Status
- A Note For Leanpub Authors
The Leanpub 45-day 100% Happiness Guarantee
Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms...