Skip to main content
API module

languages API

All 31 public APIs exported from the languages module, with declarations, documentation, and source-backed examples.

Generated from typings/index.d.ts @ 555f5ceon

languages

languages.createDiagnosticCollection

Create a diagnostics collection.

Source

API signature

languages.createDiagnosticCollection(name?: string): DiagnosticCollection

Parameters

ParameterTypeDescription
name?string

The name of the collection.

Returns
DiagnosticCollection

A new diagnostic collection.

Declaration
typings/index.d.ts:8498
languages

languages.registerOnTypeFormattingEditProvider

Register a formatting provider that works on type. The provider is active when the user enables the setting coc.preferences.formatOnType.

Multiple providers can be registered for a language. In that case providers are sorted by their score and the best-matching provider is used. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerOnTypeFormattingEditProvider(selector: DocumentSelector, provider: OnTypeFormattingEditProvider, triggerCharacters: string[]): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerOnTypeFormattingEditProvider

An on type formatting edit provider.

triggerCharactersstring[]

Trigger character that should trigger format on type.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8512
languages

languages.registerCompletionItemProvider

Registers an asynchronous in-memory or external completion source.

Source

API signature

languages.registerCompletionItemProvider(name: string, shortcut: string, selector: DocumentSelector | null, provider: CompletionItemProvider, triggerCharacters?: string[], priority?: number, allCommitCharacters?: string[]): Disposable

Example

import { languages, CompletionItem, CompletionItemKind, DocumentSelector } from 'coc.nvim';

export function activate(context) {
  const selector: DocumentSelector = [{ scheme: 'file', language: 'typescript' }];
  context.subscriptions.push(
    languages.registerCompletionItemProvider('customSource', 'MY', selector, {
      async provideCompletionItems(doc, position) {
        return [
          {
            label: 'awesomeCustomHelper',
            kind: CompletionItemKind.Function,
            detail: 'Custom fast utility',
            insertText: 'awesomeCustomHelper()'
          }
        ];
      }
    }, ['.'])
  );
}

Parameters

ParameterTypeDescription
namestring

Name of completion source.

shortcutstring

Shortcut used in completion menu.

selectorDocumentSelector | null

Document selector of created completion source.

providerCompletionItemProvider

A completion provider.

triggerCharacters?string[]

Trigger completion when the user types one of the characters.

priority?number

Higher priority would shown first.

allCommitCharacters?string[]

Commit characters of completion source.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8537
languages

languages.registerCodeActionProvider

Register a code action provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerCodeActionProvider(selector: DocumentSelector, provider: CodeActionProvider, clientId: string | undefined, codeActionKinds?: ReadonlyArray<string>): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerCodeActionProvider

A code action provider.

clientIdstring | undefined

Optional id of language client.

codeActionKinds?ReadonlyArray<string>

Optional supported code action kinds.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8552
languages

languages.registerHoverProvider

