diff --git a/packages/react/src/components/CodeMirror6.jsx b/packages/react/src/components/CodeMirror6.jsx index 651c7c88..36c7601b 100644 --- a/packages/react/src/components/CodeMirror6.jsx +++ b/packages/react/src/components/CodeMirror6.jsx @@ -88,12 +88,7 @@ const highlightField = StateField.define({ provide: (f) => EditorView.decorations.from(f), }); -const staticExtensions = [ - javascript(), - highlightField, - flashField, - javascriptLanguage.data.of({ autocomplete: strudelAutocomplete }), -]; +const staticExtensions = [javascript(), highlightField, flashField]; export default function CodeMirror({ value, @@ -104,6 +99,7 @@ export default function CodeMirror({ keybindings, isLineNumbersDisplayed, isAutoCompletionEnabled, + isLineWrappingEnabled, fontSize = 18, fontFamily = 'monospace', options, @@ -149,8 +145,12 @@ export default function CodeMirror({ _extensions.push(autocompletion({ override: [] })); } + if (isLineWrappingEnabled) { + _extensions.push(EditorView.lineWrapping); + } + return _extensions; - }, [keybindings, isAutoCompletionEnabled]); + }, [keybindings, isAutoCompletionEnabled, isLineWrappingEnabled]); return (
diff --git a/website/src/repl/Footer.jsx b/website/src/repl/Footer.jsx index 30e2f3a1..acd5a682 100644 --- a/website/src/repl/Footer.jsx +++ b/website/src/repl/Footer.jsx @@ -364,7 +364,15 @@ const fontFamilyOptions = { }; function SettingsTab({ scheduler }) { - const { theme, keybindings, isLineNumbersDisplayed, isAutoCompletionEnabled, fontSize, fontFamily } = useSettings(); + const { + theme, + keybindings, + isLineNumbersDisplayed, + isAutoCompletionEnabled, + isLineWrappingEnabled, + fontSize, + fontFamily, + } = useSettings(); return (
@@ -407,7 +415,7 @@ function SettingsTab({ scheduler }) { />
-
+
settingsMap.setKey('isAutoCompletionEnabled', cbEvent.target.checked)} value={isAutoCompletionEnabled} /> + settingsMap.setKey('isLineWrappingEnabled', cbEvent.target.checked)} + value={isLineWrappingEnabled} + />