# Latest

**URL:** https://discuss.prosemirror.net/latest.md?no_subcategories=false&page=2

[Latest](https://discuss.prosemirror.net/latest.md) · [Categories](https://discuss.prosemirror.net/categories.md)

**Page:** 3

---

## [Revision color for typed/pasted text](https://discuss.prosemirror.net/t/revision-color-for-typed-pasted-text/8288)

<div class="topic-metadata">

**Author:** [@K\_T](https://discuss.prosemirror.net/u/K_T)\
**Replies:** 4\
**Last updated:** [February 14, 2026, 1:41pm UTC](https://discuss.prosemirror.net/t/revision-color-for-typed-pasted-text/8288 "2026-02-14T13:41:51Z")

</div>

The simple version of what I’m doing is I want all revision done (at a certain point) to be in a single (default) color, for instance red instead of black. But the trick is that not only means typing, but also things li…

---

## [Different Backspace behavior at paragraph boundary depending on editor mode (merge vs delete last char)](https://discuss.prosemirror.net/t/different-backspace-behavior-at-paragraph-boundary-depending-on-editor-mode-merge-vs-delete-last-char/8955)

<div class="topic-metadata">

**Author:** [@katto](https://discuss.prosemirror.net/u/katto)\
**Replies:** 3\
**Last updated:** [February 6, 2026, 8:34am UTC](https://discuss.prosemirror.net/t/different-backspace-behavior-at-paragraph-boundary-depending-on-editor-mode-merge-vs-delete-last-char/8955 "2026-02-06T08:34:34Z")

</div>

I’m currently facing a ProseMirror behavior/design question and I’m looking for the best solution. I have a document structure like the following (two paragraphs, each paragraph has attributes such as align): { “type”…

---

## [Inline decoration on Android with word prediction enabled](https://discuss.prosemirror.net/t/inline-decoration-on-android-with-word-prediction-enabled/3307)

<div class="topic-metadata">

**Author:** [@ralc](https://discuss.prosemirror.net/u/ralc)\
**Replies:** 3\
**Last updated:** [February 6, 2026, 6:24am UTC](https://discuss.prosemirror.net/t/inline-decoration-on-android-with-word-prediction-enabled/3307 "2026-02-06T06:24:51Z")

</div>

Hello, I ran across the following issue. I made a plugin that helps me insert emoticons when the user types something like ‘:\[a-z\]’. I have a state field that determines when the emoticon hint should appear and disappea…

---

## [Block-based schema for a document](https://discuss.prosemirror.net/t/block-based-schema-for-a-document/8950)

<div class="topic-metadata">

**Author:** [@stof](https://discuss.prosemirror.net/u/stof)\
**Replies:** 6\
**Last updated:** [February 4, 2026, 12:53pm UTC](https://discuss.prosemirror.net/t/block-based-schema-for-a-document/8950 "2026-02-04T12:53:58Z")

</div>

The feature I’m building relies on having a data model with top-level blocks of a few different types: rich text, containing an HTML string with textual content with formatting (paragraphs, lists, and inline formatting…

---

## [How to get one consolidated ChangeSet from multiple snapshots](https://discuss.prosemirror.net/t/how-to-get-one-consolidated-changeset-from-multiple-snapshots/8943)

<div class="topic-metadata">

**Author:** [@maitysubhasis](https://discuss.prosemirror.net/u/maitysubhasis)\
**Replies:** 6\
**Last updated:** [February 4, 2026, 2:36am UTC](https://discuss.prosemirror.net/t/how-to-get-one-consolidated-changeset-from-multiple-snapshots/8943 "2026-02-04T02:36:16Z")

</div>

I’m working with ProseMirror’s ChangeSet to track document changes across time. I don’t just have an initial snapshot and a final document. Instead, I have: An initial document snapshot D0 Multiple intermediate sn…

---

## [How to get changed range on transaction.](https://discuss.prosemirror.net/t/how-to-get-changed-range-on-transaction/8941)

<div class="topic-metadata">

**Author:** [@maitysubhasis](https://discuss.prosemirror.net/u/maitysubhasis)\
**Replies:** 2\
**Last updated:** [January 26, 2026, 7:37pm UTC](https://discuss.prosemirror.net/t/how-to-get-changed-range-on-transaction/8941 "2026-01-26T19:37:25Z")

</div>

In ProseMirror many times plugins may need to know the changed regions to update it’s internal state. For example tiptap-unique-id extension uses findChildrenInRange to get a list of ranges to get the changed nodes. In o…

---

## [JS forced reflow delays in plugins](https://discuss.prosemirror.net/t/js-forced-reflow-delays-in-plugins/8942)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 2\
**Last updated:** [January 22, 2026, 4:49pm UTC](https://discuss.prosemirror.net/t/js-forced-reflow-delays-in-plugins/8942 "2026-01-22T16:49:09Z")

</div>

In my plugins (such as tooltips and the like), I both get element bounding boxes as well as moving around elements within the DOM (like repositioning the tooltips), which is causing a big slowdown as it seems the DOM has…

---

## [Reset history plugin state](https://discuss.prosemirror.net/t/reset-history-plugin-state/1883)

<div class="topic-metadata">

**Author:** [@JCHollett](https://discuss.prosemirror.net/u/JCHollett)\
**Replies:** 7\
**Last updated:** [January 22, 2026, 9:29am UTC](https://discuss.prosemirror.net/t/reset-history-plugin-state/1883 "2026-01-22T09:29:41Z")

</div>

Hi, I’m sure this is a trivial question but, I’m wondering if I’m missing something here. Is there a way to completely reset the historystate to the init state based on the prosemirror-history module? Or is that impossib…

---

## [Reset (some) node attributes when split (paragraph)](https://discuss.prosemirror.net/t/reset-some-node-attributes-when-split-paragraph/3471)

<div class="topic-metadata">

**Author:** [@romgere](https://discuss.prosemirror.net/u/romgere)\
**Replies:** 3\
**Last updated:** [January 20, 2026, 5:33pm UTC](https://discuss.prosemirror.net/t/reset-some-node-attributes-when-split-paragraph/3471 "2026-01-20T17:33:10Z")

</div>

Hi, Is there a way to reset all or some node attribute when the node is split? My issue concerns paragraphs with id attribute (use for internal links). When the cursor is not at the end of a paragraph & user hit ENTER,…

---

## [Scroll Into View not right for blank paragraphs](https://discuss.prosemirror.net/t/scroll-into-view-not-right-for-blank-paragraphs/8938)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 2\
**Last updated:** [January 19, 2026, 8:19pm UTC](https://discuss.prosemirror.net/t/scroll-into-view-not-right-for-blank-paragraphs/8938 "2026-01-19T20:19:41Z")

</div>

I have made use of the scroll-margin css property to get my PM editor to scroll the bottom or top so that the paragraph being edited is not at the very very edge (top or bottom) of the editor div. For the most part it i…

---

## [View updater fails to reuse nodes when 3+ widgets are removed (syncToMarks lookahead)](https://discuss.prosemirror.net/t/view-updater-fails-to-reuse-nodes-when-3-widgets-are-removed-synctomarks-lookahead/8935)

<div class="topic-metadata">

**Author:** [@ashleylamont](https://discuss.prosemirror.net/u/ashleylamont)\
**Replies:** 2\
**Last updated:** [January 15, 2026, 9:51pm UTC](https://discuss.prosemirror.net/t/view-updater-fails-to-reuse-nodes-when-3-widgets-are-removed-synctomarks-lookahead/8935 "2026-01-15T21:51:53Z")

</div>

Hi, I’ve run into a weird edge-case where NodeViews are being unnecessarily destroyed and recreated during updates. I’ve traced this to the lookahead logic in ViewTreeUpdater.syncToMarks from prosemirror-view. When a …

---

## [New ProseMirror-based web component](https://discuss.prosemirror.net/t/new-prosemirror-based-web-component/8932)

<div class="topic-metadata">

**Author:** [@stevengharris](https://discuss.prosemirror.net/u/stevengharris)\
**Replies:** 0\
**Last updated:** [January 12, 2026, 6:21pm UTC](https://discuss.prosemirror.net/t/new-prosemirror-based-web-component/8932 "2026-01-12T18:21:13Z")

</div>

I released a new ProseMirror-based web component and API for WYSIWYG HTML editing. I’ve used earlier versions of this editor in some Swift projects for years, but the web component packaging and exposing all the customiz…

---

## [Updating keymap for existing document](https://discuss.prosemirror.net/t/updating-keymap-for-existing-document/8931)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 1\
**Last updated:** [January 9, 2026, 8:59pm UTC](https://discuss.prosemirror.net/t/updating-keymap-for-existing-document/8931 "2026-01-09T20:59:49Z")

</div>

Curious about the simplest process for replacing the current keymap with an updated version. I allow my users to change the shortcut keys for various commands, and I want to change the keymap to the new shortcuts. I ge…

---

## [View plugin coordsAtPos not accurate on first load](https://discuss.prosemirror.net/t/view-plugin-coordsatpos-not-accurate-on-first-load/8912)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 4\
**Last updated:** [January 9, 2026, 4:05pm UTC](https://discuss.prosemirror.net/t/view-plugin-coordsatpos-not-accurate-on-first-load/8912 "2026-01-09T16:05:37Z")

</div>

I have a view plugin that displays little icons to the left of certain paragraphs, but if I clear my browser cache (Chrome/Windows) and reload the page (which autoloads the document into the editor), my icons are initial…

---

## [Prosemirror integration with next.js](https://discuss.prosemirror.net/t/prosemirror-integration-with-next-js/8924)

<div class="topic-metadata">

**Author:** [@shiningthoughts17-pi](https://discuss.prosemirror.net/u/shiningthoughts17-pi)\
**Replies:** 0\
**Last updated:** [January 8, 2026, 8:36am UTC](https://discuss.prosemirror.net/t/prosemirror-integration-with-next-js/8924 "2026-01-08T08:36:51Z")

</div>

When I am initialzing the doc content and parsing the markdown content with defaultMarkdownParser.. none of the formatting works related to bullets and orderlisting.. Please help to fix this issue

---

## [Get number of replacements after replaceAll](https://discuss.prosemirror.net/t/get-number-of-replacements-after-replaceall/8921)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 5\
**Last updated:** [January 6, 2026, 5:03pm UTC](https://discuss.prosemirror.net/t/get-number-of-replacements-after-replaceall/8921 "2026-01-06T17:03:12Z")

</div>

With the Prose Mirror search module, I was wondering how to easily get the number of replacements when I perform a replace all. It works just fine, but I would like to tell the user how many instances were replaced, whe…

---

## [Example code for Prose Mirror search?](https://discuss.prosemirror.net/t/example-code-for-prose-mirror-search/8893)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 10\
**Last updated:** [January 6, 2026, 4:44pm UTC](https://discuss.prosemirror.net/t/example-code-for-prose-mirror-search/8893 "2026-01-06T16:44:53Z")

</div>

I am trying to integrate the Prose Mirror search code into my editor, but I’m having a bit of a tough time, could use a bit of guidance. I am currently adding the search plugin (with no parameters) in my plugins array w…

---

## [(help needed) \`Shift+Enter\` for hard\_break is creating invalidated transactions](https://discuss.prosemirror.net/t/help-needed-shift-enter-for-hard-break-is-creating-invalidated-transactions/8920)

<div class="topic-metadata">

**Author:** [@rohitt-gupta](https://discuss.prosemirror.net/u/rohitt-gupta)\
**Replies:** 2\
**Last updated:** [January 6, 2026, 3:42pm UTC](https://discuss.prosemirror.net/t/help-needed-shift-enter-for-hard-break-is-creating-invalidated-transactions/8920 "2026-01-06T15:42:38Z")

</div>

TL;DR: Shift+Enter hard\_break in list items causes content deletion on subsequent typing I have a requirement where i am wrapping everything into a custom block which can have one or multiple nodes. Custom schema wit…

---

## [Spell checker/Thesaurus](https://discuss.prosemirror.net/t/spell-checker-thesaurus/8915)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 2\
**Last updated:** [January 5, 2026, 12:12pm UTC](https://discuss.prosemirror.net/t/spell-checker-thesaurus/8915 "2026-01-05T12:12:22Z")

</div>

I just noticed my editor is not underlining misspelled words with red from Chrome, is there a setting I need to set to make the native spell browser checker work? I did try the following in my new EditorView call (as I …

---

## [A new text editor with pagination](https://discuss.prosemirror.net/t/a-new-text-editor-with-pagination/6667)

<div class="topic-metadata">

**Author:** [@IgorMadeira](https://discuss.prosemirror.net/u/IgorMadeira)\
**Replies:** 30\
**Last updated:** [January 2, 2026, 2:50pm UTC](https://discuss.prosemirror.net/t/a-new-text-editor-with-pagination/6667 "2026-01-02T14:50:18Z")

</div>

Hello, I’m excited to share a project I’ve been working on for a while. But firstly, I’d like to thank Marijn Haverbeke for his wonderful work with ProseMirror. The editor’s name is Badon Writer, and it comes with a co…

---

## [How to override copy behavior (plain text)](https://discuss.prosemirror.net/t/how-to-override-copy-behavior-plain-text/8911)

<div class="topic-metadata">

**Author:** [@piszczu4](https://discuss.prosemirror.net/u/piszczu4)\
**Replies:** 0\
**Last updated:** [December 31, 2025, 2:19pm UTC](https://discuss.prosemirror.net/t/how-to-override-copy-behavior-plain-text/8911 "2025-12-31T14:19:36Z")

</div>

Hi, I have the following Tiptap extension (node): export const MathConcept = Node.create({ name: "mathConcept", inline: true, group: "inline", selectable: true, draggable: true, addAttributes: () =\> { r…

---

## [how to setBlockType with a node which should have a child](https://discuss.prosemirror.net/t/how-to-setblocktype-with-a-node-which-should-have-a-child/8907)

<div class="topic-metadata">

**Author:** [@iobuffer](https://discuss.prosemirror.net/u/iobuffer)\
**Replies:** 1\
**Last updated:** [December 28, 2025, 10:54am UTC](https://discuss.prosemirror.net/t/how-to-setblocktype-with-a-node-which-should-have-a-child/8907 "2025-12-28T10:54:15Z")

</div>

my schema like { name: 'customCard' content: 'card+' } { name: 'card', content: 'text\*' } if i want replace Paragraph with customCard.create(null, card.create()),i use setBlockType,but this method only accpet …

---

## [Non-inline mark](https://discuss.prosemirror.net/t/non-inline-mark/8902)

<div class="topic-metadata">

**Author:** [@ocavue](https://discuss.prosemirror.net/u/ocavue)\
**Replies:** 1\
**Last updated:** [December 27, 2025, 8:13am UTC](https://discuss.prosemirror.net/t/non-inline-mark/8902 "2025-12-27T08:13:48Z")

</div>

MarkSpec.toDOM() accepts an inline: boolean argument. According to the documentation quoted below, it’s true in “typical” cases: marks does the same for mark names, but also gets an argument that tells it whether the m…

---

## [Inline styles not showing up anymore](https://discuss.prosemirror.net/t/inline-styles-not-showing-up-anymore/8901)

<div class="topic-metadata">

**Author:** [@inuyasha90](https://discuss.prosemirror.net/u/inuyasha90)\
**Replies:** 1\
**Last updated:** [December 26, 2025, 7:38pm UTC](https://discuss.prosemirror.net/t/inline-styles-not-showing-up-anymore/8901 "2025-12-26T19:38:36Z")

</div>

Good afternoon, After upgrading prosemirror-model to 1.25.2+ I’m seeing an issue with some inline styles I was adding to the nodes. The AI is telling me that: What the prosemirror-model 1.25.2 change does: Before (1.2…

---

## [Advice on editor collaborative solutions](https://discuss.prosemirror.net/t/advice-on-editor-collaborative-solutions/8898)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 1\
**Last updated:** [December 25, 2025, 1:11pm UTC](https://discuss.prosemirror.net/t/advice-on-editor-collaborative-solutions/8898 "2025-12-25T13:11:51Z")

</div>

I just wanted to ask the community for advice and/or suggestions for the smartest method to turn my editor from stand-alone on a local computer to cloud-based multi-user collaborative. My implementation is pure Prose Mir…

---

## [Scroll into view after decorations applied](https://discuss.prosemirror.net/t/scroll-into-view-after-decorations-applied/8892)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 2\
**Last updated:** [December 21, 2025, 1:27pm UTC](https://discuss.prosemirror.net/t/scroll-into-view-after-decorations-applied/8892 "2025-12-21T13:27:43Z")

</div>

Quick question: I need my scrollintoview call to be done AFTER all my decorations have been applied as they affect the DOM and have their own height, as they are inserted into the DOM. Currently I tried calling the scr…

---

## [Using React Transitions for low priority text editor updates](https://discuss.prosemirror.net/t/using-react-transitions-for-low-priority-text-editor-updates/8891)

<div class="topic-metadata">

**Author:** [@SMores](https://discuss.prosemirror.net/u/SMores)\
**Replies:** 1\
**Last updated:** [December 19, 2025, 1:05pm UTC](https://discuss.prosemirror.net/t/using-react-transitions-for-low-priority-text-editor-updates/8891 "2025-12-19T13:05:32Z")

</div>

---

## [Creating an input rule to change an attribute](https://discuss.prosemirror.net/t/creating-an-input-rule-to-change-an-attribute/8890)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 6\
**Last updated:** [December 17, 2025, 3:03pm UTC](https://discuss.prosemirror.net/t/creating-an-input-rule-to-change-an-attribute/8890 "2025-12-17T15:03:21Z")

</div>

I know this should be simple, creating wrapping input rules, I just can’t seem to get it to work and could use advice on what I messed up. From my code (names changed to keep it simple), the following rule should look f…

---

## [How can I export the document content to docx? I have a custom view node in it](https://discuss.prosemirror.net/t/how-can-i-export-the-document-content-to-docx-i-have-a-custom-view-node-in-it/6375)

<div class="topic-metadata">

**Author:** [@xiangshu233](https://discuss.prosemirror.net/u/xiangshu233)\
**Replies:** 3\
**Last updated:** [December 17, 2025, 11:58am UTC](https://discuss.prosemirror.net/t/how-can-i-export-the-document-content-to-docx-i-have-a-custom-view-node-in-it/6375 "2025-12-17T11:58:54Z")

</div>

I am using tiptap vue3 to develop a document editor. Now I have a problem about how to export my document content. I have written many custom node views. When I use getHTML() to get the html, it does not return the conte…

---

## [Pasting similar nodes with different attributes - what is considered?](https://discuss.prosemirror.net/t/pasting-similar-nodes-with-different-attributes-what-is-considered/8889)

<div class="topic-metadata">

**Author:** [@bencahan](https://discuss.prosemirror.net/u/bencahan)\
**Replies:** 4\
**Last updated:** [December 16, 2025, 4:45pm UTC](https://discuss.prosemirror.net/t/pasting-similar-nodes-with-different-attributes-what-is-considered/8889 "2025-12-16T16:45:45Z")

</div>

I am wondering if the paste logic in Prose Mirror only takes into account the schema node type when determining whether to add a pasted node into the current node at the spot of the paste, or if it also takes into accoun…

[Previous page](https://discuss.prosemirror.net/latest.md?no_subcategories=false&page=1)

[Next page](https://discuss.prosemirror.net/latest.md?no_subcategories=false&page=3)
