Как в monaco-editor переносить фигурную скобку на новую строку?
Установил себе на форум в качестве редактора кода - monaco-editor, но не устраивает то, что вид кода такой:
.div { // ... } |
.div { // ... }
Хотелось бы такой:
.div { // скобка на новой строке // ... } |
.div { // скобка на новой строке // ... }
Инициализация редактора:
require.config({paths: {'vs': 'https://unpkg.com/monaco-editor@latest/min/vs'}}) require(["vs/editor/editor.main"], function () { window.editor = monaco.editor.create(document.getElementById(self.options.containerId), { value: self.options.templateContent, language: language, minimap: {enabled: true}, scrollBeyondLastLine: true, theme: 'vs-dark', autoIndent: true, formatOnPaste: true, formatOnType: true, }); setTimeout(() => { editor.getAction('editor.action.formatDocument').run(); }, 1000) }); |
require.config({paths: {'vs': 'https://unpkg.com/monaco-editor@latest/min/vs'}}) require(["vs/editor/editor.main"], function () { window.editor = monaco.editor.create(document.getElementById(self.options.containerId), { value: self.options.templateContent, language: language, minimap: {enabled: true}, scrollBeyondLastLine: true, theme: 'vs-dark', autoIndent: true, formatOnPaste: true, formatOnType: true, }); setTimeout(() => { editor.getAction('editor.action.formatDocument').run(); }, 1000) });
Подскажите пожалуйста, как я могу реализовать это, чтобы при форматирование кода, скобки переносили на новую строку. Лазил в документации, но ничего не нашёл(плохо искал, скорее всего).
Дополнительно:
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для того чтобы перенести фигурную скобку на новую строку в редакторе кода Monaco Editor, вам необходимо воспользоваться опцией "formatOnType". Эта опция позволяет автоматически форматировать ваш код при вводе определенных символов, включая фигурные скобки.
Прежде всего, убедитесь, что у вас установлен Monaco Editor и вы работаете с ним. Затем добавьте следующий код в настройки вашего редактора:
monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({noSemanticValidation: true,
noSyntaxValidation: true
});
monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
target: monaco.languages.typescript.ScriptTarget.ES2016,
allowNonTsExtensions: true
});
monaco.editor.create(document.getElementById("container"), {
value: "function hello() {