Register a hover provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerHoverProvider(selector: DocumentSelector, provider: HoverProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerHoverProvider

A hover provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8565
languages

languages.registerSelectionRangeProvider

Register a selection range provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerSelectionRangeProvider(selector: DocumentSelector, provider: SelectionRangeProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerSelectionRangeProvider

A selection range provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8578
languages

languages.registerSignatureHelpProvider

Register a signature help provider.

Multiple providers can be registered for a language. In that case providers are sorted by their score and called sequentially until a provider returns a valid result.

Source

API signature

languages.registerSignatureHelpProvider(selector: DocumentSelector, provider: SignatureHelpProvider, triggerCharacters?: string[]): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerSignatureHelpProvider

A signature help provider.

triggerCharacters?string[]

Trigger signature help when the user types one of the characters, like , or (.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8592
languages

languages.registerDocumentSymbolProvider

Register a document symbol provider.

Multiple providers can be registered for a language. In that case providers only first provider are asked for result.

Source

API signature

languages.registerDocumentSymbolProvider(selector: DocumentSelector, provider: DocumentSymbolProvider, metadata?: DocumentSymbolProviderMetadata): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentSymbolProvider

A document symbol provider.

metadata?DocumentSymbolProviderMetadata

Optional meta data.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8605
languages

languages.registerFoldingRangeProvider

Register a folding range provider.

Multiple providers can be registered for a language. In that case providers only first provider are asked for result.

A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerFoldingRangeProvider(selector: DocumentSelector, provider: FoldingRangeProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerFoldingRangeProvider

A folding range provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8620
languages

languages.registerDocumentHighlightProvider

Register a document highlight provider.

Multiple providers can be registered for a language. In that case providers are sorted by their score and groups sequentially asked for document highlights. The process stops when a provider returns a non-falsy or non-failure result.

Source

API signature

languages.registerDocumentHighlightProvider(selector: DocumentSelector, provider: DocumentHighlightProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentHighlightProvider

A document highlight provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8633
languages

languages.registerCodeLensProvider

Register a code lens provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerCodeLensProvider(selector: DocumentSelector, provider: CodeLensProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerCodeLensProvider

A code lens provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8646
languages

languages.registerDocumentLinkProvider

Register a document link provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerDocumentLinkProvider(selector: DocumentSelector, provider: DocumentLinkProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentLinkProvider

A document link provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8659
languages

languages.registerDocumentColorProvider

Register a color provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerDocumentColorProvider(selector: DocumentSelector, provider: DocumentColorProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentColorProvider

A color provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8672
languages

languages.registerDefinitionProvider

Register a definition provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerDefinitionProvider(selector: DocumentSelector, provider: DefinitionProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDefinitionProvider

A definition provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8685
languages

languages.registerDeclarationProvider

Register a declaration provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerDeclarationProvider(selector: DocumentSelector, provider: DeclarationProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDeclarationProvider

A declaration provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8698
languages

languages.registerTypeDefinitionProvider

Register a type definition provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerTypeDefinitionProvider(selector: DocumentSelector, provider: TypeDefinitionProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerTypeDefinitionProvider

A type definition provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8712
languages

languages.registerImplementationProvider

Register an implementation provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerImplementationProvider(selector: DocumentSelector, provider: ImplementationProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerImplementationProvider

An implementation provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8725
languages

languages.registerReferencesProvider

Register a reference provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerReferencesProvider(selector: DocumentSelector, provider: ReferenceProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerReferenceProvider

A reference provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8738
languages

languages.registerRenameProvider

Register a rename provider.

Multiple providers can be registered for a language. In that case providers are sorted by their score and asked in sequence. The first provider producing a result defines the result of the whole operation.

Source

API signature

languages.registerRenameProvider(selector: DocumentSelector, provider: RenameProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerRenameProvider

A rename provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8751
languages

languages.registerWorkspaceSymbolProvider

Register a workspace symbol provider.

Multiple providers can be registered. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerWorkspaceSymbolProvider(provider: WorkspaceSymbolProvider): Disposable

Parameters

ParameterTypeDescription
providerWorkspaceSymbolProvider

A workspace symbol provider.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8763
languages

languages.registerDocumentFormatProvider

Register a formatting provider for a document.

Multiple providers can be registered for a language. In that case providers are sorted by their priority. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerDocumentFormatProvider(selector: DocumentSelector, provider: DocumentFormattingEditProvider, priority?: number): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentFormattingEditProvider

A document formatting edit provider.

priority?number

default to 0.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8776
languages

languages.registerDocumentRangeFormatProvider

Register a formatting provider for a document range.

Note: A document range provider is also a document formatter which means there is no need to register a document formatter when also registering a range provider.

Multiple providers can be registered for a language. In that case provider with highest priority is used. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerDocumentRangeFormatProvider(selector: DocumentSelector, provider: DocumentRangeFormattingEditProvider, priority?: number): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentRangeFormattingEditProvider

A document range formatting edit provider.

priority?number

default to 0.

Returns
Disposable

A disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8793
languages

languages.registerCallHierarchyProvider

Register a call hierarchy provider.

Source

API signature

languages.registerCallHierarchyProvider(selector: DocumentSelector, provider: CallHierarchyProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerCallHierarchyProvider

A call hierarchy provider.

Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8802
languages

languages.registerDocumentSemanticTokensProvider

Register a semantic tokens provider for a whole document.

Multiple providers can be registered for a language. In that case providers are sorted by their score and the best-matching provider is used. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerDocumentSemanticTokensProvider(selector: DocumentSelector, provider: DocumentSemanticTokensProvider, legend: SemanticTokensLegend): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentSemanticTokensProvider

A document semantic tokens provider.

legendSemanticTokensLegend
Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8815
languages

languages.registerDocumentRangeSemanticTokensProvider

Register a semantic tokens provider for a document range.

Note: If a document has both a DocumentSemanticTokensProvider and a DocumentRangeSemanticTokensProvider, the range provider will be invoked only initially, for the time in which the full document provider takes to resolve the first request. Once the full document provider resolves the first request, the semantic tokens provided via the range provider will be discarded and from that point forward, only the document provider will be used.

Multiple providers can be registered for a language. In that case providers are sorted by their score and the best-matching provider is used. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerDocumentRangeSemanticTokensProvider(selector: DocumentSelector, provider: DocumentRangeSemanticTokensProvider, legend: SemanticTokensLegend): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerDocumentRangeSemanticTokensProvider

A document range semantic tokens provider.

legendSemanticTokensLegend
Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8834
languages

languages.registerLinkedEditingRangeProvider

Register a linked editing range provider.

Multiple providers can be registered for a language. In that case providers are sorted by their score and the best-matching provider that has a result is used. Failure of the selected provider will cause a failure of the whole operation.

Source

API signature

languages.registerLinkedEditingRangeProvider(selector: DocumentSelector, provider: LinkedEditingRangeProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerLinkedEditingRangeProvider

A linked editing range provider.

Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8847
languages

languages.registerInlayHintsProvider

Register a inlay hints provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.

Source

API signature

languages.registerInlayHintsProvider(selector: DocumentSelector, provider: InlayHintsProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerInlayHintsProvider

An inlay hints provider.

Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8860
languages

languages.registerTypeHierarchyProvider

Register a type hierarchy provider.

Source

API signature

languages.registerTypeHierarchyProvider(selector: DocumentSelector, provider: TypeHierarchyProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerTypeHierarchyProvider

A type hierarchy provider.

Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8869
languages

languages.registerInlineCompletionItemProvider

Register a inline completion item provider.

Source

API signature

languages.registerInlineCompletionItemProvider(selector: DocumentSelector, provider: InlineCompletionItemProvider): Disposable

Parameters

ParameterTypeDescription
selectorDocumentSelector

A selector that defines the documents this provider is applicable to.

providerInlineCompletionItemProvider

A InlineCompletion provider.

Returns
Disposable

A Disposable that unregisters this provider when being disposed.

Declaration
typings/index.d.ts:8878