languagesModule
MS Code Extension API / core/extensionAPI/modules/languagesModule
core/extensionAPI/modules/languagesModule
Type Aliases
LanguagesModule
LanguagesModule =
ReturnType<typeofcreateLanguagesModule>
Defined in: core/extensionAPI/modules/languagesModule.ts:16
Functions
createLanguagesModule()
createLanguagesModule(
extId):object
Defined in: core/extensionAPI/modules/languagesModule.ts:10
Parameters
extId
string
Returns
createDiagnosticCollection
createDiagnosticCollection: (
name) =>object
Creates a dedicated container for diagnostic markers. Useful for linking custom external linters, builders, or toolchains (e.g., ESLint).
Parameters
name
string
The human-readable name of the collection.
Returns
An object managing the collection lifetime and markers state.
clear
clear: () =>
void
Wipes all active diagnostic markers published by this specific collection instance.
Returns
void
dispose
dispose: () =>
void
Disposes the collection container and clears all of its registered markers.
Returns
void
name
name:
string
set
set: (
uri,diagnostics) =>void
Publishes an array of diagnostics for a specific file resource path. This triggers native Monaco editor squiggles and updates the UI Problems Panel.
Parameters
uri
string
The absolute target document URI string.
diagnostics
IMarkerData[]
The markers metadata payload array.
Returns
void
getDiagnostics
getDiagnostics: (
uri?) =>IMarker[]
Retrieves all currently active diagnostics (problems) in the editor workspace.
Parameters
uri?
string
Optional target file URI to filter diagnostics.
Returns
IMarker[]
Array of diagnostic markers matching the criteria.
onDidChangeDiagnostics
onDidChangeDiagnostics: (
handler) =>object
Fired globally when file markers or diagnostics are added, changed, or completely cleared.
Parameters
handler
(diagnostics) => void
Callback invoked when a system diagnostics sync occurs.
Returns
object
A disposable instance object to detach the event listener hook securely.
dispose
dispose: () =>
void
Returns
void
registerDocumentFormattingEditProvider
registerDocumentFormattingEditProvider: (
languageId,provider) =>object
Registers a formatting provider for a specific language.
Parameters
languageId
string
The target language identifier (e.g., 'javascript', 'cpp', 'css').
provider
DocumentFormattingEditProvider
The implementation of the formatting logic.
Returns
A disposable object to unregister the provider.
dispose
dispose: () =>
void
Unregisters the formatting provider and cleans up resources.
Returns
void
registerSnippets
registerSnippets: (
languageId,snippetData) =>object
Register code snippets for a language.
snippetData should follow the VS Code snippet JSON format.
Parameters
languageId
string
snippetData
any
Returns
object
dispose
dispose: () =>
void
Returns
void
Example
mscode.languages.registerSnippets('rust', {
'println macro': {
prefix: 'println',
body: ['println!("$1");'],
description: 'Print to stdout',
}
});