monaco-languageclient
v9.0.0
Published
Monaco Language client implementation
Downloads
96,400
Readme
Monaco Language Client
Module to connect Monaco editor with language servers.
CHANGELOG
All changes are noted in the CHANGELOG.
Getting Started
This is npm package is part of the https://github.com/TypeFox/monaco-languageclient mono repo. Please follow the main repositories [instructions]](https://github.com/TypeFox/monaco-languageclient#getting-started) to get started with local development.
Usage
NEW with v8: Use monaco-vscode-editor-api package instead of monaco-editor
Since version 2 (see Important Project Changes) of this library we rely on @codingame/monaco-vscode-api to supply the VSCode API. It evolved substantially since then and thesedays allows to use many vscode only services with monaco-editor
. With v6 and v7 we used a treemended version of monaco-editor
which brought back monaco-editor code that was removed during bundling/threeshaking. This left users with the need to define overrides / resolution which was problematic.
Therefore monaco-vscode-editor-api is now used and installed as an alias to monaco-editor
because it provides the same api as the official monaco-editor, but no longer has the drawbacks of the treemended version.
Using services and extra packages from @codingame/monaco-vscode-api
The bespoke projects not only supplies the api, but it provides 100+ packages with additional services, default extensions and language packs. By default when initalizing monaco-languageclient
via the required initServices
the following services are always loaded:
- languages and model services (always added by
monaco-languagclient
) - layout, environment, extension, files and quickAccess (always added by
monaco-vscode-api
)
Please check the following link for information about all services supplied by @codingame/monaco-vscode-api.
textmate and monarch
If you use the textmate
or theme
services you are able to load textmate based grammars and theme definitions from vscode:
import getThemeServiceOverride from '@codingame/monaco-vscode-theme-service-override';
import getTextmateServiceOverride from '@codingame/monaco-vscode-textmate-service-override';
Once you those services you can no longer make use of monarch based grammars and themes.
Examples
For a detailed list of examples please look at this section in the main repository.