Короче говоря: нет.
Проблема в том, что IStandaloneCodeEditor
, который вы создаете, вызывая monaco.editor.create ()
, не имеет ни малейшего представления о monaco.languages
, которые в настоящее время доступны и зарегистрированы.
Синтаксический анализ выполняется monaco.worker
с, которые - для Java- и TypeScript - настраиваются через monaco.languages.typescript
и являются статическими, а не специфичными для экземпляра, так что один работник обслуживает много экземпляров.
Я считаю, что это проектное решение было принято в пользу эффективности и производительности - может WebWorker
сво многих случаях с (возможно) многими различными библиотеками не очень эффективны.
Также обратите внимание, что это не единственная вещь, которая не конфигурируется в отношении экземпляра: все, что настраивается с помощью любого определения языка monaco.languages
,global.
Я не знаю, как именно это реализовано, но если вы хотите понять, что происходит, реализация Type- и JavaScript находится на GitHub (а также * 1030).* MoОснова naco ).
Хотя это может (вероятно) несколько повысить производительность, это то, что может подойти для обсуждения в выпуске GitHub .В конце концов, если это будет отклонено, у вас может сложиться впечатление о реализации Монако участниками.