Skip to content

Canonical writing rules

Canonical Carve source, Markdown and plain-text targets, round trips, and escaping.

This view contains 42 of 249 active rules. Every rule remains mandatory where applicable.

Return to the rule index or read the complete formal grammar.

RulePartClause
CARVE-P11-00111EQUALITY IS MODULO ESCAPING
CARVE-P11-00211THE INVARIANT OUTRANKS THE PER-CONSTRUCT RULES
CARVE-P11-00311A FLATTEN PRESERVES THE BOUNDARY IT DISSOLVES
CARVE-P11-00411A WRAPPER ITS OWN CONTENT SPELLS AWAY IS A DECLARED CEILING
CARVE-P11-00511WRAPPER LOSS IS THE ONLY EQUALITY CARVE-OUT
CARVE-P11-00611THE ESCAPING RULE
CARVE-P11-00711ESCAPE MINIMALITY STILL APPLIES INSIDE AN ESCALATED UNIT
CARVE-P11-00811THE WRITER DOES NOT SUBSTITUTE ONE CONSTRUCT FOR ANOTHER
CARVE-P11-00911THE SCOPE OF AN ESCALATION IS THE SMALLEST UNIT THAT FAILS
CARVE-P11-01011SEARCH COST BELONGS TO THE STRATEGY, NOT THE OUTPUT
CARVE-P11-01111A FRONTMATTER OPENER IS WRITTEN ---yaml
CARVE-P11-01211A VALUE-LESS ATTRIBUTE IS WRITTEN AS A BOOLEAN
CARVE-P11-01311A CODE FENCE OPENER IS WRITTEN GLUED TO ITS INFO STRING
CARVE-P11-01411A TABLE CELL'S CONTENT IS PADDED
CARVE-P11-01511PADDING IS NOT AN ESCAPE WHERE THE PRODUCTION ADMITS PADDING
CARVE-P11-01611NO WHITESPACE-ONLY LINE
CARVE-P11-01711THE SAME LINE DECIDES WHAT AN IMPORT KEEPS
CARVE-P11-01811AN EMPTY CONTAINER BODY IS A BLANK LINE HERE TOO
CARVE-P11-01911A FOOTNOTE DEFINITION WITH NO BLOCKS IS WRITTEN WITH THE SENTINEL {empty}
CARVE-P11-02011A LINE BLOCK'S HARD BREAK IS WRITTEN BARE ONLY WHERE THE BARE NEWLINE RE-DERIVES IT
CARVE-P11-02111A LINE WHOSE LAST NODE IS A COMMENT IS EXEMPT
CARVE-P11-02211THE MARKDOWN TARGET'S ESCAPING
CARVE-P11-02311THE MARKDOWN TARGET'S ESCAPING NARROWS ON THE LINE
CARVE-P11-02411M1e < IS ESCAPED WHEN THE EMITTED LINE WOULD READ IT AS MARKUP
CARVE-P11-02511THE MARKDOWN TARGET'S AUTHORED ESCAPE NARROWS TOO
CARVE-P11-02611THE MARKDOWN TARGET'S HARD BREAK
CARVE-P11-02711A LIST ITEM'S CONTINUATION LINES ARE ALIGNED
CARVE-P11-02811AN UNUSED DEFINITION SURVIVES THE NON-HTML TARGETS
CARVE-P11-02911A TABLE ROW KEEPS ITS OWN CELL COUNT
CARVE-P11-03011ADJACENT BLOCKS THAT WOULD MERGE KEEP THE CONTINUATION MARKER
CARVE-P11-03111MULTIPLE CARVE HEADER ROWS SURVIVE THE MARKDOWN TARGET
CARVE-P11-03211A PRESENTATION TARGET KEEPS A CAPTION, A FENCE TITLE AND A FENCE LABEL
CARVE-P11-03311A REFERENCED ABBREVIATION DEFINITION SPLITS BY TARGET
CARVE-P11-03411A COMPOSITE FIGURE SURVIVES EVERY TARGET
CARVE-P11-03511THE PLAIN-TEXT TARGET PRESERVES LIST DEPTH
CARVE-P11-03611A HARD LIST BOUNDARY IS WRITTEN AS EXACTLY THREE BLANK LINES
CARVE-P11-03711AN UNSPELLABLE BLOCK DOES NOT CANCEL THE ADJACENCY IT CANNOT SPELL
CARVE-P11-03811THE MARKDOWN TARGET'S CROSS-REFERENCES
CARVE-P11-03911A RESOLUTION RESULT ABOUT THE WRAPPER IS NOT CONTENT OF IT
CARVE-P11-04011AN EMPTY DESCRIPTION BODY IS WRITTEN WITH THE SENTINEL {empty}
CARVE-P11-04111A TASK MARKER IS WRITTEN WITH THE STATE THE AUTHOR CHOSE
CARVE-P12-04512fmt WRITES THE SOURCE SPELLING, NOT blockImage

Released under the MIT License.