Djot Markup

Changelog

1.5.15

  • Changed minimum djot-php library to 0.1.28, bringing upstream parser fixes for sequential list-item attributes, numeric reference-label warnings, and nested list blocks with deeper indentation or tabs.
  • Added the Djot Markup demo video directly to the WordPress.org plugin page.
  • Fixed Markdown conversion for title-less <abbr> tags so the semantic element is preserved instead of flattened to plain text.
  • Improved translator context for strings that contain placeholders or literal syntax tokens.

1.5.14

  • Changed auto-generated heading anchor IDs to be transliterated to ASCII (e.g. “Über uns” becomes “Uber-uns”, “café” becomes “cafe”) so deep links survive being shared through chat, email, and other auto-linkers that mangle non-ASCII fragments. Note: anchors for existing non-ASCII headings change, so update any hardcoded in-page links.
  • Changed the smart-quotes default for new installs to “Auto (from site language)” so a non-English site gets the right typographic quotes out of the box. Existing sites that already saved a quote setting are unaffected.
  • Changed Mermaid to load from the bundled copy instead of an external CDN, so diagrams render without an external request (better privacy, reliability, and offline support).
  • Changed minimum djot-php library to 0.1.27.
  • Tested up to WordPress 7.0.

1.5.13

  • Fixed shell/bash code blocks flooding the error log with PCRE lookbehind compile warnings by upgrading torchlight/engine to ^1.0 (pulls phiki 2.x, which tokenizes with Oniguruma instead of PCRE)
  • Changed markdown and djot fenced code blocks to use real syntax highlighting again — the plain-text fallback was only needed to dodge phiki 1.x’s PCRE issues and is no longer required

1.5.12

  • Added visible parse-warning banner above articles for logged-in editors (line/col + suggestion)
  • Added FrontmatterExtension so YAML/TOML/JSON frontmatter at the top of a post is silently stripped
  • Added strict-mode parse error capture with lenient fallback so broken posts still render for visitors
  • Fixed inline code containing > / < rendering double-escaped when WordPress had encoded the stored content
  • Fixed tabs-to-spaces conversion in TorchlightExtension code blocks (landed after the 1.5.11 tag)

1.5.7

  • Added experimental visual editor (WYSIWYG) for Djot blocks powered by Tiptap
  • Added Experimental settings section with visual editor mode options
  • Fixed visual editor round-trip preservation for all Djot elements
  • Fixed different list types (bullet/ordered/task) colliding without blank lines

1.5.6

  • Fixed task list checkboxes stripped by wp_kses_post
  • Fixed dark mode TOC text color

1.5.5

  • Added Djot syntax highlighting for code blocks via djot-grammars
  • Fixed code block filename markers leaking into output
  • Updated php-collective/djot to 0.1.17

1.5.4

  • Fixed Torchlight line highlighting CSS selectors for annotated lines
  • Removed opinionated visual styling (blockquotes, links, tables, etc.) – let themes handle it

1.5.3

  • Fixed PHP 8.2 trait constants compatibility (Rector downgrade)

1.5.2

  • Fixed PHP 8.0 downgrade for WordPress.org compatibility

1.5.1

  • Fixed deployment: remove missing dev dependencies from distribution

1.5.0

  • Added Torchlight Engine integration for advanced code block features
  • Added inline code annotations: highlight, focus, diff (+/-), and ranges
  • Added Code Annotations panel in block editor sidebar
  • Replaced highlight.js with server-side Torchlight/Phiki

1.4.3

  • Fixed vertical spacing in highlighted code blocks

1.4.2

  • Added code block line numbers and line highlighting syntax
  • Fixed legacy wp-djot/djot blocks editability in Gutenberg

1.4.1

  • Fixed Table of Contents and heading permalinks appearing in post excerpts on archive pages

1.4.0

  • Added automatic Table of Contents generation from headings
  • Configurable TOC position (top/bottom), heading levels, and list type
  • Light and dark mode styling for TOC
  • Added heading permalinks with show-on-hover and copy-to-clipboard
  • Added locale-aware smart quotes (20 locales + Auto from site language)
  • Bumped php-collective/djot to ^0.1.13

1.3.1

  • Fixed text domain to match plugin slug (djot-markup)
  • Properly escape HTML output with wp_kses_post/wp_kses
  • Fixed block wrapper attributes escaping for Plugin Check compliance
  • Excluded non-permitted files from distribution
  • Added build script for distribution zip
  • Added markmarkmark to Contributors list

1.2.1

  • Renamed plugin to “Djot Markup” for WordPress.org compliance
  • Added ABSPATH checks to all PHP files for security
  • Prefixed global variables for WordPress coding standards compliance

1.2.0

  • Changed code prefix from wp_djot/wp-djot to wpdjot for WordPress.org compliance
  • Updated highlight.js from v11.9.0 to v11.11.1
  • Added backward compatibility for existing blocks and settings
  • Added settings migration from old option name

1.1.0

  • Comment formatting toolbar with buttons for Bold, Italic, Code, Link, Quote, and Code Block
  • Write/Preview tabs for comment toolbar with live Djot preview
  • Syntax highlighting in comment preview
  • Excerpt filter to render Djot content on archive pages
  • Support for extracting Djot content from Gutenberg blocks for excerpts
  • Fixed archive pages to properly show excerpts with “Read more” links

1.0.0

  • Initial release
  • Full Djot syntax support
  • Shortcode and content filtering
  • Admin settings page
  • Syntax highlighting with highlight.js
  • Safe mode for untrusted content
  • Template tags for theme developers

Plugin Website
Visit website

Author
markmarkmark
Version:
1.5.15
Last Updated
May 27, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 7.0
Requires PHP
8.2

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.