Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Obsidian callout syntax was falling through to a plain blockquote with the
[!note]marker visible to readers. Reported by a customer publishing a technical blog from Obsidian.Fixes #1155
What changed
Markdown.
Post::Markdownrenders> [!note] Titleas<aside data-callout="note">with the title in its own<p data-callout-title>. Obsidian's full type list is supported, with aliases folded onto the type they render as (importantrenders astip,cautionaswarning) and unrecognised types falling back tonote, both matching Obsidian. Adjacent callouts separated only by a blank line are split, working around Redcarpet's Markdown.pl quote merging. Nested callouts work.Editor. Lexical only keeps elements it has a node for, so without editor support a callout was silently flattened to plain paragraphs on first save. A Lexxy extension (
app/javascript/editor/) registers callout and title nodes so callouts round-trip, and adds a toolbar picker (colour swatch per type, next to the quote button). The callout node is a Lexical shadow root, so lists, tables and headings inserted inside a callout stay inside it; a node transform keeps the title as the first child and makes block-format commands no-ops on it. Enter on an empty last line, backspace at the title start, and arrow keys at document edges all leave the callout.Styling. One definition in
lexxy-typography.cssserves the editor and published blogs. Digest emails get a coloured left border and bold title inmailer.css.Sanitisers.
aside,data-calloutanddata-callout-titleare allowlisted in ActionText andHtml::Sanitize, so callouts survive storage, exports and RSS.Behaviour changes