Преглед на файлове

add lowest precedence defaultKeymap

reiji-h преди 2 години
родител
ревизия
6e59512b45

+ 0 - 3
packages/editor/src/components/CodeMirrorEditorComment.tsx

@@ -1,7 +1,5 @@
 import { useEffect } from 'react';
 import { useEffect } from 'react';
 
 
-
-import { defaultKeymap } from '@codemirror/commands';
 import type { Extension } from '@codemirror/state';
 import type { Extension } from '@codemirror/state';
 import { keymap, scrollPastEnd } from '@codemirror/view';
 import { keymap, scrollPastEnd } from '@codemirror/view';
 
 
@@ -52,7 +50,6 @@ export const CodeMirrorEditorComment = (props: Props): JSX.Element => {
           return true;
           return true;
         },
         },
       },
       },
-      ...defaultKeymap,
     ]);
     ]);
 
 
     const cleanupFunction = codeMirrorEditor?.appendExtensions?.(keymapExtension);
     const cleanupFunction = codeMirrorEditor?.appendExtensions?.(keymapExtension);

+ 0 - 2
packages/editor/src/components/CodeMirrorEditorMain.tsx

@@ -1,6 +1,5 @@
 import { useEffect } from 'react';
 import { useEffect } from 'react';
 
 
-import { defaultKeymap } from '@codemirror/commands';
 import type { Extension } from '@codemirror/state';
 import type { Extension } from '@codemirror/state';
 import { keymap, scrollPastEnd } from '@codemirror/view';
 import { keymap, scrollPastEnd } from '@codemirror/view';
 
 
@@ -52,7 +51,6 @@ export const CodeMirrorEditorMain = (props: Props): JSX.Element => {
           return true;
           return true;
         },
         },
       },
       },
-      ...defaultKeymap,
     ]);
     ]);
 
 
     const cleanupFunction = codeMirrorEditor?.appendExtensions?.(keymapExtension);
     const cleanupFunction = codeMirrorEditor?.appendExtensions?.(keymapExtension);

+ 3 - 2
packages/editor/src/services/codemirror-editor/use-codemirror-editor/use-codemirror-editor.ts

@@ -1,9 +1,9 @@
 import { useMemo } from 'react';
 import { useMemo } from 'react';
 
 
-import { indentWithTab } from '@codemirror/commands';
+import { indentWithTab, defaultKeymap } from '@codemirror/commands';
 import { markdown, markdownLanguage } from '@codemirror/lang-markdown';
 import { markdown, markdownLanguage } from '@codemirror/lang-markdown';
 import { languages } from '@codemirror/language-data';
 import { languages } from '@codemirror/language-data';
-import { EditorState, type Extension } from '@codemirror/state';
+import { EditorState, Prec, type Extension } from '@codemirror/state';
 import { keymap, EditorView } from '@codemirror/view';
 import { keymap, EditorView } from '@codemirror/view';
 import { useCodeMirror, type UseCodeMirror } from '@uiw/react-codemirror';
 import { useCodeMirror, type UseCodeMirror } from '@uiw/react-codemirror';
 import deepmerge from 'ts-deepmerge';
 import deepmerge from 'ts-deepmerge';
@@ -30,6 +30,7 @@ export type UseCodeMirrorEditor = {
 const defaultExtensions: Extension[] = [
 const defaultExtensions: Extension[] = [
   markdown({ base: markdownLanguage, codeLanguages: languages }),
   markdown({ base: markdownLanguage, codeLanguages: languages }),
   keymap.of([indentWithTab]),
   keymap.of([indentWithTab]),
+  Prec.lowest(keymap.of(defaultKeymap)),
 ];
 ];
 
 
 export const useCodeMirrorEditor = (props?: UseCodeMirror): UseCodeMirrorEditor => {
 export const useCodeMirrorEditor = (props?: UseCodeMirror): UseCodeMirrorEditor => {