From 22fccdee4e6aac17ddb463c28b0b7c912394416e Mon Sep 17 00:00:00 2001 From: cagnusmarlsen <0arunabh30@gmail.com> Date: Mon, 26 Feb 2024 18:42:34 +0530 Subject: [PATCH 1/3] #9980 - Support Ctrl+Enter and Cmd+Enter keyboard shortcuts --- .../gui/NoteEditor/NoteBody/CodeMirror/utils/useKeymap.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/app-desktop/gui/NoteEditor/NoteBody/CodeMirror/utils/useKeymap.ts b/packages/app-desktop/gui/NoteEditor/NoteBody/CodeMirror/utils/useKeymap.ts index 689067f79a5..ae0cfc4b0e0 100644 --- a/packages/app-desktop/gui/NoteEditor/NoteBody/CodeMirror/utils/useKeymap.ts +++ b/packages/app-desktop/gui/NoteEditor/NoteBody/CodeMirror/utils/useKeymap.ts @@ -145,6 +145,7 @@ export default function useKeymap(CodeMirror: any) { 'Alt-Right': 'goLineEnd', 'Ctrl-Backspace': 'delGroupBefore', 'Ctrl-Delete': 'delGroupAfter', + 'Ctrl-Enter': 'insertLineAfter', 'fallthrough': 'basic', }; @@ -167,6 +168,7 @@ export default function useKeymap(CodeMirror: any) { 'Alt-Backspace': 'delGroupBefore', 'Alt-Delete': 'delGroupAfter', 'Cmd-Backspace': 'delWrappedLineLeft', + 'Cmd-Enter': 'insertLineAfter', 'fallthrough': 'basic', }; From 9a79e6357401af6649dccb23960f66c26cc86062 Mon Sep 17 00:00:00 2001 From: cagnusmarlsen <0arunabh30@gmail.com> Date: Wed, 28 Feb 2024 19:21:56 +0530 Subject: [PATCH 2/3] Support Ctrl+Enter in the beta editor --- packages/editor/CodeMirror/createEditor.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/editor/CodeMirror/createEditor.ts b/packages/editor/CodeMirror/createEditor.ts index 89745e6e0fb..17da63b16f6 100644 --- a/packages/editor/CodeMirror/createEditor.ts +++ b/packages/editor/CodeMirror/createEditor.ts @@ -9,7 +9,7 @@ import { classHighlighter } from '@lezer/highlight'; import { EditorView, drawSelection, highlightSpecialChars, ViewUpdate, Command, rectangularSelection, } from '@codemirror/view'; -import { history, undoDepth, redoDepth, standardKeymap } from '@codemirror/commands'; +import { history, undoDepth, redoDepth, standardKeymap, insertBlankLine } from '@codemirror/commands'; import { keymap, KeyBinding } from '@codemirror/view'; import { searchKeymap } from '@codemirror/search'; @@ -261,6 +261,7 @@ const createEditor = ( }), keyCommand('Tab', insertOrIncreaseIndent, true), keyCommand('Shift-Tab', decreaseIndent, true), + keyCommand('Mod-Enter', insertBlankLine, true), ...standardKeymap, ...historyKeymap, ...searchKeymap, ]), From ebd0a65761b8c97c986782a92304d4427f093af7 Mon Sep 17 00:00:00 2001 From: cagnusmarlsen <0arunabh30@gmail.com> Date: Wed, 28 Feb 2024 21:58:13 +0530 Subject: [PATCH 3/3] use insertLineAfter instead of insertBlankLine --- packages/editor/CodeMirror/createEditor.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/editor/CodeMirror/createEditor.ts b/packages/editor/CodeMirror/createEditor.ts index 17da63b16f6..2d8076d9b57 100644 --- a/packages/editor/CodeMirror/createEditor.ts +++ b/packages/editor/CodeMirror/createEditor.ts @@ -9,7 +9,7 @@ import { classHighlighter } from '@lezer/highlight'; import { EditorView, drawSelection, highlightSpecialChars, ViewUpdate, Command, rectangularSelection, } from '@codemirror/view'; -import { history, undoDepth, redoDepth, standardKeymap, insertBlankLine } from '@codemirror/commands'; +import { history, undoDepth, redoDepth, standardKeymap } from '@codemirror/commands'; import { keymap, KeyBinding } from '@codemirror/view'; import { searchKeymap } from '@codemirror/search'; @@ -29,6 +29,7 @@ import { selectionFormattingEqual } from '../SelectionFormatting'; import configFromSettings from './configFromSettings'; import getScrollFraction from './getScrollFraction'; import CodeMirrorControl from './CodeMirrorControl'; +import insertLineAfter from './editorCommands/insertLineAfter'; const createEditor = ( parentElement: HTMLElement, props: EditorProps, @@ -261,7 +262,10 @@ const createEditor = ( }), keyCommand('Tab', insertOrIncreaseIndent, true), keyCommand('Shift-Tab', decreaseIndent, true), - keyCommand('Mod-Enter', insertBlankLine, true), + keyCommand('Mod-Enter', (_: EditorView) => { + insertLineAfter(_); + return true; + }, true), ...standardKeymap, ...historyKeymap, ...searchKeymap, ]),