Diffdown is a real-time collaborative Markdown editor/previewer built on the AT Protocol diffdown.com
1## 6.10.2 (2026-02-06) 2 3### Bug fixes 4 5Move the selection to a less surprising place when undoing, moving the selection, redoing, then undoing again. 6 7## 6.10.1 (2025-12-17) 8 9### Bug fixes 10 11Fix a bug where `copyLineDown` would leave the cursor on the wrong line when it was at the start of the line. 12 13## 6.10.0 (2025-10-23) 14 15### New features 16 17The new `deleteGroupForwardWin` command provides by-group forward deletion using the Windows convention. 18 19## 6.9.0 (2025-10-02) 20 21### Bug fixes 22 23Prevent the default behavior of backspace and delete keys, to prevent the browser from doing anything creative when there's nothing to delete. 24 25### New features 26 27Implement new `addCursorAbove` and `addCursorBelow` commands. Bind them to Mod-Alt-ArrowUp/Down in the default keymap. 28 29## 6.8.1 (2025-03-31) 30 31### Bug fixes 32 33Fix an issue where creating a comment for a line that starts an inner language would use the comment style from the outer language. 34 35## 6.8.0 (2025-01-08) 36 37### New features 38 39The new `cursorGroupForwardWin` and `selectGroupForwardWin` commands implement Windows-style forward motion by group. 40 41## 6.7.1 (2024-10-21) 42 43### Bug fixes 44 45Change `toggleBlockCommentByLine` to not affect lines with the selection end right at their start. 46 47## 6.7.0 (2024-10-07) 48 49### Bug fixes 50 51Bind Shift-Enter to the same command as Enter in the default keymap, so that it doesn't do nothing when on an EditContext-supporting browser. 52 53### New features 54 55Add commands for by-string-index cursor motion that ignores text direction. 56 57## 6.6.2 (2024-09-17) 58 59### Bug fixes 60 61Fix an issue causing `selectParentSyntax` to not select syntax that is a direct child of the top node. 62 63Make `selectParentSyntax` return false when it doesn't change the selection. 64 65## 6.6.1 (2024-08-31) 66 67### Bug fixes 68 69Fix a bug in the undo history that would cause it to incorrectly track inverted effects when adding multiple edits to a single history event. 70 71## 6.6.0 (2024-06-04) 72 73### New features 74 75The new `toggleTabFocusMode` and `temporarilySetTabFocusMode` commands provide control over the view's tab-focus mode. 76 77The default keymap now binds Ctrl-m (Shift-Alt-m on macOS) to `toggleTabFocusMode`. 78 79## 6.5.0 (2024-04-19) 80 81### New features 82 83The `insertNewlineKeepIndent` command inserts a newline along with the same indentation as the line before. 84 85## 6.4.0 (2024-04-17) 86 87### Bug fixes 88 89Fix an issue where `deleteLine` sometimes leaves the cursor on the wrong line. 90 91### New features 92 93The new `deleteCharBackwardStrict` command just deletes a character, without further smart behavior around indentation. 94 95## 6.3.3 (2023-12-28) 96 97### Bug fixes 98 99Fix an issue causing cursor motion commands to not dispatch a transaction when the change only affects cursor associativity. 100 101## 6.3.2 (2023-11-28) 102 103### Bug fixes 104 105Fix a regression that caused `deleteCharBackward` to sometimes delete a large chunk of text. 106 107## 6.3.1 (2023-11-27) 108 109### Bug fixes 110 111When undoing, store the selection after the undone change with the redo event, so that redoing restores it. 112 113`deleteCharBackward` will no longer delete variant selector characters as separate characters. 114 115## 6.3.0 (2023-09-29) 116 117### Bug fixes 118 119Make it possible for `selectParentSyntax` to jump out of or into a syntax tree overlay. 120 121Make Cmd-Backspace and Cmd-Delete on macOS delete to the next line wrap point, not the start/end of the line. 122 123### New features 124 125The new `deleteLineBoundaryForward` and `deleteLineBoundaryBackward` commands delete to the start/end of the line or the next line wrapping point. 126 127## 6.2.5 (2023-08-26) 128 129### Bug fixes 130 131Make `insertNewlineAndIndent` properly count indentation for tabs when copying over the previous line's indentation. 132 133The various sub-word motion commands will now use `Intl.Segmenter`, when available, to stop at CJK language word boundaries. 134 135Fix a bug in `insertNewlineAndIndent` that would delete text between brackets if it had no corresponding AST node. 136 137## 6.2.4 (2023-05-03) 138 139### Bug fixes 140 141The by-subword motion commands now properly treat dashes, underscores, and similar as subword separators. 142 143## 6.2.3 (2023-04-19) 144 145### Bug fixes 146 147Block commenting the selection no longer includes indentation on the first line. 148 149## 6.2.2 (2023-03-10) 150 151### Bug fixes 152 153Fix a bug where line commenting got confused when commenting a range that crossed language boundaries. 154 155## 6.2.1 (2023-02-15) 156 157### Bug fixes 158 159Keep cursor position stable in `cursorPageUp`/`cursorPageDown` when there are panels or other scroll margins active. 160 161Make sure `toggleComment` doesn't get thrown off by local language nesting, by fetching the language data for the start of the selection line. 162 163## 6.2.0 (2023-01-18) 164 165### New features 166 167The new `joinToEvent` history configuration option allows you to provide custom logic that determines whether a new transaction is added to an existing history event. 168 169## 6.1.3 (2022-12-26) 170 171### Bug fixes 172 173Preserve selection bidi level when extending the selection, to prevent shift-selection from getting stuck in some kinds of bidirectional text. 174 175## 6.1.2 (2022-10-13) 176 177### Bug fixes 178 179Fix a bug that caused deletion commands on non-empty ranges to incorrectly return false and do nothing, causing the editor to fall back to native behavior. 180 181## 6.1.1 (2022-09-28) 182 183### Bug fixes 184 185Make sure the selection endpoints are moved out of atomic ranges when applying a deletion command to a non-empty selection. 186 187## 6.1.0 (2022-08-18) 188 189### Bug fixes 190 191Prevent native behavior on Ctrl/Cmd-ArrowLeft/ArrowRight bindings, so that browsers with odd bidi behavior won't do the wrong thing at start/end of line. 192 193Cmd-ArrowLeft/Right on macOS now moves the cursor in the direction of the arrow even in right-to-left content. 194 195### New features 196 197The new `cursorLineBoundaryLeft`/`Right` and `selectLineBoundaryLeft`/`Right` commands allow directional motion to line boundaries. 198 199## 6.0.1 (2022-06-30) 200 201### Bug fixes 202 203Announce to the screen reader when the selection is deleted. 204 205Also bind Ctrl-Shift-z to redo on Linux. 206 207## 6.0.0 (2022-06-08) 208 209### Bug fixes 210 211Fix a bug where by-page selection commands sometimes moved one line too far. 212 213## 0.20.0 (2022-04-20) 214 215### Breaking changes 216 217There is no longer a separate `commentKeymap`. Those bindings are now part of `defaultKeymap`. 218 219### Bug fixes 220 221Make `cursorPageUp` and `cursorPageDown` move by window height when the editor is higher than the window. 222 223Make sure the default behavior of Home/End is prevented, since it could produce unexpected results on macOS. 224 225### New features 226 227The exports from @codemirror/comment are now available in this package. 228 229The exports from the @codemirror/history package are now available from this package. 230 231## 0.19.8 (2022-01-26) 232 233### Bug fixes 234 235`deleteCharBackward` now removes extending characters one at a time, rather than deleting the entire glyph at once. 236 237Alt-v is no longer bound in `emacsStyleKeymap` and macOS's `standardKeymap`, because macOS doesn't bind it by default and it conflicts with some keyboard layouts. 238 239## 0.19.7 (2022-01-11) 240 241### Bug fixes 242 243Don't bind Alt-\< and Alt-> on macOS by default, since those interfere with some keyboard layouts. Make cursorPageUp/Down scroll the view to keep the cursor in place 244 245`cursorPageUp` and `cursorPageDown` now scroll the view by the amount that the cursor moved. 246 247## 0.19.6 (2021-12-10) 248 249### Bug fixes 250 251The standard keymap no longer overrides Shift-Delete, in order to allow the native behavior of that key to happen on platforms that support it. 252 253## 0.19.5 (2021-09-21) 254 255### New features 256 257Adds an `insertBlankLine` command which creates an empty line below the selection, and binds it to Mod-Enter in the default keymap. 258 259## 0.19.4 (2021-09-13) 260 261### Bug fixes 262 263Make commands that affect the editor's content check `state.readOnly` and return false when that is true. 264 265## 0.19.3 (2021-09-09) 266 267### Bug fixes 268 269Make by-line cursor motion commands move the cursor to the start/end of the document when they hit the first/last line. 270 271Fix a bug where `deleteCharForward`/`Backward` behaved incorrectly when deleting directly before or after an atomic range. 272 273## 0.19.2 (2021-08-24) 274 275### New features 276 277New commands `cursorSubwordForward`, `cursorSubwordBackward`, `selectSubwordForward`, and `selectSubwordBackward` which implement motion by camel case subword. 278 279## 0.19.1 (2021-08-11) 280 281### Bug fixes 282 283Fix incorrect versions for @lezer dependencies. 284 285## 0.19.0 (2021-08-11) 286 287### Breaking changes 288 289Change default binding for backspace to `deleteCharBackward`, drop `deleteCodePointBackward`/`Forward` from the library. 290 291`defaultTabBinding` was removed. 292 293### Bug fixes 294 295Drop Alt-d, Alt-f, and Alt-b bindings from `emacsStyleKeymap` (and thus from the default macOS bindings). 296 297`deleteCharBackward` and `deleteCharForward` now take atomic ranges into account. 298 299### New features 300 301Attach more granular user event strings to transactions. 302 303The module exports a new binding `indentWithTab` that binds tab and shift-tab to `indentMore` and `indentLess`. 304 305## 0.18.3 (2021-06-11) 306 307### Bug fixes 308 309`moveLineDown` will no longer incorrectly grow the selection. 310 311Line-based commands will no longer include lines where a range selection ends right at the start of the line. 312 313## 0.18.2 (2021-05-06) 314 315### Bug fixes 316 317Use Ctrl-l, not Alt-l, to bind `selectLine` on macOS, to avoid conflicting with special-character-insertion bindings. 318 319Make the macOS Command-ArrowLeft/Right commands behave more like their native versions. 320 321## 0.18.1 (2021-04-08) 322 323### Bug fixes 324 325Also bind Shift-Backspace and Shift-Delete in the default keymap (to do the same thing as the Shift-less binding). 326 327### New features 328 329Adds a `deleteToLineStart` command. 330 331Adds bindings for Cmd-Delete and Cmd-Backspace on macOS. 332 333## 0.18.0 (2021-03-03) 334 335### Breaking changes 336 337Update dependencies to 0.18. 338 339## 0.17.5 (2021-02-25) 340 341### Bug fixes 342 343Use Alt-l for the default `selectLine` binding, because Mod-l already has an important meaning in the browser. 344 345Make `deleteGroupBackward`/`deleteGroupForward` delete groups of whitespace when bigger than a single space. 346 347Don't change lines that have the end of a range selection directly at their start in `indentLess`, `indentMore`, and `indentSelection`. 348 349## 0.17.4 (2021-02-18) 350 351### Bug fixes 352 353Fix a bug where `deleteToLineEnd` would delete the rest of the document when at the end of a line. 354 355## 0.17.3 (2021-02-16) 356 357### Bug fixes 358 359Fix an issue where `insertNewlineAndIndent` behaved strangely with the cursor between brackets that sat on different lines. 360 361## 0.17.2 (2021-01-22) 362 363### New features 364 365The new `insertTab` command inserts a tab when nothing is selected, and defers to `indentMore` otherwise. 366 367The package now exports a `defaultTabBinding` object that provides a recommended binding for tab (if you must bind tab). 368 369## 0.17.1 (2021-01-06) 370 371### New features 372 373The package now also exports a CommonJS module. 374 375## 0.17.0 (2020-12-29) 376 377### Breaking changes 378 379First numbered release. 380