uiwjs / react-codemirror

CodeMirror 6 component for React. @codemirror https://uiwjs.github.io/react-codemirror/
https://uiwjs.github.io/react-codemirror/
MIT License
1.65k stars 132 forks source link

How to set up automatic line wrapping? #545

Open Deja-vuuu opened 1 year ago

Deja-vuuu commented 1 year ago

I tried to find this configuration in the document, but I didn't find it !

jaywcjlove commented 1 year ago

@Deja-vuuu

makcyd commented 1 year ago

@Deja-vuuu

The problem is, however, that the following code:

import CodeMirror, { BasicSetupOptions } from "@uiw/react-codemirror"
import { langs } from "@uiw/codemirror-extensions-langs"
import { githubLight } from "@uiw/codemirror-theme-github"
import { EditorView } from "@codemirror/view"

const CodemirrorEditor: React.FC<CodemirrorProps> = ({ content, onChange }) => {

    return (
        <CodeMirror
            extensions={[langs.markdown(), EditorView.lineWrapping]}
            theme={githubLight}
            value={content}
            basicSetup={basicSetup}

            onChange={ (value, viewUpdate) => {
                onChange(value)
            }}
            />
    )
}

Throws an error:

Unrecognized extension value in extension set ([object Object]). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.
schettn commented 6 months ago

@Deja-vuuu

The problem is, however, that the following code:

import CodeMirror, { BasicSetupOptions } from "@uiw/react-codemirror"
import { langs } from "@uiw/codemirror-extensions-langs"
import { githubLight } from "@uiw/codemirror-theme-github"
import { EditorView } from "@codemirror/view"

const CodemirrorEditor: React.FC<CodemirrorProps> = ({ content, onChange }) => {

    return (
        <CodeMirror
            extensions={[langs.markdown(), EditorView.lineWrapping]}
            theme={githubLight}
            value={content}
            basicSetup={basicSetup}

            onChange={ (value, viewUpdate) => {
                onChange(value)
            }}
            />
    )
}

Throws an error:

Unrecognized extension value in extension set ([object Object]). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.

You have to import EditorView from @uiw/react-codemirror.

import CodeMirror, { EditorView } from '@uiw/react-codemirror'