Как в monaco-editor переносить фигурную скобку на новую строку?

Ссылка скопирована
20 марта 2026 1 ответ

Установил себе на форум в качестве редактора кода - 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) });

Подскажите пожалуйста, как я могу реализовать это, чтобы при форматирование кода, скобки переносили на новую строку. Лазил в документации, но ничего не нашёл(плохо искал, скорее всего).

Дополнительно:

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Максим Павлов Ответ

Для того чтобы перенести фигурную скобку на новую строку в редакторе кода 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() {

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно