-
|
I'm having a similar issue to #701 and have tried the suggestions listed there. Following the getting started guide, I'm unable to get textmate working. The browser console shows the error: main.js import '@codingame/monaco-vscode-json-default-extension';
import '@codingame/monaco-vscode-theme-defaults-default-extension';
import * as monaco from 'monaco-editor';
import { initialize } from '@codingame/monaco-vscode-api';
import getLanguagesServiceOverride from '@codingame/monaco-vscode-languages-service-override';
import getThemeServiceOverride from '@codingame/monaco-vscode-theme-service-override';
import getTextMateServiceOverride from '@codingame/monaco-vscode-textmate-service-override';
/**
* @param {URL} workerUrl
*/
function workerLoader(workerUrl) {
return new Worker(workerUrl, { type: 'module' });
}
self.MonacoEnvironment = {
getWorker: function(workerId, label) {
console.log('get worker', workerId, label);
/** @type {URL} */
let workerUrl;
switch(label) {
case 'TextEditorWorker':
workerUrl = new URL('monaco-editor/esm/vs/editor/editor.worker.js', import.meta.url);
break;
case 'TextMateWorker':
workerUrl = new URL('@codingame/monaco-vscode-textmate-service-override/worker', import.meta.url);
break;
default:
throw new Error(`Worker ${label} not found`)
}
return workerLoader(workerUrl);
}
};
const value = `{
"$schema": "http://json.schemastore.org/package",
"name": "my-package",
"version": "1.0.0",
"description": "A sample package"
}
`;
/** @type {HTMLElement} */
const container = document.querySelector('#monaco-editor-root');
await initialize({
...getTextMateServiceOverride(),
...getThemeServiceOverride(),
...getLanguagesServiceOverride(),
});
const editor = monaco.editor.create(container, {
value,
language: 'json',
theme: 'vs-dark',
automaticLayout: true,
minimap: {
enabled: false,
}
});vite.config.js import { defineConfig } from 'vite';
import importMetaUrlPlugin from '@codingame/esbuild-import-meta-url-plugin';
export default defineConfig({
worker: {
format: 'es',
},
esbuild: {
minifySyntax: false,
},
optimizeDeps: {
esbuildOptions: {
plugins: [importMetaUrlPlugin]
},
optimizeDeps: {
include: [
'vscode-textmate',
'vscode-oniguruma',
'@vscode/vscode-languagedetection',
]
},
}
});package.json {
"name": "monaco-err",
"private": true,
"version": "0.0.0",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview"
},
"devDependencies": {
"vite": "^7.2.6"
},
"dependencies": {
"@codingame/esbuild-import-meta-url-plugin": "^1.0.3",
"@codingame/monaco-vscode-api": "^23.2.2",
"@codingame/monaco-vscode-json-default-extension": "^23.2.2",
"@codingame/monaco-vscode-languages-service-override": "^23.2.2",
"@codingame/monaco-vscode-textmate-service-override": "^23.2.2",
"@codingame/monaco-vscode-theme-defaults-default-extension": "^23.2.2",
"@codingame/monaco-vscode-theme-service-override": "^23.2.2",
"monaco-editor": "npm:@codingame/monaco-vscode-editor-api@^23.2.2"
}
}Here's my minimal repo https://github.com/Sammy-T/monaco-err |
Beta Was this translation helpful? Give feedback.
Answered by
CGNonofr
Dec 4, 2025
Replies: 1 comment 1 reply
-
(: |
Beta Was this translation helpful? Give feedback.
1 reply
Answer selected by
Sammy-T
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment

(: