• Public
  • Public/Protected
  • All

Interface CodeActionProvider<T>

The code action interface defines the contract between extensions and the lightbulb feature.

A code action can be any command that is known to the system.

Type parameters


  • CodeActionProvider




  • Provide commands for the given document and range.


    • document: TextDocument

      The document in which the command was invoked.

    • range: Range | Selection

      The selector or range for which the command was invoked. This will always be a selection if there is a currently active editor.

    • context: CodeActionContext

      Context carrying additional information.

    • token: CancellationToken

      A cancellation token.

    Returns ProviderResult<(Command | T)[]>

    An array of code actions, such as quick fixes or refactorings. The lack of a result can be signaled by returning undefined, null, or an empty array.

    We also support returning Command for legacy reasons, however all new extensions should return CodeAction object instead.

Optional resolveCodeAction

  • Given a code action fill in its edit-property. Changes to all other properties, like title, are ignored. A code action that has an edit will not be resolved.

    Note that a code action provider that returns commands, not code actions, cannot successfully implement this function. Returning commands is deprecated and instead code actions should be returned.


    Returns ProviderResult<T>

    The resolved code action or a thenable that resolves to such. It is OK to return the given item. When no result is returned, the given item will be used.

友链:VS Code 中文文档 | VS Code 官网文档 | VS Code 扩展市场

Generated by TypeDoc. Maintained by 洛竹