Title: Carve Markup
Author: markmarkmark
Published: <strong>Morso 6, 2026</strong>
Last modified: Siilto 22, 2026

---

Search plugins

![](https://ps.w.org/carve-markup/assets/banner-772x250.png?rev=3597844)

![](https://ps.w.org/carve-markup/assets/icon-256x256.png?rev=3597844)

# Carve Markup

 By [markmarkmark](https://profiles.wordpress.org/markmarkmark/)

[Download](https://downloads.wordpress.org/plugin/carve-markup.0.1.6.zip)

 * [Details](https://fuc.wordpress.org/plugins/carve-markup/#description)
 * [Reviews](https://fuc.wordpress.org/plugins/carve-markup/#reviews)
 *  [Installation](https://fuc.wordpress.org/plugins/carve-markup/#installation)
 * [Development](https://fuc.wordpress.org/plugins/carve-markup/#developers)

 [Support](https://wordpress.org/support/plugin/carve-markup/)

## Description

Carve is a post-Markdown markup language. This plugin renders Carve to HTML in WordPress,
powered by the markup-carve/carve-php engine.

Features: per-post “Render as Carve” mode, a [carve] shortcode, a Gutenberg block
with a visual (WYSIWYG) editor, comment support, content profiles, table of contents,
heading permalinks, smart quotes, Mermaid, and WP-CLI migration.

Beyond a typical markup plugin:

 * Visual editor with Write / Split / Visual / Preview tabs. Edit visually or in
   source; every change round-trips to canonical Carve, and you are only warned 
   when visual editing would change the rendered output.
 * Instant in-browser preview using the Carve JS engine (no server round-trip).
 * Paste or import Markdown, Djot, BBCode or HTML and convert to Carve in place;
   export any post as a .crv file.
 * Map typed frontmatter (yaml/json/toml) to excerpt, SEO and post meta.
 * Cache rendered HTML at save time; render via REST for headless WordPress.

## Screenshots

[⌊Editing a Carve block in the visual (WYSIWYG) editor, with the block toolbar.⌉⌊
Editing a Carve block in the visual (WYSIWYG) editor, with the block toolbar.⌉[

Editing a Carve block in the visual (WYSIWYG) editor, with the block toolbar.

[⌊Split view: Carve source on the left, live preview on the right.⌉⌊Split view: 
Carve source on the left, live preview on the right.⌉[

Split view: Carve source on the left, live preview on the right.

[⌊The rendered post on the front end.⌉⌊The rendered post on the front end.⌉[

The rendered post on the front end.

[⌊The Carve Markup settings screen.⌉⌊The Carve Markup settings screen.⌉[

The Carve Markup settings screen.

## Blocks

This plugin provides 2 blocks.

 *   Carve Write Carve markup with a live in-browser preview.
 *   Carve Slides Turn Carve markup into a keyboard-friendly slide deck.

## Installation

 1. In your dashboard go to Plugins -> Add New, search for “Carve Markup”, then install
    and activate. Or upload the plugin ZIP under Plugins -> Add New -> Upload Plugin.
 2. Configure under Settings -> Carve Markup.

Installing from source (GitHub) instead? Run `composer install --no-dev`, optionally`
npm install && npm run build` for the in-browser preview, then activate.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Carve Markup” is open source software. The following people have contributed to
this plugin.

Contributors

 *   [ markmarkmark ](https://profiles.wordpress.org/markmarkmark/)

[Translate “Carve Markup” into your language.](https://translate.wordpress.org/projects/wp-plugins/carve-markup)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/carve-markup/), check
out the [SVN repository](https://plugins.svn.wordpress.org/carve-markup/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/carve-markup/) by
[RSS](https://plugins.trac.wordpress.org/log/carve-markup/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.1.6

 * New: include directives expand behind the `unfiltered_html` capability – a post
   expands them only if the user who last saved it held it, a preview of a saved
   post follows the post’s stored trust bit, and a new `include_root` setting names
   the containment root.
 * New: import and paste conversions retain version 2 fidelity reports; the block
   editor shows findings, imported posts keep an audit report, and bulk migration
   requires review for non-lossless results.
 * New: a `{.diff}` code fence renders as a diff overlay instead of ordinary highlighted
   code.
 * New: the visual editor supports the structured inline editors from carve-grammars,
   so comment, literal, and raw-inline payloads are editable in place.
 * Changed: bulk and CLI migration require `--force` for unverified Markdown as 
   well as degraded or dropped results, and show the findings first.
 * Changed: bundled the carve-php 0.1.9 and carve-grammars 0.1.9 engines (from 0.1.7
   and v0.1.6), which add include expansion and the version 2 fidelity reports, 
   change how the Markdown target spells emphasis and strike, and change several
   shapes the Carve writer emits; documents using those constructs can render differently
   and more correctly.

#### 0.1.5

 * New: native block-editor blocks for admonitions, code groups, and tables with
   spans, each retaining copyable Carve source and a server-rendered preview.
 * New: Carve excerpts, source viewing, and `.crv` exports now include focused native
   blocks and slide blocks, including those nested inside Groups or Columns.
 * Changed: improved Carve split editing and switched the editor to native browser
   fullscreen.
 * Changed: bundled the carve-php 0.1.7 engine (and carve-grammars v0.1.6), a parser-
   correctness pass on how nested containers own the blocks written beneath them;
   documents mixing quotes, lists, description bodies, and footnote bodies can render
   differently and more correctly.
 * Fixed: visual editing no longer overwrites a newer block value after Undo, a 
   revision restore, or another editor changing the source during the session.
 * Security: bound authenticated REST rendering to one megabyte by default, adjustable
   with the `wpcarve_render_max_bytes` filter.

#### 0.1.4

 * New: source-first Carve Documents (Posts -> Add Carve Document) store the whole
   post body as raw `.crv`, with Write / Split / Preview views, a formatting toolbar,`.
   crv` download, and lossless conversion to and from a Gutenberg Carve block.
 * New: opt-in “Written with Carve” article footer, plus independent inline viewing
   and lossless `.crv` download of the original public post source, with site defaults
   and per-post overrides.
 * Changed: bundled the latest carve-php development engine for the upcoming release,
   including correct omission of an external link target when new-tab behavior is
   disabled.

#### 0.1.3

 * New: Carve Workbench document health diagnostics, heading navigation, searchable
   commands, and semantic changes since the last save.
 * New: per-block CSL-JSON bibliographies with numbered or author-date citations,
   unresolved-key diagnostics, references, and backlinks.
 * Changed: refreshed release dependencies and removed the local Phiki offset patch
   now that Phiki 2.2.1 contains the fix upstream.
 * New: optional dark-mode code theme (the `torchlight_theme_dark` setting) – code
   blocks render both palettes and switch by the visitor’s color scheme, with a 
   site theme toggle winning over the OS in both directions.
 * Fixed: Mermaid diagrams render in the effective color scheme and re-render on
   scheme changes, without the “Syntax error in text” a race with the vendor auto-
   run could cause.
 * Fixed: all dark-mode surface styles (admonitions, tabs, code groups, TOC boxes,
   comment tabs) follow a site theme toggle in both directions, not only the OS 
   preference.
 * Fixed: carve code-fence highlighting ships dark palettes (no light-theme colors
   on dark backgrounds), closing inline delimiters keep their color, underlined 
   text is styled again, and the overlay now covers every construct.
 * Fixed: pasting Carve no longer offers a bogus “convert from Markdown” prompt,
   and the block excerpt renders from the Carve source instead of leaking raw block
   markup onto archive pages.
 * Fixed: code-group tab strips follow the theme in dark mode; the phiki offset 
   patcher fails loudly on read/write errors; local assets cache-bust by file mtime.

#### 0.1.2

 * New: bulk migration screen (Tools -> Carve Migrate) converts existing posts to
   Carve without WP-CLI; the list is a dry-run preview.
 * New: opt-in diagram export – hover a rendered diagram to Copy SVG or Download
   it (SVG, or PNG for Chart.js/Vega-Lite). Enable under Settings -> Code & diagrams.
 * Security: the public comment-preview endpoint is now gated and per-IP rate-limited;
   the paste-ingest endpoint rejects oversized input.
 * Fixed: changing a rendering setting (table of contents, smart quotes, theme, 
   diagram toggles) now refreshes cached posts instead of serving stale HTML.
 * Fixed: [carve] shortcode fence titles such as ::: tab “Overview” keep their quotes
   and parse correctly.
 * Fixed: admonitions with a custom title keep their per-type icon.
 * Fixed: the Write-mode source field no longer grows past the viewport, keeping
   the mode tabs reachable.
 * Changed: the front-end stylesheet loads only on pages that actually render Carve.
 * Changed: minimum WordPress raised to 6.3 (blocks use Block API v3).

#### 0.1.1

 * Fixed content tabs and code groups: added the missing tab styles and preserved
   the radio group name through sanitization, so panels switch correctly.
 * Inline code now has a background and images are constrained to their container
   width.
 * The table of contents renders as a collapsible disclosure (closed by default,
   opens on click).
 * The block’s live preview now renders tabs, details, spoilers and code groups 
   as interactive widgets, matching the published output.

#### 0.1.0

 * Initial release: render Carve in posts, pages and comments; [carve] shortcode
   and carve/markup + carve/slides blocks.
 * Visual (WYSIWYG) editor with Write / Split / Visual / Preview tabs, a unified
   toolbar, an in-block code-language picker and keyboard shortcuts.
 * Import Markdown / Djot / BBCode / HTML and export posts as .crv.
 * Live in-browser preview, frontmatter-to-meta, content profiles, table of contents,
   heading permalinks, smart quotes, diagram renderers, media embeds, bundled syntax
   highlighting, render caching and a REST endpoint.

## Meta

 *  Version **0.1.6**
 *  Last updated **6 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.3 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 8.2 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/carve-markup/)
 * Tags
 * [djot](https://fuc.wordpress.org/plugins/tags/djot/)[editor](https://fuc.wordpress.org/plugins/tags/editor/)
   [markdown](https://fuc.wordpress.org/plugins/tags/markdown/)[markup](https://fuc.wordpress.org/plugins/tags/markup/)
 *  [Advanced View](https://fuc.wordpress.org/plugins/carve-markup/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/carve-markup/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/carve-markup/reviews/)

## Contributors

 *   [ markmarkmark ](https://profiles.wordpress.org/markmarkmark/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/carve-markup/)