VS代码API

VS Code API是一组 JavaScript API,您可以在 Visual Studio Code 扩展中调用它们。此页面列出了扩展作者可用的所有 VS Code API。

API 命名空间和类

此列表是根据VS Code 存储库中的vscode.d.ts文件编译的。

验证

用于身份验证的命名空间。

Events

onDidChangeSessions 事件< AuthenticationSessionsChangeEvent >

An Event which fires when the authentication sessions of an authentication provider have been added, removed, or changed.

Functions

getSession providerId 字符串范围只读字符串[],选项AuthenticationGetSessionOptions&{ createIfNone true } Thenable <AuthenticationSession>

Get an authentication session matching the desired scopes. Rejects if a provider with providerId is not registered, or if the user does not consent to sharing authentication information with the extension. If there are multiple sessions with the same scopes, the user will be shown a quickpick to select which account they would like to use.

Currently, there are only two authentication providers that are contributed from built in extensions to the editor that implement GitHub and Microsoft authentication: their providerId's are 'github' and 'microsoft'.

ParameterDescription
providerId: string

The id of the provider to use

scopes: readonly string[]

A list of scopes representing the permissions requested. These are dependent on the authentication provider

options: AuthenticationGetSessionOptions & {createIfNone: true}
ReturnsDescription
Thenable<AuthenticationSession>

A thenable that resolves to an authentication session

getSession providerId 字符串范围只读字符串[],选项AuthenticationGetSessionOptions {forceNewSession true | AuthenticationForceNewSessionOptions } Thenable <AuthenticationSession>

Get an authentication session matching the desired scopes. Rejects if a provider with providerId is not registered, or if the user does not consent to sharing authentication information with the extension. If there are multiple sessions with the same scopes, the user will be shown a quickpick to select which account they would like to use.

Currently, there are only two authentication providers that are contributed from built in extensions to the editor that implement GitHub and Microsoft authentication: their providerId's are 'github' and 'microsoft'.

ParameterDescription
providerId: string

The id of the provider to use

scopes: readonly string[]

A list of scopes representing the permissions requested. These are dependent on the authentication provider

options: AuthenticationGetSessionOptions & {forceNewSession: true | AuthenticationForceNewSessionOptions}
ReturnsDescription
Thenable<AuthenticationSession>

A thenable that resolves to an authentication session

getSession providerId 字符串范围只读字符串[],选项AuthenticationGetSessionOptions Thenable < AuthenticationSession | 未定义>

Get an authentication session matching the desired scopes. Rejects if a provider with providerId is not registered, or if the user does not consent to sharing authentication information with the extension. If there are multiple sessions with the same scopes, the user will be shown a quickpick to select which account they would like to use.

Currently, there are only two authentication providers that are contributed from built in extensions to the editor that implement GitHub and Microsoft authentication: their providerId's are 'github' and 'microsoft'.

ParameterDescription
providerId: string

The id of the provider to use

scopes: readonly string[]

A list of scopes representing the permissions requested. These are dependent on the authentication provider

options?: AuthenticationGetSessionOptions
ReturnsDescription
Thenable<AuthenticationSession | undefined>

A thenable that resolves to an authentication session if available, or undefined if there are no sessions

registerAuthenticationProvider ( id : string , label : string , provider : AuthenticationProvider , options ? : AuthenticationProviderOptions ) :一次性

Register an authentication provider.

There can only be one provider per id and an error is being thrown when an id has already been used by another provider. Ids are case-sensitive.

ParameterDescription
id: string

The unique identifier of the provider.

label: string

The human-readable name of the provider.

provider: AuthenticationProvider

The authentication provider provider.

options?: AuthenticationProviderOptions

Additional options for the provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

命令

用于处理命令的命名空间。简而言之,命令是具有唯一标识符的函数。该函数有时也称为命令处理程序。

可以使用registerCommandregisterTextEditorCommand函数将命令添加到编辑器中。可以手动或通过 UI 手势执行命令。那些是:

  • 调色板 - 使用commands-section inpackage.json使命令显示在命令调色板中。
  • 键绑定 - 使用keybindings- 部分为您的扩展package.json启用 键绑定

扩展可以访问来自其他扩展和编辑器本身的命令。但是,当调用编辑器命令时,并非所有参数类型都受支持。

这是一个注册命令处理程序并将该命令的条目添加到选项板的示例。首先使用标识符注册一个命令处理程序extension.sayHello

commands.registerCommand('extension.sayHello', () => {
  window.showInformationMessage('Hello World!');
});

其次,将命令标识符绑定到标题,它将显示在调色板 ( package.json) 中。

{
  "contributes": {
    "commands": [
      {
        "command": "extension.sayHello",
        "title": "Hello World"
      }
    ]
  }
}

Functions

executeCommand <T> (命令:字符串, ...其余:任意[ ] ) : Thenable <T> _ _ _

Executes the command denoted by the given command identifier.

  • Note 1: When executing an editor command not all types are allowed to be passed as arguments. Allowed are the primitive types string, boolean, number, undefined, and null, as well as Position, Range, Uri and Location.
  • Note 2: There are no restrictions when executing commands that have been contributed by extensions.
ParameterDescription
command: string

Identifier of the command to execute.

...rest: any[]

Parameters passed to the command function.

ReturnsDescription
Thenable<T>

A thenable that resolves to the returned value of the given command. Returns undefined when the command handler function doesn't return anything.

getCommands ( filterInternal ? : boolean ) : Thenable < string []>

Retrieve the list of all available commands. Commands starting with an underscore are treated as internal commands.

ParameterDescription
filterInternal?: boolean

Set true to not see internal commands (starting with an underscore)

ReturnsDescription
Thenable<string[]>

Thenable that resolves to a list of command ids.

registerCommand (命令:字符串,回调: (args:任意[]) =>任意, thisArg ? :任意) :一次性

Registers a command that can be invoked via a keyboard shortcut, a menu item, an action, or directly.

Registering a command with an existing command identifier twice will cause an error.

ParameterDescription
command: string

A unique identifier for the command.

callback: (args: any[]) => any

A command handler function.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
Disposable

Disposable which unregisters this command on disposal.

registerTextEditorCommand (命令: string ,回调: (textEditor: TextEditor , edit: TextEditorEdit , args:任意[]) => void , thisArg ? :任意) :一次性

Registers a text editor command that can be invoked via a keyboard shortcut, a menu item, an action, or directly.

Text editor commands are different from ordinary commands as they only execute when there is an active editor when the command is called. Also, the command handler of an editor command has access to the active editor and to an edit-builder. Note that the edit-builder is only valid while the callback executes.

ParameterDescription
command: string

A unique identifier for the command.

callback: (textEditor: TextEditor, edit: TextEditorEdit, args: any[]) => void

A command handler function with access to an editor and an edit.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
Disposable

Disposable which unregisters this command on disposal.

评论

Functions

createCommentController id 字符串标签字符串CommentController

Creates a new comment controller instance.

ParameterDescription
id: string

An id for the comment controller.

label: string

A human-readable string for the comment controller.

ReturnsDescription
CommentController

An instance of comment controller.

调试

用于调试功能的命名空间。

Variables

活动调试控制台调试控制台

The currently active debug console. If no debug session is active, output sent to the debug console is not shown.

活动调试会话调试会话| 不明确的

The currently active debug session or undefined. The active debug session is the one represented by the debug action floating window or the one currently shown in the drop down menu of the debug action floating window. If no debug session is active, the value is undefined.

断点:只读断点[]

List of breakpoints.

Events

onDidChangeActiveDebugSession 事件< DebugSession | 未定义>

An Event which fires when the active debug session has changed. Note that the event also fires when the active debug session changes to undefined.

onDidChangeBreakpoints :事件<BreakpointsChangeEvent> _ _

An Event that is emitted when the set of breakpoints is added, removed, or changed.

onDidReceiveDebugSessionCustomEvent 事件< DebugSessionCustomEvent >

An Event which fires when a custom DAP event is received from the debug session.

onDidStartDebugSession 事件<调试会话>

An Event which fires when a new debug session has been started.

onDidTerminateDebugSession 事件<调试会话>

An Event which fires when a debug session has terminated.

Functions

addBreakpoints (断点:只读断点[] ) : void

Add breakpoints.

ParameterDescription
breakpoints: readonly Breakpoint[]

The breakpoints to add.

ReturnsDescription
void

asDebugSourceUri DebugProtocolSource会话DebugSession Uri

Converts a "Source" descriptor object received via the Debug Adapter Protocol into a Uri that can be used to load its contents. If the source descriptor is based on a path, a file Uri is returned. If the source descriptor uses a reference number, a specific debug Uri (scheme 'debug') is constructed that requires a corresponding ContentProvider and a running debug session

If the "Source" descriptor has insufficient information for creating the Uri, an error is thrown.

ParameterDescription
source: DebugProtocolSource

An object conforming to the Source type defined in the Debug Adapter Protocol.

session?: DebugSession

An optional debug session that will be used when the source descriptor uses a reference number to load the contents from an active debug session.

ReturnsDescription
Uri

A uri that can be used to load the contents of the source.

registerDebugAdapterDescriptorFactory debugType 字符串工厂DebugAdapterDescriptorFactory 一次性

Register a debug adapter descriptor factory for a specific debug type. An extension is only allowed to register a DebugAdapterDescriptorFactory for the debug type(s) defined by the extension. Otherwise an error is thrown. Registering more than one DebugAdapterDescriptorFactory for a debug type results in an error.

ParameterDescription
debugType: string

The debug type for which the factory is registered.

factory: DebugAdapterDescriptorFactory
ReturnsDescription
Disposable

A Disposable that unregisters this factory when being disposed.

registerDebugAdapterTrackerFactory debugType 字符串工厂DebugAdapterTrackerFactory 一次性

Register a debug adapter tracker factory for the given debug type.

ParameterDescription
debugType: string

The debug type for which the factory is registered or '*' for matching all debug types.

factory: DebugAdapterTrackerFactory
ReturnsDescription
Disposable

A Disposable that unregisters this factory when being disposed.

registerDebugConfigurationProvider debugType 字符串提供者DebugConfigurationProvidertriggerKind DebugConfigurationProviderTriggerKind 一次性

Register a debug configuration provider for a specific debug type. The optional triggerKind can be used to specify when the provideDebugConfigurations method of the provider is triggered. Currently two trigger kinds are possible: with the value Initial (or if no trigger kind argument is given) the provideDebugConfigurations method is used to provide the initial debug configurations to be copied into a newly created launch.json. With the trigger kind Dynamic the provideDebugConfigurations method is used to dynamically determine debug configurations to be presented to the user (in addition to the static configurations from the launch.json). Please note that the triggerKind argument only applies to the provideDebugConfigurations method: so the resolveDebugConfiguration methods are not affected at all. Registering a single provider with resolve methods for different trigger kinds, results in the same resolve methods called multiple times. More than one provider can be registered for the same type.

ParameterDescription
debugType: string

The debug type for which the provider is registered.

provider: DebugConfigurationProvider
triggerKind?: DebugConfigurationProviderTriggerKind

The trigger for which the 'provideDebugConfiguration' method of the provider is registered. If triggerKind is missing, the value DebugConfigurationProviderTriggerKind.Initial is assumed.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

removeBreakpoints (断点:只读断点[] ) : void

Remove breakpoints.

ParameterDescription
breakpoints: readonly Breakpoint[]

The breakpoints to remove.

ReturnsDescription
void

startDebugging 文件WorkspaceFoldernameOrConfiguration 字符串| DebugConfigurationparentSessionOrOptions DebugSession | DebugSessionOptions Thenable <boolean> _

Start debugging by using either a named launch or named compound configuration, or by directly passing a DebugConfiguration. The named configurations are looked up in '.vscode/launch.json' found in the given folder. Before debugging starts, all unsaved files are saved and the launch configurations are brought up-to-date. Folder specific variables used in the configuration (e.g. '${workspaceFolder}') are resolved against the given folder.

ParameterDescription
folder: WorkspaceFolder

The workspace folder for looking up named configurations and resolving variables or undefined for a non-folder setup.

nameOrConfiguration: string | DebugConfiguration

Either the name of a debug or compound configuration or a DebugConfiguration object.

parentSessionOrOptions?: DebugSession | DebugSessionOptions

Debug session options. When passed a parent debug session, assumes options with just this parent session.

ReturnsDescription
Thenable<boolean>

A thenable that resolves when debugging could be successfully started.

stopDebugging 会话DebugSession Thenable <void> _ _

Stop the given debug session or stop all debug sessions if session is omitted.

ParameterDescription
session?: DebugSession

The debug session to stop; if omitted all sessions are stopped.

ReturnsDescription
Thenable<void>

A thenable that resolves when the session(s) have been stopped.

环境

描述编辑器运行环境的命名空间。

Variables

应用程序主机字符串

The hosted location of the application On desktop this is 'desktop' In the web this is the specified embedder i.e. 'github.dev', 'codespaces', or 'web' if the embedder does not provide that information

应用程序名称字符串

The application name of the editor, like 'VS Code'.

应用程序根字符串

The application root folder from which the editor is running.

Note that the value is the empty string when running in an environment that has no representation of an application root folder.

剪贴板剪贴板

The system clipboard.

isNewAppInstall :布尔值

Indicates that this is a fresh install of the application. true if within the first day of installation otherwise false.

isTelemetryEnabled :布尔值

Indicates whether the users has telemetry enabled. Can be observed to determine if the extension should send telemetry.

语言字符串

Represents the preferred user-language, like de-CH, fr, or en-US.

日志级别日志级别

The current log level of the editor.

机器ID 字符串

A unique identifier for the computer.

远程名称字符串| 不明确的

The name of a remote. Defined by extensions, popular samples are wsl for the Windows Subsystem for Linux or ssh-remote for remotes using a secure shell.

Note that the value is undefined when there is no remote extension host but that the value is defined in all extension hosts (local and remote) in case a remote extension host exists. Use Extension.extensionKind to know if a specific extension runs remote or not.

会话 ID :字符串

A unique identifier for the current session. Changes each time the editor is started.

Shell 字符串

The detected default shell for the extension host, this is overridden by the terminal.integrated.defaultProfile setting for the extension host's platform. Note that in environments that do not support a shell the value is the empty string.

uiKind : UIKind

The UI kind property indicates from which UI extensions are accessed from. For example, extensions could be accessed from a desktop application or a web browser.

uriScheme 字符串

The custom uri scheme the editor registers to in the operating system.

Events

onDidChangeLogLevel 事件<日志级别>

An Event which fires when the log level of the editor changes.

onDidChangeShell 事件<字符串>

An Event which fires when the default shell changes. This fires with the new shell path.

onDidChangeTelemetryEnabled 事件<布尔值>

An Event which fires when the user enabled or disables telemetry. true if the user has enabled telemetry or false if the user has disabled telemetry.

Functions

asExternalUri 目标Uri Thenable <Uri> _ _

Resolves a uri to a form that is accessible externally.

http: or https: scheme

Resolves an external uri, such as a http: or https: link, from where the extension is running to a uri to the same resource on the client machine.

This is a no-op if the extension is running on the client machine.

If the extension is running remotely, this function automatically establishes a port forwarding tunnel from the local machine to target on the remote and returns a local uri to the tunnel. The lifetime of the port forwarding tunnel is managed by the editor and the tunnel can be closed by the user.

Note that uris passed through openExternal are automatically resolved and you should not call asExternalUri on them.

vscode.env.uriScheme

Creates a uri that - if opened in a browser (e.g. via openExternal) - will result in a registered UriHandler to trigger.

Extensions should not make any assumptions about the resulting uri and should not alter it in any way. Rather, extensions can e.g. use this uri in an authentication flow, by adding the uri as callback query argument to the server to authenticate to.

Note that if the server decides to add additional query parameters to the uri (e.g. a token or secret), it will appear in the uri that is passed to the UriHandler.

Example of an authentication flow:

vscode.window.registerUriHandler({
  handleUri(uri: vscode.Uri): vscode.ProviderResult<void> {
    if (uri.path === '/did-authenticate') {
      console.log(uri.toString());
    }
  }
});

const callableUri = await vscode.env.asExternalUri(
  vscode.Uri.parse(vscode.env.uriScheme + '://my.extension/did-authenticate')
);
await vscode.env.openExternal(callableUri);

Note that extensions should not cache the result of asExternalUri as the resolved uri may become invalid due to a system or user action — for example, in remote cases, a user may close a port forwarding tunnel that was opened by asExternalUri.

Any other scheme

Any other scheme will be handled as if the provided URI is a workspace URI. In that case, the method will return a URI which, when handled, will make the editor open the workspace.

ParameterDescription
target: Uri
ReturnsDescription
Thenable<Uri>

A uri that can be used on the client machine.

createTelemetryLogger 发送者TelemetrySender选项TelemetryLoggerOptions TelemetryLogger

Creates a new telemetry logger.

ParameterDescription
sender: TelemetrySender

The telemetry sender that is used by the telemetry logger.

options?: TelemetryLoggerOptions

Options for the telemetry logger.

ReturnsDescription
TelemetryLogger

A new telemetry logger

openExternal 目标Uri Thenable <boolean> _ _

Opens a link externally using the default application. Depending on the used scheme this can be:

  • a browser (http:, https:)
  • a mail client (mailto:)
  • VSCode itself (vscode: from vscode.env.uriScheme)

Note that showTextDocument is the right way to open a text document inside the editor, not this function.

ParameterDescription
target: Uri

The uri that should be opened.

ReturnsDescription
Thenable<boolean>

A promise indicating if open was successful.

扩展

用于处理已安装扩展的命名空间。扩展由Extension接口表示,该接口允许对它们进行反射。

扩展编写者可以通过从activate调用返回其 API 公共表面来向其他扩展提供 API。

export function activate(context: vscode.ExtensionContext) {
  let api = {
    sum(a, b) {
      return a + b;
    },
    mul(a, b) {
      return a * b;
    }
  };
  // 'export' public api-surface
  return api;
}

当依赖另一个扩展的 API 时,添加一个extensionDependencies-entry 到package.json,并使用getExtension -function 和exports -property,如下所示:

let mathExt = extensions.getExtension('genius.math');
let importedApi = mathExt.exports;

console.log(importedApi.mul(42, 1));

Variables

all :只读扩展名<任意>[]

All extensions currently known to the system.

Events

onDidChange :事件<void> _ _

An event which fires when extensions.all changes. This can happen when extensions are installed, uninstalled, enabled or disabled.

Functions

getExtension <T> ( extensionId : string ) :扩展<T> | _ _ _ 不明确的

Get an extension by its full identifier in the form of: publisher.name.

ParameterDescription
extensionId: string

An extension identifier.

ReturnsDescription
Extension<T> | undefined

An extension or undefined.

10n

扩展 API 中与本地化相关的功能的命名空间。要正确使用它,您必须l10n在扩展清单中进行定义并拥有bundle.l10n。.json 文件。有关如何生成bundle.l10n的更多信息。.json 文件,请查看 vscode-l10n repo

注意:内置扩展(例如,Git、TypeScript 语言功能、GitHub 身份验证)不包含在l10n属性要求中。换句话说,他们不需要l10n在扩展清单中指定 a,因为他们的翻译字符串来自语言包。

Variables

捆绑 | 不明确的

The bundle of localized strings that have been loaded for the extension. It's undefined if no bundle has been loaded. The bundle is typically not loaded if there was no bundle found or when we are running with the default language.

乌里乌里| 不明确的

The URI of the localization bundle that has been loaded for the extension. It's undefined if no bundle has been loaded. The bundle is typically not loaded if there was no bundle found or when we are running with the default language.

Functions

t (消息:字符串, ... args :数组 <字符串|数字|布尔值> ) :字符串

Marks a string for localization. If a localized bundle is available for the language specified by env.language and the bundle has a localized value for this message, then that localized value will be returned (with injected args values for any templated values).

Example

l10n.t('Hello {0}!', 'World');
ParameterDescription
message: string

The message to localize. Supports index templating where strings like {0} and {1} are replaced by the item at that index in the args array.

...args: Array<string | number | boolean>

The arguments to be used in the localized string. The index of the argument is used to match the template placeholder in the localized string.

ReturnsDescription
string

localized string with injected arguments.

t (消息:字符串, args :记录<字符串,任意> ) :字符串

Marks a string for localization. If a localized bundle is available for the language specified by env.language and the bundle has a localized value for this message, then that localized value will be returned (with injected args values for any templated values).

Example

l10n.t('Hello {name}', { name: 'Erich' });
ParameterDescription
message: string

The message to localize. Supports named templating where strings like {foo} and {bar} are replaced by the value in the Record for that key (foo, bar, etc).

args: Record<string, any>

The arguments to be used in the localized string. The name of the key in the record is used to match the template placeholder in the localized string.

ReturnsDescription
string

localized string with injected arguments.

t ( options : {args: Array< string | number | boolean > | Record < string , any >, comment: string | string [], message: string } ) : string

Marks a string for localization. If a localized bundle is available for the language specified by env.language and the bundle has a localized value for this message, then that localized value will be returned (with injected args values for any templated values).

ParameterDescription
options: {args: Array<string | number | boolean> | Record<string, any>, comment: string | string[], message: string}

The options to use when localizing the message.

ReturnsDescription
string

localized string with injected arguments.

语言

用于参与特定于语言的编辑器功能的命名空间,例如 IntelliSense、代码操作、诊断等。

存在许多编程语言,并且在语法、语义和范例方面存在巨大差异。尽管如此,自动单词完成、代码导航或代码检查等功能已经在不同编程语言的不同工具中变得流行。

该编辑器提供了一个 API,通过已就位的所有 UI 和操作并允许您仅通过提供数据来参与,可以轻松地提供此类通用功能。例如,要提供悬停,您所要做的就是提供一个可以使用 TextDocument返回悬停信息的Position来调用的函数。其余的,如跟踪鼠标、定位悬停、保持悬停稳定等,都由编辑器处理。

languages.registerHoverProvider('javascript', {
  provideHover(document, position, token) {
    return new Hover('I am a hover!');
  }
});

注册是使用文档选择器完成的,该选择器可以是语言 ID,例如javascript,也可以是更复杂的过滤器,例如{ language: 'typescript', scheme: 'file' }。将文档与此类选择器进行匹配将产生一个分数,该分数用于确定是否以及如何使用提供程序。当分数相等时,最后的提供者获胜。对于允许完整数量的功能(例如悬停),分数仅检查为>0,对于其他功能(例如IntelliSense) ,分数用于确定要求提供者参与的顺序。

Events

onDidChangeDiagnostics 事件<DiagnosticChangeEvent> _ _

An Event which fires when the global set of diagnostics changes. This is newly added and removed diagnostics.

Functions

createDiagnosticCollection 名称字符串DiagnosticCollection

Create a diagnostics collection.

ParameterDescription
name?: string

The name of the collection.

ReturnsDescription
DiagnosticCollection

A new diagnostic collection.

createLanguageStatusItem id 字符串选择器DocumentSelector LanguageStatusItem

Creates a new language status item.

ParameterDescription
id: string

The identifier of the item.

selector: DocumentSelector

The document selector that defines for what editors the item shows.

ReturnsDescription
LanguageStatusItem

A new language status item.

getDiagnostics 资源Uri 诊断[]

Get all diagnostics for a given resource.

ParameterDescription
resource: Uri

A resource

ReturnsDescription
Diagnostic[]

An array of diagnostics objects or an empty array.

getDiagnostics ( ) : Array<[ Uri ,诊断[]]>

Get all diagnostics.

ParameterDescription
ReturnsDescription
Array<[Uri, Diagnostic[]]>

An array of uri-diagnostics tuples or an empty array.

getLanguages ( ) : Thenable < string []>

Return the identifiers of all known languages.

ParameterDescription
ReturnsDescription
Thenable<string[]>

Promise resolving to an array of identifier strings.

匹配选择器DocumentSelector文档TextDocument 数字

Compute the match between a document selector and a document. Values greater than zero mean the selector matches the document.

A match is computed according to these rules:

  1. When DocumentSelector is an array, compute the match for each contained DocumentFilter or language identifier and take the maximum value.
  2. A string will be desugared to become the language-part of a DocumentFilter, so "fooLang" is like { language: "fooLang" }.
  3. A DocumentFilter will be matched against the document by comparing its parts with the document. The following rules apply:
    1. When the DocumentFilter is empty ({}) the result is 0
    2. When scheme, language, pattern, or notebook are defined but one doesn't match, the result is 0
    3. Matching against * gives a score of 5, matching via equality or via a glob-pattern gives a score of 10
    4. The result is the maximum value of each match

Samples:

// default document from disk (file-scheme)
doc.uri; //'file:///my/file.js'
doc.languageId; // 'javascript'
match('javascript', doc); // 10;
match({ language: 'javascript' }, doc); // 10;
match({ language: 'javascript', scheme: 'file' }, doc); // 10;
match('*', doc); // 5
match('fooLang', doc); // 0
match(['fooLang', '*'], doc); // 5

// virtual document, e.g. from git-index
doc.uri; // 'git:/my/file.js'
doc.languageId; // 'javascript'
match('javascript', doc); // 10;
match({ language: 'javascript', scheme: 'git' }, doc); // 10;
match('*', doc); // 5

// notebook cell document
doc.uri; // `vscode-notebook-cell:///my/notebook.ipynb#gl65s2pmha`;
doc.languageId; // 'python'
match({ notebookType: 'jupyter-notebook' }, doc); // 10
match({ notebookType: 'fooNotebook', language: 'python' }, doc); // 0
match({ language: 'python' }, doc); // 10
match({ notebookType: '*' }, doc); // 5
ParameterDescription
selector: DocumentSelector

A document selector.

document: TextDocument

A text document.

ReturnsDescription
number

A number >0 when the selector matches and 0 when the selector does not match.

registerCallHierarchyProvider 选择器DocumentSelector提供者CallHierarchyProvider 一次性

Register a call hierarchy provider.

ParameterDescription
selector: DocumentSelector

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

provider: CallHierarchyProvider

A call hierarchy provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerCodeActionsProvider 选择器DocumentSelector 提供CodeActionProvider <CodeAction> ,元数据CodeActionProviderMetadata 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: CodeActionProvider<CodeAction>

A code action provider.

metadata?: CodeActionProviderMetadata

Metadata about the kind of code actions the provider provides.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerCodeLensProvider 选择DocumentSelector,提供CodeLensProvider <CodeLens> 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: CodeLensProvider<CodeLens>

A code lens provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerColorProvider 选择器DocumentSelector提供者DocumentColorProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentColorProvider

A color provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerCompletionItemProvider 选择器DocumentSelector提供者CompletionItemProvider <CompletionItem>,... triggerCharacters 字符串[ ] 一次性

Register a completion provider.

Multiple providers can be registered for a language. In that case providers are sorted by their score and groups of equal score are sequentially asked for completion items. The process stops when one or many providers of a group return a result. A failing provider (rejected promise or exception) will not fail the whole operation.

A completion item provider can be associated with a set of triggerCharacters. When trigger characters are being typed, completions are requested but only from providers that registered the typed character. Because of that trigger characters should be different than word characters, a common trigger character is . to trigger member completions.

ParameterDescription
selector: DocumentSelector

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

provider: CompletionItemProvider<CompletionItem>

A completion provider.

...triggerCharacters: string[]

Trigger completion when the user types one of the characters.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDeclarationProvider 选择器DocumentSelector提供者DeclarationProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DeclarationProvider

A declaration provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDefinitionProvider 选择器DocumentSelector提供者DefinitionProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DefinitionProvider

A definition provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentDropEditProvider 选择器DocumentSelector提供者DocumentDropEditProvider 一次性

Registers a new DocumentDropEditProvider.

ParameterDescription
selector: DocumentSelector

A selector that defines the documents this provider applies to.

provider: DocumentDropEditProvider

A drop provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when disposed of.

registerDocumentFormattingEditProvider 选择器DocumentSelector提供者DocumentFormattingEditProvider 一次性

Register a formatting provider for a 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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentFormattingEditProvider

A document formatting edit provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentHighlightProvider 选择器DocumentSelector提供者DocumentHighlightProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentHighlightProvider

A document highlight provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentLinkProvider 选择DocumentSelector提供DocumentLinkProvider <DocumentLink> 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentLinkProvider<DocumentLink>

A document link provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentRangeFormattingEditProvider 选择器DocumentSelector提供者DocumentRangeFormattingEditProvider 一次性

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 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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentRangeFormattingEditProvider

A document range formatting edit provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentRangeSemanticTokensProvider 选择器DocumentSelector提供者DocumentRangeSemanticTokensProvider图例SemanticTokensLegend 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentRangeSemanticTokensProvider

A document range semantic tokens provider.

legend: SemanticTokensLegend
ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentSemanticTokensProvider 选择器DocumentSelector提供者DocumentSemanticTokensProvider图例SemanticTokensLegend 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentSemanticTokensProvider

A document semantic tokens provider.

legend: SemanticTokensLegend
ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerDocumentSymbolProvider 选择器DocumentSelector提供者DocumentSymbolProvidermetaData DocumentSymbolProviderMetadata 一次性

Register a document symbol 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.

ParameterDescription
selector: DocumentSelector

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

provider: DocumentSymbolProvider

A document symbol provider.

metaData?: DocumentSymbolProviderMetadata

metadata about the provider

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerEvaluatableExpressionProvider 选择器DocumentSelector提供者EvaluatableExpressionProvider 一次性

Register a provider that locates evaluatable expressions in text documents. The editor will evaluate the expression in the active debug session and will show the result in the debug hover.

If multiple providers are registered for a language an arbitrary provider will be used.

ParameterDescription
selector: DocumentSelector

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

provider: EvaluatableExpressionProvider

An evaluatable expression provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerFoldingRangeProvider 选择器DocumentSelector提供者FoldingRangeProvider 一次性

Register a folding range provider.

Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. If multiple folding ranges start at the same position, only the range of the first registered provider is used. If a folding range overlaps with an other range that has a smaller position, it is also ignored.

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

ParameterDescription
selector: DocumentSelector

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

provider: FoldingRangeProvider

A folding range provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerHoverProvider 选择器DocumentSelector提供者HoverProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: HoverProvider

A hover provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerImplementationProvider 选择器DocumentSelector提供者ImplementationProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: ImplementationProvider

An implementation provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerInlayHintsProvider 选择DocumentSelector提供InlayHintsProvider <InlayHint> 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: InlayHintsProvider<InlayHint>

An inlay hints provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerInlineCompletionItemProvider 选择器DocumentSelector提供者InlineCompletionItemProvider 一次性

Registers an inline completion 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.

ParameterDescription
selector: DocumentSelector

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

provider: InlineCompletionItemProvider

An inline completion provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerInlineValuesProvider 选择器DocumentSelector提供者InlineValuesProvider 一次性

Register a provider that returns data for the debugger's 'inline value' feature. Whenever the generic debugger has stopped in a source file, providers registered for the language of the file are called to return textual data that will be shown in the editor at the end of lines.

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.

ParameterDescription
selector: DocumentSelector

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

provider: InlineValuesProvider

An inline values provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerLinkedEditingRangeProvider 选择器DocumentSelector提供者LinkedEditingRangeProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: LinkedEditingRangeProvider

A linked editing range provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerOnTypeFormattingEditProvider 选择器DocumentSelector提供者OnTypeFormattingEditProviderfirstTriggerCharacter 字符串... moreTriggerCharacter 字符串[] 一次性

Register a formatting provider that works on type. The provider is active when the user enables the setting editor.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.

ParameterDescription
selector: DocumentSelector

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

provider: OnTypeFormattingEditProvider

An on type formatting edit provider.

firstTriggerCharacter: string

A character on which formatting should be triggered, like }.

...moreTriggerCharacter: string[]

More trigger characters.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerReferenceProvider 选择器DocumentSelector提供者ReferenceProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: ReferenceProvider

A reference provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerRenameProvider 选择器DocumentSelector提供者RenameProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: RenameProvider

A rename provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerSelectionRangeProvider 选择器DocumentSelector提供者SelectionRangeProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: SelectionRangeProvider

A selection range provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerSignatureHelpProvider 选择器DocumentSelector提供者SignatureHelpProvider... triggerCharacters 字符串[] 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: SignatureHelpProvider

A signature help provider.

...triggerCharacters: string[]

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

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerSignatureHelpProvider 选择器DocumentSelector提供者SignatureHelpProvider元数据SignatureHelpProviderMetadata 一次性

ParameterDescription
selector: DocumentSelector

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

provider: SignatureHelpProvider

A signature help provider.

metadata: SignatureHelpProviderMetadata

Information about the provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerTypeDefinitionProvider 选择器DocumentSelector提供者TypeDefinitionProvider 一次性

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.

ParameterDescription
selector: DocumentSelector

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

provider: TypeDefinitionProvider

A type definition provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerTypeHierarchyProvider 选择器DocumentSelector提供者TypeHierarchyProvider 一次性

Register a type hierarchy provider.

ParameterDescription
selector: DocumentSelector

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

provider: TypeHierarchyProvider

A type hierarchy provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerWorkspaceSymbolProvider 提供WorkspaceSymbolProvider <SymbolInformation> 一次性_

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.

ParameterDescription
provider: WorkspaceSymbolProvider<SymbolInformation>

A workspace symbol provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

setLanguageConfiguration 语言字符串配置LanguageConfiguration 一次性

Set a language configuration for a language.

ParameterDescription
language: string

A language identifier like typescript.

configuration: LanguageConfiguration

Language configuration.

ReturnsDescription
Disposable

A Disposable that unsets this configuration.

setTextDocumentLanguage (文档: TextDocument , languageId : string ) : Thenable < TextDocument >

Set (and change) the language that is associated with the given document.

Note that calling this function will trigger the onDidCloseTextDocument event followed by the onDidOpenTextDocument event.

ParameterDescription
document: TextDocument

The document which language is to be changed

languageId: string

The new language identifier.

ReturnsDescription
Thenable<TextDocument>

A thenable that resolves with the updated document.

笔记本

笔记本的命名空间。

笔记本功能由三个松散耦合的组件组成:

  1. NotebookSerializer使编辑器能够打开、显示和保存笔记本
  2. NotebookController拥有笔记本的执行,例如它们从代码单元创建输出。
  3. NotebookRenderer 在编辑器中呈现笔记本输出。它们在单独的上下文中运行。

Functions

createNotebookController ( id : string , notebookType : string , label : string , handler ? : (cells: NotebookCell [], notebook: NotebookDocument , 控制器: NotebookController ) => void | Thenable < void > ) : NotebookController

Creates a new notebook controller.

ParameterDescription
id: string

Identifier of the controller. Must be unique per extension.

notebookType: string

A notebook type for which this controller is for.

label: string

The label of the controller.

handler?: (cells: NotebookCell[], notebook: NotebookDocument, controller: NotebookController) => void | Thenable<void>

The execute-handler of the controller.

ReturnsDescription
NotebookController

A new notebook controller.

createRendererMessaging ( rendererId : string ) : NotebookRendererMessaging

Creates a new messaging instance used to communicate with a specific renderer.

  • Note 1: Extensions can only create renderer that they have defined in their package.json-file
  • Note 2: A renderer only has access to messaging if requiresMessaging is set to always or optional in its notebookRenderer contribution.
ParameterDescription
rendererId: string

The renderer ID to communicate with

ReturnsDescription
NotebookRendererMessaging

A new notebook renderer messaging object.

registerNotebookCellStatusBarItemProvider notebookType 字符串提供程序NotebookCellStatusBarItemProvider 一次性

Register a cell statusbar item provider for the given notebook type.

ParameterDescription
notebookType: string

The notebook type to register for.

provider: NotebookCellStatusBarItemProvider

A cell status bar provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

供应链管理

用于源代码控制管理的命名空间。

Variables

输入框源控件输入框

The input box for the last source control created by the extension.

  • deprecated - Use SourceControl.inputBox instead

Functions

createSourceControl ( id : string , label : string , rootUri ? : Uri ) : SourceControl

Creates a new source control instance.

ParameterDescription
id: string

An id for the source control. Something short, e.g.: git.

label: string

A human-readable string for the source control. E.g.: Git.

rootUri?: Uri

An optional Uri of the root of the source control. E.g.: Uri.parse(workspaceRoot).

ReturnsDescription
SourceControl

An instance of source control.

任务

任务功能的命名空间。

Variables

taskExecutions :只读TaskExecution []

The currently active task executions or an empty array.

Events

onDidEndTask :事件<TaskEndEvent> _ _

Fires when a task ends.

onDidEndTaskProcess :事件<TaskProcessEndEvent> _ _

Fires when the underlying process has ended. This event will not fire for tasks that don't execute an underlying process.

onDidStartTask :事件<TaskStartEvent> _ _

Fires when a task starts.

onDidStartTaskProcess :事件<TaskProcessStartEvent> _ _

Fires when the underlying process has been started. This event will not fire for tasks that don't execute an underlying process.

Functions

executeTask (任务:任务) : Thenable <TaskExecution> _ _

Executes a task that is managed by the editor. The returned task execution can be used to terminate the task.

  • throws - When running a ShellExecution or a ProcessExecution task in an environment where a new process cannot be started. In such an environment, only CustomExecution tasks can be run.
ParameterDescription
task: Task

the task to execute

ReturnsDescription
Thenable<TaskExecution>

A thenable that resolves to a task execution.

fetchTasks (过滤器? : TaskFilter ) : Thenable < Task []>

Fetches all tasks available in the systems. This includes tasks from tasks.json files as well as tasks from task providers contributed through extensions.

ParameterDescription
filter?: TaskFilter

Optional filter to select tasks of a certain type or version.

ReturnsDescription
Thenable<Task[]>

A thenable that resolves to an array of tasks.

registerTaskProvider 类型字符串提供者TaskProvider <任务> 一次性

Register a task provider.

ParameterDescription
type: string

The task kind type this provider is registered for.

provider: TaskProvider<Task>

A task provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

测试

用于测试功能的命名空间。通过注册TestController实例,然后添加TestItems来发布测试 。控制器还可以描述如何通过创建一个或多个 TestRunProfile实例来运行测试。

Functions

createTestController id 字符串标签字符串TestController

Creates a new test controller.

ParameterDescription
id: string

Identifier for the controller, must be globally unique.

label: string

A human-readable label for the controller.

ReturnsDescription
TestController

An instance of the TestController.

窗户

用于处理编辑器当前窗口的命名空间。即可见且活动的编辑器,以及用于显示消息、选择和要求用户输入的 UI 元素。

Variables

activeColorTheme :颜色主题

The currently active color theme as configured in the settings. The active theme can be changed via the workbench.colorTheme setting.

activeNotebookEditor : NotebookEditor | 不明确的

The currently active notebook editor or undefined. The active editor is the one that currently has focus or, when none has focus, the one that has changed input most recently.

活动终端终端| 不明确的

The currently active terminal or undefined. The active terminal is the one that currently has focus or most recently had focus.

activeTextEditor :文本编辑器| 不明确的

The currently active editor or undefined. The active editor is the one that currently has focus or, when none has focus, the one that has changed input most recently.

状态窗口状态

Represents the current window's state.

tabGroups :选项卡组

Represents the grid widget within the main editor area

终端只读终端[]

The currently opened terminals or an empty array.

visibleNotebookEditors :只读NotebookEditor []

The currently visible notebook editors or an empty array.

可见文本编辑器只读文本编辑器[]

The currently visible editors or an empty array.

Events

onDidChangeActiveColorTheme 事件< ColorTheme >

An Event which fires when the active color theme is changed or has changes.

onDidChangeActiveNotebookEditor 事件< NotebookEditor | 未定义>

An Event which fires when the active notebook editor has changed. Note that the event also fires when the active editor changes to undefined.

onDidChangeActiveTerminal 事件<终端| 未定义>

An Event which fires when the active terminal has changed. Note that the event also fires when the active terminal changes to undefined.

onDidChangeActiveTextEditor :事件< TextEditor | 未定义>

An Event which fires when the active editor has changed. Note that the event also fires when the active editor changes to undefined.

onDidChangeNotebookEditorSelection 事件< NotebookEditorSelectionChangeEvent >

An Event which fires when the notebook editor selections have changed.

onDidChangeNotebookEditorVisibleRanges 事件< NotebookEditorVisibleRangesChangeEvent >

An Event which fires when the notebook editor visible ranges have changed.

onDidChangeTerminalState 事件<终端>

An Event which fires when a terminal's state has changed.

onDidChangeTextEditorOptions 事件< TextEditorOptionsChangeEvent >

An Event which fires when the options of an editor have changed.

onDidChangeTextEditorSelection 事件< TextEditorSelectionChangeEvent >

An Event which fires when the selection in an editor has changed.

onDidChangeTextEditorViewColumn 事件< TextEditorViewColumnChangeEvent >

An Event which fires when the view column of an editor has changed.

onDidChangeTextEditorVisibleRanges 事件< TextEditorVisibleRangesChangeEvent >

An Event which fires when the visible ranges of an editor has changed.

onDidChangeVisibleNotebookEditors 事件<readonly NotebookEditor []>

An Event which fires when the visible notebook editors has changed.

onDidChangeVisibleTextEditors 事件<readonly TextEditor []>

An Event which fires when the array of visible editors has changed.

onDidChangeWindowState :事件<窗口状态>

An Event which fires when the focus state of the current window changes. The value of the event represents whether the window is focused.

onDidCloseTerminal 事件<终端>

An Event which fires when a terminal is disposed.

onDidOpenTerminal :事件<终端>

An Event which fires when a terminal has been created, either through the createTerminal API or commands.

Functions

创建输入框输入框

Creates a InputBox to let the user enter some text input.

Note that in many cases the more convenient window.showInputBox is easier to use. window.createInputBox should be used when window.showInputBox does not offer the required flexibility.

ParameterDescription
ReturnsDescription
InputBox

A new InputBox.

createOutputChannel (名称:字符串, languageId ? :字符串) : OutputChannel

Creates a new output channel with the given name and language id If language id is not provided, then Log is used as default language id.

You can access the visible or active output channel as a text document from visible editors or active editor and use the language id to contribute language features like syntax coloring, code lens etc.,

ParameterDescription
name: string

Human-readable string which will be used to represent the channel in the UI.

languageId?: string

The identifier of the language associated with the channel.

ReturnsDescription
OutputChannel

A new output channel.

createOutputChannel (名称: string ,选项: {log: true } ) : LogOutputChannel

Creates a new log output channel with the given name.

ParameterDescription
name: string

Human-readable string which will be used to represent the channel in the UI.

options: {log: true}

Options for the log output channel.

ReturnsDescription
LogOutputChannel

A new log output channel.

createQuickPick < T 扩展QuickPickItem > ( ) : QuickPick < T >

Creates a QuickPick to let the user pick an item from a list of items of type T.

Note that in many cases the more convenient window.showQuickPick is easier to use. window.createQuickPick should be used when window.showQuickPick does not offer the required flexibility.

ParameterDescription
ReturnsDescription
QuickPick<T>

A new QuickPick.

createStatusBarItem id 字符串对齐方式StatusBarAlignment优先级数字StatusBarItem

Creates a status bar item.

ParameterDescription
id: string

The identifier of the item. Must be unique within the extension.

alignment?: StatusBarAlignment

The alignment of the item.

priority?: number

The priority of the item. Higher values mean the item should be shown more to the left.

ReturnsDescription
StatusBarItem

A new status bar item.

createStatusBarItem 对齐StatusBarAlignment优先级数字StatusBarItem

Creates a status bar item.

See also createStatusBarItem for creating a status bar item with an identifier.

ParameterDescription
alignment?: StatusBarAlignment

The alignment of the item.

priority?: number

The priority of the item. Higher values mean the item should be shown more to the left.

ReturnsDescription
StatusBarItem

A new status bar item.

createTerminal (名称? :字符串, shellPath ? :字符串, shellArgs ? :字符串| 只读字符串[] ) :终端

Creates a Terminal with a backing shell process. The cwd of the terminal will be the workspace directory if it exists.

  • throws - When running in an environment where a new process cannot be started.
ParameterDescription
name?: string

Optional human-readable string which will be used to represent the terminal in the UI.

shellPath?: string

Optional path to a custom shell executable to be used in the terminal.

shellArgs?: string | readonly string[]

Optional args for the custom shell executable. A string can be used on Windows only which allows specifying shell args in command-line format.

ReturnsDescription
Terminal

A new Terminal.

创建终端选项终端选项终端

Creates a Terminal with a backing shell process.

  • throws - When running in an environment where a new process cannot be started.
ParameterDescription
options: TerminalOptions

A TerminalOptions object describing the characteristics of the new terminal.

ReturnsDescription
Terminal

A new Terminal.

创建终端选项ExtensionTerminalOptions 终端

Creates a Terminal where an extension controls its input and output.

ParameterDescription
options: ExtensionTerminalOptions

An ExtensionTerminalOptions object describing the characteristics of the new terminal.

ReturnsDescription
Terminal

A new Terminal.

createTextEditorDecorationType (选项: DecorationRenderOptions ) : TextEditorDecorationType

Create a TextEditorDecorationType that can be used to add decorations to text editors.

ParameterDescription
options: DecorationRenderOptions

Rendering options for the decoration type.

ReturnsDescription
TextEditorDecorationType

A new decoration type instance.

createTreeView <T> ( viewId : string , options : TreeViewOptions < T > ) : TreeView < T > _ _

Create a TreeView for the view contributed using the extension point views.

ParameterDescription
viewId: string

Id of the view contributed using the extension point views.

options: TreeViewOptions<T>

Options for creating the TreeView

ReturnsDescription
TreeView<T>

createWebviewPanel ( viewType : string , title : string , showOptions : ViewColumn | {preserveFocus: boolean , viewColumn: ViewColumn }, options ? : WebviewPanelOptions & WebviewOptions ) : WebviewPanel

Create and show a new webview panel.

ParameterDescription
viewType: string

Identifies the type of the webview panel.

title: string

Title of the panel.

showOptions: ViewColumn | {preserveFocus: boolean, viewColumn: ViewColumn}

Where to show the webview in the editor. If preserveFocus is set, the new webview will not take focus.

options?: WebviewPanelOptions & WebviewOptions

Settings for the new panel.

ReturnsDescription
WebviewPanel

New webview panel.

registerCustomEditorProvider ( viewType : string ,提供者: CustomTextEditorProvider | CustomReadonlyEditorProvider < CustomDocument > | CustomEditorProvider < CustomDocument >, options ? : {supportsMultipleEditorsPerDocument: boolean , webviewOptions: WebviewPanelOptions } ) :一次性

Register a provider for custom editors for the viewType contributed by the customEditors extension point.

When a custom editor is opened, an onCustomEditor:viewType activation event is fired. Your extension must register a CustomTextEditorProvider, CustomReadonlyEditorProvider, CustomEditorProviderfor viewType as part of activation.

ParameterDescription
viewType: string

Unique identifier for the custom editor provider. This should match the viewType from the customEditors contribution point.

provider: CustomTextEditorProvider | CustomReadonlyEditorProvider<CustomDocument> | CustomEditorProvider<CustomDocument>

Provider that resolves custom editors.

options?: {supportsMultipleEditorsPerDocument: boolean, webviewOptions: WebviewPanelOptions}

Options for the provider.

ReturnsDescription
Disposable

Disposable that unregisters the provider.

registerFileDecorationProvider 提供者FileDecorationProvider 一次性

Register a file decoration provider.

ParameterDescription
provider: FileDecorationProvider
ReturnsDescription
Disposable

A Disposable that unregisters the provider.

registerTerminalLinkProvider (提供者: TerminalLinkProvider < TerminalLink > ) :一次性

Register provider that enables the detection and handling of links within the terminal.

ParameterDescription
provider: TerminalLinkProvider<TerminalLink>

The provider that provides the terminal links.

ReturnsDescription
Disposable

Disposable that unregisters the provider.

registerTerminalProfileProvider id 字符串提供者TerminalProfileProvider 一次性

Registers a provider for a contributed terminal profile.

ParameterDescription
id: string

The ID of the contributed terminal profile.

provider: TerminalProfileProvider

The terminal profile provider.

ReturnsDescription
Disposable

A disposable that unregisters the provider.

registerTreeDataProvider <T> viewId 字符串treeDataProvider TreeDataProvider <T> )一次性_ _ _ _

Register a TreeDataProvider for the view contributed using the extension point views. This will allow you to contribute data to the TreeView and update if the data changes.

Note: To get access to the TreeView and perform operations on it, use createTreeView.

ParameterDescription
viewId: string

Id of the view contributed using the extension point views.

treeDataProvider: TreeDataProvider<T>

A TreeDataProvider that provides tree data for the view

ReturnsDescription
Disposable

A disposable that unregisters the TreeDataProvider.

registerUriHandler 处理程序UriHandler 一次性

Registers a uri handler capable of handling system-wide uris. In case there are multiple windows open, the topmost window will handle the uri. A uri handler is scoped to the extension it is contributed from; it will only be able to handle uris which are directed to the extension itself. A uri must respect the following rules:

  • The uri-scheme must be vscode.env.uriScheme;
  • The uri-authority must be the extension id (e.g. my.extension);
  • The uri-path, -query and -fragment parts are arbitrary.

For example, if the my.extension extension registers a uri handler, it will only be allowed to handle uris with the prefix product-name://my.extension.

An extension can only register a single uri handler in its entire activation lifetime.

  • Note: There is an activation event onUri that fires when a uri directed for the current extension is about to be handled.
ParameterDescription
handler: UriHandler

The uri handler to register for this extension.

ReturnsDescription
Disposable

A disposable that unregisters the handler.

registerWebviewPanelSerializer viewType 字符串序列化器WebviewPanelSerializer <未知> 一次性

Registers a webview panel serializer.

Extensions that support reviving should have an "onWebviewPanel:viewType" activation event and make sure that registerWebviewPanelSerializer is called during activation.

Only a single serializer may be registered at a time for a given viewType.

ParameterDescription
viewType: string

Type of the webview panel that can be serialized.

serializer: WebviewPanelSerializer<unknown>

Webview serializer.

ReturnsDescription
Disposable

A disposable that unregisters the serializer.

registerWebviewViewProvider ( viewId : string , provider : WebviewViewProvider , options ? : {webviewOptions: {retainContextWhenHidden: boolean }} ) :一次性

Register a new provider for webview views.

ParameterDescription
viewId: string

Unique id of the view. This should match the id from the views contribution in the package.json.

provider: WebviewViewProvider

Provider for the webview views.

options?: {webviewOptions: {retainContextWhenHidden: boolean}}
ReturnsDescription
Disposable

Disposable that unregisters the provider.

setStatusBarMessage 文本字符串hideAfterTimeout 数字一次性

Set a message to the status bar. This is a short hand for the more powerful status bar items.

ParameterDescription
text: string

The message to show, supports icon substitution as in status bar items.

hideAfterTimeout: number

Timeout in milliseconds after which the message will be disposed.

ReturnsDescription
Disposable

A disposable which hides the status bar message.

setStatusBarMessage ( text : string , hideWhenDone : Thenable <any> ) : Disposable _ _

Set a message to the status bar. This is a short hand for the more powerful status bar items.

ParameterDescription
text: string

The message to show, supports icon substitution as in status bar items.

hideWhenDone: Thenable<any>

Thenable on which completion (resolve or reject) the message will be disposed.

ReturnsDescription
Disposable

A disposable which hides the status bar message.

setStatusBarMessage ( text : string ) 一次性

Set a message to the status bar. This is a short hand for the more powerful status bar items.

Note that status bar messages stack and that they must be disposed when no longer used.

ParameterDescription
text: string

The message to show, supports icon substitution as in status bar items.

ReturnsDescription
Disposable

A disposable which hides the status bar message.

showErrorMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>

Show an error message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showErrorMessage < T 扩展字符串> (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>

Show an error message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showErrorMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>

Show an error message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showErrorMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>

Show an error message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showInformationMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>

Show an information message to users. Optionally provide an array of items which will be presented as clickable buttons.

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showInformationMessage < T extends string > ( message : string , options : MessageOptions , ... items : T [] ) : Thenable < T | 未定义>

Show an information message to users. Optionally provide an array of items which will be presented as clickable buttons.

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showInformationMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>

Show an information message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showInformationMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>

Show an information message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showInputBox (选项? : InputBoxOptions ,令牌? : CancellationToken ) : Thenable <字符串| 未定义>

Opens an input box to ask the user for input.

The returned value will be undefined if the input box was canceled (e.g. pressing ESC). Otherwise the returned value will be the string typed by the user or an empty string if the user did not type anything but dismissed the input box with OK.

ParameterDescription
options?: InputBoxOptions

Configures the behavior of the input box.

token?: CancellationToken

A token that can be used to signal cancellation.

ReturnsDescription
Thenable<string | undefined>

A promise that resolves to a string the user provided or to undefined in case of dismissal.

showNotebookDocument 文档NotebookDocument选项NotebookDocumentShowOptions Thenable <NotebookEditor> _ _

Show the given NotebookDocument in a notebook editor.

ParameterDescription
document: NotebookDocument

A text document to be shown.

options?: NotebookDocumentShowOptions

Editor options to configure the behavior of showing the notebook editor.

ReturnsDescription
Thenable<NotebookEditor>

A promise that resolves to an notebook editor.

showOpenDialog (选项? : OpenDialogOptions ) : Thenable < Uri []| 未定义>

Shows a file open dialog to the user which allows to select a file for opening-purposes.

ParameterDescription
options?: OpenDialogOptions

Options that control the dialog.

ReturnsDescription
Thenable<Uri[] | undefined>

A promise that resolves to the selected resources or undefined.

showQuickPick ( items : readonly string [] | Thenable <readonly string []>, options : QuickPickOptions & {canPickMany: true }, token ? : CancellationToken ) : Thenable < string [] | 未定义>

Shows a selection list allowing multiple selections.

ParameterDescription
items: readonly string[] | Thenable<readonly string[]>

An array of strings, or a promise that resolves to an array of strings.

options: QuickPickOptions & {canPickMany: true}

Configures the behavior of the selection list.

token?: CancellationToken

A token that can be used to signal cancellation.

ReturnsDescription
Thenable<string[] | undefined>

A promise that resolves to the selected items or undefined.

showQuickPick ( items : readonly string [] | Thenable <readonly string []>, options ? : QuickPickOptions , token ? : CancellationToken ) : Thenable < string | 未定义>

Shows a selection list.

ParameterDescription
items: readonly string[] | Thenable<readonly string[]>

An array of strings, or a promise that resolves to an array of strings.

options?: QuickPickOptions

Configures the behavior of the selection list.

token?: CancellationToken

A token that can be used to signal cancellation.

ReturnsDescription
Thenable<string | undefined>

A promise that resolves to the selection or undefined.

showQuickPick < T extends QuickPickItem > ( items : readonly T [] | Thenable <readonly T []>, options : QuickPickOptions & {canPickMany: true }, token ? : CancellationToken ) : Thenable < T [] | 未定义>

Shows a selection list allowing multiple selections.

ParameterDescription
items: readonly T[] | Thenable<readonly T[]>

An array of items, or a promise that resolves to an array of items.

options: QuickPickOptions & {canPickMany: true}

Configures the behavior of the selection list.

token?: CancellationToken

A token that can be used to signal cancellation.

ReturnsDescription
Thenable<T[] | undefined>

A promise that resolves to the selected items or undefined.

showQuickPick < T extends QuickPickItem > ( items : readonly T [] | Thenable <readonly T [] >, options ? : QuickPickOptions , token ? : CancellationToken ) : Thenable < T | 未定义>

Shows a selection list.

ParameterDescription
items: readonly T[] | Thenable<readonly T[]>

An array of items, or a promise that resolves to an array of items.

options?: QuickPickOptions

Configures the behavior of the selection list.

token?: CancellationToken

A token that can be used to signal cancellation.

ReturnsDescription
Thenable<T | undefined>

A promise that resolves to the selected item or undefined.

showSaveDialog (选项? : SaveDialogOptions ) : Thenable < Uri | 未定义>

Shows a file save dialog to the user which allows to select a file for saving-purposes.

ParameterDescription
options?: SaveDialogOptions

Options that control the dialog.

ReturnsDescription
Thenable<Uri | undefined>

A promise that resolves to the selected resource or undefined.

showTextDocument 文档TextDocumentViewColumn保留焦点布尔Thenable <TextEditor> _

Show the given document in a text editor. A column can be provided to control where the editor is being shown. Might change the active editor.

ParameterDescription
document: TextDocument

A text document to be shown.

column?: ViewColumn

A view column in which the editor should be shown. The default is the active. Columns that do not exist will be created as needed up to the maximum of ViewColumn.Nine. Use ViewColumn.Beside to open the editor to the side of the currently active one.

preserveFocus?: boolean

When true the editor will not take focus.

ReturnsDescription
Thenable<TextEditor>

A promise that resolves to an editor.

showTextDocument 文档TextDocument选项TextDocumentShowOptions Thenable <TextEditor> _ _

Show the given document in a text editor. Options can be provided to control options of the editor is being shown. Might change the active editor.

ParameterDescription
document: TextDocument

A text document to be shown.

options?: TextDocumentShowOptions

Editor options to configure the behavior of showing the editor.

ReturnsDescription
Thenable<TextEditor>

A promise that resolves to an editor.

showTextDocument uri Uri选项TextDocumentShowOptions Thenable <TextEditor> _ _

A short-hand for openTextDocument(uri).then(document => showTextDocument(document, options)).

See also workspace.openTextDocument

ParameterDescription
uri: Uri

A resource identifier.

options?: TextDocumentShowOptions

Editor options to configure the behavior of showing the editor.

ReturnsDescription
Thenable<TextEditor>

A promise that resolves to an editor.

showWarningMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>

Show a warning message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showWarningMessage < T extends string > ( message : string , options : MessageOptions , ... items : T [] ) : Thenable < T | 未定义>

Show a warning message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showWarningMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>

Show a warning message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showWarningMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>

Show a warning message.

See also showInformationMessage

ParameterDescription
message: string

The message to show.

options: MessageOptions

Configures the behaviour of the message.

...items: T[]

A set of items that will be rendered as actions in the message.

ReturnsDescription
Thenable<T | undefined>

A thenable that resolves to the selected item or undefined when being dismissed.

showWorkspaceFolderPick 选项WorkspaceFolderPickOptions Thenable < WorkspaceFolder | 未定义>

Shows a selection list of workspace folders to pick from. Returns undefined if no folder is open.

ParameterDescription
options?: WorkspaceFolderPickOptions

Configures the behavior of the workspace folder list.

ReturnsDescription
Thenable<WorkspaceFolder | undefined>

A promise that resolves to the workspace folder or undefined.

withProgress < R > ( options : ProgressOptions , task : (progress: Progress <{increment: number , message: string }>, token: CancellationToken ) => Thenable < R > ) : Thenable < R >

Show progress in the editor. Progress is shown while running the given callback and while the promise it returned isn't resolved nor rejected. The location at which progress should show (and other details) is defined via the passed ProgressOptions.

ParameterDescription
options: ProgressOptions

A ProgressOptions-object describing the options to use for showing progress, like its location

task: (progress: Progress<{increment: number, message: string}>, token: CancellationToken) => Thenable<R>

A callback returning a promise. Progress state can be reported with the provided Progress-object.

To report discrete progress, use increment to indicate how much work has been completed. Each call with a increment value will be summed up and reflected as overall progress until 100% is reached (a value of e.g. 10 accounts for 10% of work done). Note that currently only ProgressLocation.Notification is capable of showing discrete progress.

To monitor if the operation has been cancelled by the user, use the provided CancellationToken. Note that currently only ProgressLocation.Notification is supporting to show a cancel button to cancel the long running operation.

ReturnsDescription
Thenable<R>

The thenable the task-callback returned.

withScmProgress <R> (任务:(进度:进度<数字> ) = > Thenable <R> ) : Thenable <R> _ _

Show progress in the Source Control viewlet while running the given callback and while its returned promise isn't resolve or rejected.

  • deprecated - Use withProgress instead.
ParameterDescription
task: (progress: Progress<number>) => Thenable<R>

A callback returning a promise. Progress increments can be reported with the provided Progress-object.

ReturnsDescription
Thenable<R>

The thenable the task did return.

工作区

用于处理当前工作空间的命名空间。工作区是在编辑器窗口(实例)中打开的一个或多个文件夹的集合。

也可以在没有工作区的情况下打开编辑器。例如,当您通过从平台的文件菜单中选择文件来打开新的编辑器窗口时,您将不会处于工作区中。在此模式下,编辑器的某些功能会减少,但您仍然可以打开文本文件并对其进行编辑。

有关工作区概念的更多信息,请参阅https://vscode.github.net.cn/docs/editor/workspaces 。

工作区提供对侦听fs 事件和查找文件的支持。两者都表现良好并且在编辑器进程之外运行 ,因此应该始终使用它们而不是 Nodejs 等效项。

Variables

fs :文件系统

A file system instance that allows to interact with local and remote files, e.g. vscode.workspace.fs.readDirectory(someUri) allows to retrieve all entries of a directory or vscode.workspace.fs.stat(anotherUri) returns the meta data for a file.

是否受信任布尔值

When true, the user has explicitly trusted the contents of the workspace.

名称字符串| 不明确的

The name of the workspace. undefined when no workspace has been opened.

Refer to https://vscode.github.net.cn/docs/editor/workspaces for more information on the concept of workspaces.

notebookDocuments :只读NotebookDocument []

All notebook documents currently known to the editor.

根路径字符串| 不明确的

The uri of the first entry of workspaceFolders as string. undefined if there is no first entry.

Refer to https://vscode.github.net.cn/docs/editor/workspaces for more information on workspaces.

textDocuments :只读TextDocument []

All text documents currently known to the editor.

工作区文件Uri | 不明确的

The location of the workspace file, for example:

file:///Users/name/Development/myProject.code-workspace

or

untitled:1555503116870

for a workspace that is untitled and not yet saved.

Depending on the workspace that is opened, the value will be:

  • undefined when no workspace is opened
  • the path of the workspace file as Uri otherwise. if the workspace is untitled, the returned URI will use the untitled: scheme

The location can e.g. be used with the vscode.openFolder command to open the workspace again after it has been closed.

Example:

vscode.commands.executeCommand('vscode.openFolder', uriOfWorkspace);

Refer to https://vscode.github.net.cn/docs/editor/workspaces for more information on the concept of workspaces.

Note: it is not advised to use workspace.workspaceFile to write configuration data into the file. You can use workspace.getConfiguration().update() for that purpose which will work both when a single folder is opened as well as an untitled or saved workspace.

workspaceFolders :只读WorkspaceFolder [] | 不明确的

List of workspace folders (0-N) that are open in the editor. undefined when no workspace has been opened.

Refer to https://vscode.github.net.cn/docs/editor/workspaces for more information on workspaces.

Events

onDidChangeConfiguration 事件<ConfigurationChangeEvent> _ _

An event that is emitted when the configuration changed.

onDidChangeNotebookDocument 事件< NotebookDocumentChangeEvent >

An event that is emitted when a notebook has changed.

onDidChangeTextDocument 事件< TextDocumentChangeEvent >

An event that is emitted when a text document is changed. This usually happens when the contents changes but also when other things like the dirty-state changes.

onDidChangeWorkspaceFolders 事件< WorkspaceFoldersChangeEvent >

An event that is emitted when a workspace folder is added or removed.

Note: this event will not fire if the first workspace folder is added, removed or changed, because in that case the currently executing extensions (including the one that listens to this event) will be terminated and restarted so that the (deprecated) rootPath property is updated to point to the first workspace folder.

onDidCloseNotebookDocument 事件< NotebookDocument >

An event that is emitted when a notebook is disposed.

Note 1: There is no guarantee that this event fires when an editor tab is closed.

Note 2: A notebook can be open but not shown in an editor which means this event can fire for a notebook that has not been shown in an editor.

onDidCloseTextDocument 事件< TextDocument >

An event that is emitted when a text document is disposed or when the language id of a text document has been changed.

Note 1: There is no guarantee that this event fires when an editor tab is closed, use the onDidChangeVisibleTextEditors-event to know when editors change.

Note 2: A document can be open but not shown in an editor which means this event can fire for a document that has not been shown in an editor.

onDidCreateFiles :事件< FileCreateEvent >

An event that is emitted when files have been created.

Note: This event is triggered by user gestures, like creating a file from the explorer, or from the workspace.applyEdit-api, but this event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

onDidDeleteFiles 事件< FileDeleteEvent >

An event that is emitted when files have been deleted.

Note 1: This event is triggered by user gestures, like deleting a file from the explorer, or from the workspace.applyEdit-api, but this event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

Note 2: When deleting a folder with children only one event is fired.

onDidGrantWorkspaceTrust 事件<void> _ _

Event that fires when the current workspace has been trusted.

onDidOpenNotebookDocument 事件< NotebookDocument >

An event that is emitted when a notebook is opened.

onDidOpenTextDocument 事件<TextDocument> _ _

An event that is emitted when a text document is opened or when the language id of a text document has been changed.

To add an event listener when a visible text document is opened, use the TextEditor events in the window namespace. Note that:

onDidRenameFiles 事件< FileRenameEvent >

An event that is emitted when files have been renamed.

Note 1: This event is triggered by user gestures, like renaming a file from the explorer, and from the workspace.applyEdit-api, but this event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

Note 2: When renaming a folder with children only one event is fired.

onDidSaveNotebookDocument 事件< NotebookDocument >

An event that is emitted when a notebook is saved.

onDidSaveTextDocument 事件<TextDocument> _ _

An event that is emitted when a text document is saved to disk.

onWillCreateFiles :事件< FileWillCreateEvent >

An event that is emitted when files are being created.

Note 1: This event is triggered by user gestures, like creating a file from the explorer, or from the workspace.applyEdit-api. This event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

Note 2: When this event is fired, edits to files that are are being created cannot be applied.

onWillDeleteFiles 事件< FileWillDeleteEvent >

An event that is emitted when files are being deleted.

Note 1: This event is triggered by user gestures, like deleting a file from the explorer, or from the workspace.applyEdit-api, but this event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

Note 2: When deleting a folder with children only one event is fired.

onWillRenameFiles 事件< FileWillRenameEvent >

An event that is emitted when files are being renamed.

Note 1: This event is triggered by user gestures, like renaming a file from the explorer, and from the workspace.applyEdit-api, but this event is not fired when files change on disk, e.g triggered by another application, or when using the workspace.fs-api.

Note 2: When renaming a folder with children only one event is fired.

onWillSaveNotebookDocument 事件< NotebookDocumentWillSaveEvent >

An event that is emitted when a notebook document will be saved to disk.

Note 1: Subscribers can delay saving by registering asynchronous work. For the sake of data integrity the editor might save without firing this event. For instance when shutting down with dirty files.

Note 2: Subscribers are called sequentially and they can delay saving by registering asynchronous work. Protection against misbehaving listeners is implemented as such:

  • there is an overall time budget that all listeners share and if that is exhausted no further listener is called
  • listeners that take a long time or produce errors frequently will not be called anymore

The current thresholds are 1.5 seconds as overall time budget and a listener can misbehave 3 times before being ignored.

onWillSaveTextDocument 事件< TextDocumentWillSaveEvent >

An event that is emitted when a text document will be saved to disk.

Note 1: Subscribers can delay saving by registering asynchronous work. For the sake of data integrity the editor might save without firing this event. For instance when shutting down with dirty files.

Note 2: Subscribers are called sequentially and they can delay saving by registering asynchronous work. Protection against misbehaving listeners is implemented as such:

  • there is an overall time budget that all listeners share and if that is exhausted no further listener is called
  • listeners that take a long time or produce errors frequently will not be called anymore

The current thresholds are 1.5 seconds as overall time budget and a listener can misbehave 3 times before being ignored.

Functions

applyEdit 编辑WorkspaceEdit,元数据WorkspaceEditMetadata Thenable <boolean> _

Make changes to one or many resources or create, delete, and rename resources as defined by the given workspace edit.

All changes of a workspace edit are applied in the same order in which they have been added. If multiple textual inserts are made at the same position, these strings appear in the resulting text in the order the 'inserts' were made, unless that are interleaved with resource edits. Invalid sequences like 'delete file a' -> 'insert text in file a' cause failure of the operation.

When applying a workspace edit that consists only of text edits an 'all-or-nothing'-strategy is used. A workspace edit with resource creations or deletions aborts the operation, e.g. consecutive edits will not be attempted, when a single edit fails.

ParameterDescription
edit: WorkspaceEdit

A workspace edit.

metadata?: WorkspaceEditMetadata

Optional metadata for the edit.

ReturnsDescription
Thenable<boolean>

A thenable that resolves when the edit could be applied.

asRelativePath ( pathOrUri : string | Uri , includeWorkspaceFolder ? : boolean ) : string

Returns a path that is relative to the workspace folder or folders.

When there are no workspace folders or when the path is not contained in them, the input is returned.

ParameterDescription
pathOrUri: string | Uri

A path or uri. When a uri is given its fsPath is used.

includeWorkspaceFolder?: boolean

When true and when the given path is contained inside a workspace folder the name of the workspace is prepended. Defaults to true when there are multiple workspace folders and false otherwise.

ReturnsDescription
string

A path relative to the root or the input.

createFileSystemWatcher globPattern GlobPatternignoreCreateEvents booleanignoreChangeEvents booleanignoreDeleteEvents boolean FileSystemWatcher

Creates a file system watcher that is notified on file events (create, change, delete) depending on the parameters provided.

By default, all opened workspace folders will be watched for file changes recursively.

Additional paths can be added for file watching by providing a RelativePattern with a base path to watch. If the pattern is complex (e.g. contains ** or path segments), the path will be watched recursively and otherwise will be watched non-recursively (i.e. only changes to the first level of the path will be reported).

Note that requests for recursive file watchers for a base path that is inside the opened workspace are ignored given all opened workspace folders are watched for file changes recursively by default. Non-recursive file watchers however are always supported, even inside the opened workspace because they allow to bypass the configured settings for excludes (files.watcherExclude). If you need to watch in a location that is typically excluded (for example node_modules or .git folder), then you can use a non-recursive watcher in the workspace for this purpose.

If possible, keep the use of recursive watchers to a minimum because recursive file watching is quite resource intense.

Providing a string as globPattern acts as convenience method for watching file events in all opened workspace folders. It cannot be used to add more folders for file watching, nor will it report any file events from folders that are not part of the opened workspace folders.

Optionally, flags to ignore certain kinds of events can be provided.

To stop listening to events the watcher must be disposed.

Note that file events from recursive file watchers may be excluded based on user configuration. The setting files.watcherExclude helps to reduce the overhead of file events from folders that are known to produce many file changes at once (such as node_modules folders). As such, it is highly recommended to watch with simple patterns that do not require recursive watchers where the exclude settings are ignored and you have full control over the events.

Note that symbolic links are not automatically followed for file watching unless the path to watch itself is a symbolic link.

Note that file changes for the path to be watched may not be delivered when the path itself changes. For example, when watching a path /Users/somename/Desktop and the path itself is being deleted, the watcher may not report an event and may not work anymore from that moment on. The underlying behaviour depends on the path that is provided for watching:

  • if the path is within any of the workspace folders, deletions are tracked and reported unless excluded via files.watcherExclude setting
  • if the path is equal to any of the workspace folders, deletions are not tracked
  • if the path is outside of any of the workspace folders, deletions are not tracked

If you are interested in being notified when the watched path itself is being deleted, you have to watch it's parent folder. Make sure to use a simple pattern (such as putting the name of the folder) to not accidentally watch all sibling folders recursively.

Note that the file paths that are reported for having changed may have a different path casing compared to the actual casing on disk on case-insensitive platforms (typically macOS and Windows but not Linux). We allow a user to open a workspace folder with any desired path casing and try to preserve that. This means:

  • if the path is within any of the workspace folders, the path will match the casing of the workspace folder up to that portion of the path and match the casing on disk for children
  • if the path is outside of any of the workspace folders, the casing will match the case of the path that was provided for watching In the same way, symbolic links are preserved, i.e. the file event will report the path of the symbolic link as it was provided for watching and not the target.

Examples

The basic anatomy of a file watcher is as follows:

const watcher = vscode.workspace.createFileSystemWatcher(new vscode.RelativePattern(<folder>, <pattern>));

watcher.onDidChange(uri => { ... }); // listen to files being changed
watcher.onDidCreate(uri => { ... }); // listen to files/folders being created
watcher.onDidDelete(uri => { ... }); // listen to files/folders getting deleted

watcher.dispose(); // dispose after usage

Workspace file watching

If you only care about file events in a specific workspace folder:

vscode.workspace.createFileSystemWatcher(
  new vscode.RelativePattern(vscode.workspace.workspaceFolders[0], '**/*.js')
);

If you want to monitor file events across all opened workspace folders:

vscode.workspace.createFileSystemWatcher('**/*.js');

Note: the array of workspace folders can be empty if no workspace is opened (empty window).

Out of workspace file watching

To watch a folder for changes to *.js files outside the workspace (non recursively), pass in a Uri to such a folder:

vscode.workspace.createFileSystemWatcher(new vscode.RelativePattern(vscode.Uri.file(<path to folder outside workspace>), '*.js'));

And use a complex glob pattern to watch recursively:

vscode.workspace.createFileSystemWatcher(new vscode.RelativePattern(vscode.Uri.file(<path to folder outside workspace>), '**/*.js'));

Here is an example for watching the active editor for file changes:

vscode.workspace.createFileSystemWatcher(
  new vscode.RelativePattern(vscode.window.activeTextEditor.document.uri, '*')
);
ParameterDescription
globPattern: GlobPattern

A glob pattern that controls which file events the watcher should report.

ignoreCreateEvents?: boolean

Ignore when files have been created.

ignoreChangeEvents?: boolean

Ignore when files have been changed.

ignoreDeleteEvents?: boolean

Ignore when files have been deleted.

ReturnsDescription
FileSystemWatcher

A new file system watcher instance. Must be disposed when no longer needed.

findFiles 包括GlobPattern排除GlobPatternmaxResults ?:数字令牌CancellationToken Thenable < Uri [ ]>

Find files across all workspace folders in the workspace.

Example

findFiles('**/*.js', '**/node_modules/**', 10);
ParameterDescription
include: GlobPattern

A glob pattern that defines the files to search for. The glob pattern will be matched against the file paths of resulting matches relative to their workspace. Use a relative pattern to restrict the search results to a workspace folder.

exclude?: GlobPattern

A glob pattern that defines files and folders to exclude. The glob pattern will be matched against the file paths of resulting matches relative to their workspace. When undefined, default file-excludes (e.g. the files.exclude-setting but not search.exclude) will apply. When null, no excludes will apply.

maxResults?: number

An upper-bound for the result.

token?: CancellationToken

A token that can be used to signal cancellation to the underlying search engine.

ReturnsDescription
Thenable<Uri[]>

A thenable that resolves to an array of resource identifiers. Will return no results if no workspace folders are opened.

getConfiguration 部分字符串范围ConfigurationScope WorkspaceConfiguration

Get a workspace configuration object.

When a section-identifier is provided only that part of the configuration is returned. Dots in the section-identifier are interpreted as child-access, like { myExt: { setting: { doIt: true }}} and getConfiguration('myExt.setting').get('doIt') === true.

When a scope is provided configuration confined to that scope is returned. Scope can be a resource or a language identifier or both.

ParameterDescription
section?: string

A dot-separated identifier.

scope?: ConfigurationScope

A scope for which the configuration is asked for.

ReturnsDescription
WorkspaceConfiguration

The full configuration or a subset.

getWorkspaceFolder ( uri : Uri ) : WorkspaceFolder | 不明确的

Returns the workspace folder that contains a given uri.

  • returns undefined when the given uri doesn't match any workspace folder
  • returns the input when the given uri is a workspace folder itself
ParameterDescription
uri: Uri

An uri.

ReturnsDescription
WorkspaceFolder | undefined

A workspace folder or undefined

openNotebookDocument ( uri : Uri ) : Thenable < NotebookDocument >

Open a notebook. Will return early if this notebook is already loaded. Otherwise the notebook is loaded and the onDidOpenNotebookDocument-event fires.

Note that the lifecycle of the returned notebook is owned by the editor and not by the extension. That means an onDidCloseNotebookDocument-event can occur at any time after.

Note that opening a notebook does not show a notebook editor. This function only returns a notebook document which can be shown in a notebook editor but it can also be used for other things.

ParameterDescription
uri: Uri

The resource to open.

ReturnsDescription
Thenable<NotebookDocument>

A promise that resolves to a notebook

openNotebookDocument notebookType 字符串内容NotebookData Thenable <NotebookDocument> _ _

Open an untitled notebook. The editor will prompt the user for a file path when the document is to be saved.

See also workspace.openNotebookDocument

ParameterDescription
notebookType: string

The notebook type that should be used.

content?: NotebookData

The initial contents of the notebook.

ReturnsDescription
Thenable<NotebookDocument>

A promise that resolves to a notebook.

openTextDocument ( uri : Uri ) : Thenable < TextDocument >

Opens a document. Will return early if this document is already open. Otherwise the document is loaded and the didOpen-event fires.

The document is denoted by an Uri. Depending on the scheme the following rules apply:

  • file-scheme: Open a file on disk (openTextDocument(Uri.file(path))). Will be rejected if the file does not exist or cannot be loaded.
  • untitled-scheme: Open a blank untitled file with associated path (openTextDocument(Uri.file(path).with({ scheme: 'untitled' }))). The language will be derived from the file name.
  • For all other schemes contributed text document content providers and file system providers are consulted.

Note that the lifecycle of the returned document is owned by the editor and not by the extension. That means an onDidClose-event can occur at any time after opening it.

ParameterDescription
uri: Uri

Identifies the resource to open.

ReturnsDescription
Thenable<TextDocument>

A promise that resolves to a document.

openTextDocument (文件名: string ) : Thenable < TextDocument >

A short-hand for openTextDocument(Uri.file(fileName)).

See also workspace.openTextDocument

ParameterDescription
fileName: string

A name of a file on disk.

ReturnsDescription
Thenable<TextDocument>

A promise that resolves to a document.

openTextDocument (选项? : {内容:字符串, 语言:字符串} ) : Thenable < TextDocument >

Opens an untitled text document. The editor will prompt the user for a file path when the document is to be saved. The options parameter allows to specify the language and/or the content of the document.

ParameterDescription
options?: {content: string, language: string}

Options to control how the document will be created.

ReturnsDescription
Thenable<TextDocument>

A promise that resolves to a document.

registerFileSystemProvider (方案: string ,提供者: FileSystemProvider , options ? : {isCaseSensitive: boolean , isReadonly: boolean } ) :一次性

Register a filesystem provider for a given scheme, e.g. ftp.

There can only be one provider per scheme and an error is being thrown when a scheme has been claimed by another provider or when it is reserved.

ParameterDescription
scheme: string

The uri-scheme the provider registers for.

provider: FileSystemProvider

The filesystem provider.

options?: {isCaseSensitive: boolean, isReadonly: boolean}

Immutable metadata about the provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerNotebookSerializer notebookType 字符串序列化器NotebookSerializer选项NotebookDocumentContentOptions 一次性

Register a notebook serializer.

A notebook serializer must be contributed through the notebooks extension point. When opening a notebook file, the editor will send the onNotebook:<notebookType> activation event, and extensions must register their serializer in return.

ParameterDescription
notebookType: string

A notebook.

serializer: NotebookSerializer

A notebook serializer.

options?: NotebookDocumentContentOptions

Optional context options that define what parts of a notebook should be persisted

ReturnsDescription
Disposable

A Disposable that unregisters this serializer when being disposed.

registerTaskProvider 类型字符串提供者TaskProvider <任务> 一次性

Register a task provider.

  • deprecated - Use the corresponding function on the tasks namespace instead
ParameterDescription
type: string

The task kind type this provider is registered for.

provider: TaskProvider<Task>

A task provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

registerTextDocumentContentProvider 方案字符串提供者TextDocumentContentProvider 一次性

Register a text document content provider.

Only one provider can be registered per scheme.

ParameterDescription
scheme: string

The uri-scheme to register for.

provider: TextDocumentContentProvider

A content provider.

ReturnsDescription
Disposable

A Disposable that unregisters this provider when being disposed.

saveAll ( includeUntitled ? : boolean ) : Thenable < boolean >

Save all dirty files.

ParameterDescription
includeUntitled?: boolean

Also save files that have been created during this session.

ReturnsDescription
Thenable<boolean>

A thenable that resolves when the files have been saved. Will return false for any file that failed to save.

updateWorkspaceFolders ( start : number , deleteCount : number , ... workspaceFoldersToAdd : Array<{name: string , uri: Uri }> ) : boolean

This method replaces deleteCount workspace folders starting at index start by an optional set of workspaceFoldersToAdd on the vscode.workspace.workspaceFolders array. This "splice" behavior can be used to add, remove and change workspace folders in a single operation.

Note: in some cases calling this method may result in the currently executing extensions (including the one that called this method) to be terminated and restarted. For example when the first workspace folder is added, removed or changed the (deprecated) rootPath property is updated to point to the first workspace folder. Another case is when transitioning from an empty or single-folder workspace into a multi-folder workspace (see also: https://vscode.github.net.cn/docs/editor/workspaces).

Use the onDidChangeWorkspaceFolders() event to get notified when the workspace folders have been updated.

Example: adding a new workspace folder at the end of workspace folders

workspace.updateWorkspaceFolders(workspace.workspaceFolders ? workspace.workspaceFolders.length : 0, null, { uri: ...});

Example: removing the first workspace folder

workspace.updateWorkspaceFolders(0, 1);

Example: replacing an existing workspace folder with a new one

workspace.updateWorkspaceFolders(0, 1, { uri: ...});

It is valid to remove an existing workspace folder and add it again with a different name to rename that folder.

Note: it is not valid to call updateWorkspaceFolders() multiple times without waiting for the onDidChangeWorkspaceFolders() to fire.

ParameterDescription
start: number

the zero-based location in the list of currently opened workspace folders from which to start deleting workspace folders.

deleteCount: number

the optional number of workspace folders to remove.

...workspaceFoldersToAdd: Array<{name: string, uri: Uri}>

the optional variable set of workspace folders to add in place of the deleted ones. Each workspace is identified with a mandatory URI and an optional name.

ReturnsDescription
boolean

true if the operation was successfully started and false otherwise if arguments were used that would result in invalid workspace folder state (e.g. 2 folders with the same URI).

无障碍信息

控制屏幕阅读器行为的辅助功能信息。

Properties

标签字符串

Label to be read out by a screen reader once the item has focus.

角色:字符串

Role of the widget which defines how a screen reader interacts with it. The role should be set in special cases when for example a tree-like element behaves like a checkbox. If role is not specified the editor will pick the appropriate role automatically. More about aria roles can be found here https://w3c.github.io/aria/#widget_roles

身份验证强制新会话选项

使用flag 调用authentication.getSession时使用的可选选项forceNewSession

Properties

详细:字符串

An optional message that will be displayed to the user when we ask to re-authenticate. Providing additional context as to why you are asking a user to re-authenticate can help increase the odds that they will accept.

身份验证获取会话选项

Properties

清除会话首选项布尔值

Whether the existing session preference should be cleared.

For authentication providers that support being signed into multiple accounts at once, the user will be prompted to select an account to use when getSession is called. This preference is remembered until getSession is called with this flag.

Note: The preference is extension specific. So if one extension calls getSession, it will not affect the session preference for another extension calling getSession. Additionally, the preference is set for the current workspace and also globally. This means that new workspaces will use the "global" value at first and then when this flag is provided, a new value can be set for that workspace. This also means that pre-existing workspaces will not lose their preference if a new workspace sets this flag.

Defaults to false.

创建如果没有布尔值

Whether login should be performed if there is no matching session.

If true, a modal dialog will be shown asking the user to sign in. If false, a numbered badge will be shown on the accounts activity bar icon. An entry for the extension will be added under the menu to sign in. This allows quietly prompting the user to sign in.

If there is a matching session but the extension has not been granted access to it, setting this to true will also result in an immediate modal dialog, and false will add a numbered badge to the accounts icon.

Defaults to false.

Note: you cannot use this option with silent.

强制新会话:布尔值| 身份验证强制新会话选项

Whether we should attempt to reauthenticate even if there is already a session available.

If true, a modal dialog will be shown asking the user to sign in again. This is mostly used for scenarios where the token needs to be re minted because it has lost some authorization.

If there are no existing sessions and forceNewSession is true, it will behave identically to createIfNone.

This defaults to false.

沉默布尔值

Whether we should show the indication to sign in in the Accounts menu.

If false, the user will be shown a badge on the Accounts menu with an option to sign in for the extension. If true, no indication will be shown.

Defaults to false.

Note: you cannot use this option with any other options that prompt the user like createIfNone.

认证提供者

用于对服务执行身份验证的提供者。

Events

onDidChangeSessions 事件< AuthenticationProviderAuthenticationSessionsChangeEvent >

An Event which fires when the array of sessions has changed, or data within a session has changed.

Methods

createSession 范围只读字符串[ ] Thenable <AuthenticationSession> _

Prompts a user to login.

If login is successful, the onDidChangeSessions event should be fired.

If login fails, a rejected promise should be returned.

If the provider has specified that it does not support multiple accounts, then this should never be called if there is already an existing session matching these scopes.

ParameterDescription
scopes: readonly string[]

A list of scopes, permissions, that the new session should be created with.

ReturnsDescription
Thenable<AuthenticationSession>

A promise that resolves to an authentication session.

getSessions ( scopes ? : readonly string [] ) : Thenable <readonly AuthenticationSession []>

Get a list of sessions.

ParameterDescription
scopes?: readonly string[]

An optional list of scopes. If provided, the sessions returned should match these permissions, otherwise all sessions should be returned.

ReturnsDescription
Thenable<readonly AuthenticationSession[]>

A promise that resolves to an array of authentication sessions.

removeSession ( sessionId : string ) : Thenable <void> _ _

Removes the session corresponding to session id.

If the removal is successful, the onDidChangeSessions event should be fired.

If a session cannot be removed, the provider should reject with an error message.

ParameterDescription
sessionId: string

The id of the session to remove.

ReturnsDescription
Thenable<void>

AuthenticationProviderAuthenticationSessionsChangeEvent

添加、删除或更改AuthenticationSession时触发的事件

Properties

添加只读AuthenticationSession []

The AuthenticationSessions of the AuthenticationProvider that have been added.

更改只读AuthenticationSession []

The AuthenticationSessions of the AuthenticationProvider that have been changed. A session changes when its data excluding the id are updated. An example of this is a session refresh that results in a new access token being set for the session.

删除只读AuthenticationSession []

The AuthenticationSessions of the AuthenticationProvider that have been removed.

身份验证提供者信息

Properties

id 字符串

The unique identifier of the authentication provider.

标签字符串

The human-readable name of the authentication provider.

身份验证提供者选项

用于创建AuthenticationProvider 的选项。

Properties

支持多个帐户布尔值

Whether it is possible to be signed into multiple accounts at once with this provider. If not specified, will default to false.

认证会话

代表当前登录用户的会话。

Properties

访问令牌字符串

The access token.

帐户身份验证会话帐户信息

The account associated with the session.

id 字符串

The identifier of the authentication session.

范围只读字符串[]

The permissions granted by the session's access token. Available scopes are defined by the AuthenticationProvider.

身份验证会话帐户信息

与AuthenticationSession关联的帐户信息。

Properties

id 字符串

The unique identifier of the account.

标签字符串

The human-readable name of the account.

身份验证会话更改事件

添加、删除或更改AuthenticationSession时触发的事件

Properties

提供者身份验证提供者信息

The AuthenticationProvider that has had its sessions change.

自动关闭配对

描述字符串对,在键入开始字符串时将自动插入结束字符串。

Properties

关闭字符串

The closing string that will be automatically inserted when typing the opening string.

不在:语法令牌类型[]

A set of tokens where the pair should not be auto closed.

打开字符串

The string that will trigger the automatic insertion of the closing string.

断点

所有断点类型的基类。

Constructors

断点启用布尔条件字符串hitCondition ?:字符串logMessage ?:字符串断点

Creates a new breakpoint

ParameterDescription
enabled?: boolean

Is breakpoint enabled.

condition?: string

Expression for conditional breakpoints

hitCondition?: string

Expression that controls how many hits of the breakpoint are ignored

logMessage?: string

Log message to display when breakpoint is hit

ReturnsDescription
Breakpoint

Properties

条件:字符串

An optional expression for conditional breakpoints.

启用布尔值

Is breakpoint enabled.

命中条件? :字符串

An optional expression that controls how many hits of the breakpoint are ignored.

id 字符串

The unique ID of the breakpoint.

日志消息:字符串

An optional message that gets logged when this breakpoint is hit. Embedded expressions within {} are interpolated by the debug adapter.

断点更改事件

描述断点集更改的事件。

Properties

添加只读断点[]

Added breakpoints.

更改只读断点[]

Changed breakpoints.

已删除只读断点[]

Removed breakpoints.

呼叫层次结构来电

表示传入调用,例如方法或构造函数的调用者。

Constructors

new CallHierarchyIncomingCall ( item : CallHierarchyItem , fromRanges : Range [] ) : CallHierarchyIncomingCall

Create a new call object.

ParameterDescription
item: CallHierarchyItem

The item making the call.

fromRanges: Range[]

The ranges at which the calls appear.

ReturnsDescription
CallHierarchyIncomingCall

Properties

来自CallHierarchyItem

The item that makes the call.

fromRanges :范围[]

The range at which at which the calls appears. This is relative to the caller denoted by this.from.

调用层次结构项

表示调用层次结构上下文中的函数或构造函数等编程结构。

Constructors

new CallHierarchyItem 种类SymbolKind名称字符串详细信息字符串uri Uri范围范围selectionRange 范围CallHierarchyItem

Creates a new call hierarchy item.

ParameterDescription
kind: SymbolKind
name: string
detail: string
uri: Uri
range: Range
selectionRange: Range
ReturnsDescription
CallHierarchyItem

Properties

详细:字符串

More detail for this item, e.g. the signature of a function.

种类符号种类

The kind of this item.

名称字符串

The name of this item.

范围范围

The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.

选择范围范围

The range that should be selected and revealed when this symbol is being picked, e.g. the name of a function. Must be contained by the range.

标签:只读已弃用[]

Tags for this item.

乌里乌里

The resource identifier of this item.

呼叫层次结构拨出呼叫

表示传出调用,例如从方法中调用 getter 或从构造函数中调用方法等。

Constructors

new CallHierarchyOutgoingCall ( item : CallHierarchyItem , fromRanges : Range [] ) : CallHierarchyOutgoingCall

Create a new call object.

ParameterDescription
item: CallHierarchyItem

The item being called

fromRanges: Range[]

The ranges at which the calls appear.

ReturnsDescription
CallHierarchyOutgoingCall

Properties

fromRanges :范围[]

The range at which this item is called. This is the range relative to the caller, e.g the item passed to provideCallHierarchyOutgoingCalls and not this.to.

调用HierarchyItem

The item that is called.

调用层次提供者

调用层次结构提供程序接口描述了扩展和调用层次结构功能之间的契约,该功能允许浏览函数、方法、构造函数等的调用和调用者。

Methods

准备CallHierarchy 文档TextDocument位置位置令牌CancellationToken ProviderResult < CallHierarchyItem | 调用HierarchyItem []>

Bootstraps call hierarchy by returning the item that is denoted by the given document and position. This item will be used as entry into the call graph. Providers should return undefined or null when there is no item at the given location.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<CallHierarchyItem | CallHierarchyItem[]>

One or multiple call hierarchy items or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

提供CallHierarchyIncomingCalls 项目CallHierarchyItem令牌CancellationToken ProviderResult < CallHierarchyIncomingCall []>

Provide all incoming calls for an item, e.g all callers for a method. In graph terms this describes directed and annotated edges inside the call graph, e.g the given item is the starting node and the result is the nodes that can be reached.

ParameterDescription
item: CallHierarchyItem

The hierarchy item for which incoming calls should be computed.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<CallHierarchyIncomingCall[]>

A set of incoming calls or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

提供CallHierarchyOutgoingCalls 项目CallHierarchyItem令牌CancellationToken ProviderResult < CallHierarchyOutgoingCall []>

Provide all outgoing calls for an item, e.g call calls to functions, methods, or constructors from the given item. In graph terms this describes directed and annotated edges inside the call graph, e.g the given item is the starting node and the result is the nodes that can be reached.

ParameterDescription
item: CallHierarchyItem

The hierarchy item for which outgoing calls should be computed.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<CallHierarchyOutgoingCall[]>

A set of outgoing calls or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

取消错误

应用于表示操作取消的错误类型。

此类型可用于响应取消令牌 被取消或当操作被该操作的执行者取消时。

Constructors

新的 CancellationError ( ) : CancellationError

Creates a new cancellation error.

ParameterDescription
ReturnsDescription
CancellationError

取消令牌

取消令牌被传递到异步或长时间运行的操作以请求取消,例如因为用户继续键入而取消对完成项的请求。

要获取 a 的实例,CancellationToken请使用 CancellationTokenSource

Properties

isCancellationRequested :布尔值

Is true when the token has been cancelled, false otherwise.

onCancellationRequested 事件<任何>

An Event which fires upon cancellation.

取消令牌源

取消源创建并控制取消令牌

Constructors

新的 CancellationTokenSource ( ) : CancellationTokenSource

ParameterDescription
ReturnsDescription
CancellationTokenSource

Properties

令牌取消令牌

The cancellation token of this source.

Methods

取消( ) :无效

Signal cancellation on the token.

ParameterDescription
ReturnsDescription
void

处置无效

Dispose object and free resources.

ParameterDescription
ReturnsDescription
void

字符对

两个字符的元组,就像一对左括号和右括号。

字符对 [字符串字符串]

剪贴板

剪贴板提供对系统剪贴板的读写访问。

Methods

readText ( ) Thenable <字符串>

Read the current clipboard contents as text.

ParameterDescription
ReturnsDescription
Thenable<string>

A thenable that resolves to a string.

writeText 字符串Thenable <void> _ _

Writes text into the clipboard.

ParameterDescription
value: string
ReturnsDescription
Thenable<void>

A thenable that resolves when writing happened.

代码动作

代码操作表示可以在代码中执行的更改,例如修复问题或重构代码。

CodeAction 必须设置edit和/或command。如果两者都提供,则edit首先应用 ,然后执行该命令。

Constructors

新的CodeAction 标题字符串种类CodeActionKind CodeAction

Creates a new code action.

A code action must have at least a title and edits and/or a command.

ParameterDescription
title: string

The title of the code action.

kind?: CodeActionKind

The kind of the code action.

ReturnsDescription
CodeAction

Properties

命令命令

A Command this code action executes.

If this command throws an exception, the editor displays the exception message to users in the editor at the current cursor position.

诊断诊断[]

Diagnostics that this code action resolves.

残疾人 {原因:字符串}

Marks that the code action cannot currently be applied.

  • Disabled code actions are not shown in automatic lightbulb code action menu.

  • Disabled actions are shown as faded out in the code action menu when the user request a more specific type of code action, such as refactorings.

  • If the user has a keybinding that auto applies a code action and only a disabled code actions are returned, the editor will show the user an error message with reason in the editor.

ParameterDescription
reason: string

Human readable description of why the code action is currently disabled.

This is displayed in the code actions UI.

编辑:工作区编辑

A workspace edit this code action performs.

是首选布尔值

Marks this as a preferred action. Preferred actions are used by the auto fix command and can be targeted by keybindings.

A quick fix should be marked preferred if it properly addresses the underlying error. A refactoring should be marked preferred if it is the most reasonable choice of actions to take.

善良:代码动作种类

Kind of the code action.

Used to filter code actions.

标题字符串

A short, human-readable, title for this code action.

代码动作上下文

包含有关运行代码操作的上下文的附加诊断信息。

Properties

诊断只读诊断[]

An array of diagnostics.

CodeActionKind

Requested kind of actions to return.

Actions not of this kind are filtered out before being shown by the lightbulb.

触发种类代码动作触发种类

The reason why code actions were requested.

代码动作种类

一种代码操作。

种类是由 分隔的标识符的分层列表.,例如"refactor.extract.function"

代码操作类型由编辑器用于 UI 元素,例如重构上下文菜单。用户还可以使用命令触发特定类型的代码操作editor.action.codeAction

Static

CodeActionKind

Empty kind.

笔记本CodeActionKind

Base kind for all code actions applying to the enitre notebook's scope. CodeActionKinds using this should always begin with notebook.

This requires that new CodeActions be created for it and contributed via extensions. Pre-existing kinds can not just have the new notebook. prefix added to them, as the functionality is unique to the full-notebook scope.

Notebook CodeActionKinds can be initialized as either of the following (both resulting in notebook.source.xyz):

  • const newKind = CodeActionKind.Notebook.append(CodeActionKind.Source.append('xyz').value)
  • const newKind = CodeActionKind.Notebook.append('source.xyz')

Example Kinds/Actions:

  • notebook.source.organizeImports (might move all imports to a new top cell)
  • notebook.source.normalizeVariableNames (might rename all variables to a standardized casing format)

快速修复CodeActionKind

Base kind for quickfix actions: quickfix.

Quick fix actions address a problem in the code and are shown in the normal code action context menu.

重构CodeActionKind

Base kind for refactoring actions: refactor

Refactoring actions are shown in the refactoring context menu.

重构提取CodeActionKind

Base kind for refactoring extraction actions: refactor.extract

Example extract actions:

  • Extract method
  • Extract function
  • Extract variable
  • Extract interface from class
  • ...

重构内联CodeActionKind

Base kind for refactoring inline actions: refactor.inline

Example inline actions:

  • Inline function
  • Inline variable
  • Inline constant
  • ...

RefactorMove CodeActionKind

Base kind for refactoring move actions: refactor.move

Example move actions:

  • Move a function to a new file
  • Move a property between classes
  • Move method to base class
  • ...

重构重写CodeActionKind

Base kind for refactoring rewrite actions: refactor.rewrite

Example rewrite actions:

  • Convert JavaScript function to class
  • Add or remove parameter
  • Encapsulate field
  • Make method static
  • ...

来源CodeActionKind

Base kind for source actions: source

Source code actions apply to the entire file. They must be explicitly requested and will not show in the normal lightbulb menu. Source actions can be run on save using editor.codeActionsOnSave and are also shown in the source context menu.

SourceFixAll : CodeActionKind

Base kind for auto-fix source actions: source.fixAll.

Fix all actions automatically fix errors that have a clear fix that do not require user input. They should not suppress errors or perform unsafe fixes such as generating new types or classes.

SourceOrganizeImports CodeActionKind

Base kind for an organize imports source action: source.organizeImports.

Constructors

新的CodeActionKind 字符串CodeActionKind

Private constructor, use statix CodeActionKind.XYZ to derive from an existing code action kind.

ParameterDescription
value: string

The value of the kind, such as refactor.extract.function.

ReturnsDescription
CodeActionKind

Properties

字符串

String value of the kind, e.g. "refactor.extract.function".

Methods

附加零件字符串CodeActionKind

Create a new kind by appending a more specific selector to the current kind.

Does not modify the current kind.

ParameterDescription
parts: string
ReturnsDescription
CodeActionKind

包含其他CodeActionKind 布尔值

Checks if other is a sub-kind of this CodeActionKind.

The kind "refactor.extract" for example contains "refactor.extract" and ``"refactor.extract.function", but not "unicorn.refactor.extract", or "refactor.extractAll"orrefactor`.

ParameterDescription
other: CodeActionKind

Kind to check.

ReturnsDescription
boolean

相交其他CodeActionKind 布尔值

Checks if this code action kind intersects other.

The kind "refactor.extract" for example intersects refactor, "refactor.extract" and ``"refactor.extract.function", but not "unicorn.refactor.extract", or "refactor.extractAll"`.

ParameterDescription
other: CodeActionKind

Kind to check.

ReturnsDescription
boolean

代码操作提供者<T>

为代码提供上下文操作。代码操作通常要么修复问题,要么美化/重构代码。

代码操作以几种不同的方式呈现给用户:

  • 灯泡功能,显示当前光标位置处代码操作列表。灯泡的操作列表包括快速修复和重构。
  • 作为用户可以运行的命令,例如Refactor. 用户可以从命令面板或使用键绑定运行它们。
  • 作为源操作,例如Organize Imports.
  • 快速修复显示在问题视图中。
  • 通过设置在保存时应用更改editor.codeActionsOnSave

Methods

ProvideCodeActions 文档TextDocument范围Range | Selection上下文CodeActionContext令牌CancellationToken ProviderResult <Array< Command | >>

Get code actions for a given range in a document.

Only return code actions that are relevant to user for the requested range. Also keep in mind how the returned code actions will appear in the UI. The lightbulb widget and Refactor commands for instance show returned code actions as a list, so do not return a large number of code actions that will overwhelm the user.

ParameterDescription
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 the actions are being requested in the currently active editor.

context: CodeActionContext

Provides additional information about what code actions are being requested. You can use this to see what specific type of code actions are being requested by the editor in order to return more relevant actions and avoid returning irrelevant code actions that the editor will discard.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Array<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.

解析代码操作代码操作T令牌CancellationToken ProviderResult <T>

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.

ParameterDescription
codeAction: T

A code action.

token: CancellationToken

A cancellation token.

ReturnsDescription
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.

代码操作提供者元数据

有关CodeActionProvider提供的代码操作类型的元数据。

Properties

文档: ReadonlyArray<{命令:命令,种类:CodeActionKind }>

Static documentation for a class of code actions.

Documentation from the provider is shown in the code actions menu if either:

  • Code actions of kind are requested by the editor. In this case, the editor will show the documentation that most closely matches the requested code action kind. For example, if a provider has documentation for both Refactor and RefactorExtract, when the user requests code actions for RefactorExtract, the editor will use the documentation for RefactorExtract instead of the documentation for Refactor.

  • Any code actions of kind are returned by the provider.

At most one documentation entry will be shown per provider.

提供的CodeActionKinds :只读CodeActionKind []

List of CodeActionKinds that a CodeActionProvider may return.

This list is used to determine if a given CodeActionProvider should be invoked or not. To avoid unnecessary computation, every CodeActionProvider should list use providedCodeActionKinds. The list of kinds may either be generic, such as [CodeActionKind.Refactor], or list out every kind provided, such as [CodeActionKind.Refactor.Extract.append('function'), CodeActionKind.Refactor.Extract.append('constant'), ...].

代码动作触发器种类

请求代码操作的原因。

Enumeration Members

调用1

Code actions were explicitly requested by the user or by an extension.

自动2

Code actions were requested automatically.

This typically happens when current selection in a file changes, but can also be triggered when file content changes.

代码透镜

代码镜头代表一个命令,应与源文本一起显示,例如引用的数量、运行测试的方法等。

当没有命令与其关联时,代码透镜未解析。出于性能原因,代码镜头的创建和解析应分两个阶段完成。

也可以看看

Constructors

新的CodeLens 范围范围命令命令CodeLens

Creates a new code lens object.

ParameterDescription
range: Range

The range to which this code lens applies.

command?: Command

The command associated to this code lens.

ReturnsDescription
CodeLens

Properties

命令命令

The command this code lens represents.

已解决布尔值

true when there is a command associated.

范围范围

The range in which this code lens is valid. Should only span a single line.

CodeLensProvider<T>

代码镜头提供商将命令添加到源文本中。命令将显示为源文本之间的专用水平线。

Events

onDidChangeCodeLenses 事件<无效>

An optional event to signal that the code lenses from this provider have changed.

Methods

ProvideCodeLenses (文档: TextDocument ,令牌: CancellationToken ) : ProviderResult < T []>

Compute a list of lenses. This call should return as fast as possible and if computing the commands is expensive implementors should only return code lens objects with the range set and implement resolve.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

An array of code lenses or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

解析代码透镜代码透镜T令牌CancellationToken ProviderResult <T>

This function will be called for each visible code lens, usually when scrolling and after calls to compute-lenses.

ParameterDescription
codeLens: T

Code lens that must be resolved.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

The given, resolved code lens or thenable that resolves to such.

颜色

表示 RGBA 空间中的颜色。

Constructors

新颜色红色数字绿色数字蓝色数字alpha 数字颜色

Creates a new color instance.

ParameterDescription
red: number

The red component.

green: number

The green component.

blue: number

The blue component.

alpha: number

The alpha component.

ReturnsDescription
Color

Properties

阿尔法数字

The alpha component of this color in the range [0-1].

蓝色数字

The blue component of this color in the range [0-1].

绿色数字

The green component of this color in the range [0-1].

红色数字

The red component of this color in the range [0-1].

颜色信息

表示文档中的颜色范围。

Constructors

新的 ColorInformation 范围范围颜色颜色ColorInformation

Creates a new color range.

ParameterDescription
range: Range

The range the color appears in. Must not be empty.

color: Color

The value of the color.

ReturnsDescription
ColorInformation

Properties

颜色:颜色

The actual color value for this color range.

范围范围

The range in the document where this color appears.

色彩表现

颜色表示对象描述了颜色应如何表示为文本以及需要进行哪些编辑才能从源代码引用它。

Red对于某些语言,一种颜色可以有多种表示形式,例如 css 可以用常量、十六进制值#ff0000或 rgba 和 hsla 形式表示红色。在 csharp 中,其他表示也适用,例如System.Drawing.Color.Red

Constructors

新的 ColorPresentation (标签: string ) : ColorPresentation

Creates a new color presentation.

ParameterDescription
label: string

The label of this color presentation.

ReturnsDescription
ColorPresentation

Properties

附加文本编辑:文本编辑[]

An optional array of additional text edits that are applied when selecting this color presentation. Edits must not overlap with the main edit nor with themselves.

标签字符串

The label of this color presentation. It will be shown on the color picker header. By default this is also the text that is inserted when selecting this color presentation.

文本编辑? :文本编辑

An edit which is applied to a document when selecting this presentation for the color. When falsy the label is used.

颜色主题

代表颜色主题。

Properties

种类颜色主题种类

The kind of this color theme: light, dark, high contrast dark and high contrast light.

颜色主题种类

代表颜色主题类型。

Enumeration Members

1

A light color theme.

深色2

A dark color theme.

高对比度3

A dark high contrast color theme.

高对比度光4

A light high contrast color theme.

命令

表示对命令的引用。提供一个标题,该标题将用于表示 UI 中的命令,并且可以选择提供一个参数数组,该数组将在调用时传递给命令处理程序函数。

Properties

论据任何[]

Arguments that the command handler should be invoked with.

命令字符串

The identifier of the actual command handler.

See also commands.registerCommand

标题字符串

Title of the command, like save.

工具提示:字符串

A tooltip for the command, when represented in the UI.

评论

评论会显示在编辑器或评论面板中,具体取决于其提供方式。

Properties

作者评论作者信息

The author information of the comment

正文字符串| 降价字符串

The human-readable comment body

上下文值:字符串

Context value of the comment. This can be used to contribute comment specific actions. For example, a comment is given a context value as editable. When contributing actions to comments/comment/title using menus extension point, you can specify context value for key comment in when expression like comment == editable.

    "contributes": {
        "menus": {
            "comments/comment/title": [
                {
                    "command": "extension.deleteComment",
                    "when": "comment == editable"
                }
            ]
        }
    }

This will show action extension.deleteComment only for comments with contextValue is editable.

标签:字符串

Optional label describing the Comment Label will be rendered next to authorName if exists.

模式评论模式

Comment mode of the comment

反应:评论反应[]

Optional reactions of the Comment

时间戳:日期

Optional timestamp that will be displayed in comments. The date will be formatted according to the user's locale and settings.

评论作者信息

评论的作者信息

Properties

图标路径:乌里

The optional icon path for the author

名称字符串

The display name of the author of the comment

评论控制器

Properties

评论范围提供者:评论范围提供者

Optional commenting range provider. Provide a list ranges which support commenting to any given resource uri.

If not provided, users cannot leave any comments.

id 字符串

The id of this comment controller.

标签字符串

The human-readable label of this comment controller.

选项:评论选项

Comment controller options

反应处理程序? : (评论: Comment , 反应: CommentReaction ) => Thenable < void >

Optional reaction handler for creating and deleting reactions on a Comment.

ParameterDescription
comment: Comment
reaction: CommentReaction
ReturnsDescription
Thenable<void>

Methods

createCommentThread ( uri : Uri , range : Range , comments :只读Comment [] ) : CommentThread

Create a comment thread. The comment thread will be displayed in visible text editors (if the resource matches) and Comments Panel once created.

ParameterDescription
uri: Uri

The uri of the document the thread has been created on.

range: Range

The range the comment thread is located within the document.

comments: readonly Comment[]

The ordered comments of the thread.

ReturnsDescription
CommentThread

处置无效

Dispose this comment controller.

Once disposed, all comment threads created by this comment controller will also be removed from the editor and Comments Panel.

ParameterDescription
ReturnsDescription
void

评论范围提供者

评论控制器的评论范围提供者。

Methods

ProvideCommentingRanges 文档TextDocument令牌CancellationToken ProviderResult <范围[]>

Provide a list of ranges which allow new comment threads creation or null for a given document

ParameterDescription
document: TextDocument
token: CancellationToken
ReturnsDescription
ProviderResult<Range[]>

评论模式

评论的评论模式

Enumeration Members

编辑0

Displays the comment editor

预览1

Displays the preview of the comment

评论选项

Properties

占位符:字符串

An optional string to show as placeholder in the comment input box when it's focused.

提示:字符串

An optional string to show on the comment input box when it's collapsed.

评论反应

评论的反应

Properties

作者HasReacted :布尔值

Whether the author of the comment has reacted to this reaction

计数数量

The number of users who have reacted to this reaction

图标路径字符串| 乌里

Icon for the reaction shown in UI.

标签字符串

The human-readable label for the reaction

评论回复

中注册的操作的命令参数comments/commentThread/context

Properties

文本字符串

The value in the comment editor

主题评论主题

The active comment thread

评论规则

描述一种语言的注释如何工作。

Properties

块评论:字符对

The block comment character pair, like /* block comment *&#47;

行评论:字符串

The line comment token, like // this is a comment

评论主题

表示文档中特定范围内的对话的注释集合。

Properties

可以回复布尔值

Whether the thread supports reply. Defaults to true.

collapsibleState : CommentThreadCollapsibleState

Whether the thread should be collapsed or expanded when opening the document. Defaults to Collapsed.

评论只读评论[]

The ordered comments of the thread.

上下文值:字符串

Context value of the comment thread. This can be used to contribute thread specific actions. For example, a comment thread is given a context value as editable. When contributing actions to comments/commentThread/title using menus extension point, you can specify context value for key commentThread in when expression like commentThread == editable.

"contributes": {
  "menus": {
    "comments/commentThread/title": [
      {
        "command": "extension.deleteCommentThread",
        "when": "commentThread == editable"
      }
    ]
  }
}

This will show action extension.deleteCommentThread only for comment threads with contextValue is editable.

标签:字符串

The optional human-readable label describing the Comment Thread

范围范围

The range the comment thread is located within the document. The thread icon will be shown at the last line of the range.

状态:评论线程状态

The optional state of a comment thread, which may affect how the comment is displayed.

乌里乌里

The uri of the document the thread has been created on.

Methods

处置无效

Dispose this comment thread.

Once disposed, this comment thread will be removed from visible editors and Comment Panel when appropriate.

ParameterDescription
ReturnsDescription
void

评论线程可折叠状态

评论线程的可折叠状态

Enumeration Members

折叠: 0

Determines an item is collapsed

扩展1

Determines an item is expanded

评论线程状态

评论线程的状态。

Enumeration Members

未解决0

Unresolved thread state

已解决1

Resolved thread state

完成上下文

包含有关触发完成提供程序的上下文的附加信息 。

Properties

触发字符字符串

Character that triggered the completion item provider.

undefined if the provider was not triggered by a character.

The trigger character is already in the document when the completion provider is triggered.

触发种类完成触发种类

How the completion was triggered.

完成项目

完成项表示建议用于完成正在键入的文本的文本片段。

仅从标签创建完成项就足够了。在这种情况下,完成项将替换单词 ,直到光标带有给定的标签或insertText。否则使用给定的编辑。

在编辑器中选择完成项目时,其定义或合成的文本编辑将应用于所有光标/选择,而附加文本编辑将按提供的方式应用。

也可以看看

Constructors

新的CompletionItem 标签字符串| CompletionItemLabel种类CompletionItemKind CompletionItem

Creates a new completion item.

Completion items must have at least a label which then will be used as insert text as well as for sorting and filtering.

ParameterDescription
label: string | CompletionItemLabel

The label of the completion.

kind?: CompletionItemKind

The kind of the completion.

ReturnsDescription
CompletionItem

Properties

附加文本编辑:文本编辑[]

An optional array of additional text edits that are applied when selecting this completion. Edits must not overlap with the main edit nor with themselves.

命令命令

An optional Command that is executed after inserting this completion. Note that additional modifications to the current document should be described with the additionalTextEdits-property.

提交字符字符串[]

An optional set of characters that when pressed while this completion is active will accept it first and then type that character. Note that all commit characters should have length=1 and that superfluous characters will be ignored.

详细:字符串

A human-readable string with additional information about this item, like type or symbol information.

文档:字符串| 降价字符串

A human-readable string that represents a doc-comment.

过滤文本:字符串

A string that should be used when filtering a set of completion items. When falsy the label is used.

Note that the filter text is matched against the leading word (prefix) which is defined by the range-property.

插入文本:字符串| 片段字符串

A string or snippet that should be inserted in a document when selecting this completion. When falsy the label is used.

保留空白布尔值

Keep whitespace of the insertText as is. By default, the editor adjusts leading whitespace of new lines so that they match the indentation of the line for which the item is accepted - setting this to true will prevent that.

善良:完成项目种类

The kind of this completion item. Based on the kind an icon is chosen by the editor.

标签字符串| 完成项目标签

The label of this completion item. By default this is also the text that is inserted when selecting this completion.

预选布尔值

Select this item when showing. Note that only one completion item can be selected and that the editor decides which item that is. The rule is that the first item of those that match best is selected.

范围范围| {插入:范围,替换:范围}

A range or a insert and replace range selecting the text that should be replaced by this completion item.

When omitted, the range of the current word is used as replace-range and as insert-range the start of the current word to the current position is used.

Note 1: A range must be a single line and it must contain the position at which completion has been requested. Note 2: A insert range must be a prefix of a replace range, that means it must be contained and starting at the same position.

排序文本:字符串

A string that should be used when comparing this item with other items. When falsy the label is used.

Note that sortText is only used for the initial ordering of completion items. When having a leading word (prefix) ordering is based on how well completions match that prefix and the initial ordering is only used when completions match equally well. The prefix is defined by the range-property and can therefore be different for each completion.

标签:只读已弃用[]

Tags for this completion item.

文本编辑? :文本编辑

  • deprecated - Use CompletionItem.insertText and CompletionItem.range instead.

An edit which is applied to a document when selecting this completion. When an edit is provided the value of insertText is ignored.

The Range of the edit must be single-line and on the same line completions were requested at.

完成项目种类

完成项目种类。

Enumeration Members

文字0

The Text completion item kind.

方法1

The Method completion item kind.

功能2

The Function completion item kind.

构造函数3

The Constructor completion item kind.

场数4

The Field completion item kind.

变量5

The Variable completion item kind.

班级6

The Class completion item kind.

接口7

The Interface completion item kind.

模块8

The Module completion item kind.

房产9

The Property completion item kind.

单位10

The Unit completion item kind.

11

The Value completion item kind.

枚举12

The Enum completion item kind.

关键字: 13

The Keyword completion item kind.

片段14

The Snippet completion item kind.

颜色15

The Color completion item kind.

文件16

The File completion item kind.

参考17

The Reference completion item kind.

文件夹18

The Folder completion item kind.

枚举成员19

The EnumMember completion item kind.

常数20

The Constant completion item kind.

结构21

The Struct completion item kind.

活动22

The Event completion item kind.

操作员23

The Operator completion item kind.

类型参数24

The TypeParameter completion item kind.

用户25

The User completion item kind.

问题26

The Issue completion item kind.

完成项目标签

完成项目的结构化标签。

Properties

描述:字符串

An optional string which is rendered less prominently after CompletionItemLabel.detail. Should be used for fully qualified names or file path.

详细:字符串

An optional string which is rendered less prominently directly after label, without any spacing. Should be used for function signatures or type annotations.

标签字符串

The label of this completion item.

By default this is also the text that is inserted when this completion is selected.

完成项目提供者<T>

完成项提供程序接口定义扩展和IntelliSense之间的契约 。

提供者可以通过实现 resolveCompletionItem函数来延迟详细信息文档属性的计算。但是,初始排序和过滤所需的属性(例如、、和)在解析期间不得更改。sortTextfilterTextinsertTextrange

提供者被要求通过用户手势显式地完成,或者在键入单词或触发字符时隐式地要求完成(取决于配置)。

Methods

ProvideCompletionItems (文档: TextDocument ,位置:位置,令牌: CancellationToken ,上下文: CompletionContext ) : ProviderResult < CompletionList < T > | T []>

Provide completion items for the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

context: CompletionContext

How the completion was triggered.

ReturnsDescription
ProviderResult<CompletionList<T> | T[]>

An array of completions, a completion list, or a thenable that resolves to either. The lack of a result can be signaled by returning undefined, null, or an empty array.

solveCompletionItem 项目T令牌CancellationToken ProviderResult <T> _ _

Given a completion item fill in more data, like doc-comment or details.

The editor will only resolve a completion item once.

Note that this function is called when completion items are already showing in the UI or when an item has been selected for insertion. Because of that, no property that changes the presentation (label, sorting, filtering etc) or the (primary) insert behaviour (insertText) can be changed.

This function may fill in additionalTextEdits. However, that means an item might be inserted before resolving is done and in that case the editor will do a best effort to still apply those additional text edits.

ParameterDescription
item: T

A completion item currently active in the UI.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

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

完成项目标签

完成项目标签是调整完成项目渲染的额外注释。

Enumeration Members

已弃用1

Render a completion as obsolete, usually using a strike-out.

完成列表<T>

表示要在编辑器中呈现的完成项目的集合。

Constructors

new CompletionList < T extends CompletionItem > ( items ? : T [], isIncomplete ? : boolean ) : CompletionList < T >

Creates a new completion list.

ParameterDescription
items?: T[]

The completion items.

isIncomplete?: boolean

The list is not complete.

ReturnsDescription
CompletionList<T>

Properties

不完整布尔值

This list is not complete. Further typing should result in recomputing this list.

项目T []

The completion items.

完成触发类型

如何触发完成提供程序

Enumeration Members

调用0

Completion was triggered normally.

触发字符1

Completion was triggered by a trigger character.

触发不完整完成2

Completion was re-triggered as current completion list is incomplete

配置更改事件

描述配置更改的事件

Methods

影响配置部分字符串范围配置范围布尔值

Checks if the given section has changed. If scope is provided, checks if the section has changed for resources under the given scope.

ParameterDescription
section: string

Configuration name, supports dotted names.

scope?: ConfigurationScope

A scope in which to check.

ReturnsDescription
boolean

true if the given section has changed.

配置范围

配置范围可以是“resource”或 languageId 或两者,或者“ TextDocument ”或“ WorkspaceFolder

配置范围Uri | 文本文档| 工作区文件夹| {语言 ID:字符串,uri:Uri }

配置目标

配置目标

Enumeration Members

全球1

Global configuration

工作空间2

Workspace configuration

工作区文件夹3

Workspace folder configuration

定制文件

表示CustomEditorProvider使用的自定义文档。

自定义文档仅在给定的范围内使用CustomEditorProvider。a 的生命周期CustomDocument由编辑器管理。当不再有对 a 的引用时CustomDocument,它就会被丢弃。

Properties

乌里乌里

The associated uri for this document.

Methods

处置无效

Dispose of the custom document.

This is invoked by the editor when there are no more references to a given CustomDocument (for example when all editors associated with the document have been closed.)

ParameterDescription
ReturnsDescription
void

自定义文档备份

CustomDocument的备份。

Properties

id 字符串

Unique identifier for the backup.

This id is passed back to your extension in openCustomDocument when opening a custom editor from a backup.

Methods

删除无效

Delete the current backup.

This is called by the editor when it is clear the current backup is no longer needed, such as when a new backup is made or when the file is saved.

ParameterDescription
ReturnsDescription
void

自定义文档备份上下文

用于实现CustomDocumentBackup 的附加信息。

Properties

目的地:乌里

Suggested file location to write the new backup.

Note that your extension is free to ignore this and use its own strategy for backup.

If the editor is for a resource from the current workspace, destination will point to a file inside ExtensionContext.storagePath. The parent folder of destination may not exist, so make sure to created it before writing the backup to this location.

自定义文档内容更改事件<T>

Properties

文件T

The document that the change is for.

自定义文档编辑事件<T>

Properties

文件T

The document that the edit is for.

标签:字符串

Display name describing the edit.

This will be shown to users in the UI for undo/redo operations.

Methods

重做无效| 然后可<无效>

Redo the edit operation.

This is invoked by the editor when the user redoes this edit. To implement redo, your extension should restore the document and editor to the state they were in just after this edit was added to the editor's internal edit stack by onDidChangeCustomDocument.

ParameterDescription
ReturnsDescription
void | Thenable<void>

撤消无效| 然后可<无效>

Undo the edit operation.

This is invoked by the editor when the user undoes this edit. To implement undo, your extension should restore the document and editor to the state they were in just before this edit was added to the editor's internal edit stack by onDidChangeCustomDocument.

ParameterDescription
ReturnsDescription
void | Thenable<void>

自定义文档打开上下文

有关打开自定义文档的附加信息。

Properties

备份ID 字符串

The id of the backup to restore the document from or undefined if there is no backup.

If this is provided, your extension should restore the editor from the backup instead of reading the file from the user's workspace.

无标题文档数据Uint8Array

If the URI is an untitled file, this will be populated with the byte data of that file

If this is provided, your extension should utilize this byte data rather than executing fs APIs on the URI passed in

自定义编辑器提供者<T>

使用自定义文档模型的可编辑自定义编辑器的提供程序。

自定义编辑器使用CustomDocument作为文档模型而不是TextDocument。这使扩展程序可以完全控制编辑、保存和备份等操作。

在处理二进制文件或更复杂的场景时,您应该使用这种类型的自定义编辑器。对于基于简单文本的文档,请改用CustomTextEditorProvider

Events

onDidChangeCustomDocument :事件< CustomDocumentEditEvent < T >> | 事件< CustomDocumentContentChangeEvent <T> > _

Signal that an edit has occurred inside a custom editor.

This event must be fired by your extension whenever an edit happens in a custom editor. An edit can be anything from changing some text, to cropping an image, to reordering a list. Your extension is free to define what an edit is and what data is stored on each edit.

Firing onDidChange causes the editors to be marked as being dirty. This is cleared when the user either saves or reverts the file.

Editors that support undo/redo must fire a CustomDocumentEditEvent whenever an edit happens. This allows users to undo and redo the edit using the editor's standard keyboard shortcuts. The editor will also mark the editor as no longer being dirty if the user undoes all edits to the last saved state.

Editors that support editing but cannot use the editor's standard undo/redo mechanism must fire a CustomDocumentContentChangeEvent. The only way for a user to clear the dirty state of an editor that does not support undo/redo is to either save or revert the file.

An editor should only ever fire CustomDocumentEditEvent events, or only ever fire CustomDocumentContentChangeEvent events.

Methods

backupCustomDocument 文档T上下文CustomDocumentBackupContext取消CancellationToken Thenable <CustomDocumentBackup> _ _

Back up a dirty custom document.

Backups are used for hot exit and to prevent data loss. Your backup method should persist the resource in its current state, i.e. with the edits applied. Most commonly this means saving the resource to disk in the ExtensionContext.storagePath. When the editor reloads and your custom editor is opened for a resource, your extension should first check to see if any backups exist for the resource. If there is a backup, your extension should load the file contents from there instead of from the resource in the workspace.

backup is triggered approximately one second after the user stops editing the document. If the user rapidly edits the document, backup will not be invoked until the editing stops.

backup is not invoked when auto save is enabled (since auto save already persists the resource).

ParameterDescription
document: T

Document to backup.

context: CustomDocumentBackupContext

Information that can be used to backup the document.

cancellation: CancellationToken

Token that signals the current backup since a new backup is coming in. It is up to your extension to decided how to respond to cancellation. If for example your extension is backing up a large file in an operation that takes time to complete, your extension may decide to finish the ongoing backup rather than cancelling it to ensure that the editor has some valid backup.

ReturnsDescription
Thenable<CustomDocumentBackup>

openCustomDocument uri UriopenContext CustomDocumentOpenContext令牌CancellationToken T | 则可<T> _ _

Create a new document for a given resource.

openCustomDocument is called when the first time an editor for a given resource is opened. The opened document is then passed to resolveCustomEditor so that the editor can be shown to the user.

Already opened CustomDocument are re-used if the user opened additional editors. When all editors for a given resource are closed, the CustomDocument is disposed of. Opening an editor at this point will trigger another call to openCustomDocument.

ParameterDescription
uri: Uri

Uri of the document to open.

openContext: CustomDocumentOpenContext

Additional information about the opening custom document.

token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
T | Thenable<T>

The custom document.

解决自定义编辑器文档TwebviewPanel WebviewPanel令牌CancellationToken 无效| 然后可<无效>

Resolve a custom editor for a given resource.

This is called whenever the user opens a new editor for this CustomEditorProvider.

ParameterDescription
document: T

Document for the resource being resolved.

webviewPanel: WebviewPanel

The webview panel used to display the editor UI for this resource.

During resolve, the provider must fill in the initial html for the content webview panel and hook up all the event listeners on it that it is interested in. The provider can also hold onto the WebviewPanel to use later for example in a command. See WebviewPanel for additional details.

token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
void | Thenable<void>

Optional thenable indicating that the custom editor has been resolved.

revertCustomDocument 文档T取消CancellationToken Thenable <void> _ _

Revert a custom document to its last saved state.

This method is invoked by the editor when the user triggers File: Revert File in a custom editor. (Note that this is only used using the editor's File: Revert File command and not on a git revert of the file).

To implement revert, the implementer must make sure all editor instances (webviews) for document are displaying the document in the same state is saved in. This usually means reloading the file from the workspace.

ParameterDescription
document: T

Document to revert.

cancellation: CancellationToken

Token that signals the revert is no longer required.

ReturnsDescription
Thenable<void>

Thenable signaling that the change has completed.

saveCustomDocument 文档T取消CancellationToken Thenable <void> _ _

Save a custom document.

This method is invoked by the editor when the user saves a custom editor. This can happen when the user triggers save while the custom editor is active, by commands such as save all, or by auto save if enabled.

To implement save, the implementer must persist the custom editor. This usually means writing the file data for the custom document to disk. After save completes, any associated editor instances will no longer be marked as dirty.

ParameterDescription
document: T

Document to save.

cancellation: CancellationToken

Token that signals the save is no longer required (for example, if another save was triggered).

ReturnsDescription
Thenable<void>

Thenable signaling that saving has completed.

saveCustomDocumentAs 文档T目的地Uri取消CancellationToken Thenable <void> _ _

Save a custom document to a different location.

This method is invoked by the editor when the user triggers 'save as' on a custom editor. The implementer must persist the custom editor to destination.

When the user accepts save as, the current editor is be replaced by an non-dirty editor for the newly saved file.

ParameterDescription
document: T

Document to save.

destination: Uri

Location to save to.

cancellation: CancellationToken

Token that signals the save is no longer required.

ReturnsDescription
Thenable<void>

Thenable signaling that saving has completed.

定制执行

用于将扩展回调作为任务执行的类。

Constructors

新的 CustomExecution (回调: (resolvedDefinition: TaskDefinition ) => Thenable <伪终端> ) : CustomExecution

Constructs a CustomExecution task object. The callback will be executed when the task is run, at which point the extension should return the Pseudoterminal it will "run in". The task should wait to do further execution until Pseudoterminal.open is called. Task cancellation should be handled using Pseudoterminal.close. When the task is complete fire Pseudoterminal.onDidClose.

ParameterDescription
callback: (resolvedDefinition: TaskDefinition) => Thenable<Pseudoterminal>

The callback that will be called when the task is started by a user. Any ${} style variables that were in the task definition will be resolved and passed into the callback as resolvedDefinition.

ReturnsDescription
CustomExecution

CustomReadonlyEditorProvider<T>

使用自定义文档模型的只读自定义编辑器的提供程序。

自定义编辑器使用CustomDocument作为文档模型而不是TextDocument

在处理二进制文件或更复杂的场景时,您应该使用这种类型的自定义编辑器。对于基于简单文本的文档,请改用CustomTextEditorProvider

Methods

openCustomDocument uri UriopenContext CustomDocumentOpenContext令牌CancellationToken T | 则可<T> _ _

Create a new document for a given resource.

openCustomDocument is called when the first time an editor for a given resource is opened. The opened document is then passed to resolveCustomEditor so that the editor can be shown to the user.

Already opened CustomDocument are re-used if the user opened additional editors. When all editors for a given resource are closed, the CustomDocument is disposed of. Opening an editor at this point will trigger another call to openCustomDocument.

ParameterDescription
uri: Uri

Uri of the document to open.

openContext: CustomDocumentOpenContext

Additional information about the opening custom document.

token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
T | Thenable<T>

The custom document.

解决自定义编辑器文档TwebviewPanel WebviewPanel令牌CancellationToken 无效| 然后可<无效>

Resolve a custom editor for a given resource.

This is called whenever the user opens a new editor for this CustomEditorProvider.

ParameterDescription
document: T

Document for the resource being resolved.

webviewPanel: WebviewPanel

The webview panel used to display the editor UI for this resource.

During resolve, the provider must fill in the initial html for the content webview panel and hook up all the event listeners on it that it is interested in. The provider can also hold onto the WebviewPanel to use later for example in a command. See WebviewPanel for additional details.

token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
void | Thenable<void>

Optional thenable indicating that the custom editor has been resolved.

自定义文本编辑器提供者

基于文本的自定义编辑器的提供者。

基于文本的自定义编辑器使用TextDocument作为其数据模型。这大大简化了自定义编辑器的实现,因为它允许编辑器处理许多常见操作,例如撤消和备份。提供者负责同步 webview 和TextDocument.

Methods

解析自定义文本编辑器文档TextDocumentwebviewPanel WebviewPanel令牌CancellationToken void | 然后可<无效>

Resolve a custom editor for a given text resource.

This is called when a user first opens a resource for a CustomTextEditorProvider, or if they reopen an existing editor using this CustomTextEditorProvider.

ParameterDescription
document: TextDocument

Document for the resource to resolve.

webviewPanel: WebviewPanel

The webview panel used to display the editor UI for this resource.

During resolve, the provider must fill in the initial html for the content webview panel and hook up all the event listeners on it that it is interested in. The provider can also hold onto the WebviewPanel to use later for example in a command. See WebviewPanel for additional details.

token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
void | Thenable<void>

Thenable indicating that the custom editor has been resolved.

数据传输

包含相应传输数据的 MIME 类型映射的映射。

实现的拖放控制器handleDrag可以向数据传输添加额外的 mime 类型。handleDrop仅当从同一拖放控制器中的元素发起拖动时,才会包含这些附加的 mime 类型。

Constructors

新的数据传输数据传输

ParameterDescription
ReturnsDescription
DataTransfer

Methods

[迭代器] ( ) : IterableIterator <[mimeType: string , item: DataTransferItem ]>

Get a new iterator with the [mime, item] pairs for each element in this data transfer.

ParameterDescription
ReturnsDescription
IterableIterator<[mimeType: string, item: DataTransferItem]>

forEach ( callbackfn : (item: DataTransferItem , mimeType: string , dataTransfer: DataTransfer ) => void , thisArg ? :任意) : void

Allows iteration through the data transfer items.

ParameterDescription
callbackfn: (item: DataTransferItem, mimeType: string, dataTransfer: DataTransfer) => void

Callback for iteration through the data transfer items.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
void

获取mimeType 字符串DataTransferItem

Retrieves the data transfer item for a given mime type.

ParameterDescription
mimeType: string

The mime type to get the data transfer item for, such as text/plain or image/png. Mimes type look ups are case-insensitive.

Special mime types:

  • text/uri-list — A string with toString()ed Uris separated by \r\n. To specify a cursor position in the file, set the Uri's fragment to L3,5, where 3 is the line number and 5 is the column number.
ReturnsDescription
DataTransferItem

设置mimeType 字符串DataTransferItem void

Sets a mime type to data transfer item mapping.

ParameterDescription
mimeType: string

The mime type to set the data for. Mimes types stored in lower case, with case-insensitive looks up.

value: DataTransferItem

The data transfer item for the given mime type.

ReturnsDescription
void

数据传输文件

与DataTransferItem关联的文件。

这种类型的实例只能由编辑器创建,而不能由扩展创建。

Properties

名称字符串

The name of the file.

乌里:乌里

The full file path of the file.

May be undefined on web.

Methods

数据Thenable <Uint8Array> _ _

The full file contents of the file.

ParameterDescription
ReturnsDescription
Thenable<Uint8Array>

数据传输项

封装拖放操作期间传输的数据。

Constructors

新的DataTransferItem 任意DataTransferItem

ParameterDescription
value: any

Custom data stored on this item. Can be retrieved using DataTransferItem.value.

ReturnsDescription
DataTransferItem

Properties

任意

Custom data stored on this item.

You can use value to share data across operations. The original object can be retrieved so long as the extension that created the DataTransferItem runs in the same extension host.

Methods

asFile ( ) 数据传输文件

Try getting the file associated with this data transfer item.

Note that the file object is only valid for the scope of the drag and drop operation.

ParameterDescription
ReturnsDescription
DataTransferFile

The file for the data transfer or undefined if the item is either not a file or the file data cannot be accessed.

asString ( ) Thenable <字符串>

Get a string representation of this item.

If DataTransferItem.value is an object, this returns the result of json stringifying DataTransferItem.value value.

ParameterDescription
ReturnsDescription
Thenable<string>

调试适配器

如果实现调试适配器协议的调试适配器实现了 DebugAdapter 接口,则可以向编辑器注册。

Events

onDidSendMessage :事件< DebugProtocolMessage >

An event which fires after the debug adapter has sent a Debug Adapter Protocol message to the editor. Messages can be requests, responses, or events.

Methods

处置任何

Dispose this object.

ParameterDescription
ReturnsDescription
any

处理消息消息DebugProtocolMessage 无效

Handle a Debug Adapter Protocol message. Messages can be requests, responses, or events. Results or errors are returned via onSendMessage events.

ParameterDescription
message: DebugProtocolMessage

A Debug Adapter Protocol message

ReturnsDescription
void

调试适配器描述符

代表不同类型的调试适配器

DebugAdapterDescriptor DebugAdapterExecutable | 调试适配器服务器| 调试适配器命名管道服务器| 调试适配器内联实现

调试适配器描述符工厂

创建调试适配器描述符的调试适配器工厂。

Methods

createDebugAdapterDescriptor (会话: DebugSession ,可执行文件: DebugAdapterExecutable ) : ProviderResult < DebugAdapterDescriptor >

'createDebugAdapterDescriptor' is called at the start of a debug session to provide details about the debug adapter to use. These details must be returned as objects of type DebugAdapterDescriptor. Currently two types of debug adapters are supported:

  • a debug adapter executable is specified as a command path and arguments (see DebugAdapterExecutable),
  • a debug adapter server reachable via a communication port (see DebugAdapterServer). If the method is not implemented the default behavior is this: createDebugAdapter(session: DebugSession, executable: DebugAdapterExecutable) { if (typeof session.configuration.debugServer === 'number') { return new DebugAdapterServer(session.configuration.debugServer); } return executable; }
ParameterDescription
session: DebugSession

The debug session for which the debug adapter will be used.

executable: DebugAdapterExecutable

The debug adapter's executable information as specified in the package.json (or undefined if no such information exists).

ReturnsDescription
ProviderResult<DebugAdapterDescriptor>

a debug adapter descriptor or undefined.

调试适配器可执行文件

表示调试适配器可执行文件以及传递给它的可选参数和运行时选项。

Constructors

新的 DebugAdapterExecutable (命令: string , args ? : string [], options ? : DebugAdapterExecutableOptions ) : DebugAdapterExecutable

Creates a description for a debug adapter based on an executable program.

ParameterDescription
command: string

The command or executable path that implements the debug adapter.

args?: string[]

Optional arguments to be passed to the command or executable.

options?: DebugAdapterExecutableOptions

Optional options to be used when starting the command or executable.

ReturnsDescription
DebugAdapterExecutable

Properties

参数字符串[]

The arguments passed to the debug adapter executable. Defaults to an empty array.

命令字符串

The command or path of the debug adapter executable. A command must be either an absolute path of an executable or the name of an command to be looked up via the PATH environment variable. The special value 'node' will be mapped to the editor's built-in Node.js runtime.

选项:调试适配器可执行选项

Optional options to be used when the debug adapter is started. Defaults to undefined.

调试适配器可执行选项

调试适配器可执行文件的选项。

Properties

西德:字符串

The current working directory for the executed debug adapter.

环境:

The additional environment of the executed program or shell. If omitted the parent process' environment is used. If provided it is merged with the parent process' environment.

调试适配器内联实现

用于内联实现的调试适配器描述符。

Constructors

新的 DebugAdapterInlineImplementation 实现DebugAdapter DebugAdapterInlineImplementation

Create a descriptor for an inline implementation of a debug adapter.

ParameterDescription
implementation: DebugAdapter
ReturnsDescription
DebugAdapterInlineImplementation

调试适配器命名管道服务器

表示作为基于命名管道(在 Windows 上)/UNIX 域套接字(在非 Windows 上)的服务器运行的调试适配器。

Constructors

新的 DebugAdapterNamedPipeServer 路径字符串DebugAdapterNamedPipeServer

Create a description for a debug adapter running as a Named Pipe (on Windows)/UNIX Domain Socket (on non-Windows) based server.

ParameterDescription
path: string
ReturnsDescription
DebugAdapterNamedPipeServer

Properties

路径字符串

The path to the NamedPipe/UNIX Domain Socket.

调试适配器服务器

表示作为基于套接字的服务器运行的调试适配器。

Constructors

新的 DebugAdapterServer (端口:数字,主机? :字符串) : DebugAdapterServer

Create a description for a debug adapter running as a socket based server.

ParameterDescription
port: number
host?: string
ReturnsDescription
DebugAdapterServer

Properties

主机:字符串

The host.

端口号码

The port.

调试适配器跟踪器

调试适配器跟踪器是一种跟踪编辑器和调试适配器之间通信的方法。

Events

onDidSendMessage 消息任何无效

The debug adapter has sent a Debug Adapter Protocol message to the editor.

ParameterDescription
message: any
ReturnsDescription
void

onWillReceiveMessage 消息任何无效

The debug adapter is about to receive a Debug Adapter Protocol message from the editor.

ParameterDescription
message: any
ReturnsDescription
void

onWillStartSession ( ) 无效

A session with the debug adapter is about to be started.

ParameterDescription
ReturnsDescription
void

onWillStopSession ( ) 无效

The debug adapter session is about to be stopped.

ParameterDescription
ReturnsDescription
void

Methods

onError 错误错误无效

An error with the debug adapter has occurred.

ParameterDescription
error: Error
ReturnsDescription
void

onExit 代码数字信号字符串无效

The debug adapter has exited with the given exit code or signal.

ParameterDescription
code: number
signal: string
ReturnsDescription
void

调试AdapterTrackerFactory

创建调试适配器跟踪器的调试适配器工厂。

Methods

createDebugAdapterTracker (会话: DebugSession ) : ProviderResult < DebugAdapterTracker >

The method 'createDebugAdapterTracker' is called at the start of a debug session in order to return a "tracker" object that provides read-access to the communication between the editor and a debug adapter.

ParameterDescription
session: DebugSession

The debug session for which the debug adapter tracker will be used.

ReturnsDescription
ProviderResult<DebugAdapterTracker>

A debug adapter tracker or undefined.

调试配置

调试会话的配置。

Properties

名称字符串

The name of the debug session.

请求字符串

The request type of the debug session.

类型字符串

The type of the debug session.

调试配置提供者

调试配置提供程序允许将调试配置添加到调试服务,并在启动配置用于启动调试会话之前解析启动配置。调试配置提供程序通过debug.registerDebugConfigurationProvider注册。

Methods

ProvideDebugConfigurations 文件夹WorkspaceFolder令牌CancellationToken ProviderResult < DebugConfiguration []>

Provides debug configuration to the debug service. If more than one debug configuration provider is registered for the same type, debug configurations are concatenated in arbitrary order.

ParameterDescription
folder: WorkspaceFolder

The workspace folder for which the configurations are used or undefined for a folderless setup.

token?: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DebugConfiguration[]>

An array of debug configurations.

解决调试配置文件夹WorkspaceFolder调试配置调试配置令牌CancellationToken ProviderResult <调试配置>

Resolves a debug configuration by filling in missing values or by adding/changing/removing attributes. If more than one debug configuration provider is registered for the same type, the resolveDebugConfiguration calls are chained in arbitrary order and the initial debug configuration is piped through the chain. Returning the value 'undefined' prevents the debug session from starting. Returning the value 'null' prevents the debug session from starting and opens the underlying debug configuration instead.

ParameterDescription
folder: WorkspaceFolder

The workspace folder from which the configuration originates from or undefined for a folderless setup.

debugConfiguration: DebugConfiguration

The debug configuration to resolve.

token?: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DebugConfiguration>

The resolved debug configuration or undefined or null.

solveDebugConfigurationWithSubstitutedVariables 文件夹WorkspaceFolderdebugConfiguration DebugConfiguration令牌CancellationToken ProviderResult < DebugConfiguration >

This hook is directly called after 'resolveDebugConfiguration' but with all variables substituted. It can be used to resolve or verify a debug configuration by filling in missing values or by adding/changing/removing attributes. If more than one debug configuration provider is registered for the same type, the 'resolveDebugConfigurationWithSubstitutedVariables' calls are chained in arbitrary order and the initial debug configuration is piped through the chain. Returning the value 'undefined' prevents the debug session from starting. Returning the value 'null' prevents the debug session from starting and opens the underlying debug configuration instead.

ParameterDescription
folder: WorkspaceFolder

The workspace folder from which the configuration originates from or undefined for a folderless setup.

debugConfiguration: DebugConfiguration

The debug configuration to resolve.

token?: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DebugConfiguration>

The resolved debug configuration or undefined or null.

调试配置提供者触发器种类

DebugConfigurationProviderTriggerKind 指定何时触发provideDebugConfigurationsa 的方法。DebugConfigurationProvider目前有两种情况:为新创建的 launch.json 提供初始调试配置,或者当用户通过 UI 请求时提供动态生成的调试配置(例如,通过“选择并开始调试”命令)。使用debug.registerDebugConfigurationProviderDebugConfigurationProvider注册时会使用触发器类型。

Enumeration Members

初始1

DebugConfigurationProvider.provideDebugConfigurations is called to provide the initial debug configurations for a newly created launch.json.

动态2

DebugConfigurationProvider.provideDebugConfigurations is called to provide dynamically generated debug configurations when the user asks for them through the UI (e.g. via the "Select and Start Debugging" command).

调试控制台

代表调试控制台。

Methods

附加字符串无效

Append the given value to the debug console.

ParameterDescription
value: string

A string, falsy values will not be printed.

ReturnsDescription
void

附加行字符串无效

Append the given value and a line feed character to the debug console.

ParameterDescription
value: string

A string, falsy values will be printed.

ReturnsDescription
void

调试控制台模式

调试会话使用的调试控制台模式,请参阅options

Enumeration Members

分开: 0

Debug session should have a separate debug console.

与父级合并1

Debug session should share debug console with its parent session. This value has no effect for sessions which do not have a parent session.

调试协议断点

DebugProtocolBreakpoint 是调试适配器协议中定义的断点类型的不透明替代类型。

调试协议消息

DebugProtocolMessage 是调试适配器协议中定义的ProtocolMessage类型的不透明替代类型。

调试协议源

DebugProtocolSource 是调试适配器协议中定义的类型的不透明替代类型。

调试会话

调试会话。

Properties

配置调试配置

The "resolved" debug configuration of this session. "Resolved" means that

  • all variables have been substituted and
  • platform specific attribute sections have been "flattened" for the matching platform and removed for non-matching platforms.

id 字符串

The unique ID of this debug session.

名称字符串

The debug session's name is initially taken from the debug configuration. Any changes will be properly reflected in the UI.

父会话:调试会话

The parent session of this debug session, if it was created as a child.

See also DebugSessionOptions.parentSession

类型字符串

The debug session's type from the debug configuration.

工作区文件夹工作区文件夹

The workspace folder of this session or undefined for a folderless setup.

Methods

customRequest 命令字符串参数任何Thenable <任何>

Send a custom request to the debug adapter.

ParameterDescription
command: string
args?: any
ReturnsDescription
Thenable<any>

getDebugProtocolBreakpoint (断点:断点) : Thenable < DebugProtocolBreakpoint >

Maps a breakpoint in the editor to the corresponding Debug Adapter Protocol (DAP) breakpoint that is managed by the debug adapter of the debug session. If no DAP breakpoint exists (either because the editor breakpoint was not yet registered or because the debug adapter is not interested in the breakpoint), the value undefined is returned.

ParameterDescription
breakpoint: Breakpoint

A Breakpoint in the editor.

ReturnsDescription
Thenable<DebugProtocolBreakpoint>

A promise that resolves to the Debug Adapter Protocol breakpoint or undefined.

调试会话自定义事件

从调试会话接收到的自定义调试适配器协议事件。

Properties

身体任何

Event specific information.

事件字符串

Type of event.

会话调试会话

The debug session for which the custom event was received.

调试会话选项

Properties

紧凑布尔值

Controls if the debug session's parent session is shown in the CALL STACK view even if it has only a single child. By default, the debug session will never hide its parent. If compact is true, debug sessions with a single child are hidden in the CALL STACK view to make the tree more compact.

控制台模式:调试控制台模式

Controls whether this session should have a separate debug console or share it with the parent session. Has no effect for sessions which do not have a parent session. Defaults to Separate.

生命周期由父级管理布尔值

Controls whether lifecycle requests like 'restart' are sent to the newly created session or its parent session. By default (if the property is false or missing), lifecycle requests are sent to the new session. This property is ignored if the session has no parent session.

没有调试布尔值

Controls whether this session should run without debugging, thus ignoring breakpoints. When this property is not specified, the value from the parent session (if there is one) is used.

父会话:调试会话

When specified the newly created debug session is registered as a "child" session of this "parent" debug session.

抑制调试状态栏布尔值

When true, the window statusbar color will not be changed for this session.

抑制调试工具栏布尔值

When true, the debug toolbar will not be shown for this session.

抑制调试视图布尔值

When true, the debug viewlet will not be automatically revealed for this session.

在开始之前抑制保存布尔值

When true, a save will not be triggered for open editors when starting a debug session, regardless of the value of the debug.saveBeforeStart setting.

宣言

将符号表示形式声明为一个或多个位置位置链接

声明地点| 地点[] | 位置链接[]

声明提供者

声明提供者接口定义了扩展和转到声明功能之间的契约。

Methods

ProvideDeclaration (文档: TextDocument ,位置:位置,令牌: CancellationToken ) : ProviderResult <声明>

Provide the declaration of the symbol at the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Declaration>

A declaration or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

装饰实例渲染选项

表示装饰实例的渲染选项。请参阅DecorationOptions.renderOptions

Properties

之后: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted after the decorated text.

之前: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted before the decorated text.

黑暗: ThemableDecorationInstanceRenderOptions

Overwrite options for dark themes.

: ThemableDecorationInstanceRenderOptions

Overwrite options for light themes.

装饰选项

表示装饰集中特定装饰的选项。

Properties

悬停消息: MarkdownString | 标记字符串| 数组< MarkdownString | 标记字符串>

A message that should be rendered when hovering over the decoration.

范围范围

Range to which this decoration is applied. The range must not be empty.

渲染选项:装饰实例渲染选项

Render options applied to the current decoration. For performance reasons, keep the number of decoration specific options small, and use decoration types wherever possible.

装饰范围行为

描述装饰在其边缘键入/编辑时的行为。

Enumeration Members

开盘开盘: 0

The decoration's range will widen when edits occur at the start or end.

已关闭已关闭: 1

The decoration's range will not widen when edits occur at the start or end.

打开关闭: 2

The decoration's range will widen when edits occur at the start, but not at the end.

休息开放: 3

The decoration's range will widen when edits occur at the end, but not at the start.

装饰渲染选项

代表文本编辑器装饰的渲染样式。

Properties

之后: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted after the decorated text.

背景颜色:字符串| 主题颜色

Background color of the decoration. Use rgba() and define transparent background colors to play well with other decorations. Alternatively a color from the color registry can be referenced.

之前: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted before the decorated text.

边界:字符串

CSS styling property that will be applied to text enclosed by a decoration.

边框颜色:字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边界半径:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框间距? :字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框样式:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框宽度:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

颜色:字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration.

光标:字符串

CSS styling property that will be applied to text enclosed by a decoration.

黑暗: ThemableDecorationRenderOptions

Overwrite options for dark themes.

字体样式:字符串

CSS styling property that will be applied to text enclosed by a decoration.

字体粗细:字符串

CSS styling property that will be applied to text enclosed by a decoration.

装订线图标路径:字符串| 乌里

An absolute path or an URI to an image to be rendered in the gutter.

装订线图标大小:字符串

Specifies the size of the gutter icon. Available values are 'auto', 'contain', 'cover' and any percentage value. For further information: https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspx

是整线吗?布尔值

Should the decoration be rendered also on the whitespace after the line text. Defaults to false.

字母间距? :字符串

CSS styling property that will be applied to text enclosed by a decoration.

: ThemableDecorationRenderOptions

Overwrite options for light themes.

不透明度:字符串

CSS styling property that will be applied to text enclosed by a decoration.

大纲:字符串

CSS styling property that will be applied to text enclosed by a decoration.

轮廓颜色? :字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

轮廓样式? :字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

轮廓宽度:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

概述标尺颜色:字符串| 主题颜色

The color of the decoration in the overview ruler. Use rgba() and define transparent colors to play well with other decorations.

概述RulerLane 概述标尺车道

The position in the overview ruler where the decoration should be rendered.

范围行为? :装饰范围行为

Customize the growing behavior of the decoration when edits occur at the edges of the decoration's range. Defaults to DecorationRangeBehavior.OpenOpen.

文字装饰? :字符串

CSS styling property that will be applied to text enclosed by a decoration.

定义

符号的定义表示为一个或多个位置。对于大多数编程语言来说,只有一个位置可以定义符号。

定义位置| 地点[]

有关符号定义位置的信息。

提供比正常位置定义更多的元数据,包括定义符号的范围

定义链接位置链接

定义提供者

定义提供者接口定义了扩展与转到定义 和查看定义功能之间的契约。

Methods

ProvideDefinition (文档: TextDocument ,位置: Position ,令牌: CancellationToken ) : ProviderResult <定义|定义 位置链接[]>

Provide the definition of the symbol at the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Definition | LocationLink[]>

A definition or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

诊断

表示诊断,例如编译器错误或警告。诊断对象仅在文件范围内有效。

Constructors

新诊断范围范围消息字符串严重性诊断Severity 诊断

Creates a new diagnostic object.

ParameterDescription
range: Range

The range to which this diagnostic applies.

message: string

The human-readable message.

severity?: DiagnosticSeverity

The severity, default is error.

ReturnsDescription
Diagnostic

Properties

代码:字符串| 数量| {目标:Uri,值:字符串| 数量}

A code or identifier for this diagnostic. Should be used for later processing, e.g. when providing code actions.

消息字符串

The human-readable message.

范围范围

The range to which this diagnostic applies.

相关信息? :诊断相关信息[]

An array of related diagnostic information, e.g. when symbol-names within a scope collide all definitions can be marked via this property.

严重性诊断严重性

The severity, default is error.

来源:字符串

A human-readable string describing the source of this diagnostic, e.g. 'typescript' or 'super lint'.

标签:诊断标签[]

Additional metadata about the diagnostic.

诊断更改事件

诊断更改时触发的事件。

Properties

uris :只读Uri []

An array of resources for which diagnostics have changed.

诊断集合

诊断集合是管理一组 诊断的容器。诊断始终是诊断集合和资源的范围。

DiagnosticCollection要获取使用 createDiagnosticCollection的实例。

Properties

名称字符串

The name of this diagnostic collection, for instance typescript. Every diagnostic from this collection will be associated with this name. Also, the task framework uses this name when defining problem matchers.

Methods

清除( ) :无效

Remove all diagnostics from this collection. The same as calling #set(undefined);

ParameterDescription
ReturnsDescription
void

删除uri Uri 无效

Remove all diagnostics from this collection that belong to the provided uri. The same as #set(uri, undefined).

ParameterDescription
uri: Uri

A resource identifier.

ReturnsDescription
void

处置无效

Dispose and free associated resources. Calls clear.

ParameterDescription
ReturnsDescription
void

forEach (回调: (uri: Uri , 诊断: 只读诊断[], 集合: DiagnosticCollection ) =>任何, thisArg ? :任何) : void

Iterate over each entry in this collection.

ParameterDescription
callback: (uri: Uri, diagnostics: readonly Diagnostic[], collection: DiagnosticCollection) => any

Function to execute for each entry.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
void

get ( uri : Uri ) :只读诊断[]

Get the diagnostics for a given resource. Note that you cannot modify the diagnostics-array returned from this call.

ParameterDescription
uri: Uri

A resource identifier.

ReturnsDescription
readonly Diagnostic[]

An immutable array of diagnostics or undefined.

uri Uri 布尔值

Check if this collection contains diagnostics for a given resource.

ParameterDescription
uri: Uri

A resource identifier.

ReturnsDescription
boolean

true if this collection has diagnostic for the given resource.

设置uri Uri诊断只读诊断[] 无效

Assign diagnostics for given resource. Will replace existing diagnostics for that resource.

ParameterDescription
uri: Uri

A resource identifier.

diagnostics: readonly Diagnostic[]

Array of diagnostics or undefined

ReturnsDescription
void

set (条目: ReadonlyArray<[ Uri , readonly Diagnostic[] ]> ) : void

Replace diagnostics for multiple resources in this collection.

Note that multiple tuples of the same uri will be merged, e.g [[file1, [d1]], [file1, [d2]]] is equivalent to [[file1, [d1, d2]]]. If a diagnostics item is undefined as in [file1, undefined] all previous but not subsequent diagnostics are removed.

ParameterDescription
entries: ReadonlyArray<[Uri, readonly Diagnostic[]]>

An array of tuples, like [[file1, [d1, d2]], [file2, [d3, d4, d5]]], or undefined.

ReturnsDescription
void

诊断相关信息

表示诊断的相关消息和源代码位置。这应该用于指向引起诊断或与诊断相关的代码位置,例如在作用域中复制符号时。

Constructors

新的 DiagnosticRelatedInformation (位置:位置,消息:字符串) : DiagnosticRelatedInformation

Creates a new related diagnostic information object.

ParameterDescription
location: Location

The location.

message: string

The message.

ReturnsDescription
DiagnosticRelatedInformation

Properties

地点:地点

The location of this related diagnostic information.

消息字符串

The message of this related diagnostic information.

诊断严重性

代表诊断的严重程度。

Enumeration Members

错误0

Something not allowed by the rules of a language or other means.

警告1

Something suspicious but allowed.

信息2

Something to inform about but not a problem.

提示3

Something to hint to a better way of doing it, like proposing a refactoring.

诊断标签

有关诊断类型的其他元数据。

Enumeration Members

不需要1

Unused or unnecessary code.

Diagnostics with this tag are rendered faded out. The amount of fading is controlled by the "editorUnnecessaryCode.opacity" theme color. For example, "editorUnnecessaryCode.opacity": "#000000c0" will render the code with 75% opacity. For high contrast themes, use the "editorUnnecessaryCode.border" theme color to underline unnecessary code instead of fading it out.

已弃用2

Deprecated or obsolete code.

Diagnostics with this tag are rendered with a strike through.

一次性的

表示可以释放资源的类型,例如事件监听或者定时器。

Static

from ( ... disposableLikes : Array<{dispose: () => any }> ) :一次性

Combine many disposable-likes into one. You can use this method when having objects with a dispose function which aren't instances of Disposable.

ParameterDescription
...disposableLikes: Array<{dispose: () => any}>

Objects that have at least a dispose-function member. Note that asynchronous dispose-functions aren't awaited.

ReturnsDescription
Disposable

Returns a new disposable which, upon dispose, will dispose all provided disposables.

Constructors

新的一次性callOnDispose ()=>任何一次性

Creates a new disposable that calls the provided function on dispose.

Note that an asynchronous function is not awaited.

ParameterDescription
callOnDispose: () => any

Function that disposes something.

ReturnsDescription
Disposable

Methods

处置任何

Dispose this object.

ParameterDescription
ReturnsDescription
any

文档颜色提供者

文档颜色提供程序定义了扩展与在编辑器中选择和修改颜色的功能之间的契约。

Methods

提供ColorPresentations 颜色颜色上下文 {文档:TextDocument,范围:范围},令牌CancellationToken ProviderResult < ColorPresentation []>

Provide representations for a color.

ParameterDescription
color: Color

The color to show and insert.

context: {document: TextDocument, range: Range}

A context object with additional information

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<ColorPresentation[]>

An array of color presentations or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

ProvideDocumentColors 文档TextDocument令牌CancellationToken ProviderResult < ColorInformation []>

Provide colors for the given document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<ColorInformation[]>

An array of color information or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

文件拖放编辑

应用于drop 的编辑操作。

Constructors

新的 DocumentDropEdit ( insertText : string | SnippetString ) : DocumentDropEdit

ParameterDescription
insertText: string | SnippetString

The text or snippet to insert at the drop location.

ReturnsDescription
DocumentDropEdit

Properties

附加编辑? :工作区编辑

An optional additional edit to apply on drop.

插入文本字符串| 片段字符串

The text or snippet to insert at the drop location.

DocumentDropEditProvider

处理将资源放入文本编辑器的提供程序。

这允许用户将资源(包括来自外部应用程序的资源)拖放到编辑器中。拖放文件时,用户可以按住shift将文件拖放到编辑器中,而不是打开它。需要editor.dropIntoEditor.enabled开启。

Methods

ProvideDocumentDropEdits (文档: TextDocument ,位置:位置, dataTransfer : DataTransfer ,令牌: CancellationToken ) : ProviderResult < DocumentDropEdit >

Provide edits which inserts the content being dragged and dropped into the document.

ParameterDescription
document: TextDocument

The document in which the drop occurred.

position: Position

The position in the document where the drop occurred.

dataTransfer: DataTransfer

A DataTransfer object that holds data about what is being dragged and dropped.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DocumentDropEdit>

A DocumentDropEdit or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

文档过滤器

文档过滤器通过不同的属性来表示文档,例如语言、其资源的方案或应用于路径的全局模式

示例 适用于磁盘上的 TypeScript 文件的语言过滤器

{ language: 'typescript', scheme: 'file' }

示例 适用于所有 package.json 路径的语言过滤器

{ language: 'json', pattern: '**/package.json' }

Properties

语言:字符串

A language id, like typescript.

笔记本类型? :字符串

The type of a notebook, like jupyter-notebook. This allows to narrow down on the type of a notebook that a cell document belongs to.

Note that setting the notebookType-property changes how scheme and pattern are interpreted. When set they are evaluated against the notebook uri, not the document uri.

Example Match python document inside jupyter notebook that aren't stored yet (untitled)

{ language: 'python', notebookType: 'jupyter-notebook', scheme: 'untitled' }

模式:全局模式

A glob pattern that is matched on the absolute path of the document. Use a relative pattern to filter documents to a workspace folder.

计划:字符串

A Uri scheme, like file or untitled.

文档格式编辑提供者

文档格式化提供者接口定义了扩展和格式化功能之间的契约。

Methods

ProvideDocumentFormattingEdits 文档TextDocument选项FormattingOptions令牌CancellationToken ProviderResult < TextEdit []>

Provide formatting edits for a whole document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

options: FormattingOptions

Options controlling formatting.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TextEdit[]>

A set of text edits or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

文档亮点

文档突出显示是文本文档中值得特别关注的范围。通常,文档突出显示是通过更改其范围的背景颜色来可视化的。

Constructors

新的DocumentHighlight 范围范围种类DocumentHighlightKind DocumentHighlight

Creates a new document highlight object.

ParameterDescription
range: Range

The range the highlight applies to.

kind?: DocumentHighlightKind

The highlight kind, default is text.

ReturnsDescription
DocumentHighlight

Properties

善良:文档突出显示类型

The highlight kind, default is text.

范围范围

The range this highlight applies to.

文档突出显示类型

文档突出显示类型。

Enumeration Members

文字0

A textual occurrence.

已读1

Read-access of a symbol, like reading a variable.

写入2

Write-access of a symbol, like writing to a variable.

文档突出显示提供程序

文档突出显示提供程序接口定义了扩展和单词突出显示功能之间的契约。

Methods

ProvideDocumentHighlights (文档: TextDocument ,位置:位置,令牌: CancellationToken ) : ProviderResult < DocumentHighlight []>

Provide a set of document highlights, like all occurrences of a variable or all exit-points of a function.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DocumentHighlight[]>

An array of document highlights or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

文档链接是文本文档中链接到内部或外部资源(例如另一个文本文档或网站)的范围。

Constructors

新的DocumentLink 范围范围目标Uri DocumentLink

Creates a new document link.

ParameterDescription
range: Range

The range the document link applies to. Must not be empty.

target?: Uri

The uri the document link points to.

ReturnsDescription
DocumentLink

Properties

范围范围

The range this link applies to.

目标:乌里

The uri this link points to.

工具提示:字符串

The tooltip text when you hover over this link.

If a tooltip is provided, is will be displayed in a string that includes instructions on how to trigger the link, such as {0} (ctrl + click). The specific instructions vary depending on OS, user settings, and localization.

文档链接提供者<T>

文档链接提供者定义了扩展和在编辑器中显示链接的功能之间的契约。

Methods

ProvideDocumentLinks 文档TextDocument令牌CancellationToken ProviderResult < T []>

Provide links for the given document. Note that the editor ships with a default provider that detects http(s) and file links.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

An array of document links or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

solveDocumentLink 链接T令牌CancellationToken ProviderResult <T> _ _

Given a link fill in its target. This method is called when an incomplete link is selected in the UI. Providers can implement this method and return incomplete links (without target) from the provideDocumentLinks method which often helps to improve performance.

ParameterDescription
link: T

The link that is to be resolved.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

DocumentRangeFormattingEditProvider

文档格式化提供者接口定义了扩展和格式化功能之间的契约。

Methods

ProvideDocumentRangeFormattingEdits (文档: TextDocument ,范围: Range ,选项: FormattingOptions ,令牌: CancellationToken ) : ProviderResult < TextEdit []>

Provide formatting edits for a range in a document.

The given range is a hint and providers can decide to format a smaller or larger range. Often this is done by adjusting the start and end of the range to full syntax nodes.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

range: Range

The range which should be formatted.

options: FormattingOptions

Options controlling formatting.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TextEdit[]>

A set of text edits or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

ProvideDocumentRangesFormattingEdits (文档: TextDocument ,范围: Range [],选项: FormattingOptions ,令牌: CancellationToken ) : ProviderResult < TextEdit []>

Provide formatting edits for multiple ranges in a document.

This function is optional but allows a formatter to perform faster when formatting only modified ranges or when formatting a large number of selections.

The given ranges are hints and providers can decide to format a smaller or larger range. Often this is done by adjusting the start and end of the range to full syntax nodes.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

ranges: Range[]

The ranges which should be formatted.

options: FormattingOptions

Options controlling formatting.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TextEdit[]>

A set of text edits or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

DocumentRangeSemanticTokensProvider

文档范围语义标记提供者接口定义了扩展和语义标记之间的契约。

Methods

ProvideDocumentRangeSemanticTokens (文档: TextDocument ,范围: Range ,标记: CancellationToken ) : ProviderResult < SemanticTokens >

ParameterDescription
document: TextDocument
range: Range
token: CancellationToken
ReturnsDescription
ProviderResult<SemanticTokens>

文档选择器

语言选择器是一种或多种语言标识符和语言过滤器的组合。

请注意,仅作为语言标识符的文档选择器会选择所有 文档,甚至是那些未保存在磁盘上的文档。仅当功能在没有进一步上下文的情况下工作时才使用此类选择器,例如不需要解析相关“文件”。

例子

let sel: DocumentSelector = { scheme: 'file', language: 'typescript' };

文档选择器文档过滤器| 字符串| ReadonlyArray < DocumentFilter |只读数组 字符串>

文档语义令牌提供者

文档语义标记提供者接口定义了扩展和语义标记之间的契约。

Events

onDidChangeSemanticTokens 事件<无效>

An optional event to signal that the semantic tokens from this provider have changed.

Methods

提供DocumentSemanticTokens 文档TextDocument令牌CancellationToken ProviderResult <SemanticTokens> _

Tokens in a file are represented as an array of integers. The position of each token is expressed relative to the token before it, because most tokens remain stable relative to each other when edits are made in a file.


In short, each token takes 5 integers to represent, so a specific token i in the file consists of the following array indices:

  • at index 5*i - deltaLine: token line number, relative to the previous token
  • at index 5*i+1 - deltaStart: token start character, relative to the previous token (relative to 0 or the previous token's start if they are on the same line)
  • at index 5*i+2 - length: the length of the token. A token cannot be multiline.
  • at index 5*i+3 - tokenType: will be looked up in SemanticTokensLegend.tokenTypes. We currently ask that tokenType < 65536.
  • at index 5*i+4 - tokenModifiers: each set bit will be looked up in SemanticTokensLegend.tokenModifiers

How to encode tokens

Here is an example for encoding a file with 3 tokens in a uint32 array:

   { line: 2, startChar:  5, length: 3, tokenType: "property",  tokenModifiers: ["private", "static"] },
   { line: 2, startChar: 10, length: 4, tokenType: "type",      tokenModifiers: [] },
   { line: 5, startChar:  2, length: 7, tokenType: "class",     tokenModifiers: [] }
  1. First of all, a legend must be devised. This legend must be provided up-front and capture all possible token types. For this example, we will choose the following legend which must be passed in when registering the provider:
   tokenTypes: ['property', 'type', 'class'],
   tokenModifiers: ['private', 'static']
  1. The first transformation step is to encode tokenType and tokenModifiers as integers using the legend. Token types are looked up by index, so a tokenType value of 1 means tokenTypes[1]. Multiple token modifiers can be set by using bit flags, so a tokenModifier value of 3 is first viewed as binary 0b00000011, which means [tokenModifiers[0], tokenModifiers[1]] because bits 0 and 1 are set. Using this legend, the tokens now are:
   { line: 2, startChar:  5, length: 3, tokenType: 0, tokenModifiers: 3 },
   { line: 2, startChar: 10, length: 4, tokenType: 1, tokenModifiers: 0 },
   { line: 5, startChar:  2, length: 7, tokenType: 2, tokenModifiers: 0 }
  1. The next step is to represent each token relative to the previous token in the file. In this case, the second token is on the same line as the first token, so the startChar of the second token is made relative to the startChar of the first token, so it will be 10 - 5. The third token is on a different line than the second token, so the startChar of the third token will not be altered:
   { deltaLine: 2, deltaStartChar: 5, length: 3, tokenType: 0, tokenModifiers: 3 },
   { deltaLine: 0, deltaStartChar: 5, length: 4, tokenType: 1, tokenModifiers: 0 },
   { deltaLine: 3, deltaStartChar: 2, length: 7, tokenType: 2, tokenModifiers: 0 }
  1. Finally, the last step is to inline each of the 5 fields for a token in a single array, which is a memory friendly representation:
   // 1st token,  2nd token,  3rd token
   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

See also SemanticTokensBuilder for a helper to encode tokens as integers. NOTE: When doing edits, it is possible that multiple edits occur until the editor decides to invoke the semantic tokens provider. NOTE: If the provider cannot temporarily compute semantic tokens, it can indicate this by throwing an error with the message 'Busy'.

ParameterDescription
document: TextDocument
token: CancellationToken
ReturnsDescription
ProviderResult<SemanticTokens>

ProvideDocumentSemanticTokensEdits (文档: TextDocument , previousResultId :字符串,标记: CancellationToken ) : ProviderResult < SemanticTokens | SemanticTokens编辑>

Instead of always returning all the tokens in a file, it is possible for a DocumentSemanticTokensProvider to implement this method (provideDocumentSemanticTokensEdits) and then return incremental updates to the previously provided semantic tokens.


How tokens change when the document changes

Suppose that provideDocumentSemanticTokens has previously returned the following semantic tokens:

   // 1st token,  2nd token,  3rd token
   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

Also suppose that after some edits, the new semantic tokens in a file are:

   // 1st token,  2nd token,  3rd token
   [  3,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

It is possible to express these new tokens in terms of an edit applied to the previous tokens:

   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ] // old tokens
   [  3,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ] // new tokens

edit: { start: 0, deleteCount: 1, data: [3] } // replace integer at offset 0 with 3

NOTE: If the provider cannot compute SemanticTokensEdits, it can "give up" and return all the tokens in the document again. NOTE: All edits in SemanticTokensEdits contain indices in the old integers array, so they all refer to the previous result state.

ParameterDescription
document: TextDocument
previousResultId: string
token: CancellationToken
ReturnsDescription
ProviderResult<SemanticTokens | SemanticTokensEdits>

文档符号

表示出现在文档中的编程结构,如变量、类、接口等。文档符号可以是分层的,并且它们有两个范围:一个包含其定义,另一个指向其最有趣的范围,例如标识符的范围。

Constructors

新 DocumentSymbol 名称字符串详细信息字符串种类SymbolKind范围范围selectionRange 范围DocumentSymbol

Creates a new document symbol.

ParameterDescription
name: string

The name of the symbol.

detail: string

Details for the symbol.

kind: SymbolKind

The kind of the symbol.

range: Range

The full range of the symbol.

selectionRange: Range

The range that should be reveal.

ReturnsDescription
DocumentSymbol

Properties

子级DocumentSymbol []

Children of this symbol, e.g. properties of a class.

详细信息字符串

More detail for this symbol, e.g. the signature of a function.

种类符号种类

The kind of this symbol.

名称字符串

The name of this symbol.

范围范围

The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.

选择范围范围

The range that should be selected and reveal when this symbol is being picked, e.g. the name of a function. Must be contained by the range.

标签:只读已弃用[]

Tags for this symbol.

文档符号提供者

Methods

ProvideDocumentSymbols (文档: TextDocument ,令牌: CancellationToken ) : ProviderResult < DocumentSymbol [] | 符号信息[]>

Provide symbol information for the given document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<DocumentSymbol[] | SymbolInformation[]>

An array of document highlights or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

文档符号提供者元数据

有关文档符号提供程序的元数据。

Properties

标签:字符串

A human-readable string that is shown when multiple outlines trees show for one document.

行结束

表示文档中的行尾字符序列。

Enumeration Members

低频1

The line feed \n character.

回车换行2

The carriage return line feed \r\n sequence.

输入动作

描述按 Enter 键时执行的操作。

Properties

附加文本:字符串

Describes text to be appended after the new line and after the indentation.

缩进动作缩进动作

Describe what to do with the indentation.

删除文本:数量

Describes the number of characters to remove from the new line's indentation.

环境变量集合

扩展可以应用于流程环境的突变的集合。

Properties

描述字符串| 降价字符串

A description for the environment variable collection, this will be used to describe the changes in the UI.

持久性布尔值

Whether the collection should be cached for the workspace and applied to the terminal across window reloads. When true the collection will be active immediately such when the window reloads. Additionally, this API will return the cached version if it exists. The collection will be invalidated when the extension is uninstalled or when the collection is cleared. Defaults to true.

Methods

附加变量字符串字符串选项EnvironmentVariableMutatorOptions void

Append a value to an environment variable.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to append to.

value: string

The value to append to the variable.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

清除( ) :无效

Clears all mutators from this collection.

ParameterDescription
ReturnsDescription
void

删除变量字符串无效

Deletes this collection's mutator for a variable.

ParameterDescription
variable: string

The variable to delete the mutator for.

ReturnsDescription
void

forEach (回调:(变量:字符串,变异EnvironmentVariableMutator,集合:EnvironmentVariableCollection )=>任何thisArg ?:任何) : void

Iterate over each mutator in this collection.

ParameterDescription
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any

Function to execute for each entry.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
void

get (变量:字符串) : EnvironmentVariableMutator

Gets the mutator that this collection applies to a variable, if any.

ParameterDescription
variable: string

The variable to get the mutator for.

ReturnsDescription
EnvironmentVariableMutator

前置变量字符串字符串选项EnvironmentVariableMutatorOptions void

Prepend a value to an environment variable.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to prepend.

value: string

The value to prepend to the variable.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

替换变量字符串字符串选项EnvironmentVariableMutatorOptions void

Replace an environment variable with a value.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to replace.

value: string

The value to replace the variable with.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

环境变量变异器

一种突变类型及其应用于环境变量的值。

Properties

选项EnvironmentVariableMutatorOptions

Options applied to the mutator.

类型EnvironmentVariableMutatorType

The type of mutation that will occur to the variable.

字符串

The value to use for the variable.

环境变量改变选项

应用于变元的选项。

Properties

applyAtProcessCreation 布尔值

Apply to the environment just before the process is created. Defaults to false.

applyAtShellIntegration 布尔值

Apply to the environment in the shell integration script. Note that this will not apply the mutator if shell integration is disabled or not working for some reason. Defaults to false.

环境变量突变类型

一种可以应用于环境变量的突变。

Enumeration Members

替换1

Replace the variable's existing value.

追加2

Append to the end of the variable's existing value.

前置3

Prepend to the start of the variable's existing value.

环境变量作用域

环境变量集合适用的范围对象。

Properties

工作区文件夹:工作区文件夹

Any specific workspace folder to get collection for.

可求值表达式

EvaluatableExpression 表示文档中可以由活动调试器或运行时计算的表达式。此评估的结果显示在类似工具提示的小部件中。如果仅指定范围,则将从基础文档中提取表达式。可选表达式可用于覆盖提取的表达式。在这种情况下,该范围仍用于突出显示文档中的范围。

Constructors

新的EvaluatableExpression 范围范围表达式字符串EvaluatableExpression

Creates a new evaluatable expression object.

ParameterDescription
range: Range

The range in the underlying document from which the evaluatable expression is extracted.

expression?: string

If specified overrides the extracted expression.

ReturnsDescription
EvaluatableExpression

Properties

表达:字符串

范围范围

可评估表达式提供者

可评估表达式提供程序接口定义了扩展和调试悬停之间的契约。在此合约中,提供程序返回文档中给定位置的可计算表达式,编辑器在活动调试会话中计算该表达式,并在调试悬停中显示结果。

Methods

提供EvaluatableExpression 文档TextDocument位置Position令牌CancellationToken ProviderResult <EvaluatableExpression> _

Provide an evaluatable expression for the given document and position. The editor will evaluate this expression in the active debug session and will show the result in the debug hover. The expression can be implicitly specified by the range in the underlying document or by explicitly returning an expression.

ParameterDescription
document: TextDocument

The document for which the debug hover is about to appear.

position: Position

The line and character position in the document where the debug hover is about to appear.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<EvaluatableExpression>

An EvaluatableExpression or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

事件<T>

代表一个类型化的事件。

一个函数,表示您通过使用侦听器函数作为参数调用来订阅的事件。

例子

item.onDidChange(function(event) {
  console.log('Event happened: ' + event);
});

(听众: (e: T ) =>任何, thisArgs ? :任何,一次性? :一次性[] ) :一次性

A function that represents an event to which you subscribe by calling it with a listener function as argument.

ParameterDescription
listener: (e: T) => any

The listener function will be called when the event happens.

thisArgs?: any

The this-argument which will be used when calling the event listener.

disposables?: Disposable[]

An array to which a Disposable will be added.

ReturnsDescription
Disposable

A disposable which unsubscribes the event listener.

事件发射器<T>

事件发射器可用于创建和管理事件以供其他人订阅。一个发射器始终拥有一个事件。

如果您想在扩展程序中提供事件,例如在 TextDocumentContentProvider 中向其他扩展程序提供 API 时,请使用此类。

Constructors

new EventEmitter <T> ( ) : EventEmitter <T> _ _ _

ParameterDescription
ReturnsDescription
EventEmitter<T>

Properties

事件事件<T> _ _

The event listeners can subscribe to.

Methods

处置无效

Dispose this object and free resources.

ParameterDescription
ReturnsDescription
void

数据T 无效

Notify all subscribers of the event. Failure of one or more listener will not fail this function call.

ParameterDescription
data: T

The event object.

ReturnsDescription
void

扩展名<T>

代表一个扩展。

Extension要获取使用getExtension的实例。

Properties

出口T

The public API exported by this extension (return value of activate). It is an invalid action to access this field before this extension has been activated.

扩展种类:扩展种类

The extension kind describes if an extension runs where the UI runs or if an extension runs where the remote extension host runs. The extension kind is defined in the package.json-file of extensions but can also be refined via the remote.extensionKind-setting. When no remote extension host exists, the value is ExtensionKind.UI.

扩展路径字符串

The absolute file path of the directory containing this extension. Shorthand notation for Extension.extensionUri.fsPath (independent of the uri scheme).

扩展名Uri Uri

The uri of the directory containing the extension.

id 字符串

The canonical extension identifier in the form of: publisher.name.

是否活跃布尔值

true if the extension has been activated.

packageJSON :任意

The parsed contents of the extension's package.json.

Methods

activate ( ) : thenable <T> _ _

Activates this extension and returns its public API.

ParameterDescription
ReturnsDescription
Thenable<T>

A promise that will resolve when this extension has been activated.

扩展上下文

扩展上下文是扩展私有的实用程序的集合。

an 的实例作为扩展调用的ExtensionContext第一个参数提供。activate

Properties

环境变量集合全局环境变量集合

Gets the extension's global environment variable collection for this workspace, enabling changes to be applied to terminal environment variables.

扩展名:扩展名<任意>

The current Extension instance.

扩展模式:扩展模式

The mode the extension is running in. See ExtensionMode for possible values and scenarios.

扩展路径字符串

The absolute file path of the directory containing the extension. Shorthand notation for ExtensionContext.extensionUri.fsPath (independent of the uri scheme).

扩展名Uri Uri

The uri of the directory containing the extension.

globalState :备忘录& {setKeysForSync}

A memento object that stores state independent of the current opened workspace.

全局存储路径字符串

An absolute file path in which the extension can store global state. The directory might not exist on disk and creation is up to the extension. However, the parent directory is guaranteed to be existent.

Use globalState to store key value data.

全局存储Uri Uri

The uri of a directory in which the extension can store global state. The directory might not exist on disk and creation is up to the extension. However, the parent directory is guaranteed to be existent.

Use globalState to store key value data.

See also workspace.fs for how to read and write files and folders from an uri.

日志路径字符串

An absolute file path of a directory in which the extension can create log files. The directory might not exist on disk and creation is up to the extension. However, the parent directory is guaranteed to be existent.

  • deprecated - Use logUri instead.

日志Uri Uri

The uri of a directory in which the extension can create log files. The directory might not exist on disk and creation is up to the extension. However, the parent directory is guaranteed to be existent.

See also workspace.fs for how to read and write files and folders from an uri.

秘密秘密存储

A storage utility for secrets. Secrets are persisted across reloads and are independent of the current opened workspace.

存储路径字符串

An absolute file path of a workspace specific directory in which the extension can store private state. The directory might not exist on disk and creation is up to the extension. However, the parent directory is guaranteed to be existent.

Use workspaceState or globalState to store key value data.

存储Uri Uri

The uri of a workspace specific directory in which the extension can store private state. The directory might not exist and creation is up to the extension. However, the parent directory is guaranteed to be existent. The value is undefined when no workspace nor folder has been opened.

Use workspaceState or globalState to store key value data.

See also workspace.fs for how to read and write files and folders from an uri.

订阅数组<{dispose}>

An array to which disposables can be added. When this extension is deactivated the disposables will be disposed.

Note that asynchronous dispose-functions aren't awaited.

工作空间状态纪念品

A memento object that stores state in the context of the currently opened workspace.

Methods

asAbsolutePath 相对路径字符串字符串

Get the absolute path of a resource contained in the extension.

Note that an absolute uri can be constructed via Uri.joinPath and extensionUri, e.g. vscode.Uri.joinPath(context.extensionUri, relativePath);

ParameterDescription
relativePath: string

A relative path to a resource contained in the extension.

ReturnsDescription
string

The absolute path of the resource.

扩展类型

在远程窗口中,扩展类型描述了扩展是否在 UI(窗口)运行的地方运行,或者扩展是否远程运行。

Enumeration Members

用户界面1

Extension runs where the UI runs.

工作空间2

Extension runs where the remote extension host runs.

扩展模式

ExtensionMode 在 上提供ExtensionContext,指示特定扩展运行的模式。

Enumeration Members

产量1

The extension is installed normally (for example, from the marketplace or VSIX) in the editor.

开发2

The extension is running from an --extensionDevelopmentPath provided when launching the editor.

测试3

The extension is running from an --extensionTestsPath and the extension host is running unit tests.

扩展终端选项

描述虚拟流程终端应使用哪些选项的值对象。

Properties

颜色主题颜色

The icon ThemeColor for the terminal. The standard terminal.ansi* theme keys are recommended for the best contrast and consistency across themes.

图标路径乌里| 主题图标| {暗:Uri,亮:Uri }

The icon path or ThemeIcon for the terminal.

是瞬态的布尔值

Opt-out of the default terminal persistence on restart and reload. This will only take effect when terminal.integrated.enablePersistentSessions is enabled.

地点:终端编辑器位置选项| 终端分割位置选项| 航站楼位置

名称字符串

A human-readable string which will be used to represent the terminal in the UI.

pty 伪终端

An implementation of Pseudoterminal that allows an extension to control a terminal.

文件更改事件

文件系统提供程序必须使用事件来表示文件更改。

Properties

类型文件更改类型

The type of change.

乌里乌里

The uri of the file that has changed.

文件更改类型

文件更改类型的枚举。

Enumeration Members

更改1

The contents or metadata of a file have changed.

已创建2

A file has been created.

已删除3

A file has been deleted.

文件创建事件

创建文件后触发的事件。

Properties

文件只读Uri []

The files that got created.

文件装饰

文件装饰表示可以使用文件呈现的元数据。

Constructors

new FileDecoration (徽章? :字符串,工具提示? :字符串,颜色? : ThemeColor ) : FileDecoration

Creates a new decoration.

ParameterDescription
badge?: string

A letter that represents the decoration.

tooltip?: string

The tooltip of the decoration.

color?: ThemeColor

The color of the decoration.

ReturnsDescription
FileDecoration

Properties

徽章:字符串

A very short string that represents this decoration.

颜色主题颜色

The color of this decoration.

传播布尔值

A flag expressing that this decoration should be propagated to its parents.

工具提示:字符串

A human-readable tooltip for this decoration.

文件装饰提供者

装饰提供者接口定义了扩展和文件装饰之间的契约。

Events

onDidChangeFileDecorations :事件< Uri | 乌里[]>

An optional event to signal that decorations for one or many files have changed.

Note that this event should be used to propagate information about children.

See also EventEmitter

Methods

ProvideFileDecoration ( uri : Uri , token : CancellationToken ) : ProviderResult < FileDecoration >

Provide decorations for a given uri.

Note that this function is only called when a file gets rendered in the UI. This means a decoration from a descendent that propagates upwards must be signaled to the editor via the onDidChangeFileDecorations-event.

ParameterDescription
uri: Uri

The uri of the file to provide a decoration for.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<FileDecoration>

A decoration or a thenable that resolves to such.

文件删除事件

文件删除后触发的事件。

Properties

文件只读Uri []

The files that got deleted.

文件权限

文件的权限。

Enumeration Members

只读1

The file is readonly.

Note: All FileStat from a FileSystemProvider that is registered with the option isReadonly: true will be implicitly handled as if FilePermission.Readonly is set. As a consequence, it is not possible to have a readonly file system provider registered where some FileStat are not readonly.

文件重命名事件

文件重命名后触发的事件。

Properties

文件 ReadonlyArray<{newUri: Uri , oldUri: Uri }>

The files that got renamed.

文件统计

-typeFileStat表示有关文件的元数据

Properties

ctime 数字

The creation timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.

时间数字

The modification timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.

Note: If the file changed, it is important to provide an updated mtime that advanced from the previous value. Otherwise there may be optimizations in place that will not show the updated file contents in an editor for example.

权限只读

The permissions of the file, e.g. whether the file is readonly.

Note: This value might be a bitmask, e.g. FilePermission.Readonly | FilePermission.Other.

尺寸数量

The size in bytes.

Note: If the file changed, it is important to provide an updated size. Otherwise there may be optimizations in place that will not show the updated file contents in an editor for example.

类型文件类型

The type of the file, e.g. is a regular file, a directory, or symbolic link to a file.

Note: This value might be a bitmask, e.g. FileType.File | FileType.SymbolicLink.

文件系统

文件系统接口公开了编辑器的内置和贡献的 文件系统提供程序。它允许扩展程序处理本地磁盘中的文件以及来自远程位置的文件,例如远程扩展主机或 ftp 服务器。

请注意,此接口的一个实例可用作workspace.fs

Methods

复制Uri目标Uri选项 {覆盖布尔} Thenable <void>

Copy files or folders.

ParameterDescription
source: Uri

The existing file.

target: Uri

The destination location.

options?: {overwrite: boolean}

Defines if existing files should be overwritten.

ReturnsDescription
Thenable<void>

createDirectory ( uri : Uri ) : Thenable < void >

Create a new directory (Note, that new files are created via write-calls).

Note that missing directories are created automatically, e.g this call has mkdirp semantics.

ParameterDescription
uri: Uri

The uri of the new folder.

ReturnsDescription
Thenable<void>

删除( uri : Uri , options ? : {recursive: boolean , useTrash: boolean } ) : Thenable < void >

Delete a file.

ParameterDescription
uri: Uri

The resource that is to be deleted.

options?: {recursive: boolean, useTrash: boolean}

Defines if trash can should be used and if deletion of folders is recursive

ReturnsDescription
Thenable<void>

isWritableFileSystem 方案字符串布尔值

Check if a given file system supports writing files.

Keep in mind that just because a file system supports writing, that does not mean that writes will always succeed. There may be permissions issues or other errors that prevent writing a file.

ParameterDescription
scheme: string

The scheme of the filesystem, for example file or git.

ReturnsDescription
boolean

true if the file system supports writing, false if it does not support writing (i.e. it is readonly), and undefined if the editor does not know about the filesystem.

readDirectory ( uri : Uri ) : Thenable <Array<[ string , FileType ]>>

Retrieve all entries of a directory.

ParameterDescription
uri: Uri

The uri of the folder.

ReturnsDescription
Thenable<Array<[string, FileType]>>

An array of name/type-tuples or a thenable that resolves to such.

readFile ( uri : Uri ) : Thenable <Uint8Array> _ _

Read the entire contents of a file.

ParameterDescription
uri: Uri

The uri of the file.

ReturnsDescription
Thenable<Uint8Array>

An array of bytes or a thenable that resolves to such.

命名Uri目标Uri选项 {覆盖:布尔} Thenable <void>

Rename a file or folder.

ParameterDescription
source: Uri

The existing file.

target: Uri

The new location.

options?: {overwrite: boolean}

Defines if existing files should be overwritten.

ReturnsDescription
Thenable<void>

stat ( uri : Uri ) : Thenable < FileStat >

Retrieve metadata about a file.

ParameterDescription
uri: Uri

The uri of the file to retrieve metadata about.

ReturnsDescription
Thenable<FileStat>

The file metadata about the file.

writeFile uri Uri内容Uint8Array Thenable <void> _ _

Write data to a file, replacing its entire contents.

ParameterDescription
uri: Uri

The uri of the file.

content: Uint8Array

The new content of the file.

ReturnsDescription
Thenable<void>

文件系统错误

文件系统提供者应该使用这种类型来发出错误信号。

此类具有用于常见错误情况的工厂方法,例如FileNotFound当文件或文件夹不存在时,请像这样使用它们:throw vscode.FileSystemError.FileNotFound(someUri);

Static

FileExists ( messageOrUri ? : string | Uri ) : FileSystemError

Create an error to signal that a file or folder already exists, e.g. when creating but not overwriting a file.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

FileIsADirectory ( messageOrUri ? : string | Uri ) : FileSystemError

Create an error to signal that a file is a folder.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

FileNotADirectory ( messageOrUri ? : string | Uri ) : FileSystemError

Create an error to signal that a file is not a folder.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

FileNotFound ( messageOrUri ? : string | Uri ) : FileSystemError

Create an error to signal that a file or folder wasn't found.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

NoPermissions ( messageOrUri ? : string | Uri ) : FileSystemError

Create an error to signal that an operation lacks required permissions.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

不可messageOrUri ?:字符串| Uri FileSystemError

Create an error to signal that the file system is unavailable or too busy to complete a request.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

Constructors

新的 FileSystemError ( messageOrUri ? : string | Uri ) : FileSystemError

Creates a new filesystem error.

ParameterDescription
messageOrUri?: string | Uri

Message or uri.

ReturnsDescription
FileSystemError

Properties

代码字符串

A code that identifies this error.

Possible values are names of errors, like FileNotFound, or Unknown for unspecified errors.

文件系统提供者

文件系统提供程序定义编辑器需要读取、写入、发现和管理文件和文件夹的内容。它允许扩展从远程位置(例如 ftp 服务器)提供文件服务,并将这些文件无缝集成到编辑器中。

  • 注 1:文件系统提供程序 API 使用uri并假定分层路径,例如foo:/my/path是 的子级foo:/my/和父级foo:/my/path/deeper
  • 注 2:onFileSystem:<scheme>访问文件或文件夹时会触发激活事件。
  • 注3: “文件”一词通常用于表示各种文件,例如文件夹、符号链接和常规文件。

Events

onDidChangeFile :事件< FileChangeEvent []>

An event to signal that a resource has been created, changed, or deleted. This event should fire for resources that are being watched by clients of this provider.

Note: It is important that the metadata of the file that changed provides an updated mtime that advanced from the previous value in the stat and a correct size value. Otherwise there may be optimizations in place that will not show the change in an editor for example.

Methods

复制Uri目标Uri选项 {覆盖:布尔值} void | 然后可<无效>

Copy files or folders. Implementing this function is optional but it will speedup the copy operation.

  • throws - FileNotFound when parent of destination doesn't exist, e.g. no mkdirp-logic required.
  • throws - FileExists when destination exists and when the overwrite option is not true.
ParameterDescription
source: Uri

The existing file.

destination: Uri

The destination location.

options: {overwrite: boolean}

Defines if existing files should be overwritten.

ReturnsDescription
void | Thenable<void>

创建目录uri Uri 无效| 然后可<无效>

Create a new directory (Note, that new files are created via write-calls).

  • throws - FileNotFound when the parent of uri doesn't exist, e.g. no mkdirp-logic required.
ParameterDescription
uri: Uri

The uri of the new folder.

ReturnsDescription
void | Thenable<void>

删除( uri : Uri ,选项: {recursive: boolean } ) : void | 然后可<无效>

Delete a file.

ParameterDescription
uri: Uri

The resource that is to be deleted.

options: {recursive: boolean}

Defines if deletion of folders is recursive.

ReturnsDescription
void | Thenable<void>

readDirectory ( uri : Uri ) : Array<[字符串,文件类型]> | 然后可以<Array<[ string , FileType ]>>

Retrieve all entries of a directory.

ParameterDescription
uri: Uri

The uri of the folder.

ReturnsDescription
Array<[string, FileType]> | Thenable<Array<[string, FileType]>>

An array of name/type-tuples or a thenable that resolves to such.

读取文件uri Uri Uint8Array | 然后可<Uint8Array> _

Read the entire contents of a file.

ParameterDescription
uri: Uri

The uri of the file.

ReturnsDescription
Uint8Array | Thenable<Uint8Array>

An array of bytes or a thenable that resolves to such.

重命名( oldUri : Uri , newUri : Uri , options : {overwrite: boolean } ) : void | 然后可<无效>

Rename a file or folder.

  • throws - FileNotFound when parent of newUri doesn't exist, e.g. no mkdirp-logic required.
  • throws - FileExists when newUri exists and when the overwrite option is not true.
ParameterDescription
oldUri: Uri

The existing file.

newUri: Uri

The new location.

options: {overwrite: boolean}

Defines if existing files should be overwritten.

ReturnsDescription
void | Thenable<void>

stat ( uri : Uri ) : FileStat | 然后可<FileStat> _

Retrieve metadata about a file.

Note that the metadata for symbolic links should be the metadata of the file they refer to. Still, the SymbolicLink-type must be used in addition to the actual type, e.g. FileType.SymbolicLink | FileType.Directory.

ParameterDescription
uri: Uri

The uri of the file to retrieve metadata about.

ReturnsDescription
FileStat | Thenable<FileStat>

The file metadata about the file.

watch ( uri : Uri , options : {排除: readonly string [], recursive: boolean } ) :一次性

Subscribes to file change events in the file or folder denoted by uri. For folders, the option recursive indicates whether subfolders, sub-subfolders, etc. should be watched for file changes as well. With recursive: false, only changes to the files that are direct children of the folder should trigger an event.

The excludes array is used to indicate paths that should be excluded from file watching. It is typically derived from the files.watcherExclude setting that is configurable by the user. Each entry can be be:

  • the absolute path to exclude
  • a relative path to exclude (for example build/output)
  • a simple glob pattern (for example **/build, output/**)

It is the file system provider's job to call onDidChangeFile for every change given these rules. No event should be emitted for files that match any of the provided excludes.

ParameterDescription
uri: Uri

The uri of the file or folder to be watched.

options: {excludes: readonly string[], recursive: boolean}

Configures the watch.

ReturnsDescription
Disposable

A disposable that tells the provider to stop watching the uri.

writeFile uri Uri内容Uint8Array选项 {创建:布尔值,覆盖:布尔值} 无效| 然后可<无效>

Write data to a file, replacing its entire contents.

  • throws - FileNotFound when uri doesn't exist and create is not set.
  • throws - FileNotFound when the parent of uri doesn't exist and create is set, e.g. no mkdirp-logic required.
  • throws - FileExists when uri already exists, create is set but overwrite is not set.
ParameterDescription
uri: Uri

The uri of the file.

content: Uint8Array

The new content of the file.

options: {create: boolean, overwrite: boolean}

Defines if missing files should or must be created.

ReturnsDescription
void | Thenable<void>

文件系统观察者

文件系统观察器通知磁盘上或来自其他FileSystemProviders的文件和文件夹的更改。

FileSystemWatcher要获取使用 createFileSystemWatcher的实例。

Events

onDidChange 事件<Uri> _ _

An event which fires on file/folder change.

onDidCreate 事件<Uri> _ _

An event which fires on file/folder creation.

onDidDelete :事件<Uri> _ _

An event which fires on file/folder deletion.

Properties

忽略更改事件布尔值

true if this file system watcher has been created such that it ignores change file system events.

忽略创建事件布尔值

true if this file system watcher has been created such that it ignores creation file system events.

忽略删除事件布尔值

true if this file system watcher has been created such that it ignores delete file system events.

Methods

处置任何

Dispose this object.

ParameterDescription
ReturnsDescription
any

文件类型

文件类型的枚举。类型FileDirectory也可以是符号链接,在这种情况下使用FileType.File | FileType.SymbolicLinkFileType.Directory | FileType.SymbolicLink

Enumeration Members

未知0

The file type is unknown.

文件1

A regular file.

目录2

A directory.

符号链接64

A symbolic link to a file.

文件创建事件

将要创建文件时触发的事件。

要在创建文件之前对工作区进行修改,请使用解析为工作区 edit的 thenable 调用waitUntil函数。

Properties

文件只读Uri []

The files that are going to be created.

令牌取消令牌

A cancellation token.

Methods

waitUntil ( thenable : Thenable < WorkspaceEdit > ) : void

Allows to pause the event and to apply a workspace edit.

Note: This function can only be called during event dispatch and not in an asynchronous manner:

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
ParameterDescription
thenable: Thenable<WorkspaceEdit>

A thenable that delays saving.

ReturnsDescription
void

waitUntil ( thenable : Thenable <任意> ) : void

Allows to pause the event until the provided thenable resolves.

Note: This function can only be called during event dispatch.

ParameterDescription
thenable: Thenable<any>

A thenable that delays saving.

ReturnsDescription
void

文件删除事件

将要删除文件时触发的事件。

要在删除文件之前对工作区进行修改,请使用解析waitUntil工作区 edit的 thenable 调用 -function 。

Properties

文件只读Uri []

The files that are going to be deleted.

令牌取消令牌

A cancellation token.

Methods

waitUntil ( thenable : Thenable < WorkspaceEdit > ) : void

Allows to pause the event and to apply a workspace edit.

Note: This function can only be called during event dispatch and not in an asynchronous manner:

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
ParameterDescription
thenable: Thenable<WorkspaceEdit>

A thenable that delays saving.

ReturnsDescription
void

waitUntil ( thenable : Thenable <任意> ) : void

Allows to pause the event until the provided thenable resolves.

Note: This function can only be called during event dispatch.

ParameterDescription
thenable: Thenable<any>

A thenable that delays saving.

ReturnsDescription
void

文件重命名事件

文件要重命名时触发的事件。

要在重命名文件之前对工作区进行修改,请使用解析waitUntil工作区 edit的 thenable 调用 -function 。

Properties

文件 ReadonlyArray<{newUri: Uri , oldUri: Uri }>

The files that are going to be renamed.

令牌取消令牌

A cancellation token.

Methods

waitUntil ( thenable : Thenable < WorkspaceEdit > ) : void

Allows to pause the event and to apply a workspace edit.

Note: This function can only be called during event dispatch and not in an asynchronous manner:

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
ParameterDescription
thenable: Thenable<WorkspaceEdit>

A thenable that delays saving.

ReturnsDescription
void

waitUntil ( thenable : Thenable <任意> ) : void

Allows to pause the event until the provided thenable resolves.

Note: This function can only be called during event dispatch.

ParameterDescription
thenable: Thenable<any>

A thenable that delays saving.

ReturnsDescription
void

折叠上下文

折叠上下文(以供将来使用)

折叠范围

基于行的折叠范围。为了有效,起始行和结束行必须大于零且小于文档中的行数。无效范围将被忽略。

Constructors

new FoldingRange 开始数字结束数字种类FoldingRangeKind FoldingRange

Creates a new folding range.

ParameterDescription
start: number

The start line of the folded range.

end: number

The end line of the folded range.

kind?: FoldingRangeKind

The kind of the folding range.

ReturnsDescription
FoldingRange

Properties

结束数字

The zero-based end line of the range to fold. The folded area ends with the line's last character. To be valid, the end must be zero or larger and smaller than the number of lines in the document.

善良折叠范围种类

Describes the Kind of the folding range such as Comment or Region. The kind is used to categorize folding ranges and used by commands like 'Fold all comments'. See FoldingRangeKind for an enumeration of all kinds. If not set, the range is originated from a syntax element.

开始数字

The zero-based start line of the range to fold. The folded area starts after the line's last character. To be valid, the end must be zero or larger and smaller than the number of lines in the document.

折叠范围种类

特定折叠范围类型的枚举。kind 是FoldingRange的可选字段 ,用于区分特定的折叠范围,例如源自注释的范围。Fold all comments该类型由或 之类的命令使用 Fold all regions。如果未在范围上设置种类,则范围源自注释、导入或区域标记之外的语法元素。

Enumeration Members

评论1

Kind for folding range representing a comment.

进口2

Kind for folding range representing a import.

地区: 3

Kind for folding range representing regions originating from folding markers like #region and #endregion.

FoldingRangeProvider

折叠范围提供程序接口定义了编辑器中的扩展和折叠之间的契约 。

Events

onDidChangeFoldingRanges 事件<无效>

An optional event to signal that the folding ranges from this provider have changed.

Methods

提供FoldingRanges 文档TextDocument上下文FoldingContext令牌CancellationToken ProviderResult < FoldingRange []>

Returns a list of folding ranges or null and undefined if the provider does not want to participate or was cancelled.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

context: FoldingContext

Additional context information (for future use)

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<FoldingRange[]>

格式选项

描述应使用哪些选项格式的值对象。

Properties

插入空格布尔值

Prefer spaces over tabs.

选项卡大小数字

Size of a tab in spaces.

函数断点

由函数名称指定的断点。

Constructors

new FunctionBreakpoint (函数名:字符串,启用? :布尔值,条件? :字符串, hitCondition ? :字符串, logMessage ? :字符串) : FunctionBreakpoint

Create a new function breakpoint.

ParameterDescription
functionName: string
enabled?: boolean
condition?: string
hitCondition?: string
logMessage?: string
ReturnsDescription
FunctionBreakpoint

Properties

条件:字符串

An optional expression for conditional breakpoints.

启用布尔值

Is breakpoint enabled.

函数名字符串

The name of the function to which this breakpoint is attached.

命中条件? :字符串

An optional expression that controls how many hits of the breakpoint are ignored.

id 字符串

The unique ID of the breakpoint.

日志消息:字符串

An optional message that gets logged when this breakpoint is hit. Embedded expressions within {} are interpolated by the debug adapter.

全局环境变量集合

扩展可以应用于流程环境的突变的集合。适用于所有范围。

Properties

描述字符串| 降价字符串

A description for the environment variable collection, this will be used to describe the changes in the UI.

持久性布尔值

Whether the collection should be cached for the workspace and applied to the terminal across window reloads. When true the collection will be active immediately such when the window reloads. Additionally, this API will return the cached version if it exists. The collection will be invalidated when the extension is uninstalled or when the collection is cleared. Defaults to true.

Methods

附加变量字符串字符串选项EnvironmentVariableMutatorOptions void

Append a value to an environment variable.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to append to.

value: string

The value to append to the variable.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

清除( ) :无效

Clears all mutators from this collection.

ParameterDescription
ReturnsDescription
void

删除变量字符串无效

Deletes this collection's mutator for a variable.

ParameterDescription
variable: string

The variable to delete the mutator for.

ReturnsDescription
void

forEach (回调:(变量:字符串,变异EnvironmentVariableMutator,集合:EnvironmentVariableCollection )=>任何thisArg ?:任何) : void

Iterate over each mutator in this collection.

ParameterDescription
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any

Function to execute for each entry.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
void

get (变量:字符串) : EnvironmentVariableMutator

Gets the mutator that this collection applies to a variable, if any.

ParameterDescription
variable: string

The variable to get the mutator for.

ReturnsDescription
EnvironmentVariableMutator

getScoped 范围EnvironmentVariableScope EnvironmentVariableCollection

Gets scope-specific environment variable collection for the extension. This enables alterations to terminal environment variables solely within the designated scope, and is applied in addition to (and after) the global collection.

Each object obtained through this method is isolated and does not impact objects for other scopes, including the global collection.

ParameterDescription
scope: EnvironmentVariableScope

The scope to which the environment variable collection applies to.

If a scope parameter is omitted, collection applicable to all relevant scopes for that parameter is returned. For instance, if the 'workspaceFolder' parameter is not specified, the collection that applies across all workspace folders will be returned.

ReturnsDescription
EnvironmentVariableCollection

Environment variable collection for the passed in scope.

前置变量字符串字符串选项EnvironmentVariableMutatorOptions void

Prepend a value to an environment variable.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to prepend.

value: string

The value to prepend to the variable.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

替换变量字符串字符串选项EnvironmentVariableMutatorOptions void

Replace an environment variable with a value.

Note that an extension can only make a single change to any one variable, so this will overwrite any previous calls to replace, append or prepend.

ParameterDescription
variable: string

The variable to replace.

value: string

The value to replace the variable with.

options?: EnvironmentVariableMutatorOptions

Options applied to the mutator, when no options are provided this will default to { applyAtProcessCreation: true }.

ReturnsDescription
void

全局模式

用于匹配文件路径的文件全局模​​式。这可以是全局模式字符串(如**/*.{ts,js}*.{ts,js})或相对模式

Glob 模式可以具有以下语法:

  • *匹配路径段中的零个或多个字符
  • ?匹配路径段中的一个字符
  • **匹配任意数量的路径段,包括没有
  • {}对条件进行分组(例如**/*.{ts,js}匹配所有 TypeScript 和 JavaScript 文件)
  • []声明要在路径段中匹配的字符范围(例如,example.[0-9]匹配example.0, example.1, ...)
  • [!...]否定路径段中要匹配的一系列字符(例如,example.[!0-9]匹配example.a, example.b,但不匹配example.0

注意:反斜杠 (``) 在 glob 模式中无效。如果您有要匹配的现有文件路径,请考虑使用相对模式支持,该支持负责将任何反斜杠转换为斜杠。否则,请确保在创建 glob 模式时将所有反斜杠转换为斜杠。

GlobPattern :字符串| 相对模式

徘徊

悬停代表符号或单词的附加信息。悬停在类似工具提示的小部件中呈现。

Constructors

新的悬停内容MarkdownString | MarkedString | Array< MarkdownString | MarkedString >,范围范围悬停

Creates a new hover object.

ParameterDescription
contents: MarkdownString | MarkedString | Array<MarkdownString | MarkedString>

The contents of the hover.

range?: Range

The range to which the hover applies.

ReturnsDescription
Hover

Properties

内容数组< MarkdownString | 标记字符串>

The contents of this hover.

范围范围

The range to which this hover applies. When missing, the editor will use the range at the current position or the current position itself.

悬停提供者

Methods

ProvideHover (文档: TextDocument ,位置: Position ,令牌: CancellationToken ) : ProviderResult <悬停>

Provide a hover for the given position and document. Multiple hovers at the same position will be merged by the editor. A hover can have a range which defaults to the word range at the position when omitted.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Hover>

A hover or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

实施提供者

实现提供者接口定义了扩展和转到实现功能之间的契约。

Methods

ProvideImplementation (文档: TextDocument ,位置: Position ,令牌: CancellationToken ) : ProviderResult <定义| 位置链接[]>

Provide the implementations of the symbol at the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Definition | LocationLink[]>

A definition or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

缩进动作

描述按 Enter 键时如何处理缩进。

Enumeration Members

: 0

Insert new line and copy the previous line's indentation.

缩进1

Insert new line and indent once (relative to the previous line's indentation).

缩进减少缩进2

Insert two new lines:

  • the first one indented which will hold the cursor
  • the second one at the same indentation level

减少缩进3

Insert new line and outdent once (relative to the previous line's indentation).

缩进规则

描述语言的缩进规则。

Properties

减少缩进模式正则表达式

If a line matches this pattern, then all the lines after it should be unindented once (until another rule matches).

增加IndentPattern RegExp

If a line matches this pattern, then all the lines after it should be indented once (until another rule matches).

缩进下一行模式:正则表达式

If a line matches this pattern, then only the next line after it should be indented once.

无缩进线模式:正则表达式

If a line matches this pattern, then its indentation should not be changed and it should not be evaluated against the other rules.

镶嵌提示

镶嵌提示信息。

Constructors

new InlayHint (位置:位置,标签:字符串| InlayHintLabelPart [],种类? : InlayHintKind ) : InlayHint

Creates a new inlay hint.

ParameterDescription
position: Position

The position of the hint.

label: string | InlayHintLabelPart[]

The label of the hint.

kind?: InlayHintKind

The kind of the hint.

ReturnsDescription
InlayHint

Properties

善良:镶嵌提示种类

The kind of this hint. The inlay hint kind defines the appearance of this inlay hint.

标签字符串| InlayHintLabelPart []

The label of this hint. A human readable string or an array of label parts.

Note that neither the string nor the label part can be empty.

左填充布尔值

Render padding before the hint. Padding will use the editor's background color, not the background color of the hint itself. That means padding can be used to visually align/separate an inlay hint.

填充对吗布尔值

Render padding after the hint. Padding will use the editor's background color, not the background color of the hint itself. That means padding can be used to visually align/separate an inlay hint.

位置:位置

The position of this hint.

文本编辑? :文本编辑[]

Optional text edits that are performed when accepting this inlay hint. The default gesture for accepting an inlay hint is the double click.

Note that edits are expected to change the document so that the inlay hint (or its nearest variant) is now part of the document and the inlay hint itself is now obsolete.

Note that this property can be set late during resolving of inlay hints.

工具提示:字符串| 降价字符串

The tooltip text when you hover over this item.

Note that this property can be set late during resolving of inlay hints.

镶嵌提示种类

镶嵌提示种类。

内联提示的类型定义了其外观,例如使用相应的前景色和背景色。

Enumeration Members

类型1

An inlay hint that for a type annotation.

参数2

An inlay hint that is for a parameter.

嵌体提示标签零件

嵌入提示标签部分允许嵌入提示的交互式和复合标签。

Constructors

新的InlayHintLabelPart 字符串InlayHintLabelPart

Creates a new inlay hint label part.

ParameterDescription
value: string

The value of the part.

ReturnsDescription
InlayHintLabelPart

Properties

命令命令

An optional command for this label part.

The editor renders parts with commands as clickable links. The command is added to the context menu when a label part defines location and command .

Note that this property can be set late during resolving of inlay hints.

地点:地点

An optional source code location that represents this label part.

The editor will use this location for the hover and for code navigation features: This part will become a clickable link that resolves to the definition of the symbol at the given location (not necessarily the location itself), it shows the hover that shows at the given location, and it shows a context menu with further code navigation commands.

Note that this property can be set late during resolving of inlay hints.

工具提示:字符串| 降价字符串

The tooltip text when you hover over this label part.

Note that this property can be set late during resolving of inlay hints.

字符串

The value of this label part.

InlayHintsProvider<T>

嵌入提示提供者接口定义了扩展和嵌入提示功能之间的契约。

Events

onDidChangeInlayHints 事件<无效>

An optional event to signal that inlay hints from this provider have changed.

Methods

ProvideInlayHints (文档: TextDocument ,范围: Range ,令牌: CancellationToken ) : ProviderResult < T []>

Provide inlay hints for the given range and document.

Note that inlay hints that are not contained by the given range are ignored.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

range: Range

The range for which inlay hints should be computed.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

An array of inlay hints or a thenable that resolves to such.

solveInlayHint 提示T令牌CancellationToken ProviderResult <T> _ _

Given an inlay hint fill in tooltip, text edits, or complete label parts.

Note that the editor will resolve an inlay hint at most once.

ParameterDescription
hint: T

An inlay hint.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

The resolved inlay hint 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.

内联完成上下文

提供有关请求内联完成的上下文的信息。

Properties

选定的完成信息选定的完成信息

Provides information about the currently selected item in the autocomplete widget if it is visible.

If set, provided inline completions must extend the text of the selected item and use the same range, otherwise they are not shown as preview. As an example, if the document text is console. and the selected item is .log replacing the . in the document, the inline completion must also replace . and start with .log, for example .log().

Inline completion providers are requested again whenever the selected item changes.

触发器种类内联完成触发器种类

Describes how the inline completion was triggered.

内联完成项

内联完成项表示建议内联以完成正在键入的文本的文本片段。

另请参见 InlineCompletionItemProvider.provideInlineCompletionItems

Constructors

new InlineCompletionItem ( insertText : string | SnippetString , range ? : Range , command ? : Command ) : InlineCompletionItem

Creates a new inline completion item.

ParameterDescription
insertText: string | SnippetString

The text to replace the range with.

range?: Range

The range to replace. If not set, the word at the requested position will be used.

command?: Command

An optional Command that is executed after inserting this completion.

ReturnsDescription
InlineCompletionItem

Properties

命令命令

An optional Command that is executed after inserting this completion.

过滤文本:字符串

A text that is used to decide if this inline completion should be shown. When falsy the InlineCompletionItem.insertText is used.

An inline completion is shown if the text to replace is a prefix of the filter text.

插入文本字符串| 片段字符串

The text to replace the range with. Must be set. Is used both for the preview and the accept operation.

范围范围

The range to replace. Must begin and end on the same line.

Prefer replacements over insertions to provide a better experience when the user deletes typed text.

内联完成项提供程序

内联完成项提供程序接口定义了扩展和内联完成功能之间的契约。

提供者被要求通过用户手势显式地或在键入时隐式地完成。

Methods

ProvideInlineCompletionItems (文档: TextDocument ,位置: Position ,上下文: InlineCompletionContext ,令牌: CancellationToken ) : ProviderResult < InlineCompletionList | 内联完成项[]>

Provides inline completion items for the given position and document. If inline completions are enabled, this method will be called whenever the user stopped typing. It will also be called when the user explicitly triggers inline completions or explicitly asks for the next or previous inline completion. In that case, all available inline completions should be returned. context.triggerKind can be used to distinguish between these scenarios.

ParameterDescription
document: TextDocument

The document inline completions are requested for.

position: Position

The position inline completions are requested for.

context: InlineCompletionContext

A context object with additional information.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<InlineCompletionList | InlineCompletionItem[]>

An array of completion items or a thenable that resolves to an array of completion items.

内联完成列表

表示要在编辑器中呈现的内联完成项目的集合。

Constructors

新的 InlineCompletionList ( items : InlineCompletionItem [] ) : InlineCompletionList

Creates a new list of inline completion items.

ParameterDescription
items: InlineCompletionItem[]
ReturnsDescription
InlineCompletionList

Properties

项目内联完成项目[]

The inline completion items.

内联完成触发器种类

描述如何触发内联完成提供程序

Enumeration Members

调用0

Completion was triggered explicitly by a user gesture. Return multiple completion items to enable cycling through them.

自动1

Completion was triggered automatically while editing. It is sufficient to return a single completion item in this case.

内联值

内联值信息可以通过不同的方式提供:

  • 直接作为文本值(类 InlineValueText)。
  • 作为用于变量查找的名称(类 InlineValueVariableLookup)
  • 作为可计算表达式(类 InlineValueEvaluatableExpression) InlineValue 类型将所有内联值类型组合为一种类型。

内联值内联值文本| 内联值变量查找| 内联值可评估表达式

内联值上下文

从 InlineValuesProvider 请求内联值时包含上下文信息的值对象。

Properties

框架ID 数字

The stack frame (as a DAP Id) where the execution has stopped.

停止位置范围

The document range where execution has stopped. Typically the end position of the range denotes the line where the inline values are shown.

内联值可评估表达式

通过表达式求值提供内联值。如果仅指定范围,则将从基础文档中提取表达式。可选表达式可用于覆盖提取的表达式。

Constructors

新的InlineValueEvaluatableExpression 范围范围表达式字符串InlineValueEvaluatableExpression

Creates a new InlineValueEvaluatableExpression object.

ParameterDescription
range: Range

The range in the underlying document from which the evaluatable expression is extracted.

expression?: string

If specified overrides the extracted expression.

ReturnsDescription
InlineValueEvaluatableExpression

Properties

表达:字符串

If specified the expression overrides the extracted expression.

范围范围

The document range for which the inline value applies. The range is used to extract the evaluatable expression from the underlying document.

内联值提供者

内联值提供程序接口定义扩展和编辑器的调试器内联值功能之间的契约。在此合同中,提供程序返回给定文档范围的内联值信息,并且编辑器在编辑器中的行尾显示此信息。

Events

onDidChangeInlineValues 事件<无效>

An optional event to signal that inline values have changed.

See also EventEmitter

Methods

ProvideInlineValues 文档TextDocumentviewPort 范围上下文InlineValueContext令牌CancellationToken ProviderResult < InlineValue []>

Provide "inline value" information for a given document and range. The editor calls this method whenever debugging stops in the given document. The returned inline values information is rendered in the editor at the end of lines.

ParameterDescription
document: TextDocument

The document for which the inline values information is needed.

viewPort: Range

The visible document range for which inline values should be computed.

context: InlineValueContext

A bag containing contextual information like the current location.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<InlineValue[]>

An array of InlineValueDescriptors or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

内联值文本

提供内联值作为文本。

Constructors

新的InlineValueText 范围范围文本字符串InlineValueText

Creates a new InlineValueText object.

ParameterDescription
range: Range

The document line where to show the inline value.

text: string

The value to be shown for the line.

ReturnsDescription
InlineValueText

Properties

范围范围

The document range for which the inline value applies.

文本字符串

The text of the inline value.

内联值变量查找

通过变量查找提供内联值。如果仅指定范围,则将从基础文档中提取变量名称。可选的变量名称可用于覆盖提取的名称。

Constructors

新的InlineValueVariableLookup 范围范围变量名称字符串caseSensitiveLookup ?:布尔InlineValueVariableLookup

Creates a new InlineValueVariableLookup object.

ParameterDescription
range: Range

The document line where to show the inline value.

variableName?: string

The name of the variable to look up.

caseSensitiveLookup?: boolean

How to perform the lookup. If missing lookup is case sensitive.

ReturnsDescription
InlineValueVariableLookup

Properties

caseSensitiveLookup :布尔值

How to perform the lookup.

范围范围

The document range for which the inline value applies. The range is used to extract the variable name from the underlying document.

变量名? :字符串

If specified the name of the variable to look up.

输入框

一个具体的QuickInput让用户输入文本值。

请注意,在许多情况下,更方便的window.showInputBox 更易于使用。当window.showInputBox不能提供所需的灵活性时,应使用window.createInputBox 。

Events

onDidAccept :事件<void> _ _

An event signaling when the user indicated acceptance of the input value.

onDidChangeValue 事件<字符串>

An event signaling when the value has changed.

onDidHide :事件<void> _ _

An event signaling when this input UI is hidden.

There are several reasons why this UI might have to be hidden and the extension will be notified through QuickInput.onDidHide. (Examples include: an explicit call to QuickInput.hide, the user pressing Esc, some other input UI opening, etc.)

onDidTriggerButton :事件<QuickInputButton> _ _

An event signaling when a button was triggered.

Properties

布尔值

If the UI should show a progress indicator. Defaults to false.

Change this to true, e.g., while loading more data or validating user input.

按钮只读QuickInputButton []

Buttons for actions in the UI.

启用布尔值

If the UI should allow for user input. Defaults to true.

Change this to false, e.g., while validating user input or loading data for the next step in user input.

忽略焦点输出布尔值

If the UI should stay open even when loosing UI focus. Defaults to false. This setting is ignored on iPad and is always false.

密码布尔值

If the input value should be hidden. Defaults to false.

占位符字符串

Optional placeholder shown when no value has been input.

提示字符串

An optional prompt text providing some ask or explanation to the user.

步骤:编号

An optional current step count.

标题字符串

An optional title.

总步数数量

An optional total step count.

验证消息字符串| 输入框验证消息

An optional validation message indicating a problem with the current input value. By returning a string, the InputBox will use a default InputBoxValidationSeverity of Error. Returning undefined clears the validation message.

字符串

Current input value.

valueSelection :只读 [数字,数字]

Selection range in the input value. Defined as tuple of two number where the first is the inclusive start index and the second the exclusive end index. When undefined the whole pre-filled value will be selected, when empty (start equals end) only the cursor will be set, otherwise the defined range will be selected.

This property does not get updated when the user types or makes a selection, but it can be updated by the extension.

Methods

处置无效

Dispose of this input UI and any associated resources. If it is still visible, it is first hidden. After this call the input UI is no longer functional and no additional methods or properties on it should be accessed. Instead a new input UI should be created.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hides this input UI. This will also fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

显示( ) :无效

Makes the input UI visible in its current configuration. Any other input UI will first fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

输入框选项

用于配置输入框 UI 行为的选项。

Properties

忽略焦点输出布尔值

Set to true to keep the input box open when focus moves to another part of the editor or to another window. This setting is ignored on iPad and is always false.

密码布尔值

Controls if a password input is shown. Password input hides the typed text.

占位符:字符串

An optional string to show as placeholder in the input box to guide the user what to type.

提示:字符串

The text to display underneath the input box.

标题:字符串

An optional string that represents the title of the input box.

价值:字符串

The value to pre-fill in the input box.

值选择? : [号码,号码]

Selection of the pre-filled value. Defined as tuple of two number where the first is the inclusive start index and the second the exclusive end index. When undefined the whole pre-filled value will be selected, when empty (start equals end) only the cursor will be set, otherwise the defined range will be selected.

Methods

validateInput 字符串字符串| 输入框验证消息| thenable <字符串| 输入框验证消息>

An optional function that will be called to validate input and to give a hint to the user.

ParameterDescription
value: string

The current value of the input box.

ReturnsDescription
string | InputBoxValidationMessage | Thenable<string | InputBoxValidationMessage>

Either a human-readable string which is presented as an error message or an InputBoxValidationMessage which can provide a specific message severity. Return undefined, null, or the empty string when 'value' is valid.

输入框验证消息

用于配置验证消息的行为的对象。

Properties

消息字符串

The validation message to display.

严重性InputBoxValidationSeverity

The severity of the validation message. NOTE: When using InputBoxValidationSeverity.Error, the user will not be allowed to accept (hit ENTER) the input. Info and Warning will still allow the InputBox to accept the input.

输入框验证严重性

输入框验证的严重性级别。

Enumeration Members

信息1

Informational severity level.

警告2

Warning severity level.

错误3

Error severity level.

语言配置

语言配置接口定义了扩展和各种编辑器功能之间的契约,例如自动括号插入、自动缩进等。

Properties

__characterPairSupport : {autoClosingPairs: Array<{close: string , notIn: string [], open: string }>}

Deprecated Do not use.

  • deprecated - * Use the autoClosingPairs property in the language configuration file instead.
ParameterDescription
autoClosingPairs: Array<{close: string, notIn: string[], open: string}>
  • deprecated

__electricCharacterSupport {括号:任何,docComment:{关闭:字符串,lineStart:字符串,打开:字符串,范围:字符串}}

Deprecated Do not use.

  • deprecated - Will be replaced by a better API soon.
ParameterDescription
brackets: any

This property is deprecated and will be ignored from the editor.

  • deprecated
docComment: {close: string, lineStart: string, open: string, scope: string}

This property is deprecated and not fully supported anymore by the editor (scope and lineStart are ignored). Use the autoClosingPairs property in the language configuration file instead.

  • deprecated

自动关闭对:自动关闭配对[]

The language's auto closing pairs.

括号:字符对[]

The language's brackets. This configuration implicitly affects pressing Enter around these brackets.

评论:评论规则

The language's comment settings.

缩进规则? :缩进规则

The language's indentation settings.

onEnterRules : OnEnterRule []

The language's rules to be evaluated when pressing Enter.

单词模式:正则表达式

The language's word definition. If the language supports Unicode identifiers (e.g. JavaScript), it is preferable to provide a word definition that uses exclusion of known separators. e.g.: A regex that matches anything except known separators (and dot is allowed to occur in a floating point number): /(-?\d.\d\w)|([^`~!#%^&*()-=+[{]}\|;:'",.<>/?\s]+)/g

语言状态项

语言状态项是为活动文本编辑器呈现语言状态报告的首选方式,例如选定的 linter 或通知配置问题。

Properties

可访问性信息? 辅助功能信息

Accessibility information used when a screen reader interacts with this item

布尔值

Controls whether the item is shown as "busy". Defaults to false.

命令命令

A command for this item.

详细:字符串

Optional, human-readable details for this item.

id 字符串

The identifier of this item.

名称字符串

The short name of this item, like 'Java Language Status', etc.

选择器文档选择器

A selector that defines for what editors this item shows.

严重性语言状态严重性

The severity of this item.

Defaults to information. You can use this property to signal to users that there is a problem that needs attention, like a missing executable or an invalid configuration.

文本字符串

The text to show for the entry. You can embed icons in the text by leveraging the syntax:

My text $(icon-name) contains icons like $(icon-name) this one.

Where the icon-name is taken from the ThemeIcon icon set, e.g. light-bulb, thumbsup, zap etc.

Methods

处置无效

Dispose and free associated resources.

ParameterDescription
ReturnsDescription
void

语言状态严重性

表示语言状态的严重级别。

Enumeration Members

信息: 0

Informational severity level.

警告1

Warning severity level.

错误2

Error severity level.

链接编辑范围提供者

链接编辑范围提供程序接口定义扩展和链接编辑功能之间的合同。

Methods

提供LinkedEditingRanges 文档TextDocument位置位置令牌CancellationToken ProviderResult <LinkedEditingRanges> _

For a given position in a document, returns the range of the symbol at the position and all ranges that have the same content. A change to one of the ranges can be applied to all other ranges if the new content is valid. An optional word pattern can be returned with the result to describe valid contents. If no result-specific word pattern is provided, the word pattern from the language configuration is used.

ParameterDescription
document: TextDocument

The document in which the provider was invoked.

position: Position

The position at which the provider was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<LinkedEditingRanges>

A list of ranges that can be edited together

链接编辑范围

表示可以与单词模式一起编辑的范围列表,以描述有效范围内容。

Constructors

新的 LinkedEditingRanges (范围: Range [], wordPattern ? : RegExp ) : LinkedEditingRanges

Create a new linked editing ranges object.

ParameterDescription
ranges: Range[]

A list of ranges that can be edited together

wordPattern?: RegExp

An optional word pattern that describes valid contents for the given ranges

ReturnsDescription
LinkedEditingRanges

Properties

范围范围[]

A list of ranges that can be edited together. The ranges must have identical length and text content. The ranges cannot overlap.

单词模式正则表达式

An optional word pattern that describes valid contents for the given ranges. If no pattern is provided, the language configuration's word pattern will be used.

地点

表示资源内的位置,例如文本文件内的一行。

Constructors

新位置uri UrirangeOrPosition 范围|位置位置

Creates a new location object.

ParameterDescription
uri: Uri

The resource identifier.

rangeOrPosition: Range | Position

The range or position. Positions will be converted to an empty range.

ReturnsDescription
Location

Properties

范围范围

The document range of this location.

乌里乌里

The resource identifier of this location.

代表两个位置的连接。提供正常位置的附加元数据,包括原点范围。

Properties

原点选择范围范围

Span of the origin of this link.

Used as the underlined span for mouse definition hover. Defaults to the word range at the definition position.

目标范围范围

The full target range of this link.

目标选择范围范围

The span of this link.

目标Uri Uri

The target resource identifier of this link.

日志级别

日志级别

Enumeration Members

关闭0

No messages are logged with this level.

踪迹1

All messages are logged with this level.

调试2

Messages with debug and higher log level are logged with this level.

信息3

Messages with info and higher log level are logged with this level.

警告4

Messages with warning and higher log level are logged with this level.

错误5

Only error messages are logged with this level.

日志输出通道

用于包含日志输出的通道。

LogOutputChannel要获取使用 createOutputChannel的实例。

Events

onDidChangeLogLevel 事件<日志级别>

An Event which fires when the log level of the channel changes.

Properties

日志级别日志级别

The current log level of the channel. Defaults to editor log level.

名称字符串

The human-readable name of this output channel.

Methods

附加字符串无效

Append the given value to the channel.

ParameterDescription
value: string

A string, falsy values will not be printed.

ReturnsDescription
void

附加行字符串无效

Append the given value and a line feed character to the channel.

ParameterDescription
value: string

A string, falsy values will be printed.

ReturnsDescription
void

清除( ) :无效

Removes all output from the channel.

ParameterDescription
ReturnsDescription
void

调试消息字符串...参数任何[] 无效

Outputs the given debug message to the channel.

The message is only logged if the channel is configured to display debug log level or lower.

ParameterDescription
message: string

debug message to log

...args: any[]
ReturnsDescription
void

处置无效

Dispose and free associated resources.

ParameterDescription
ReturnsDescription
void

错误错误字符串|错误...参数任何[] 无效

Outputs the given error or error message to the channel.

The message is only logged if the channel is configured to display error log level or lower.

ParameterDescription
error: string | Error

Error or error message to log

...args: any[]
ReturnsDescription
void

隐藏无效

Hide this channel from the UI.

ParameterDescription
ReturnsDescription
void

信息消息字符串...参数任何[] 无效

Outputs the given information message to the channel.

The message is only logged if the channel is configured to display info log level or lower.

ParameterDescription
message: string

info message to log

...args: any[]
ReturnsDescription
void

替换字符串无效

Replaces all output from the channel with the given value.

ParameterDescription
value: string

A string, falsy values will not be printed.

ReturnsDescription
void

显示保留焦点布尔值无效

Reveal this channel in the UI.

ParameterDescription
preserveFocus?: boolean

When true the channel will not take focus.

ReturnsDescription
void

显示ViewColumn保留焦点布尔值无效

Reveal this channel in the UI.

  • deprecated - Use the overload with just one parameter (show(preserveFocus?: boolean): void).
ParameterDescription
column?: ViewColumn

This argument is deprecated and will be ignored.

preserveFocus?: boolean

When true the channel will not take focus.

ReturnsDescription
void

跟踪消息字符串...参数任何[] 无效

Outputs the given trace message to the channel. Use this method to log verbose information.

The message is only logged if the channel is configured to display trace log level.

ParameterDescription
message: string

trace message to log

...args: any[]
ReturnsDescription
void

警告消息字符串...参数任何[] 无效

Outputs the given warning message to the channel.

The message is only logged if the channel is configured to display warning log level or lower.

ParameterDescription
message: string

warning message to log

...args: any[]
ReturnsDescription
void

降价字符串

支持通过markdown 语法进行格式化的人类可读文本。

当supportThemeIcons设置为时,支持通过- 语法渲染主题图标$(<name>)true

当supportHtml设置为时,支持嵌入 html 的呈现true

Constructors

新的MarkdownString 字符串supportThemeIcons ?:布尔值MarkdownString

Creates a new markdown string with the given value.

ParameterDescription
value?: string

Optional, initial value.

supportThemeIcons?: boolean

Optional, Specifies whether ThemeIcons are supported within the MarkdownString.

ReturnsDescription
MarkdownString

Properties

基地址:乌里

Uri that relative paths are resolved relative to.

If the baseUri ends with /, it is considered a directory and relative paths in the markdown are resolved relative to that directory:

const md = new vscode.MarkdownString(`[link](./file.js)`);
md.baseUri = vscode.Uri.file('/path/to/dir/');
// Here 'link' in the rendered markdown resolves to '/path/to/dir/file.js'

If the baseUri is a file, relative paths in the markdown are resolved relative to the parent dir of that file:

const md = new vscode.MarkdownString(`[link](./file.js)`);
md.baseUri = vscode.Uri.file('/path/to/otherFile.js');
// Here 'link' in the rendered markdown resolves to '/path/to/file.js'

是否值得信赖:布尔值| {enabledCommands:只读字符串[]}

Indicates that this markdown string is from a trusted source. Only trusted markdown supports links that execute commands, e.g. [Run it](command:myCommandId).

Defaults to false (commands are disabled).

支持HTML吗?布尔值

Indicates that this markdown string can contain raw html tags. Defaults to false.

When supportHtml is false, the markdown renderer will strip out any raw html tags that appear in the markdown text. This means you can only use markdown syntax for rendering.

When supportHtml is true, the markdown render will also allow a safe subset of html tags and attributes to be rendered. See https://github.com/microsoft/vscode/blob/6d2920473c6f13759c978dd89104c4270a83422d/src/vs/base/browser/markdownRenderer.ts#L296 for a list of all supported tags and attributes.

支持主题图标布尔值

Indicates that this markdown string can contain ThemeIcons, e.g. $(zap).

字符串

The markdown string.

Methods

appendCodeblock 字符串语言字符串MarkdownString

Appends the given string as codeblock using the provided language.

ParameterDescription
value: string

A code snippet.

language?: string

An optional language identifier.

ReturnsDescription
MarkdownString

附加Markdown 字符串MarkdownString

Appends the given string 'as is' to this markdown string. When supportThemeIcons is true, ThemeIcons in the value will be iconified.

ParameterDescription
value: string

Markdown string.

ReturnsDescription
MarkdownString

附加文本字符串MarkdownString

Appends and escapes the given string to this markdown string.

ParameterDescription
value: string

Plain text.

ReturnsDescription
MarkdownString

标记字符串

MarkedString 可用于呈现人类可读的文本。它可以是一个 Markdown 字符串,也可以是一个提供语言和代码片段的代码块。请注意,markdown 字符串将被清理 - 这意味着 html 将被转义。

标记字符串字符串| {语言:字符串,值:字符串}

纪念

纪念品代表存储实用程序。它可以存储和检索值。

Methods

获取<T> 字符串T _ _

Return a value.

ParameterDescription
key: string

A string.

ReturnsDescription
T

The stored value or undefined.

获取<T> 字符串默认T T _

Return a value.

ParameterDescription
key: string

A string.

defaultValue: T

A value that should be returned when there is no value (undefined) with the given key.

ReturnsDescription
T

The stored value or the defaultValue.

( ) :只读字符串[]

Returns the stored keys.

ParameterDescription
ReturnsDescription
readonly string[]

The stored keys.

update ( key : string , value : any ) : Thenable < void >

Store a value. The value must be JSON-stringifyable.

Note that using undefined as value removes the key from the underlying storage.

ParameterDescription
key: string

A string.

value: any

A value. MUST not contain cyclic references.

ReturnsDescription
Thenable<void>

消息项

表示与信息、警告或错误消息一起显示的操作。

也可以看看

Properties

是关闭可供性吗?布尔值

A hint for modal dialogs that the item should be triggered when the user cancels the dialog (e.g. by pressing the ESC key).

Note: this option is ignored for non-modal messages.

标题字符串

A short title like 'Retry', 'Open Log' etc.

消息选项

配置消息行为的选项。

也可以看看

Properties

详细:字符串

Human-readable detail message that is rendered less prominent. Note that detail is only shown for modal messages.

莫代尔布尔值

Indicates that this message should be modal.

笔记本电脑

表示笔记本的一个单元格,可以是代码单元格或标记单元格。

NotebookCell 实例是不可变的,并且只要它们是笔记本的一部分就保持同步。

Properties

文档文本文档

The text of this cell, represented as text document.

执行摘要NotebookCellExecutionSummary

The most recent execution summary for this cell.

索引数字

The index of this cell in its containing notebook. The index is updated when a cell is moved within its notebook. The index is -1 when the cell has been removed from its notebook.

种类NotebookCellKind

The kind of this cell.

元数据

The metadata of this cell. Can be anything but must be JSON-stringifyable.

笔记本: NotebookDocument

The notebook that contains this cell.

输出只读NotebookCellOutput []

The outputs of this cell.

笔记本细胞数据

NotebookCellData 是笔记本单元的原始表示。它是NotebookData的一部分。

Constructors

新的NotebookCellData 种类NotebookCellKind字符串语言ID 字符串NotebookCellData

Create new cell data. Minimal cell data specifies its kind, its source value, and the language identifier of its source.

ParameterDescription
kind: NotebookCellKind

The kind.

value: string

The source value.

languageId: string

The language identifier of the source value.

ReturnsDescription
NotebookCellData

Properties

执行摘要? : NotebookCellExecutionSummary

The execution summary of this cell data.

种类NotebookCellKind

The kind of this cell data.

语言 ID :字符串

The language identifier of the source value of this cell data. Any value from getLanguages is possible.

元数据:

Arbitrary metadata of this cell data. Can be anything but must be JSON-stringifyable.

输出: NotebookCellOutput []

The outputs of this cell data.

字符串

The source value of this cell data - either source code or formatted text.

NotebookCell执行

NotebookCellExecution 是笔记本控制器在执行时修改笔记本单元的方式。

创建单元执行对象后,单元进入 [NotebookCellExecutionState.Pending Pending](#NotebookCellExecutionState.Pending Pending) 状态。当执行任务调用start(...)时,它进入 [NotebookCellExecutionState.Executing Executing](#NotebookCellExecutionState.Executing Executing) 状态。当 调用end(...)时,它进入 [NotebookCellExecutionState.Idle Idle](#NotebookCellExecutionState.Idle Idle) 状态。

Properties

细胞笔记本细胞

The cell for which this execution has been created.

执行顺序编号

Set and unset the order of this cell execution.

令牌取消令牌

A cancellation token which will be triggered when the cell execution is canceled from the UI.

Note that the cancellation token will not be triggered when the controller that created this execution uses an interrupt-handler.

Methods

appendOutput ( out : NotebookCellOutput | readonly NotebookCellOutput [], cell ? : NotebookCell ) : Thenable < void >

Append to the output of the cell that is executing or to another cell that is affected by this execution.

ParameterDescription
out: NotebookCellOutput | readonly NotebookCellOutput[]

Output that is appended to the current output.

cell?: NotebookCell

Cell for which output is cleared. Defaults to the cell of this execution.

ReturnsDescription
Thenable<void>

A thenable that resolves when the operation finished.

appendOutputItems ( items : NotebookCellOutputItem | readonly NotebookCellOutputItem [],输出: NotebookCellOutput ) : Thenable < void >

Append output items to existing cell output.

ParameterDescription
items: NotebookCellOutputItem | readonly NotebookCellOutputItem[]

Output items that are append to existing output.

output: NotebookCellOutput

Output object that already exists.

ReturnsDescription
Thenable<void>

A thenable that resolves when the operation finished.

clearOutput ( cell ? : NotebookCell ) : Thenable <void> _ _

Clears the output of the cell that is executing or of another cell that is affected by this execution.

ParameterDescription
cell?: NotebookCell

Cell for which output is cleared. Defaults to the cell of this execution.

ReturnsDescription
Thenable<void>

A thenable that resolves when the operation finished.

结束成功布尔值结束时间数字无效

Signal that execution has ended.

ParameterDescription
success: boolean

If true, a green check is shown on the cell status bar. If false, a red X is shown. If undefined, no check or X icon is shown.

endTime?: number

The time that execution finished, in milliseconds in the Unix epoch.

ReturnsDescription
void

ReplaceOutput ( out : NotebookCellOutput | readonly NotebookCellOutput [], cell ? : NotebookCell ) : Thenable < void >

Replace the output of the cell that is executing or of another cell that is affected by this execution.

ParameterDescription
out: NotebookCellOutput | readonly NotebookCellOutput[]

Output that replaces the current output.

cell?: NotebookCell

Cell for which output is cleared. Defaults to the cell of this execution.

ReturnsDescription
Thenable<void>

A thenable that resolves when the operation finished.

ReplaceOutputItems ( items : NotebookCellOutputItem | readonly NotebookCellOutputItem [],输出: NotebookCellOutput ) : Thenable < void >

Replace all output items of existing cell output.

ParameterDescription
items: NotebookCellOutputItem | readonly NotebookCellOutputItem[]

Output items that replace the items of existing output.

output: NotebookCellOutput

Output object that already exists.

ReturnsDescription
Thenable<void>

A thenable that resolves when the operation finished.

开始开始时间数字无效

Signal that the execution has begun.

ParameterDescription
startTime?: number

The time that execution began, in milliseconds in the Unix epoch. Used to drive the clock that shows for how long a cell has been running. If not given, the clock won't be shown.

ReturnsDescription
void

NotebookCellExecutionSummary

笔记本单元执行的摘要。

Properties

执行顺序? :数量

The order in which the execution happened.

成功布尔值

If the execution finished successfully.

时机: {结束时间:数字, 开始时间:数字}

The times at which execution started and ended, as unix timestamps

ParameterDescription
endTime: number

Execution end time.

startTime: number

Execution start time.

笔记本细胞类型

笔记本电池类型。

Enumeration Members

标记1

A markup-cell is formatted source that is used for display.

代码2

A code-cell is source that can be executed and that produces output.

笔记本单元输出

笔记本单元输出表示执行单元的结果。它是多个输出项的容器类型, 其中包含的项表示相同的结果,但使用不同的 MIME 类型。

Constructors

新的 NotebookCellOutput (项目: NotebookCellOutputItem [],元数据? : ) : NotebookCellOutput

Create new notebook output.

ParameterDescription
items: NotebookCellOutputItem[]

Notebook output items.

metadata?:

Optional metadata.

ReturnsDescription
NotebookCellOutput

Properties

项目NotebookCellOutputItem []

The output items of this output. Each item must represent the same result. Note that repeated MIME types per output is invalid and that the editor will just pick one of them.

new vscode.NotebookCellOutput([
  vscode.NotebookCellOutputItem.text('Hello', 'text/plain'),
  vscode.NotebookCellOutputItem.text('<i>Hello</i>', 'text/html'),
  vscode.NotebookCellOutputItem.text('_Hello_', 'text/markdown'),
  vscode.NotebookCellOutputItem.text('Hey', 'text/plain') // INVALID: repeated type, editor will pick just one
]);

元数据:

Arbitrary metadata for this cell output. Can be anything but must be JSON-stringifyable.

NotebookCellOutputItem

笔记本输出的一种表示形式,由 MIME 类型和数据定义。

Static

错误错误NotebookCellOutputItem

Factory function to create a NotebookCellOutputItem that uses uses the application/vnd.code.notebook.error mime type.

ParameterDescription
value: Error

An error object.

ReturnsDescription
NotebookCellOutputItem

A new output item object.

json 任何mime ?:字符串NotebookCellOutputItem _

Factory function to create a NotebookCellOutputItem from a JSON object.

Note that this function is not expecting "stringified JSON" but an object that can be stringified. This function will throw an error when the passed value cannot be JSON-stringified.

ParameterDescription
value: any

A JSON-stringifyable value.

mime?: string

Optional MIME type, defaults to application/json

ReturnsDescription
NotebookCellOutputItem

A new output item object.

stderr 字符串NotebookCellOutputItem

Factory function to create a NotebookCellOutputItem that uses uses the application/vnd.code.notebook.stderr mime type.

ParameterDescription
value: string

A string.

ReturnsDescription
NotebookCellOutputItem

A new output item object.

stdout 字符串NotebookCellOutputItem

Factory function to create a NotebookCellOutputItem that uses uses the application/vnd.code.notebook.stdout mime type.

ParameterDescription
value: string

A string.

ReturnsDescription
NotebookCellOutputItem

A new output item object.

文本字符串mime ?:字符串NotebookCellOutputItem _

Factory function to create a NotebookCellOutputItem from a string.

Note that an UTF-8 encoder is used to create bytes for the string.

ParameterDescription
value: string

A string.

mime?: string

Optional MIME type, defaults to text/plain.

ReturnsDescription
NotebookCellOutputItem

A new output item object.

Constructors

新的 NotebookCellOutputItem 数据Uint8Arraymime 字符串NotebookCellOutputItem

Create a new notebook cell output item.

ParameterDescription
data: Uint8Array

The value of the output item.

mime: string

The mime type of the output item.

ReturnsDescription
NotebookCellOutputItem

Properties

数据Uint8Array

The data of this output item. Must always be an array of unsigned 8-bit integers.

哑剧字符串

The mime type which determines how the data-property is interpreted.

Notebooks have built-in support for certain mime-types, extensions can add support for new types and override existing types.

NotebookCellStatusBarAlignment

表示状态栏项目的对齐方式。

Enumeration Members

1

Aligned to the left side.

2

Aligned to the right side.

NotebookCellStatusBarItem

对单元格状态栏的贡献

Constructors

新的 NotebookCellStatusBarItem 文本字符串对齐方式NotebookCellStatusBarAlignment NotebookCellStatusBarItem

Creates a new NotebookCellStatusBarItem.

ParameterDescription
text: string

The text to show for the item.

alignment: NotebookCellStatusBarAlignment

Whether the item is aligned to the left or right.

ReturnsDescription
NotebookCellStatusBarItem

Properties

可访问性信息? 辅助功能信息

Accessibility information used when a screen reader interacts with this item.

对齐NotebookCellStatusBarAlignment

Whether the item is aligned to the left or right.

命令:字符串| 命令

An optional Command or identifier of a command to run on click.

The command must be known.

Note that if this is a Command object, only the command and arguments are used by the editor.

优先:数量

The priority of the item. A higher value item will be shown more to the left.

文本字符串

The text to show for the item.

工具提示:字符串

A tooltip to show when the item is hovered.

NotebookCellStatusBarItemProvider

可以向单元格编辑器下方显示的状态栏提供项目的提供程序。

Events

onDidChangeCellStatusBarItems 事件<无效>

An optional event to signal that statusbar items have changed. The provide method will be called again.

Methods

提供CellStatusBarItems 单元格NotebookCell令牌CancellationToken ProviderResult < NotebookCellStatusBarItem | NotebookCellStatusBarItem []>

The provider will be called when the cell scrolls into view, when its content, outputs, language, or metadata change, and when it changes execution state.

ParameterDescription
cell: NotebookCell

The cell for which to return items.

token: CancellationToken

A token triggered if this request should be cancelled.

ReturnsDescription
ProviderResult<NotebookCellStatusBarItem | NotebookCellStatusBarItem[]>

笔记本控制器

笔记本控制器代表可以执行笔记本单元的实体。这通常称为内核。

可以有多个控制器,编辑器将让用户选择对某个笔记本电脑使用哪个控制器。notebookType 属性定义控制器适用于哪种类型的笔记本,而updateNotebookAffinity功能允许控制器为特定笔记本文档设置首选项。当选择控制器时,将触发其 onDidChangeSelectedNotebooks事件。

当单元正在运行时,编辑器将调用executeHandler 并且控制器将创建并完成笔记本单元的执行。然而,控制者也可以自由地自己创建执行。

Events

onDidChangeSelectedNotebooks :事件<{notebook: NotebookDocument , selected: boolean }>

An event that fires whenever a controller has been selected or un-selected for a notebook document.

There can be multiple controllers for a notebook and in that case a controllers needs to be selected. This is a user gesture and happens either explicitly or implicitly when interacting with a notebook for which a controller was suggested. When possible, the editor suggests a controller that is most likely to be selected.

Note that controller selection is persisted (by the controllers id) and restored as soon as a controller is re-created or as a notebook is opened.

Properties

描述:字符串

The human-readable description which is rendered less prominent.

详细:字符串

The human-readable detail which is rendered less prominent.

executeHandler : (单元格: NotebookCell [], 笔记本: NotebookDocument , 控制器: NotebookController ) => void | 然后可<无效>

The execute handler is invoked when the run gestures in the UI are selected, e.g Run Cell, Run All, Run Selection etc. The execute handler is responsible for creating and managing execution-objects.

ParameterDescription
cells: NotebookCell[]
notebook: NotebookDocument
controller: NotebookController
ReturnsDescription
void | Thenable<void>

id 字符串

The identifier of this notebook controller.

Note that controllers are remembered by their identifier and that extensions should use stable identifiers across sessions.

中断处理程序: (笔记本: NotebookDocument ) => void | 然后可<无效>

Optional interrupt handler.

By default cell execution is canceled via tokens. Cancellation tokens require that a controller can keep track of its execution so that it can cancel a specific execution at a later point. Not all scenarios allow for that, eg. REPL-style controllers often work by interrupting whatever is currently running. For those cases the interrupt handler exists - it can be thought of as the equivalent of SIGINT or Control+C in terminals.

Note that supporting cancellation tokens is preferred and that interrupt handlers should only be used when tokens cannot be supported.

ParameterDescription
notebook: NotebookDocument
ReturnsDescription
void | Thenable<void>

标签字符串

The human-readable label of this notebook controller.

笔记本类型字符串

The notebook type this controller is for.

支持的语言? 字符串[]

An array of language identifiers that are supported by this controller. Any language identifier from getLanguages is possible. When falsy all languages are supported.

Samples:

// support JavaScript and TypeScript
myController.supportedLanguages = ['javascript', 'typescript'];

// support all languages
myController.supportedLanguages = undefined; // falsy
myController.supportedLanguages = []; // falsy

支持执行顺序? 布尔值

Whether this controller supports execution order so that the editor can render placeholders for them.

Methods

创建NotebookCellExecution 单元格NotebookCell NotebookCellExecution

Create a cell execution task.

Note that there can only be one execution per cell at a time and that an error is thrown if a cell execution is created while another is still active.

This should be used in response to the execution handler being called or when cell execution has been started else, e.g when a cell was already executing or when cell execution was triggered from another source.

ParameterDescription
cell: NotebookCell

The notebook cell for which to create the execution.

ReturnsDescription
NotebookCellExecution

A notebook cell execution.

处置无效

Dispose and free associated resources.

ParameterDescription
ReturnsDescription
void

updateNotebookAffinity 笔记本NotebookDocument亲和力NotebookControllerAffinity 无效

A controller can set affinities for specific notebook documents. This allows a controller to be presented more prominent for some notebooks.

ParameterDescription
notebook: NotebookDocument

The notebook for which a priority is set.

affinity: NotebookControllerAffinity

A controller affinity

ReturnsDescription
void

NotebookControllerAffinity

笔记本控制器对笔记本文档的亲和力。

另请参见 NotebookController.updateNotebookAffinity

Enumeration Members

默认值1

Default affinity.

首选2

A controller is preferred for a notebook.

笔记本数据

笔记本的原始表示。

扩展负责创建NotebookData,以便编辑器可以创建NotebookDocument

另请参见 NotebookSerializer

Constructors

新的 NotebookData (单元格: NotebookCellData [] ) : NotebookData

Create new notebook data.

ParameterDescription
cells: NotebookCellData[]

An array of cell data.

ReturnsDescription
NotebookData

Properties

单元格NotebookCellData []

The cell data of this notebook data.

元数据:

Arbitrary metadata of notebook data.

笔记本文档

代表一个笔记本,它本身是一系列代码或标记单元。笔记本文档是根据笔记本数据创建的。

Properties

细胞计数数量

The number of cells in the notebook.

已关闭布尔值

true if the notebook has been closed. A closed notebook isn't synchronized anymore and won't be re-used when the same resource is opened again.

是否脏布尔值

true if there are unpersisted changes.

isUntitled :布尔值

Is this notebook representing an untitled file which has not been saved yet.

元数据

Arbitrary metadata for this notebook. Can be anything but must be JSON-stringifyable.

笔记本类型字符串

The type of notebook.

乌里乌里

The associated uri for this notebook.

Note that most notebooks use the file-scheme, which means they are files on disk. However, not all notebooks are saved on disk and therefore the scheme must be checked before trying to access the underlying file or siblings on disk.

See also FileSystemProvider

版本编号

The version number of this notebook (it will strictly increase after each change, including undo/redo).

Methods

cellAt 索引数字NotebookCell

Return the cell at the specified index. The index will be adjusted to the notebook.

ParameterDescription
index: number

The index of the cell to retrieve.

ReturnsDescription
NotebookCell

A cell.

getCells 范围NotebookRange NotebookCell []

Get the cells of this notebook. A subset can be retrieved by providing a range. The range will be adjusted to the notebook.

ParameterDescription
range?: NotebookRange

A notebook range.

ReturnsDescription
NotebookCell[]

The cells contained by the range or all cells.

save ( ) Thenable <boolean> _ _

Save the document. The saving will be handled by the corresponding serializer.

ParameterDescription
ReturnsDescription
Thenable<boolean>

A promise that will resolve to true when the document has been saved. Will return false if the file was not dirty or when save failed.

笔记本文档单元格更改

描述对笔记本单元的更改。

另请参见 NotebookDocumentChangeEvent

Properties

细胞笔记本细胞

The affected cell.

文档文本文档

The document of the cell or undefined when it did not change.

Note that you should use the onDidChangeTextDocument-event for detailed change information, like what edits have been performed.

执行摘要NotebookCellExecutionSummary

The new execution summary of the cell or undefined when it did not change.

元数据

The new metadata of the cell or undefined when it did not change.

输出只读NotebookCellOutput []

The new outputs of the cell or undefined when they did not change.

NotebookDocumentChangeEvent

描述事务笔记本更改的事件。

Properties

cellChanges :只读NotebookDocumentCellChange []

An array of cell changes.

contentChanges :只读NotebookDocumentContentChange []

An array of content changes describing added or removed cells.

元数据

The new metadata of the notebook or undefined when it did not change.

笔记本: NotebookDocument

The affected notebook.

笔记本文档内容更改

描述笔记本文档的结构更改,例如新添加和删除的单元格。

另请参见 NotebookDocumentChangeEvent

Properties

添加的单元格只读NotebookCell []

Cells that have been added to the document.

范围:笔记本范围

The range at which cells have been either added or removed.

Note that no cells have been removed when this range is empty.

已删除的单元格只读NotebookCell []

Cells that have been removed from the document.

笔记本文档内容选项

笔记本内容选项定义保留笔记本的哪些部分。笔记

例如,笔记本序列化器可以选择不保存输出,在这种情况下,当笔记本的输出发生更改时,编辑器不会将笔记本标记为

Properties

瞬态细胞元数据:

Controls if a cell metadata property change event will trigger notebook document content change events and if it will be used in the diff editor, defaults to false. If the content provider doesn't persist a metadata property in the file document, it should be set to true.

瞬态文档元数据:

Controls if a document metadata property change event will trigger notebook document content change event and if it will be used in the diff editor, defaults to false. If the content provider doesn't persist a metadata property in the file document, it should be set to true.

瞬态输出布尔值

Controls if output change events will trigger notebook document content change events and if it will be used in the diff editor, defaults to false. If the content provider doesn't persist the outputs in the file document, this should be set to true.

NotebookDocumentShowOptions

表示用于配置在笔记本编辑器中显示笔记本文档的行为的选项。

Properties

保留焦点布尔值

An optional flag that when true will stop the notebook editor from taking focus.

预览布尔值

An optional flag that controls if an notebook editor-tab shows as preview. Preview tabs will be replaced and reused until set to stay - either explicitly or through editing. The default behaviour depends on the workbench.editor.enablePreview-setting.

选择:只读NotebookRange []

An optional selection to apply for the document in the notebook editor.

视图列:查看栏目

An optional view column in which the notebook editor should be shown. The default is the active. Columns that do not exist will be created as needed up to the maximum of ViewColumn.Nine. Use ViewColumn.Beside to open the editor to the side of the currently active one.

NotebookDocumentWillSave事件

保存笔记本文档时触发的事件。

要在保存文档之前对其进行修改,请使用解析 为工作区 edit的 thenable 调用waitUntil函数。

Properties

笔记本: NotebookDocument

The notebook document that will be saved.

原因TextDocumentSaveReason

The reason why save was triggered.

令牌取消令牌

A cancellation token.

Methods

waitUntil ( thenable : Thenable < WorkspaceEdit > ) : void

Allows to pause the event loop and to apply workspace edit. Edits of subsequent calls to this function will be applied in order. The edits will be ignored if concurrent modifications of the notebook document happened.

Note: This function can only be called during event dispatch and not in an asynchronous manner:

workspace.onWillSaveNotebookDocument(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
ParameterDescription
thenable: Thenable<WorkspaceEdit>

A thenable that resolves to workspace edit.

ReturnsDescription
void

waitUntil ( thenable : Thenable <任意> ) : void

Allows to pause the event loop until the provided thenable resolved.

Note: This function can only be called during event dispatch.

ParameterDescription
thenable: Thenable<any>

A thenable that delays saving.

ReturnsDescription
void

笔记本编辑

笔记本编辑表示应应用于笔记本内容的编辑。

Static

删除单元格范围NotebookRange NotebookEdit

Utility to create an edit that deletes cells in a notebook.

ParameterDescription
range: NotebookRange

The range of cells to delete.

ReturnsDescription
NotebookEdit

insertCells 索引数字newCells NotebookCellData [] NotebookEdit

Utility to create an edit that replaces cells in a notebook.

ParameterDescription
index: number

The index to insert cells at.

newCells: NotebookCellData[]

The new notebook cells.

ReturnsDescription
NotebookEdit

ReplaceCells 范围NotebookRangenewCells NotebookCellData [] NotebookEdit

Utility to create a edit that replaces cells in a notebook.

ParameterDescription
range: NotebookRange

The range of cells to replace

newCells: NotebookCellData[]

The new notebook cells.

ReturnsDescription
NotebookEdit

updateCellMetadata 索引数字newCellMetadata :)NotebookEdit _

Utility to create an edit that update a cell's metadata.

ParameterDescription
index: number

The index of the cell to update.

newCellMetadata:

The new metadata for the cell.

ReturnsDescription
NotebookEdit

updateNotebookMetadata ( newNotebookMetadata : ) : NotebookEdit

Utility to create an edit that updates the notebook's metadata.

ParameterDescription
newNotebookMetadata:

The new metadata for the notebook.

ReturnsDescription
NotebookEdit

Constructors

新的 NotebookEdit 范围NotebookRangenewCells NotebookCellData [] NotebookEdit

Create a new notebook edit.

ParameterDescription
range: NotebookRange

A notebook range.

newCells: NotebookCellData[]

An array of new cell data.

ReturnsDescription
NotebookEdit

Properties

新的单元格元数据:

Optional new metadata for the cells.

newCells : NotebookCellData []

New cells being inserted. May be empty.

新笔记本元数据:

Optional new metadata for the notebook.

范围:笔记本范围

Range of the cells being edited. May be empty.

笔记本编辑器

表示附加到笔记本的笔记本编辑器。NotebookEditor 的其他属性可在建议的 API 中使用,该 API 将在稍后最终确定。

Properties

笔记本: NotebookDocument

The notebook document associated with this notebook editor.

选择笔记本范围

The primary selection in this notebook editor.

选择只读NotebookRange []

All selections in this notebook editor.

The primary selection (or focused range) is selections[0]. When the document has no cells, the primary selection is empty { start: 0, end: 0 };

视图列:查看栏目

The column in which this editor shows.

visibleRanges :只读NotebookRange []

The current visible ranges in the editor (vertically).

Methods

RevealRange 范围NotebookRangeRevealType NotebookEditorRevealType 无效

Scroll as indicated by revealType in order to reveal the given range.

ParameterDescription
range: NotebookRange

A range.

revealType?: NotebookEditorRevealType

The scrolling strategy for revealing range.

ReturnsDescription
void

NotebookEditorRevealType

表示附加到笔记本的笔记本编辑器。

Enumeration Members

默认值0

The range will be revealed with as little scrolling as possible.

中心: 1

The range will always be revealed in the center of the viewport.

InCenterIfOutsideViewport : 2

If the range is outside the viewport, it will be revealed in the center of the viewport. Otherwise, it will be revealed with as little scrolling as possible.

顶部3

The range will always be revealed at the top of the viewport.

NotebookEditorSelectionChangeEvent

Properties

笔记本编辑器笔记本编辑器

The notebook editor for which the selections have changed.

选择只读NotebookRange []

The new value for the notebook editor's selections.

NotebookEditorVisibleRangesChangeEvent

Properties

笔记本编辑器笔记本编辑器

The notebook editor for which the visible ranges have changed.

visibleRanges :只读NotebookRange []

The new value for the notebook editor's visibleRanges.

笔记本系列

笔记本范围表示两个单元索引的有序对。保证start小于或等于end。

Constructors

新的 NotebookRange 开始数字结束数字NotebookRange

Create a new notebook range. If start is not before or equal to end, the values will be swapped.

ParameterDescription
start: number

start index

end: number

end index.

ReturnsDescription
NotebookRange

Properties

结束数字

The exclusive end index of this range (zero-based).

为空布尔值

true if start and end are equal.

开始数字

The zero-based start index of this range.

Methods

with (更改: {结束:数字, 开始:数字} ) : NotebookRange

Derive a new range for this range.

ParameterDescription
change: {end: number, start: number}

An object that describes a change to this range.

ReturnsDescription
NotebookRange

A range that reflects the given change. Will return this range if the change is not changing anything.

笔记本渲染器消息传递

渲染器消息传递用于与单个渲染器进行通信。它从notebooks.createRendererMessaging返回。

Events

onDidReceiveMessage :事件<{编辑器: NotebookEditor , 消息:任何}>

An event that fires when a message is received from a renderer.

Methods

postMessage 消息任意编辑NotebookEditor Thenable <boolean> _

Send a message to one or all renderer.

ParameterDescription
message: any

Message to send

editor?: NotebookEditor

Editor to target with the message. If not provided, the message is sent to all renderers.

ReturnsDescription
Thenable<boolean>

a boolean indicating whether the message was successfully delivered to any renderer.

笔记本序列化器

笔记本序列化器使编辑器能够打开笔记本文件。

从本质上讲,编辑器只知道笔记本数据结构,但不知道如何将该数据结构写入文件,也不知道如何从文件读取数据结构。笔记本串行器通过将字节反序列化为笔记本数据(反之亦然)来弥补这一差距。

Methods

deserializeNotebook 内容Uint8Array令牌CancellationToken NotebookData | 然后是<NotebookData> _

Deserialize contents of a notebook file into the notebook data structure.

ParameterDescription
content: Uint8Array

Contents of a notebook file.

token: CancellationToken

A cancellation token.

ReturnsDescription
NotebookData | Thenable<NotebookData>

Notebook data or a thenable that resolves to such.

SerializeNotebook 数据NotebookData令牌CancellationToken Uint8Array | 然后可<Uint8Array> _

Serialize notebook data into file contents.

ParameterDescription
data: NotebookData

A notebook data structure.

token: CancellationToken

A cancellation token.

ReturnsDescription
Uint8Array | Thenable<Uint8Array>

An array of bytes or a thenable that resolves to such.

输入规则时

描述按 Enter 键时要评估的规则。

Properties

动作输入动作

The action to execute.

后文:正则表达式

This rule will only execute if the text after the cursor matches this regular expression.

之前的文本正则表达式

This rule will only execute if the text before the cursor matches this regular expression.

前一行文本:正则表达式

This rule will only execute if the text above the current line matches this regular expression.

OnTypeFormattingEditProvider

文档格式化提供者接口定义了扩展和格式化功能之间的契约。

Methods

ProvideOnTypeFormattingEdits (文档: TextDocument ,位置:位置, ch :字符串,选项: FormattingOptions ,令牌: CancellationToken ) : ProviderResult < TextEdit []>

Provide formatting edits after a character has been typed.

The given position and character should hint to the provider what range the position to expand to, like find the matching { when } has been entered.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

ch: string

The character that has been typed.

options: FormattingOptions

Options controlling formatting.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TextEdit[]>

A set of text edits or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

打开对话框选项

配置文件打开对话框行为的选项。

  • 注 1:在 Windows 和 Linux 上,文件对话框不能同时是文件选择器和文件夹选择器,因此如果在这些平台上同时设置 和,canSelectFiles则会显示文件夹选择器。canSelectFolderstrue
  • 注2:显式设置canSelectFilescanSelectFolderstofalse是徒劳的,然后编辑器会默默地调整选项来选择文件。

Properties

可以选择文件吗?布尔值

Allow to select files, defaults to true.

可以选择文件夹吗?布尔值

Allow to select folders, defaults to false.

可以选择很多吗布尔值

Allow to select many files or folders.

默认Uri ? :乌里

The resource the dialog shows when opened.

过滤器:

A set of file filters that are used by the dialog. Each entry is a human-readable label, like "TypeScript", and an array of extensions, e.g.

{
    'Images': ['png', 'jpg']
    'TypeScript': ['ts', 'tsx']
}

开放标签:字符串

A human-readable string for the open button.

标题:字符串

Dialog title.

This parameter might be ignored, as not all operating systems display a title on open dialogs (for example, macOS).

输出通道

输出通道是只读文本信息的容器。

OutputChannel要获取使用 createOutputChannel的实例。

Properties

名称字符串

The human-readable name of this output channel.

Methods

附加字符串无效

Append the given value to the channel.

ParameterDescription
value: string

A string, falsy values will not be printed.

ReturnsDescription
void

附加行字符串无效

Append the given value and a line feed character to the channel.

ParameterDescription
value: string

A string, falsy values will be printed.

ReturnsDescription
void

清除( ) :无效

Removes all output from the channel.

ParameterDescription
ReturnsDescription
void

处置无效

Dispose and free associated resources.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hide this channel from the UI.

ParameterDescription
ReturnsDescription
void

替换字符串无效

Replaces all output from the channel with the given value.

ParameterDescription
value: string

A string, falsy values will not be printed.

ReturnsDescription
void

显示保留焦点布尔值无效

Reveal this channel in the UI.

ParameterDescription
preserveFocus?: boolean

When true the channel will not take focus.

ReturnsDescription
void

显示ViewColumn保留焦点布尔值无效

Reveal this channel in the UI.

  • deprecated - Use the overload with just one parameter (show(preserveFocus?: boolean): void).
ParameterDescription
column?: ViewColumn

This argument is deprecated and will be ignored.

preserveFocus?: boolean

When true the channel will not take focus.

ReturnsDescription
void

概述标尺车道

表示在概览标尺中渲染装饰的不同位置。概览标尺支持三个通道。

Enumeration Members

1

The left lane of the overview ruler.

中心2

The center lane of the overview ruler.

4

The right lane of the overview ruler.

7

All lanes of the overview ruler.

参数信息

表示可调用签名的参数。参数可以有标签和文档注释。

Constructors

新的 ParameterInformation (标签: string | [ number , number ],文档? : string | MarkdownString ) : ParameterInformation

Creates a new parameter information object.

ParameterDescription
label: string | [number, number]

A label string or inclusive start and exclusive end offsets within its containing signature label.

documentation?: string | MarkdownString

A doc string.

ReturnsDescription
ParameterInformation

Properties

文档:字符串| 降价字符串

The human-readable doc-comment of this signature. Will be shown in the UI but can be omitted.

标签字符串| [数量,数量]

The label of this signature.

Either a string or inclusive start and exclusive end offsets within its containing signature label. Note: A label of type string must be a substring of its containing signature information's label.

位置

表示行和字符的位置,例如光标的位置。

位置对象是不可变的。使用withtranslate方法从现有位置导出新位置。

Constructors

新位置数字字符数字位置

ParameterDescription
line: number

A zero-based line value.

character: number

A zero-based character value.

ReturnsDescription
Position

Properties

字符数字

The zero-based character value.

:号码

The zero-based line value.

Methods

比较其他位置数字

Compare this to other.

ParameterDescription
other: Position

A position.

ReturnsDescription
number

A number smaller than zero if this position is before the given position, a number greater than zero if this position is after the given position, or zero when this and the given position are equal.

isAfter 其他位置布尔值

Check if this position is after other.

ParameterDescription
other: Position

A position.

ReturnsDescription
boolean

true if position is on a greater line or on the same line on a greater character.

isAfterOrEqual 其他位置布尔值

Check if this position is after or equal to other.

ParameterDescription
other: Position

A position.

ReturnsDescription
boolean

true if position is on a greater line or on the same line on a greater or equal character.

isBefore 其他位置布尔值

Check if this position is before other.

ParameterDescription
other: Position

A position.

ReturnsDescription
boolean

true if position is on a smaller line or on the same line on a smaller character.

isBeforeOrEqual 其他位置布尔值

Check if this position is before or equal to other.

ParameterDescription
other: Position

A position.

ReturnsDescription
boolean

true if position is on a smaller line or on the same line on a smaller or equal character.

isEqual 其他位置布尔值

Check if this position is equal to other.

ParameterDescription
other: Position

A position.

ReturnsDescription
boolean

true if the line and character of the given position are equal to the line and character of this position.

翻译lineDelta ?:数字characterDelta ?:数字位置_ _

Create a new position relative to this position.

ParameterDescription
lineDelta?: number

Delta value for the line value, default is 0.

characterDelta?: number

Delta value for the character value, default is 0.

ReturnsDescription
Position

A position which line and character is the sum of the current line and character and the corresponding deltas.

翻译变化 {characterDelta:数字,lineDelta:数字} 位置

Derived a new position relative to this position.

ParameterDescription
change: {characterDelta: number, lineDelta: number}

An object that describes a delta to this position.

ReturnsDescription
Position

A position that reflects the given delta. Will return this position if the change is not changing anything.

with (? :数字,字符? :数字) :位置

Create a new position derived from this position.

ParameterDescription
line?: number

Value that should be used as line value, default is the existing value

character?: number

Value that should be used as character value, default is the existing value

ReturnsDescription
Position

A position where line and character are replaced by the given values.

with (更改: {字符:数字, 行:数字} ) :位置

Derived a new position from this position.

ParameterDescription
change: {character: number, line: number}

An object that describes a change to this position.

ReturnsDescription
Position

A position that reflects the given change. Will return this position if the change is not changing anything.

流程执行

任务的执行作为外部进程进行,无需 shell 交互。

Constructors

新的 ProcessExecution (进程:字符串,选项? : ProcessExecutionOptions ) : ProcessExecution

Creates a process execution.

ParameterDescription
process: string

The process to start.

options?: ProcessExecutionOptions

Optional options for the started process.

ReturnsDescription
ProcessExecution

新的 ProcessExecution ( process : string , args : string [], options ? : ProcessExecutionOptions ) : ProcessExecution

Creates a process execution.

ParameterDescription
process: string

The process to start.

args: string[]

Arguments to be passed to the process.

options?: ProcessExecutionOptions

Optional options for the started process.

ReturnsDescription
ProcessExecution

Properties

参数字符串[]

The arguments passed to the process. Defaults to an empty array.

选项:流程执行选项

The process options used when the process is executed. Defaults to undefined.

进程字符串

The process to be executed.

流程执行选项

流程执行的选项

Properties

西德:字符串

The current working directory of the executed program or shell. If omitted the tools current workspace root is used.

环境:

The additional environment of the executed program or shell. If omitted the parent process' environment is used. If provided it is merged with the parent process' environment.

进度<T>

定义报告进度更新的通用方式。

Methods

报告T 无效

Report a progress update.

ParameterDescription
value: T

A progress item, like a message and/or an report on how much work finished

ReturnsDescription
void

进度地点

编辑器中可以显示进度信息的位置。这取决于进度以视觉方式表示的位置。

Enumeration Members

源代码控制1

Show progress for the source control viewlet, as overlay for the icon and as progress bar inside the viewlet (when visible). Neither supports cancellation nor discrete progress nor a label to describe the operation.

窗口10

Show progress in the status bar of the editor. Neither supports cancellation nor discrete progress. Supports rendering of theme icons via the $(<name>)-syntax in the progress label.

通知15

Show progress as notification with an optional cancel button. Supports to show infinite and discrete progress but does not support rendering of icons.

进度选项

描述进度应在何处以及如何显示的值对象。

Properties

可以取消吗布尔值

Controls if a cancel button should show to allow the user to cancel the long running operation. Note that currently only ProgressLocation.Notification is supporting to show a cancel button.

位置:进度位置| {viewId:字符串}

The location at which progress should show.

标题:字符串

A human-readable string which will be used to describe the operation.

提供者结果<T>

提供程序结果表示提供程序(如HoverProvider )可能返回的值。这一次这是实际的结果类型T,例如Hover,或者解析为该类型的thenable T。此外,nullandundefined可以直接返回或从 thenable 返回。

下面的代码片段是HoverProvider的所有有效实现:

let a: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return new Hover('Hello World');
  }
};

let b: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return new Promise(resolve => {
      resolve(new Hover('Hello World'));
    });
  }
};

let c: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return; // undefined
  }
};

提供者结果T | 未定义| | 然后可< T | 未定义| >

伪终端

定义终端 pty 的接口,使扩展能够控制终端。

Events

onDidChangeName 事件<字符串>

An event that when fired allows changing the name of the terminal.

Events fired before Pseudoterminal.open is called will be be ignored.

Example: Change the terminal name to "My new terminal".

const writeEmitter = new vscode.EventEmitter<string>();
const changeNameEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidChangeName: changeNameEmitter.event,
  open: () => changeNameEmitter.fire('My new terminal'),
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

onDidClose ? 事件<编号| 无效>

An event that when fired will signal that the pty is closed and dispose of the terminal.

Events fired before Pseudoterminal.open is called will be be ignored.

A number can be used to provide an exit code for the terminal. Exit codes must be positive and a non-zero exit codes signals failure which shows a notification for a regular terminal and allows dependent tasks to proceed when used with the CustomExecution API.

Example: Exit the terminal when "y" is pressed, otherwise show a notification.

const writeEmitter = new vscode.EventEmitter<string>();
const closeEmitter = new vscode.EventEmitter<void>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidClose: closeEmitter.event,
  open: () => writeEmitter.fire('Press y to exit successfully'),
  close: () => {},
  handleInput: data => {
    if (data !== 'y') {
      vscode.window.showInformationMessage('Something went wrong');
    }
    closeEmitter.fire();
  }
};
const terminal = vscode.window.createTerminal({ name: 'Exit example', pty });
terminal.show(true);

onDidOverrideDimensions 事件<TerminalDimensions> _ _

An event that when fired allows overriding the dimensions of the terminal. Note that when set, the overridden dimensions will only take effect when they are lower than the actual dimensions of the terminal (ie. there will never be a scroll bar). Set to undefined for the terminal to go back to the regular dimensions (fit to the size of the panel).

Events fired before Pseudoterminal.open is called will be be ignored.

Example: Override the dimensions of a terminal to 20 columns and 10 rows

const dimensionsEmitter = new vscode.EventEmitter<vscode.TerminalDimensions>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidOverrideDimensions: dimensionsEmitter.event,
  open: () => {
    dimensionsEmitter.fire({
      columns: 20,
      rows: 10
    });
  },
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

onDidWrite 事件<字符串>

An event that when fired will write data to the terminal. Unlike Terminal.sendText which sends text to the underlying child pseudo-device (the child), this will write the text to parent pseudo-device (the terminal itself).

Note writing \n will just move the cursor down 1 row, you need to write \r as well to move the cursor to the left-most cell.

Events fired before Pseudoterminal.open is called will be be ignored.

Example: Write red text to the terminal

const writeEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  open: () => writeEmitter.fire('\x1b[31mHello world\x1b[0m'),
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

Example: Move the cursor to the 10th row and 20th column and write an asterisk

writeEmitter.fire('\x1b[10;20H*');

Methods

关闭( ) :无效

Implement to handle when the terminal is closed by an act of the user.

ParameterDescription
ReturnsDescription
void

处理输入数据字符串无效

Implement to handle incoming keystrokes in the terminal or when an extension calls Terminal.sendText. data contains the keystrokes/text serialized into their corresponding VT sequence representation.

ParameterDescription
data: string

The incoming data.

Example: Echo input in the terminal. The sequence for enter (\r) is translated to CRLF to go to a new line and move the cursor to the start of the line.

const writeEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  open: () => {},
  close: () => {},
  handleInput: data => writeEmitter.fire(data === '\r' ? '\r\n' : data)
};
vscode.window.createTerminal({ name: 'Local echo', pty });
ReturnsDescription
void

打开初始尺寸终端尺寸无效

Implement to handle when the pty is open and ready to start firing events.

ParameterDescription
initialDimensions: TerminalDimensions

The dimensions of the terminal, this will be undefined if the terminal panel has not been opened before this is called.

ReturnsDescription
void

setDimensions 尺寸TerminalDimensions 无效

Implement to handle when the number of rows and columns that fit into the terminal panel changes, for example when font size changes or when the panel is resized. The initial state of a terminal's dimensions should be treated as undefined until this is triggered as the size of a terminal isn't known until it shows up in the user interface.

When dimensions are overridden by onDidOverrideDimensions, setDimensions will continue to be called with the regular panel dimensions, allowing the extension continue to react dimension changes.

ParameterDescription
dimensions: TerminalDimensions

The new dimensions.

ReturnsDescription
void

快速差异提供者

快速差异提供程序提供已修改资源的原始状态的uri 。编辑器将使用此信息来呈现文本中的临时差异。

Methods

ProvideOriginalResource ( uri : Uri , token : CancellationToken ) : ProviderResult < Uri >

Provide a Uri to the original resource of any given resource uri.

ParameterDescription
uri: Uri

The uri of the resource open in a text editor.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Uri>

A thenable that resolves to uri of the matching original resource.

快速输入法

最初不可见的轻量级用户输入 UI。通过其属性对其进行配置后,扩展程序可以通过调用QuickInput.show使其可见。

有多种原因可能导致此 UI 必须隐藏,并且扩展程序将通过QuickInput.onDidHide收到通知。(示例包括:对QuickInput.hide 的显式调用、用户按 Esc 键、其他一些输入 UI 打开等)

用户按下 Enter 或其他暗示接受当前状态的手势不会自动隐藏此 UI 组件。由扩展决定是否接受用户的输入以及是否确实应该通过调用QuickInput.hide来隐藏 UI 。

当扩展不再需要此输入 UI 时,它应该 QuickInput.dispose它以允许释放与其关联的任何资源。

具体 UI参见QuickPickInputBox 。

Events

onDidHide :事件<void> _ _

An event signaling when this input UI is hidden.

There are several reasons why this UI might have to be hidden and the extension will be notified through QuickInput.onDidHide. (Examples include: an explicit call to QuickInput.hide, the user pressing Esc, some other input UI opening, etc.)

Properties

布尔值

If the UI should show a progress indicator. Defaults to false.

Change this to true, e.g., while loading more data or validating user input.

启用布尔值

If the UI should allow for user input. Defaults to true.

Change this to false, e.g., while validating user input or loading data for the next step in user input.

忽略焦点输出布尔值

If the UI should stay open even when loosing UI focus. Defaults to false. This setting is ignored on iPad and is always false.

步骤:编号

An optional current step count.

标题字符串

An optional title.

总步数数量

An optional total step count.

Methods

处置无效

Dispose of this input UI and any associated resources. If it is still visible, it is first hidden. After this call the input UI is no longer functional and no additional methods or properties on it should be accessed. Instead a new input UI should be created.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hides this input UI. This will also fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

显示( ) :无效

Makes the input UI visible in its current configuration. Any other input UI will first fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

快速输入按钮

QuickPickInputBox中的操作按钮。

Properties

图标路径Uri | 主题图标| {暗:Uri,亮:Uri }

Icon for the button.

工具提示:字符串

An optional tooltip.

快速输入按钮

QuickPickInputBox的预定义按钮。

Static

返回快速输入按钮

A back button for QuickPick and InputBox.

When a navigation 'back' button is needed this one should be used for consistency. It comes with a predefined icon, tooltip and location.

快速选择<T>

一个具体的QuickInput,让用户从 T 类型的项目列表中选择一个项目。可以通过过滤器文本字段过滤项目,并且有一个选项canSelectMany允许选择多个项目。

请注意,在许多情况下,更方便的window.showQuickPick 更易于使用。当window.showQuickPick不能提供所需的灵活性时,应使用window.createQuickPick 。

Events

onDidAccept :事件<void> _ _

An event signaling when the user indicated acceptance of the selected item(s).

onDidChangeActive :事件<只读T []>

An event signaling when the active items have changed.

onDidChangeSelection :事件<只读T []>

An event signaling when the selected items have changed.

onDidChangeValue 事件<字符串>

An event signaling when the value of the filter text has changed.

onDidHide :事件<void> _ _

An event signaling when this input UI is hidden.

There are several reasons why this UI might have to be hidden and the extension will be notified through QuickInput.onDidHide. (Examples include: an explicit call to QuickInput.hide, the user pressing Esc, some other input UI opening, etc.)

onDidTriggerButton :事件<QuickInputButton> _ _

An event signaling when a button in the title bar was triggered. This event does not fire for buttons on a QuickPickItem.

onDidTriggerItemButton :事件< QuickPickItemButtonEvent < T >>

An event signaling when a button in a particular QuickPickItem was triggered. This event does not fire for buttons in the title bar.

Properties

活动项目只读T []

Active items. This can be read and updated by the extension.

布尔值

If the UI should show a progress indicator. Defaults to false.

Change this to true, e.g., while loading more data or validating user input.

按钮只读QuickInputButton []

Buttons for actions in the UI.

可以选择很多布尔值

If multiple items can be selected at the same time. Defaults to false.

启用布尔值

If the UI should allow for user input. Defaults to true.

Change this to false, e.g., while validating user input or loading data for the next step in user input.

忽略焦点输出布尔值

If the UI should stay open even when loosing UI focus. Defaults to false. This setting is ignored on iPad and is always false.

项目只读T []

Items to pick from. This can be read and updated by the extension.

保持滚动位置布尔值

An optional flag to maintain the scroll position of the quick pick when the quick pick items are updated. Defaults to false.

matchOnDescription 布尔值

If the filter text should also be matched against the description of the items. Defaults to false.

matchOnDetail :布尔值

If the filter text should also be matched against the detail of the items. Defaults to false.

占位符字符串

Optional placeholder shown in the filter textbox when no filter has been entered.

所选项目只读T []

Selected items. This can be read and updated by the extension.

步骤:编号

An optional current step count.

标题字符串

An optional title.

总步数数量

An optional total step count.

字符串

Current value of the filter text.

Methods

处置无效

Dispose of this input UI and any associated resources. If it is still visible, it is first hidden. After this call the input UI is no longer functional and no additional methods or properties on it should be accessed. Instead a new input UI should be created.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hides this input UI. This will also fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

显示( ) :无效

Makes the input UI visible in its current configuration. Any other input UI will first fire an QuickInput.onDidHide event.

ParameterDescription
ReturnsDescription
void

快速选择项目

表示可以从项目列表中选择的项目。

Properties

总是显示布尔值

Always show this item.

Note: this property is ignored when kind is set to QuickPickItemKind.Separator

按钮:只读快速输入按钮[]

Optional buttons that will be rendered on this particular item. These buttons will trigger an QuickPickItemButtonEvent when clicked. Buttons are only rendered when using a quickpick created by the createQuickPick() API. Buttons are not rendered when using the showQuickPick() API.

Note: this property is ignored when kind is set to QuickPickItemKind.Separator

描述:字符串

A human-readable string which is rendered less prominent in the same line. Supports rendering of theme icons via the $(<name>)-syntax.

Note: this property is ignored when kind is set to QuickPickItemKind.Separator

详细:字符串

A human-readable string which is rendered less prominent in a separate line. Supports rendering of theme icons via the $(<name>)-syntax.

Note: this property is ignored when kind is set to QuickPickItemKind.Separator

图标路径乌里| 主题图标| {暗:Uri,亮:Uri }

The icon path or ThemeIcon for the QuickPickItem.

善良:快速选择项目种类

The kind of QuickPickItem that will determine how this item is rendered in the quick pick. When not specified, the default is QuickPickItemKind.Default.

标签字符串

A human-readable string which is rendered prominent. Supports rendering of theme icons via the $(<name>)-syntax.

选了布尔值

Optional flag indicating if this item is picked initially. This is only honored when using the showQuickPick() API. To do the same thing with the createQuickPick() API, simply set the QuickPick.selectedItems to the items you want picked initially. (Note: This is only honored when the picker allows multiple selections.)

See also QuickPickOptions.canPickMany

Note: this property is ignored when kind is set to QuickPickItemKind.Separator

QuickPickItemButtonEvent<T>

当触发特定QuickPickItem中的按钮时发出信号的事件。标题栏中的按钮不会触发此事件。

Properties

按钮快速输入按钮

The button that was clicked.

项目T

The item that the button belongs to.

快速选择项目种类

快速挑选物品的那种。

Enumeration Members

分隔符-1

When a QuickPickItem has a kind of Separator, the item is just a visual separator and does not represent a real item. The only property that applies is label . All other properties on QuickPickItem will be ignored and have no effect.

默认值0

The default QuickPickItem.kind is an item that can be selected in the quick pick.

快速选择选项

用于配置快速选择 UI 行为的选项。

Events

onDidSelectItem ( item : string | QuickPickItem ) :任意

An optional function that is invoked whenever an item is selected.

ParameterDescription
item: string | QuickPickItem
ReturnsDescription
any

Properties

可以选择很多吗?布尔值

An optional flag to make the picker accept multiple selections, if true the result is an array of picks.

忽略焦点输出布尔值

Set to true to keep the picker open when focus moves to another part of the editor or to another window. This setting is ignored on iPad and is always false.

匹配描述布尔值

An optional flag to include the description when filtering the picks.

匹配详细信息布尔值

An optional flag to include the detail when filtering the picks.

占位符:字符串

An optional string to show as placeholder in the input box to guide the user what to pick on.

标题:字符串

An optional string that represents the title of the quick pick.

范围

范围表示两个位置的有序对。保证start .isBeforeOrEqual( end )

Range 对象是不可变的。使用withintersectionunion方法从现有范围派生新范围。

Constructors

新范围开始位置结束位置范围

Create a new range from two positions. If start is not before or equal to end, the values will be swapped.

ParameterDescription
start: Position

A position.

end: Position

A position.

ReturnsDescription
Range

新范围startLine 数字startCharacter 数字endLine 数字endCharacter 数字范围

Create a new range from number coordinates. It is a shorter equivalent of using new Range(new Position(startLine, startCharacter), new Position(endLine, endCharacter))

ParameterDescription
startLine: number

A zero-based line value.

startCharacter: number

A zero-based character value.

endLine: number

A zero-based line value.

endCharacter: number

A zero-based character value.

ReturnsDescription
Range

Properties

结束位置

The end position. It is after or equal to start.

为空布尔值

true if start and end are equal.

isSingleLine :布尔值

true if start.line and end.line are equal.

开始位置

The start position. It is before or equal to end.

Methods

包含positionOrRange 范围|位置布尔值

Check if a position or a range is contained in this range.

ParameterDescription
positionOrRange: Range | Position

A position or a range.

ReturnsDescription
boolean

true if the position or range is inside or equal to this range.

交集范围范围范围

Intersect range with this range and returns a new range or undefined if the ranges have no overlap.

ParameterDescription
range: Range

A range.

ReturnsDescription
Range

A range of the greater start and smaller end positions. Will return undefined when there is no overlap.

isEqual 其他范围布尔值

Check if other equals this range.

ParameterDescription
other: Range

A range.

ReturnsDescription
boolean

true when start and end are equal to start and end of this range.

联合其他范围范围

Compute the union of other with this range.

ParameterDescription
other: Range

A range.

ReturnsDescription
Range

A range of smaller start position and the greater end position.

with (开始? :位置,结束? :位置) :范围

Derived a new range from this range.

ParameterDescription
start?: Position

A position that should be used as start. The default value is the current start.

end?: Position

A position that should be used as end. The default value is the current end.

ReturnsDescription
Range

A range derived from this range with the given start and end position. If start and end are not different this range will be returned.

with (更改: {结束:位置, 开始:位置} ) :范围

Derived a new range from this range.

ParameterDescription
change: {end: Position, start: Position}

An object that describes a change to this range.

ReturnsDescription
Range

A range that reflects the given change. Will return this range if the change is not changing anything.

参考上下文

请求引用时包含附加信息的值对象。

Properties

include声明布尔值

Include the declaration of the current symbol.

参考提供者

Methods

ProvideReferences (文档: TextDocument ,位置: Position ,上下文: ReferenceContext ,令牌: CancellationToken ) : ProviderResult < Location []>

Provide a set of project-wide references for the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

context: ReferenceContext
token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Location[]>

An array of locations or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

相对模式

相对模式是构造与基本文件路径相对匹配的全局模式的帮助器。基本路径可以是字符串或 uri 形式的绝对文件路径,也可以是工作空间文件夹,这是创建相对模式的首选方式。

Constructors

新的RelativePattern 基础字符串| Uri | WorkspaceFolder模式字符串RelativePattern

Creates a new relative pattern object with a base file path and pattern to match. This pattern will be matched on file paths relative to the base.

Example:

const folder = vscode.workspace.workspaceFolders?.[0];
if (folder) {
  // Match any TypeScript file in the root of this workspace folder
  const pattern1 = new vscode.RelativePattern(folder, '*.ts');

  // Match any TypeScript file in `someFolder` inside this workspace folder
  const pattern2 = new vscode.RelativePattern(folder, 'someFolder/*.ts');
}
ParameterDescription
base: string | Uri | WorkspaceFolder

A base to which this pattern will be matched against relatively. It is recommended to pass in a workspace folder if the pattern should match inside the workspace. Otherwise, a uri or string should only be used if the pattern is for a file path outside the workspace.

pattern: string

A file glob pattern like *.{ts,js} that will be matched on paths relative to the base.

ReturnsDescription
RelativePattern

Properties

基础字​​符串

A base file path to which this pattern will be matched against relatively.

This matches the fsPath value of RelativePattern.baseUri.

Note: updating this value will update RelativePattern.baseUri to be a uri with file scheme.

基本Uri Uri

A base file path to which this pattern will be matched against relatively. The file path must be absolute, should not have any trailing path separators and not include any relative segments (. or ..).

模式字符串

A file glob pattern like *.{ts,js} that will be matched on file paths relative to the base path.

Example: Given a base of /home/work/folder and a file path of /home/work/folder/index.js, the file glob pattern will match on index.js.

重命名提供者

Methods

准备重命名文档TextDocument位置位置令牌CancellationToken ProviderResult <范围| {占位符:字符串,范围:范围}>

Optional function for resolving and validating a position before running rename. The result can be a range or a range and a placeholder text. The placeholder text should be the identifier of the symbol which is being renamed - when omitted the text in the returned range is used.

Note: This function should throw an error or return a rejected thenable when the provided location doesn't allow for a rename.

ParameterDescription
document: TextDocument

The document in which rename will be invoked.

position: Position

The position at which rename will be invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Range | {placeholder: string, range: Range}>

The range or range and placeholder text of the identifier that is to be renamed. The lack of a result can signaled by returning undefined or null.

ProvideRenameEdits 文档TextDocument位置位置newName 字符串令牌CancellationToken ProviderResult <WorkspaceEdit> _ _

Provide an edit that describes changes that have to be made to one or many resources to rename a symbol to a different name.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

newName: string

The new name of the symbol. If the given name is not valid, the provider must return a rejected promise.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<WorkspaceEdit>

A workspace edit or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

运行选项

运行任务的选项。

Properties

重新评估重新运行布尔值

Controls whether task variables are re-evaluated on rerun.

保存对话框选项

配置文件保存对话框行为的选项。

Properties

默认Uri ? :乌里

The resource the dialog shows when opened.

过滤器:

A set of file filters that are used by the dialog. Each entry is a human-readable label, like "TypeScript", and an array of extensions, e.g.

{
    'Images': ['png', 'jpg']
    'TypeScript': ['ts', 'tsx']
}

保存标签:字符串

A human-readable string for the save button.

标题:字符串

Dialog title.

This parameter might be ignored, as not all operating systems display a title on save dialogs (for example, macOS).

秘密存储

代表秘密、敏感信息的存储实用程序。

Events

onDidChange :事件< SecretStorageChangeEvent >

Fires when a secret is stored or deleted.

Methods

删除字符串Thenable <void> _ _

Remove a secret from storage.

ParameterDescription
key: string

The key the secret was stored under.

ReturnsDescription
Thenable<void>

get ( key : string ) : Thenable <string> _ _

Retrieve a secret that was stored with key. Returns undefined if there is no password matching that key.

ParameterDescription
key: string

The key the secret was stored under.

ReturnsDescription
Thenable<string>

The stored value or undefined.

store ( key : string , value : string ) : Thenable < void >

Store a secret under a given key.

ParameterDescription
key: string

The key to store the secret under.

value: string

The secret.

ReturnsDescription
Thenable<void>

SecretStorageChangeEvent

添加或删除机密时触发的事件数据。

Properties

字符串

The key of the secret that has changed.

选定的完成信息

描述当前选择的完成项目。

Properties

范围范围

The range that will be replaced if this completion item is accepted.

文本字符串

The text the range will be replaced with if this completion is accepted.

选择

表示编辑器中的文本选择。

Constructors

新选择锚点位置活动位置选择

Create a selection from two positions.

ParameterDescription
anchor: Position

A position.

active: Position

A position.

ReturnsDescription
Selection

新选择anchorLine 数字anchorCharacter 数字activeLine 数字activeCharacter 数字选择

Create a selection from four coordinates.

ParameterDescription
anchorLine: number

A zero-based line value.

anchorCharacter: number

A zero-based character value.

activeLine: number

A zero-based line value.

activeCharacter: number

A zero-based character value.

ReturnsDescription
Selection

Properties

活跃位置

The position of the cursor. This position might be before or after anchor.

位置

The position at which the selection starts. This position might be before or after active.

结束位置

The end position. It is after or equal to start.

为空布尔值

true if start and end are equal.

isReversed :布尔值

A selection is reversed if its anchor is the end position.

isSingleLine :布尔值

true if start.line and end.line are equal.

开始位置

The start position. It is before or equal to end.

Methods

包含positionOrRange 范围|位置布尔值

Check if a position or a range is contained in this range.

ParameterDescription
positionOrRange: Range | Position

A position or a range.

ReturnsDescription
boolean

true if the position or range is inside or equal to this range.

交集范围范围范围

Intersect range with this range and returns a new range or undefined if the ranges have no overlap.

ParameterDescription
range: Range

A range.

ReturnsDescription
Range

A range of the greater start and smaller end positions. Will return undefined when there is no overlap.

isEqual 其他范围布尔值

Check if other equals this range.

ParameterDescription
other: Range

A range.

ReturnsDescription
boolean

true when start and end are equal to start and end of this range.

联合其他范围范围

Compute the union of other with this range.

ParameterDescription
other: Range

A range.

ReturnsDescription
Range

A range of smaller start position and the greater end position.

with (开始? :位置,结束? :位置) :范围

Derived a new range from this range.

ParameterDescription
start?: Position

A position that should be used as start. The default value is the current start.

end?: Position

A position that should be used as end. The default value is the current end.

ReturnsDescription
Range

A range derived from this range with the given start and end position. If start and end are not different this range will be returned.

with (更改: {结束:位置, 开始:位置} ) :范围

Derived a new range from this range.

ParameterDescription
change: {end: Position, start: Position}

An object that describes a change to this range.

ReturnsDescription
Range

A range that reflects the given change. Will return this range if the change is not changing anything.

选择范围

选择范围代表选择层次结构的一部分。选择范围可能有包含它的父选择范围。

Constructors

新的SelectionRange 范围范围父级SelectionRange SelectionRange

Creates a new selection range.

ParameterDescription
range: Range

The range of the selection range.

parent?: SelectionRange

The parent of the selection range.

ReturnsDescription
SelectionRange

Properties

家长选择范围

The parent selection range containing this range.

范围范围

The Range of this selection range.

选择范围提供者

选择范围提供程序接口定义了扩展和“扩展和收缩选择”功能之间的契约。

Methods

ProvideSelectionRanges (文档: TextDocument ,位置:只读Position [],令牌: CancellationToken ) : ProviderResult < SelectionRange []>

Provide selection ranges for the given positions.

Selection ranges should be computed individually and independent for each position. The editor will merge and deduplicate ranges but providers must return hierarchies of selection ranges so that a range is contained by its parent.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

positions: readonly Position[]

The positions at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<SelectionRange[]>

Selection ranges or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

语义标记

表示范围或整个文档中的语义标记。

也可以看看

Constructors

新的SemanticTokens 数据Uint32ArrayresultId ?:字符串SemanticTokens

Create new semantic tokens.

ParameterDescription
data: Uint32Array

Token data.

resultId?: string

Result identifier.

ReturnsDescription
SemanticTokens

Properties

数据Uint32Array

The actual tokens data.

See also provideDocumentSemanticTokens for an explanation of the format.

结果ID 字符串

The result id of the tokens.

This is the id that will be passed to DocumentSemanticTokensProvider.provideDocumentSemanticTokensEdits (if implemented).

语义标记生成器

语义标记生成器可以帮助创建SemanticTokens包含增量编码语义标记的实例。

Constructors

新的SemanticTokensBuilder 图例SemanticTokensLegend SemanticTokensBuilder

Creates a semantic tokens builder.

ParameterDescription
legend?: SemanticTokensLegend

A semantic tokens legent.

ReturnsDescription
SemanticTokensBuilder

Methods

构建resultId ?:字符串SemanticTokens _

Finish and create a SemanticTokens instance.

ParameterDescription
resultId?: string
ReturnsDescription
SemanticTokens

Push (:数字,字符:数字,长度:数字, tokenType :数字, tokenModifiers ? :数字) : void

Add another token.

ParameterDescription
line: number

The token start line number (absolute value).

char: number

The token start character (absolute value).

length: number

The token length in characters.

tokenType: number

The encoded token type.

tokenModifiers?: number

The encoded token modifiers.

ReturnsDescription
void

推送范围范围tokenType 字符串tokenModifiers ?:只读字符串[ ] 无效

Add another token. Use only when providing a legend.

ParameterDescription
range: Range

The range of the token. Must be single-line.

tokenType: string

The token type.

tokenModifiers?: readonly string[]

The token modifiers.

ReturnsDescription
void

语义标记编辑

表示对语义标记的编辑。

另请参阅 provideDocumentSemanticTokensEdits以获取格式说明。

Constructors

新的SemanticTokensEdit 开始数字deleteCount 数字数据Uint32Array SemanticTokensEdit

Create a semantic token edit.

ParameterDescription
start: number

Start offset

deleteCount: number

Number of elements to remove.

data?: Uint32Array

Elements to insert

ReturnsDescription
SemanticTokensEdit

Properties

数据Uint32Array

The elements to insert.

删除次数数量

The count of elements to remove.

开始数字

The start offset of the edit.

语义标记编辑

表示对语义标记的编辑。

另请参阅 provideDocumentSemanticTokensEdits以获取格式说明。

Constructors

新的 SemanticTokensEdits (编辑: SemanticTokensEdit [], resultId ? : string ) : SemanticTokensEdits

Create new semantic tokens edits.

ParameterDescription
edits: SemanticTokensEdit[]

An array of semantic token edits

resultId?: string

Result identifier.

ReturnsDescription
SemanticTokensEdits

Properties

编辑SemanticTokensEdit []

The edits to the tokens data. All edits refer to the initial data state.

结果ID 字符串

The result id of the tokens.

This is the id that will be passed to DocumentSemanticTokensProvider.provideDocumentSemanticTokensEdits (if implemented).

语义标记图例

语义标记图例包含破译语义标记的整数编码表示所需的信息。

Constructors

新的 SemanticTokensLegend ( tokenTypes : string [], tokenModifiers ? : string [] ) : SemanticTokensLegend

Creates a semantic tokens legend.

ParameterDescription
tokenTypes: string[]

An array of token types.

tokenModifiers?: string[]

An array of token modifiers.

ReturnsDescription
SemanticTokensLegend

Properties

tokenModifiers :字符串[]

The possible token modifiers.

令牌类型字符串[]

The possible token types.

Shell执行

表示在 shell 内发生的任务执行。

Constructors

新的 ShellExecution (命令行:字符串,选项? : ShellExecutionOptions ) : ShellExecution

Creates a shell execution with a full command line.

ParameterDescription
commandLine: string

The command line to execute.

options?: ShellExecutionOptions

Optional options for the started the shell.

ReturnsDescription
ShellExecution

新的 ShellExecution (命令: string | ShellQuotedString , args : Array< string | ShellQuotedString >, options ? : ShellExecutionOptions ) : ShellExecution

Creates a shell execution with a command and arguments. For the real execution the editor will construct a command line from the command and the arguments. This is subject to interpretation especially when it comes to quoting. If full control over the command line is needed please use the constructor that creates a ShellExecution with the full command line.

ParameterDescription
command: string | ShellQuotedString

The command to execute.

args: Array<string | ShellQuotedString>

The command arguments.

options?: ShellExecutionOptions

Optional options for the started the shell.

ReturnsDescription
ShellExecution

Properties

args 数组<字符串| Shell 引用字符串>

The shell args. Is undefined if created with a full command line.

命令字符串| Shell引用字符串

The shell command. Is undefined if created with a full command line.

命令行字符串

The shell command line. Is undefined if created with a command and arguments.

选项: Shell执行选项

The shell options used when the command line is executed in a shell. Defaults to undefined.

Shell执行选项

shell 执行的选项

Properties

西德:字符串

The current working directory of the executed shell. If omitted the tools current workspace root is used.

环境:

The additional environment of the executed shell. If omitted the parent process' environment is used. If provided it is merged with the parent process' environment.

可执行的:字符串

The shell executable.

shellArgs ? 字符串[]

The arguments to be passed to the shell executable used to run the task. Most shells require special arguments to execute a command. For example bash requires the -c argument to execute a command, PowerShell requires -Command and cmd requires both /d and /c.

shell 引用? : ShellQuotingOptions

The shell quotes supported by this shell.

Shell引用字符串

根据所使用的 shell 将被引用的字符串。

Properties

引用Shell引用

The quoting style to use.

字符串

The actual string value.

壳牌报价

定义如果参数包含空格或不受支持的字符,应如何引用该参数。

Enumeration Members

逃脱1

Character escaping should be used. This for example uses \ on bash and ` on PowerShell.

2

Strong string quoting should be used. This for example uses " for Windows cmd and ' for bash and PowerShell. Strong quoting treats arguments as literal strings. Under PowerShell echo 'The value is $(2 * 3)' will print The value is $(2 * 3)

3

Weak string quoting should be used. This for example uses " for Windows cmd, bash and PowerShell. Weak quoting still performs some kind of evaluation inside the quoted string. Under PowerShell echo "The value is $(2 * 3)" will print The value is 6

Shell报价选项

shell 引用选项。

Properties

逃跑:字符串| {charsToEscape:字符串,escapeChar:字符串}

The character used to do character escaping. If a string is provided only spaces are escaped. If a { escapeChar, charsToEscape } literal is provide all characters in charsToEscape are escaped using the escapeChar.

:字符串

The character used for strong quoting. The string's length must be 1.

:字符串

The character used for weak quoting. The string's length must be 1.

签名帮助

签名帮助表示可调用内容的签名。可以有多个签名,但只能有一个有效且只有一个有效参数。

Constructors

新的 SignatureHelp ( ) : SignatureHelp

ParameterDescription
ReturnsDescription
SignatureHelp

Properties

活动参数数字

The active parameter of the active signature.

主动签名数字

The active signature.

签名签名信息[]

One or more signatures.

签名帮助上下文

有关触发SignatureHelpProvider 的上下文的其他信息 。

Properties

activeSignatureHelp :签名帮助

The currently active SignatureHelp.

The activeSignatureHelp has its [SignatureHelp.activeSignature] field updated based on the user arrowing through available signatures.

是否重新触发布尔值

true if signature help was already showing when it was triggered.

Retriggers occur when the signature help is already active and can be caused by actions such as typing a trigger character, a cursor move, or document content changes.

触发字符字符串

Character that caused signature help to be triggered.

This is undefined when signature help is not triggered by typing, such as when manually invoking signature help or when moving the cursor.

触发种类SignatureHelpTriggerKind

Action that caused signature help to be triggered.

签名帮助提供者

Methods

ProvideSignatureHelp (文档: TextDocument ,位置:位置,令牌: CancellationToken ,上下文: SignatureHelpContext ) : ProviderResult < SignatureHelp >

Provide help for the signature at the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

context: SignatureHelpContext

Information about how signature help was triggered.

ReturnsDescription
ProviderResult<SignatureHelp>

Signature help or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

SignatureHelpProvider元数据

有关已注册SignatureHelpProvider 的元数据。

Properties

retriggerCharacters :只读字符串[]

List of characters that re-trigger signature help.

These trigger characters are only active when signature help is already showing. All trigger characters are also counted as re-trigger characters.

触发字符只读字符串[]

List of characters that trigger signature help.

签名帮助触发种类

Enumeration Members

调用1

Signature help was invoked manually by the user or by a command.

触发字符2

Signature help was triggered by a trigger character.

内容更改3

Signature help was triggered by the cursor moving or by the document content changing.

签名信息

代表可调用的东西的签名。签名可以有一个标签,例如函数名称、文档注释和一组参数。

Constructors

新的 SignatureInformation 标签字符串文档字符串| MarkdownString SignatureInformation

Creates a new signature information object.

ParameterDescription
label: string

A label string.

documentation?: string | MarkdownString

A doc string.

ReturnsDescription
SignatureInformation

Properties

活动参数? :数量

The index of the active parameter.

If provided, this is used in place of SignatureHelp.activeParameter.

文档:字符串| 降价字符串

The human-readable doc-comment of this signature. Will be shown in the UI but can be omitted.

标签字符串

The label of this signature. Will be shown in the UI.

参数参数信息[]

The parameters of this signature.

片段字符串

片段字符串是一个模板,允许插入文本并在插入时控制编辑器光标。

代码片段可以使用 , 和$1定义制表位和占位符。定义最后一个制表位,它默认为片段的末尾。变量用和 定义。另请参阅 完整的代码片段语法$2${3:foo}$0$name${name:default value}

Constructors

新的 SnippetString (? : string ) : SnippetString

Create a new snippet string.

ParameterDescription
value?: string

A snippet string.

ReturnsDescription
SnippetString

Properties

字符串

The snippet string.

Methods

appendChoice 只读字符串[],数字数字SnippetString

Builder-function that appends a choice (${1|a,b,c|}) to the value of this snippet string.

ParameterDescription
values: readonly string[]

The values for choices - the array of strings

number?: number

The number of this tabstop, defaults to an auto-increment value starting at 1.

ReturnsDescription
SnippetString

This snippet string.

appendPlaceholder (:字符串| ( 片段 : SnippetString ) =>任何,数字? :数字) : SnippetString

Builder-function that appends a placeholder (${1:value}) to the value of this snippet string.

ParameterDescription
value: string | (snippet: SnippetString) => any

The value of this placeholder - either a string or a function with which a nested snippet can be created.

number?: number

The number of this tabstop, defaults to an auto-increment value starting at 1.

ReturnsDescription
SnippetString

This snippet string.

appendTabstop (数字? :数字) : SnippetString

Builder-function that appends a tabstop ($1, $2 etc) to the value of this snippet string.

ParameterDescription
number?: number

The number of this tabstop, defaults to an auto-increment value starting at 1.

ReturnsDescription
SnippetString

This snippet string.

附加文本字符串字符串SnippetString

Builder-function that appends the given string to the value of this snippet string.

ParameterDescription
string: string

A value to append 'as given'. The string will be escaped.

ReturnsDescription
SnippetString

This snippet string.

appendVariable ( name : string , defaultValue : string | (snippet: SnippetString ) => any ) : SnippetString

Builder-function that appends a variable (${VAR}) to the value of this snippet string.

ParameterDescription
name: string

The name of the variable - excluding the $.

defaultValue: string | (snippet: SnippetString) => any

The default value which is used when the variable name cannot be resolved - either a string or a function with which a nested snippet can be created.

ReturnsDescription
SnippetString

This snippet string.

片段文本编辑

片段编辑表示由编辑器执行的交互式编辑。

请注意,片段编辑始终可以像普通文本编辑一样执行。当没有打开匹配的编辑器或工作区编辑 包含多个文件的片段编辑时,就会发生这种情况。在这种情况下,只有那些与活动编辑器匹配的内容才会作为代码片段编辑执行,而其他内容则作为普通文本编辑执行。

Static

插入位置位置片段SnippetString SnippetTextEdit

Utility to create an insert snippet edit.

ParameterDescription
position: Position

A position, will become an empty range.

snippet: SnippetString

A snippet string.

ReturnsDescription
SnippetTextEdit

A new snippet edit object.

替换范围范围片段SnippetString SnippetTextEdit

Utility to create a replace snippet edit.

ParameterDescription
range: Range

A range.

snippet: SnippetString

A snippet string.

ReturnsDescription
SnippetTextEdit

A new snippet edit object.

Constructors

新的 SnippetTextEdit 范围范围片段SnippetString SnippetTextEdit

Create a new snippet edit.

ParameterDescription
range: Range

A range.

snippet: SnippetString

A snippet string.

ReturnsDescription
SnippetTextEdit

Properties

范围范围

The range this edit applies to.

片段片段字符串

The snippet this edit will perform.

源断点

由源位置指定的断点。

Constructors

new SourceBreakpoint 位置位置启用布尔条件字符串hitCondition ?:字符串logMessage ?:字符串SourceBreakpoint

Create a new breakpoint for a source location.

ParameterDescription
location: Location
enabled?: boolean
condition?: string
hitCondition?: string
logMessage?: string
ReturnsDescription
SourceBreakpoint

Properties

条件:字符串

An optional expression for conditional breakpoints.

启用布尔值

Is breakpoint enabled.

命中条件? :字符串

An optional expression that controls how many hits of the breakpoint are ignored.

id 字符串

The unique ID of the breakpoint.

地点:地点

The source and line position of this breakpoint.

日志消息:字符串

An optional message that gets logged when this breakpoint is hit. Embedded expressions within {} are interpolated by the debug adapter.

源代码控制

Properties

接受输入命令命令

Optional accept input command.

This command will be invoked when the user accepts the value in the Source Control input.

提交模板:字符串

Optional commit template string.

The Source Control viewlet will populate the Source Control input with this value when appropriate.

:数量

The UI-visible count of resource states of this source control.

If undefined, this source control will

  • display its UI-visible count as zero, and
  • contribute the count of its resource states to the UI-visible aggregated count for all source controls

id 字符串

The id of this source control.

输入框源控件输入框

The input box for this source control.

标签字符串

The human-readable label of this source control.

快速差异提供者:快速差异提供者

An optional quick diff provider.

根Uri Uri

The (optional) Uri of the root of this source control.

状态栏命令命令[]

Optional status bar commands.

These commands will be displayed in the editor's status bar.

Methods

createResourceGroup id 字符串标签字符串SourceControlResourceGroup

Create a new resource group.

ParameterDescription
id: string
label: string
ReturnsDescription
SourceControlResourceGroup

处置无效

Dispose this source control.

ParameterDescription
ReturnsDescription
void

源控件输入框

表示源代码管理视图中的输入框。

Properties

启用布尔值

Controls whether the input box is enabled (default is true).

占位符字符串

A string to show as placeholder in the input box to guide the user.

字符串

Setter and getter for the contents of the input box.

可见布尔值

Controls whether the input box is visible (default is true).

源代码控制资源装饰

源控制资源状态的装饰。可以独立指定浅色和深色主题。

Properties

黑暗: SourceControlResourceThemableDecorations

The dark theme decorations.

褪色了布尔值

Whether the source control resource state should be faded in the UI.

图标路径:字符串| 乌里| 主题图标

The icon path for a specific source control resource state.

: SourceControlResourceThemableDecorations

The light theme decorations.

删除线布尔值

Whether the source control resource state should be striked-through in the UI.

工具提示:字符串

The title for a specific source control resource state.

源控制资源组

Properties

空时隐藏布尔值

Whether this source control resource group is hidden when it contains no source control resource states.

id 字符串

The id of this source control resource group.

标签字符串

The label of this source control resource group.

资源状态SourceControlResourceState []

This group's collection of source control resource states.

Methods

处置无效

Dispose this source control resource group.

ParameterDescription
ReturnsDescription
void

源控制资源状态

Properties

命令命令

The Command which should be run when the resource state is open in the Source Control viewlet.

上下文值:字符串

Context value of the resource state. This can be used to contribute resource specific actions. For example, if a resource is given a context value as diffable. When contributing actions to scm/resourceState/context using menus extension point, you can specify context value for key scmResourceState in when expressions, like scmResourceState == diffable.

"contributes": {
  "menus": {
    "scm/resourceState/context": [
      {
        "command": "extension.diff",
        "when": "scmResourceState == diffable"
      }
    ]
  }
}

This will show action extension.diff only for resources with contextValue is diffable.

装饰品:源控件资源装饰

The decorations for this source control resource state.

资源Uri Uri

The Uri of the underlying resource inside the workspace.

源控件资源主题装饰

源代码控制资源状态的主题感知装饰 。

Properties

图标路径:字符串| 乌里| 主题图标

The icon path for a specific source control resource state.

状态栏对齐

表示状态栏项目的对齐方式。

Enumeration Members

1

Aligned to the left side.

2

Aligned to the right side.

状态栏项

状态栏项目是状态栏贡献,可以显示文本和图标并在单击时运行命令。

Properties

可访问性信息可访问性信息

Accessibility information used when a screen reader interacts with this StatusBar item

对齐状态栏对齐

The alignment of this item.

背景颜色主题颜色

The background color for this entry.

Note: only the following colors are supported:

  • new ThemeColor('statusBarItem.errorBackground')
  • new ThemeColor('statusBarItem.warningBackground')

More background colors may be supported in the future.

Note: when a background color is set, the statusbar may override the color choice to ensure the entry is readable in all themes.

颜色:字符串| 主题颜色

The foreground color for this entry.

命令字符串| 命令

Command or identifier of a command to run on click.

The command must be known.

Note that if this is a Command object, only the command and arguments are used by the editor.

id 字符串

The identifier of this item.

Note: if no identifier was provided by the window.createStatusBarItem method, the identifier will match the extension identifier.

名称字符串

The name of the entry, like 'Python Language Indicator', 'Git Status' etc. Try to keep the length of the name short, yet descriptive enough that users can understand what the status bar item is about.

优先级数字

The priority of this item. Higher value means the item should be shown more to the left.

文本字符串

The text to show for the entry. You can embed icons in the text by leveraging the syntax:

My text $(icon-name) contains icons like $(icon-name) this one.

Where the icon-name is taken from the ThemeIcon icon set, e.g. light-bulb, thumbsup, zap etc.

工具提示字符串| 降价字符串

The tooltip text when you hover over this entry.

Methods

处置无效

Dispose and free associated resources. Call hide.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hide the entry in the status bar.

ParameterDescription
ReturnsDescription
void

显示( ) :无效

Shows the entry in the status bar.

ParameterDescription
ReturnsDescription
void

符号信息

表示有关变量、类、接口等编程结构的信息。

Constructors

新的SymbolInformation 名称字符串种类SymbolKind容器名称字符串位置位置SymbolInformation

Creates a new symbol information object.

ParameterDescription
name: string

The name of the symbol.

kind: SymbolKind

The kind of the symbol.

containerName: string

The name of the symbol containing the symbol.

location: Location

The location of the symbol.

ReturnsDescription
SymbolInformation

的SymbolInformation 名称字符串种类SymbolKind范围范围uri UricontainerName ?:字符串SymbolInformation

Creates a new symbol information object.

  • deprecated - Please use the constructor taking a Location object.
ParameterDescription
name: string

The name of the symbol.

kind: SymbolKind

The kind of the symbol.

range: Range

The range of the location of the symbol.

uri?: Uri

The resource of the location of symbol, defaults to the current document.

containerName?: string

The name of the symbol containing the symbol.

ReturnsDescription
SymbolInformation

Properties

容器名称字符串

The name of the symbol containing this symbol.

种类符号种类

The kind of this symbol.

地点:地点

The location of this symbol.

名称字符串

The name of this symbol.

标签:只读已弃用[]

Tags for this symbol.

符号种类

一种符号。

Enumeration Members

文件0

The File symbol kind.

模块1

The Module symbol kind.

命名空间2

The Namespace symbol kind.

套餐3

The Package symbol kind.

等级4

The Class symbol kind.

方法5

The Method symbol kind.

房产6

The Property symbol kind.

场数7

The Field symbol kind.

建造者8

The Constructor symbol kind.

枚举9

The Enum symbol kind.

接口10个

The Interface symbol kind.

功能11

The Function symbol kind.

变量12

The Variable symbol kind.

常数13

The Constant symbol kind.

字符串14

The String symbol kind.

数量15

The Number symbol kind.

布尔值16

The Boolean symbol kind.

阵列17

The Array symbol kind.

对象18

The Object symbol kind.

钥匙19

The Key symbol kind.

20

The Null symbol kind.

枚举成员21

The EnumMember symbol kind.

结构22

The Struct symbol kind.

活动23

The Event symbol kind.

操作员24

The Operator symbol kind.

类型参数25

The TypeParameter symbol kind.

符号标签

符号标签是调整符号渲染的额外注释。

Enumeration Members

已弃用1

Render a symbol as obsolete, usually using a strike-out.

语法令牌类型

常见语法标记类型的枚举。

Enumeration Members

其他0

Everything except tokens that are part of comments, string literals and regular expressions.

评论1

A comment.

字符串2

A string literal.

正则表达式3

A regular expression.

标签

代表一组选项卡中的一个选项卡。选项卡只是编辑器区域内的图形表示。支持编辑器并不能保证。

Properties

选项卡组

The group which the tab belongs to.

输入未知

Defines the structure of the tab i.e. text, notebook, custom, etc. Resource and other useful properties are defined on the tab kind.

是否活跃布尔值

Whether or not the tab is currently active. This is dictated by being the selected tab in the group.

是否脏布尔值

Whether or not the dirty indicator is present on the tab.

已固定布尔值

Whether or not the tab is pinned (pin icon is present).

是预览布尔值

Whether or not the tab is in preview mode.

标签字符串

The text displayed on the tab.

TabChange事件

描述选项卡更改的事件。

Properties

更改只读选项卡[]

Tabs that have changed, e.g have changed their active state.

关闭只读选项卡[]

The tabs that have been closed.

打开只读选项卡[]

The tabs that have been opened.

选项卡组

代表一组选项卡。选项卡组本身由多个选项卡组成。

Properties

活动选项卡选项卡

The active tab in the group. This is the tab whose contents are currently being rendered.

Note that there can be one active tab per group but there can only be one active group.

是否活跃布尔值

Whether or not the group is currently active.

Note that only one tab group is active at a time, but that multiple tab groups can have an active tab.

See also Tab.isActive

tabs :只读Tab []

The list of tabs contained within the group. This can be empty if the group has no tabs open.

视图列视图列

The view column of the group.

TabGroupChange事件

描述选项卡组更改的事件。

Properties

更改只读TabGroup []

Tab groups that have changed, e.g have changed their active state.

关闭只读TabGroup []

Tab groups that have been closed.

打开只读TabGroup []

Tab groups that have been opened.

选项卡组

表示主编辑器区域,由多个包含选项卡的组组成。

Events

onDidChangeTabGroups 事件<TabGroupChangeEvent> _ _

An event which fires when tab groups have changed.

onDidChangeTabs :事件<TabChangeEvent> _ _

An event which fires when tabs have changed.

Properties

活动选项卡组选项卡组

The currently active group.

all :只读TabGroup []

All the groups within the group container.

Methods

close ( tab : Tab | readonly Tab [], keepFocus ? : boolean ) : Thenable < boolean >

Closes the tab. This makes the tab object invalid and the tab should no longer be used for further actions. Note: In the case of a dirty tab, a confirmation dialog will be shown which may be cancelled. If cancelled the tab is still valid

ParameterDescription
tab: Tab | readonly Tab[]

The tab to close.

preserveFocus?: boolean

When true focus will remain in its current position. If false it will jump to the next tab.

ReturnsDescription
Thenable<boolean>

A promise that resolves to true when all tabs have been closed.

close ( tabGroup : TabGroup | readonly TabGroup [], keepFocus ? : boolean ) : Thenable < boolean >

Closes the tab group. This makes the tab group object invalid and the tab group should no longer be used for further actions.

ParameterDescription
tabGroup: TabGroup | readonly TabGroup[]

The tab group to close.

preserveFocus?: boolean

When true focus will remain in its current position.

ReturnsDescription
Thenable<boolean>

A promise that resolves to true when all tab groups have been closed.

Tab输入自定义

该选项卡代表自定义编辑器。

Constructors

new TabInputCustom ( uri : Uri , viewType : string ) : TabInputCustom

Constructs a custom editor tab input.

ParameterDescription
uri: Uri

The uri of the tab.

viewType: string

The viewtype of the custom editor.

ReturnsDescription
TabInputCustom

Properties

乌里乌里

The uri that the tab is representing.

视图类型字符串

The type of custom editor.

Tab输入笔记本

该选项卡代表一个笔记本。

Constructors

新的TabInputNotebook uri UrinotebookType 字符串TabInputNotebook

Constructs a new tab input for a notebook.

ParameterDescription
uri: Uri

The uri of the notebook.

notebookType: string

The type of notebook. Maps to NotebookDocuments's notebookType

ReturnsDescription
TabInputNotebook

Properties

笔记本类型字符串

The type of notebook. Maps to NotebookDocuments's notebookType

乌里乌里

The uri that the tab is representing.

TabInputNotebookDiff

这些选项卡代表不同配置中的两个笔记本。

Constructors

new TabInputNotebookDiff 原始Uri修改UrinotebookType 字符串TabInputNotebookDiff

Constructs a notebook diff tab input.

ParameterDescription
original: Uri

The uri of the original unmodified notebook.

modified: Uri

The uri of the modified notebook.

notebookType: string

The type of notebook. Maps to NotebookDocuments's notebookType

ReturnsDescription
TabInputNotebookDiff

Properties

修改乌里

The uri of the modified notebook.

笔记本类型字符串

The type of notebook. Maps to NotebookDocuments's notebookType

原作乌里

The uri of the original notebook.

Tab输入终端

该选项卡代表编辑器区域中的终端。

Constructors

新的 TabInputTerminal ( ) : TabInputTerminal

Constructs a terminal tab input.

ParameterDescription
ReturnsDescription
TabInputTerminal

制表符输入文本

该选项卡代表单个基于文本的资源。

Constructors

新的 TabInputText ( uri : Uri ) : TabInputText

Constructs a text tab input with the given URI.

ParameterDescription
uri: Uri

The URI of the tab.

ReturnsDescription
TabInputText

Properties

乌里乌里

The uri represented by the tab.

Tab输入文本差异

该选项卡表示两个基于文本的资源被呈现为差异。

Constructors

新的TabInputTextDiff 原始Uri修改Uri TabInputTextDiff

Constructs a new text diff tab input with the given URIs.

ParameterDescription
original: Uri

The uri of the original text resource.

modified: Uri

The uri of the modified text resource.

ReturnsDescription
TabInputTextDiff

Properties

修改乌里

The uri of the modified text resource.

原作乌里

The uri of the original text resource.

TabInputWebview

该选项卡代表一个网络视图。

Constructors

新的 TabInputWebview ( viewType : string ) : TabInputWebview

Constructs a webview tab input with the given view type.

ParameterDescription
viewType: string

The type of webview. Maps to WebviewPanel's viewType

ReturnsDescription
TabInputWebview

Properties

视图类型字符串

The type of webview. Maps to WebviewPanel's viewType

任务

要执行的任务

Constructors

新任务(任务定义:任务定义范围工作空间文件夹|全局|工作空间名称字符串字符串执行ProcessExecution | ShellExecution | CustomExecution问题匹配器字符串|字符串[] 任务

Creates a new task.

ParameterDescription
taskDefinition: TaskDefinition

The task definition as defined in the taskDefinitions extension point.

scope: WorkspaceFolder | Global | Workspace

Specifies the task's scope. It is either a global or a workspace task or a task for a specific workspace folder. Global tasks are currently not supported.

name: string

The task's name. Is presented in the user interface.

source: string

The task's source (e.g. 'gulp', 'npm', ...). Is presented in the user interface.

execution?: ProcessExecution | ShellExecution | CustomExecution

The process or shell execution.

problemMatchers?: string | string[]

the names of problem matchers to use, like '$tsc' or '$eslint'. Problem matchers can be contributed by an extension using the problemMatchers extension point.

ReturnsDescription
Task

新任务(任务定义任务定义名称字符串字符串执行ProcessExecution | ShellExecution问题匹配器字符串|字符串[] 任务

Creates a new task.

  • deprecated - Use the new constructors that allow specifying a scope for the task.
ParameterDescription
taskDefinition: TaskDefinition

The task definition as defined in the taskDefinitions extension point.

name: string

The task's name. Is presented in the user interface.

source: string

The task's source (e.g. 'gulp', 'npm', ...). Is presented in the user interface.

execution?: ProcessExecution | ShellExecution

The process or shell execution.

problemMatchers?: string | string[]

the names of problem matchers to use, like '$tsc' or '$eslint'. Problem matchers can be contributed by an extension using the problemMatchers extension point.

ReturnsDescription
Task

Properties

定义任务定义

The task's definition.

详细:字符串

A human-readable string which is rendered less prominently on a separate line in places where the task's name is displayed. Supports rendering of theme icons via the $(<name>)-syntax.

执行流程执行| Shell执行| 定制执行

The task's execution engine

任务组

The task group this tasks belongs to. See TaskGroup for a predefined set of available groups. Defaults to undefined meaning that the task doesn't belong to any special group.

是背景布尔值

Whether the task is a background task or not.

名称字符串

The task's name

演示选项任务演示选项

The presentation options. Defaults to an empty literal.

问题匹配器字符串[]

The problem matchers attached to the task. Defaults to an empty array.

运行选项运行选项

Run options for the task

范围工作区文件夹| 全球| 工作空间

The task's scope.

来源字符串

A human-readable string describing the source of this shell task, e.g. 'gulp' or 'npm'. Supports rendering of theme icons via the $(<name>)-syntax.

任务定义

定义系统中任务类型的结构。该值必须是可 JSON 字符串化的。

Properties

类型字符串

The task definition describing the task provided by an extension. Usually a task provider defines more properties to identify a task. They need to be defined in the package.json of the extension under the 'taskDefinitions' extension point. The npm task definition for example looks like this

interface NpmTaskDefinition extends TaskDefinition {
  script: string;
}

Note that type identifier starting with a '$' are reserved for internal usages and shouldn't be used by extensions.

任务结束事件

表示已执行任务结束的事件。

该接口不打算被实现。

Properties

执行任务执行

The task item representing the task that finished.

任务执行

代表已执行任务的对象。它可用于终止任务。

该接口不打算被实现。

Properties

任务任务

The task that got started.

Methods

终止无效

Terminates the task execution.

ParameterDescription
ReturnsDescription
void

任务过滤器

任务过滤器按版本和类型表示任务

Properties

类型:字符串

The task type to return;

版本:字符串

The task version as used in the tasks.json file. The string support the package.json semver notation.

任务组

任务分组。编辑器默认支持“Clean”、“Build”、“RebuildAll”和“Test”组。

Static

构建任务组

The build task group;

清洁任务组

The clean task group;

重建任务组

The rebuild all task group;

测试任务组

The test all task group;

Constructors

新任务组id 字符串标签字符串任务组

Private constructor

ParameterDescription
id: string

Identifier of a task group.

label: string

The human-readable name of a task group.

ReturnsDescription
TaskGroup

Properties

id 字符串

The ID of the task group. Is one of TaskGroup.Clean.id, TaskGroup.Build.id, TaskGroup.Rebuild.id, or TaskGroup.Test.id.

isDefault :布尔值

Whether the task that is part of this group is the default for the group. This property cannot be set through API, and is controlled by a user's task configurations.

任务面板类型

控制任务通道在任务之间的使用方式

Enumeration Members

共享: 1

Shares a panel with other tasks. This is the default.

专用2

Uses a dedicated panel for this tasks. The panel is not shared with other tasks.

3

Creates a new panel whenever this task is executed.

任务演示选项

控制任务在 UI 中的呈现方式。

Properties

清楚吗布尔值

Controls whether the terminal is cleared before executing the task.

关闭布尔值

Controls whether the terminal is closed after executing the task.

回声布尔值

Controls whether the command associated with the task is echoed in the user interface.

焦点布尔值

Controls whether the panel showing the task output is taking focus.

面板:任务面板类型

Controls if the task panel is used for this task only (dedicated), shared between tasks (shared) or if a new panel is created on every task execution (new). Defaults to TaskInstanceKind.Shared

揭示:任务揭示种类

Controls whether the task output is reveal in the user interface. Defaults to RevealKind.Always.

显示重用消息布尔值

Controls whether to show the "Terminal will be reused by tasks, press any key to close it" message.

任务进程结束事件

通过任务触发的表示流程执行结束的事件

Properties

执行任务执行

The task execution for which the process got started.

退出代码数字

The process's exit code. Will be undefined when the task is terminated.

任务进程开始事件

通过任务触发的表示流程执行开始的事件

Properties

执行任务执行

The task execution for which the process got started.

进程ID 数字

The underlying process id.

任务提供者<T>

任务提供者允许将任务添加到任务服务。任务提供者通过tasks.registerTaskProvider注册。

Methods

提供任务令牌CancellationToken ProviderResult < T []>

Provides tasks.

ParameterDescription
token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

an array of tasks

solveTask 任务T令牌CancellationToken ProviderResult <T> _ _

Resolves a task that has no execution set. Tasks are often created from information found in the tasks.json-file. Such tasks miss the information on how to execute them and a task provider must fill in the missing information in the resolveTask-method. This method will not be called for tasks returned from the above provideTasks method since those tasks are always fully resolved. A valid default implementation for the resolveTask method is to return undefined.

Note that when filling in the properties of task, you must be sure to use the exact same TaskDefinition and not create a new one. Other properties may be changed.

ParameterDescription
task: T

The task to resolve.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

The resolved task

任务揭示种类

控制终端可见性的行为。

Enumeration Members

始终1

Always brings the terminal to front if the task is executed.

沉默2

Only brings the terminal to front if a problem is detected executing the task (e.g. the task couldn't be started because).

从来没有3

The terminal never comes to front when the task is executed.

任务范围

任务的范围。

Enumeration Members

全球1

The task is a global task. Global tasks are currently not supported.

工作空间2

The task is a workspace task

任务开始事件

表示任务执行开始的事件。

该接口不打算被实现。

Properties

执行任务执行

The task item representing the task that got started.

遥测记录器

遥测记录器,可由扩展使用来记录使用情况和错误遥测。

记录器环绕发送者,但它保证

  • 禁用或调整遥测的用户设置受到尊重,并且
  • 潜在的敏感数据被删除

它还启用了“回显 UI”,可以打印发送的任何数据,并允许编辑器将未处理的错误转发到相应的扩展。

要获取 a 的实例TelemetryLogger,请使用 createTelemetryLogger.

Events

onDidChangeEnableStates 事件< TelemetryLogger >

An Event which fires when the enablement state of usage or error telemetry changes.

Properties

isErrorsEnabled :布尔值

Whether or not error telemetry is enabled for this logger.

isUsageEnabled :布尔值

Whether or not usage telemetry is enabled for this logger.

Methods

处置无效

Dispose this object and free resources.

ParameterDescription
ReturnsDescription
void

logError 事件名称字符串数据记录<字符串任意> void

Log an error event.

After completing cleaning, telemetry setting checks, and data mix-in calls TelemetrySender.sendEventData to log the event. Differs from logUsage in that it will log the event if the telemetry setting is Error+. Automatically supports echoing to extension telemetry output channel.

ParameterDescription
eventName: string

The event name to log

data?: Record<string, any>

The data to log

ReturnsDescription
void

logError 错误错误数据记录<字符串任意> void

Log an error event.

Calls TelemetrySender.sendErrorData. Does cleaning, telemetry checks, and data mix-in. Automatically supports echoing to extension telemetry output channel. Will also automatically log any exceptions thrown within the extension host process.

ParameterDescription
error: Error

The error object which contains the stack trace cleaned of PII

data?: Record<string, any>

Additional data to log alongside the stack trace

ReturnsDescription
void

logUsage ( eventName : string , data ? : Record < string , any > ) : void

Log a usage event.

After completing cleaning, telemetry setting checks, and data mix-in calls TelemetrySender.sendEventData to log the event. Automatically supports echoing to extension telemetry output channel.

ParameterDescription
eventName: string

The event name to log

data?: Record<string, any>

The data to log

ReturnsDescription
void

遥测记录器选项

Properties

额外的共同属性记录<字符串任意>

Any additional common properties which should be injected into the data object.

忽略BuiltInCommonProperties 布尔值

Whether or not you want to avoid having the built-in common properties such as os, extension name, etc injected into the data object. Defaults to false if not defined.

忽略未处理的错误布尔值

Whether or not unhandled errors on the extension host caused by your extension should be logged to your sender. Defaults to false if not defined.

遥测发送器

遥测发送者是遥测记录器和某些遥测服务之间的合同。请注意,扩展程序不得直接调用其发送者的方法,因为记录器提供额外的保护和清理。

const sender: vscode.TelemetrySender = {...};
const logger = vscode.env.createTelemetryLogger(sender);

// GOOD - uses the logger
logger.logUsage('myEvent', { myData: 'myValue' });

// BAD - uses the sender directly: no data cleansing, ignores user settings, no echoing to the telemetry output channel etc
sender.logEvent('myEvent', { myData: 'myValue' });

Methods

刷新无效| 然后可<无效>

Optional flush function which will give this sender a chance to send any remaining events as its TelemetryLogger is being disposed

ParameterDescription
ReturnsDescription
void | Thenable<void>

sendErrorData (错误:错误,数据? :记录<字符串,任意> ) : void

Function to send an error. Used within a TelemetryLogger

ParameterDescription
error: Error

The error being logged

data?: Record<string, any>

Any additional data to be collected with the exception

ReturnsDescription
void

sendEventData (事件名称:字符串,数据? :记录<字符串,任意> ) : void

Function to send event data without a stacktrace. Used within a TelemetryLogger

ParameterDescription
eventName: string

The name of the event which you are logging

data?: Record<string, any>

A serializable key value pair that is being logged

ReturnsDescription
void

遥测TrustedValue<T>

一个特殊的值包装器,表示一个不安全的值。当您可以保证值中不包含可识别信息并且清理不正确地编辑它时,可以使用此方法。

Constructors

新的 TelemetryTrustedValue < T > T TelemetryTrustedValue < T >

Creates a new telementry trusted value.

ParameterDescription
value: T

A value to trust

ReturnsDescription
TelemetryTrustedValue<T>

Properties

T

The value that is trusted to not contain PII.

终端

集成终端内的单独终端实例。

Properties

创建选项只读<终端选项| 扩展终端选项>

The object used to initialize the terminal, this is useful for example to detecting the shell type of when the terminal was not launched by this extension or for detecting what folder the shell was launched in.

退出状态终端退出状态

The exit status of the terminal, this will be undefined while the terminal is active.

Example: Show a notification with the exit code when the terminal exits with a non-zero exit code.

window.onDidCloseTerminal(t => {
  if (t.exitStatus && t.exitStatus.code) {
    vscode.window.showInformationMessage(`Exit code: ${t.exitStatus.code}`);
  }
});

名称字符串

The name of the terminal.

processId Thenable <数字>

The process ID of the shell process.

状态终端状态

The current state of the Terminal.

Methods

处置无效

Dispose and free associated resources.

ParameterDescription
ReturnsDescription
void

隐藏无效

Hide the terminal panel if this terminal is currently showing.

ParameterDescription
ReturnsDescription
void

sendText 文本字符串addNewLine ?:布尔无效

Send text to the terminal. The text is written to the stdin of the underlying pty process (shell) of the terminal.

ParameterDescription
text: string

The text to send.

addNewLine?: boolean

Whether to add a new line to the text being sent, this is normally required to run a command in the terminal. The character(s) added are \n or \r\n depending on the platform. This defaults to true.

ReturnsDescription
void

显示保留焦点布尔值无效

Show the terminal panel and reveal this terminal in the UI.

ParameterDescription
preserveFocus?: boolean

When true the terminal will not take focus.

ReturnsDescription
void

端子尺寸

表示端子的尺寸。

Properties

数字

The number of columns in the terminal.

数量

The number of rows in the terminal.

终端编辑器位置选项

假定编辑器的TerminalLocation并允许指定ViewColumnpreserveFocus属性

Properties

保留焦点布尔值

An optional flag that when true will stop the Terminal from taking focus.

视图列视图列

A view column in which the terminal should be shown in the editor area. The default is the active. Columns that do not exist will be created as needed up to the maximum of ViewColumn.Nine. Use ViewColumn.Beside to open the editor to the side of the currently active one.

终端退出原因

终端退出原因种类。

Enumeration Members

未知0

Unknown reason.

关机1

The window closed/reloaded.

进程2

The shell process exited.

用户3

The user closed the terminal.

分机号4

An extension disposed the terminal.

终端退出状态

表示终端如何退出。

Properties

代码号码

The exit code that a terminal exited with, it can have the following values:

  • Zero: the terminal process or custom execution succeeded.
  • Non-zero: the terminal process or custom execution failed.
  • undefined: the user forcibly closed the terminal or a custom execution exited without providing an exit code.

原因终端退出原因

The reason that triggered the exit of a terminal.

终端线路上的链接。

Constructors

new TerminalLink ( startIndex : number , length : number , tooltip ? : string ) : TerminalLink

Creates a new terminal link.

ParameterDescription
startIndex: number

The start index of the link on TerminalLinkContext.line.

length: number

The length of the link on TerminalLinkContext.line.

tooltip?: string

The tooltip text when you hover over this link.

If a tooltip is provided, is will be displayed in a string that includes instructions on how to trigger the link, such as {0} (ctrl + click). The specific instructions vary depending on OS, user settings, and localization.

ReturnsDescription
TerminalLink

Properties

长度数字

The length of the link on TerminalLinkContext.line.

起始索引数字

The start index of the link on TerminalLinkContext.line.

工具提示:字符串

The tooltip text when you hover over this link.

If a tooltip is provided, is will be displayed in a string that includes instructions on how to trigger the link, such as {0} (ctrl + click). The specific instructions vary depending on OS, user settings, and localization.

终端链接上下文

提供终端中线路的信息,以便为其提供链接。

Properties

字符串

This is the text from the unwrapped line in the terminal.

终端终端

The terminal the link belongs to.

TerminalLinkProvider<T>

能够检测和处理终端内链接的提供程序。

Methods

handleTerminalLink (链接: T ) : ProviderResult < void >

Handle an activated terminal link.

ParameterDescription
link: T

The link to handle.

ReturnsDescription
ProviderResult<void>

提供TerminalLinks 上下文TerminalLinkContext令牌CancellationToken ProviderResult < T []>

Provide terminal links for the given context. Note that this can be called multiple times even before previous calls resolve, make sure to not share global objects (eg. RegExp) that could have problems when asynchronous usage may overlap.

ParameterDescription
context: TerminalLinkContext

Information about what links are being provided for.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

A list of terminal links for the given line.

航站楼位置

终端的位置。

Enumeration Members

面板1

In the terminal view

编辑2

In the editor area

终端选项

描述终端应使用哪些选项的值对象。

Properties

颜色主题颜色

The icon ThemeColor for the terminal. The terminal.ansi* theme keys are recommended for the best contrast and consistency across themes.

西德:字符串| 乌里

A path or Uri for the current working directory to be used for the terminal.

环境:

Object with environment variables that will be added to the editor process.

隐藏用户布尔值

When enabled the terminal will run the process as normal but not be surfaced to the user until Terminal.show is called. The typical usage for this is when you need to run something that may need interactivity but only want to tell the user about it when interaction is needed. Note that the terminals will still be exposed to all extensions as normal.

图标路径乌里| 主题图标| {暗:Uri,亮:Uri }

The icon path or ThemeIcon for the terminal.

是瞬态的布尔值

Opt-out of the default terminal persistence on restart and reload. This will only take effect when terminal.integrated.enablePersistentSessions is enabled.

地点:终端编辑器位置选项| 终端分割位置选项| 航站楼位置

留言:字符串

A message to write to the terminal on first launch, note that this is not sent to the process but, rather written directly to the terminal. This supports escape sequences such a setting text style.

名字:字符串

A human-readable string which will be used to represent the terminal in the UI.

shellArgs ? :字符串| 字符串[]

Args for the custom shell executable. A string can be used on Windows only which allows specifying shell args in command-line format.

Shell 路径:字符串

A path to a custom shell executable to be used in the terminal.

严格环境布尔值

Whether the terminal process environment should be exactly as provided in TerminalOptions.env. When this is false (default), the environment will be based on the window's environment and also apply configured platform settings like terminal.integrated.env.windows on top. When this is true, the complete environment must be provided as nothing will be inherited from the process or any configuration.

终端配置文件

终端配置文件定义了终端的启动方式。

Constructors

新的 TerminalProfile (选项: TerminalOptions | ExtensionTerminalOptions ) : TerminalProfile

Creates a new terminal profile.

ParameterDescription
options: TerminalOptions | ExtensionTerminalOptions

The options that the terminal will launch with.

ReturnsDescription
TerminalProfile

Properties

选项终端选项| 扩展终端选项

The options that the terminal will launch with.

终端配置文件提供者

通过 UI 或命令启动时,为贡献的终端配置文件提供终端配置文件。

Methods

提供终端配置文件令牌CancellationToken ProviderResult <终端配置文件>

Provide the terminal profile.

ParameterDescription
token: CancellationToken

A cancellation token that indicates the result is no longer needed.

ReturnsDescription
ProviderResult<TerminalProfile>

The terminal profile.

终端分割位置选项

使用终端的父终端位置

Properties

父终端终端

The parent terminal to split this terminal beside. This works whether the parent terminal is in the panel or the editor area.

终端状态

表示Terminal的状态。

Properties

isInteractedWith :布尔值

Whether the Terminal has been interacted with. Interaction means that the terminal has sent data to the process which depending on the terminal's mode. By default input is sent when a key is pressed or when a command or extension sends text, but based on the terminal's mode it can also happen on:

  • a pointer click event
  • a pointer scroll event
  • a pointer move event
  • terminal focus in/out

For more information on events that can send data see "DEC Private Mode Set (DECSET)" on https://invisible-island.net/xterm/ctlseqs/ctlseqs.html

测试控制器

发现和执行测试的入口点。它包含用于填充编辑器 UI 的 TestController.items ,并与运行配置文件关联以允许执行测试。

Properties

id 字符串

The id of the controller passed in tests.createTestController. This must be globally unique.

项目测试项目集合

A collection of "top-level" TestItem instances, which can in turn have their own children to form the "test tree."

The extension controls when to add tests. For example, extensions should add tests for a file when workspace.onDidOpenTextDocument fires in order for decorations for tests within a file to be visible.

However, the editor may sometimes explicitly request children using the resolveHandler See the documentation on that method for more details.

标签字符串

Human-readable label for the test controller.

刷新处理程序:(令牌:CancellationToken)=>无效| 然后可<无效>

If this method is present, a refresh button will be present in the UI, and this method will be invoked when it's clicked. When called, the extension should scan the workspace for any new, changed, or removed tests.

It's recommended that extensions try to update tests in realtime, using a FileSystemWatcher for example, and use this method as a fallback.

ParameterDescription
token: CancellationToken
ReturnsDescription
void | Thenable<void>

A thenable that resolves when tests have been refreshed.

解决处理程序: (项目: TestItem ) => void | 然后可<无效>

A function provided by the extension that the editor may call to request children of a test item, if the TestItem.canResolveChildren is true. When called, the item should discover children and call TestController.createTestItem as children are discovered.

Generally the extension manages the lifecycle of test items, but under certain conditions the editor may request the children of a specific item to be loaded. For example, if the user requests to re-run tests after reloading the editor, the editor may need to call this method to resolve the previously-run tests.

The item in the explorer will automatically be marked as "busy" until the function returns or the returned thenable resolves.

ParameterDescription
item: TestItem

An unresolved test item for which children are being requested, or undefined to resolve the controller's initial items.

ReturnsDescription
void | Thenable<void>

Methods

createRunProfile (标签:字符串,种类: TestRunProfileKind , runHandler : ( 请求 : TestRunRequest , 令牌 : CancellationToken ) => void | Thenable < void >, isDefault ? :布尔值,标签? : TestTag ,支持连续运行? :布尔值) : TestRunProfile

Creates a profile used for running tests. Extensions must create at least one profile in order for tests to be run.

ParameterDescription
label: string

A human-readable label for this profile.

kind: TestRunProfileKind

Configures what kind of execution this profile manages.

runHandler: (request: TestRunRequest, token: CancellationToken) => void | Thenable<void>

Function called to start a test run.

isDefault?: boolean

Whether this is the default action for its kind.

tag?: TestTag

Profile test tag.

supportsContinuousRun?: boolean

Whether the profile supports continuous running.

ReturnsDescription
TestRunProfile

An instance of a TestRunProfile, which is automatically associated with this controller.

createTestItem id 字符串标签字符串uri Uri TestItem

Creates a new managed TestItem instance. It can be added into the TestItem.children of an existing item, or into the TestController.items.

ParameterDescription
id: string

Identifier for the TestItem. The test item's ID must be unique in the TestItemCollection it's added to.

label: string

Human-readable label of the test item.

uri?: Uri

URI this TestItem is associated with. May be a file or directory.

ReturnsDescription
TestItem

createTestRun 请求TestRunRequest名称字符串持久布尔值TestRun

Creates a TestRun. This should be called by the TestRunProfile when a request is made to execute tests, and may also be called if a test run is detected externally. Once created, tests that are included in the request will be moved into the queued state.

All runs created using the same request instance will be grouped together. This is useful if, for example, a single suite of tests is run on multiple platforms.

ParameterDescription
request: TestRunRequest

Test run request. Only tests inside the include may be modified, and tests in its exclude are ignored.

name?: string

The human-readable name of the run. This can be used to disambiguate multiple sets of results in a test run. It is useful if tests are run across multiple platforms, for example.

persist?: boolean

Whether the results created by the run should be persisted in the editor. This may be false if the results are coming from a file already saved externally, such as a coverage information file.

ReturnsDescription
TestRun

An instance of the TestRun. It will be considered "running" from the moment this method is invoked until TestRun.end is called.

处置无效

Unregisters the test controller, disposing of its associated tests and unpersisted results.

ParameterDescription
ReturnsDescription
void

invalidateTestResults (项目? : TestItem | 只读TestItem [] ) : void

Marks an item's results as being outdated. This is commonly called when code or configuration changes and previous results should no longer be considered relevant. The same logic used to mark results as outdated may be used to drive continuous test runs.

If an item is passed to this method, test results for the item and all of its children will be marked as outdated. If no item is passed, then all test owned by the TestController will be marked as outdated.

Any test runs started before the moment this method is called, including runs which may still be ongoing, will be marked as outdated and deprioritized in the editor's UI.

ParameterDescription
items?: TestItem | readonly TestItem[]
ReturnsDescription
void

测试项目

“测试资源管理器”视图中显示的项目。

ATestItem可以代表测试套件或测试本身,因为它们都具有相似的功能。

Properties

布尔值

Controls whether the item is shown as "busy" in the Test Explorer view. This is useful for showing status while discovering children.

Defaults to false.

canResolveChildren :布尔值

Indicates whether this test item may have children discovered by resolving.

If true, this item is shown as expandable in the Test Explorer view and expanding the item will cause TestController.resolveHandler to be invoked with the item.

Default to false.

子项TestItemCollection

The children of this test item. For a test suite, this may contain the individual test cases or nested suites.

描述:字符串

Optional description that appears next to the label.

错误字符串| 降价字符串

Optional error encountered while loading the test.

Note that this is not a test result and should only be used to represent errors in test discovery, such as syntax errors.

id 字符串

Identifier for the TestItem. This is used to correlate test results and tests in the document with those in the workspace (test explorer). This cannot change for the lifetime of the TestItem, and must be unique among its parent's direct children.

标签字符串

Display name describing the test case.

父级测试项目

The parent of this item. It's set automatically, and is undefined top-level items in the TestController.items and for items that aren't yet included in another item's children.

范围范围

Location of the test item in its uri.

This is only meaningful if the uri points to a file.

排序文本:字符串

A string that should be used when comparing this item with other items. When falsy the label is used.

标签只读测试标签[]

Tags associated with this test item. May be used in combination with tags, or simply as an organizational feature.

乌里乌里

URI this TestItem is associated with. May be a file or directory.

测试项目集合

测试项的集合,位于TestItem.childrenTestController.items中。

Properties

尺寸数量

Gets the number of items in the collection.

Methods

添加项目测试项目无效

Adds the test item to the children. If an item with the same ID already exists, it'll be replaced.

ParameterDescription
item: TestItem

Item to add.

ReturnsDescription
void

删除itemId 字符串无效

Removes a single test item from the collection.

ParameterDescription
itemId: string

Item ID to delete.

ReturnsDescription
void

forEach 回调:(项目:TestItem,集合:TestItemCollection =>未知thisArg ?:任何无效

Iterate over each entry in this collection.

ParameterDescription
callback: (item: TestItem, collection: TestItemCollection) => unknown

Function to execute for each entry.

thisArg?: any

The this context used when invoking the handler function.

ReturnsDescription
void

获取项目ID 字符串测试项目

Efficiently gets a test item by ID, if it exists, in the children.

ParameterDescription
itemId: string

Item ID to get.

ReturnsDescription
TestItem

The found item or undefined if it does not exist.

替换项目只读TestItem [] 无效

Replaces the items stored by the collection.

ParameterDescription
items: readonly TestItem[]

Items to store.

ReturnsDescription
void

测试消息

与测试状态相关的消息。可以链接到特定的源范围——例如,对于断言失败很有用。

Static

diff 消息字符串| MarkdownString预期字符串实际字符串TestMessage

Creates a new TestMessage that will present as a diff in the editor.

ParameterDescription
message: string | MarkdownString

Message to display to the user.

expected: string

Expected output.

actual: string

Actual output.

ReturnsDescription
TestMessage

Constructors

新的 TestMessage (消息: string | MarkdownString ) : TestMessage

Creates a new TestMessage instance.

ParameterDescription
message: string | MarkdownString

The message to show to the user.

ReturnsDescription
TestMessage

Properties

实际输出:字符串

Actual test output. If given with expectedOutput , a diff view will be shown.

上下文值:字符串

Context value of the test item. This can be used to contribute message- specific actions to the test peek view. The value set here can be found in the testMessage property of the following menus contribution points:

  • testing/message/context - context menu for the message in the results tree
  • testing/message/content - a prominent button overlaying editor content where the message is displayed.

For example:

"contributes": {
  "menus": {
    "testing/message/content": [
      {
        "command": "extension.deleteCommentThread",
        "when": "testMessage == canApplyRichDiff"
      }
    ]
  }
}

The command will be called with an object containing:

预期输出:字符串

Expected test output. If given with actualOutput , a diff view will be shown.

地点:地点

Associated file location.

消息字符串| 降价字符串

Human-readable message text to display.

测试运行

TestRun 表示正在进行或已完成的测试运行,并提供报告运行中各个测试的状态的方法。

Properties

是否持久布尔值

Whether the test run will be persisted across reloads by the editor.

名称字符串

The human-readable name of the run. This can be used to disambiguate multiple sets of results in a test run. It is useful if tests are run across multiple platforms, for example.

令牌取消令牌

A cancellation token which will be triggered when the test run is canceled from the UI.

Methods

appendOutput 输出字符串位置位置测试TestItem void

Appends raw output from the test runner. On the user's request, the output will be displayed in a terminal. ANSI escape sequences, such as colors and text styles, are supported. New lines must be given as CRLF (\r\n) rather than LF (\n).

ParameterDescription
output: string

Output text to append.

location?: Location

Indicate that the output was logged at the given location.

test?: TestItem

Test item to associate the output with.

ReturnsDescription
void

结束无效

Signals the end of the test run. Any tests included in the run whose states have not been updated will have their state reset.

ParameterDescription
ReturnsDescription
void

入队测试TestItem 无效

Indicates a test is queued for later execution.

ParameterDescription
test: TestItem

Test item to update.

ReturnsDescription
void

错误测试TestItem消息TestMessage | readonly TestMessage [],持续时间数字void

Indicates a test has errored. You should pass one or more TestMessages to describe the failure. This differs from the "failed" state in that it indicates a test that couldn't be executed at all, from a compilation error for example.

ParameterDescription
test: TestItem

Test item to update.

message: TestMessage | readonly TestMessage[]

Messages associated with the test failure.

duration?: number

How long the test took to execute, in milliseconds.

ReturnsDescription
void

失败测试TestItem消息TestMessage | readonly TestMessage [],持续时间数字void

Indicates a test has failed. You should pass one or more TestMessages to describe the failure.

ParameterDescription
test: TestItem

Test item to update.

message: TestMessage | readonly TestMessage[]

Messages associated with the test failure.

duration?: number

How long the test took to execute, in milliseconds.

ReturnsDescription
void

通过测试TestItem持续时间数字无效

Indicates a test has passed.

ParameterDescription
test: TestItem

Test item to update.

duration?: number

How long the test took to execute, in milliseconds.

ReturnsDescription
void

跳过测试TestItem 无效

Indicates a test has been skipped.

ParameterDescription
test: TestItem

Test item to update.

ReturnsDescription
void

开始测试TestItem 无效

Indicates a test has started running.

ParameterDescription
test: TestItem

Test item to update.

ReturnsDescription
void

测试运行配置文件

TestRunProfile 描述了在TestController中执行测试的一种方法。

Properties

配置处理程序()=>无效

If this method is present, a configuration gear will be present in the UI, and this method will be invoked when it's clicked. When called, you can take other editor actions, such as showing a quick pick or opening a configuration file.

ParameterDescription
ReturnsDescription
void

isDefault :布尔值

Controls whether this profile is the default action that will be taken when its kind is actioned. For example, if the user clicks the generic "run all" button, then the default profile for TestRunProfileKind.Run will be executed, although the user can configure this.

种类TestRunProfileKind

Configures what kind of execution this profile controls. If there are no profiles for a kind, it will not be available in the UI.

标签字符串

Label shown to the user in the UI.

Note that the label has some significance if the user requests that tests be re-run in a certain way. For example, if tests were run normally and the user requests to re-run them in debug mode, the editor will attempt use a configuration with the same label of the Debug kind. If there is no such configuration, the default will be used.

runHandler : (请求: TestRunRequest , 令牌: CancellationToken ) => void | 然后可<无效>

Handler called to start a test run. When invoked, the function should call TestController.createTestRun at least once, and all test runs associated with the request should be created before the function returns or the returned promise is resolved.

If supportsContinuousRun is set, then TestRunRequest.continuous may be true. In this case, the profile should observe changes to source code and create new test runs by calling TestController.createTestRun, until the cancellation is requested on the token.

ParameterDescription
request: TestRunRequest

Request information for the test run.

token: CancellationToken
ReturnsDescription
void | Thenable<void>

支持连续运行布尔值

Whether this profile supports continuous running of requests. If so, then TestRunRequest.continuous may be set to true. Defaults to false.

标签测试标签

Associated tag for the profile. If this is set, only TestItem instances with the same tag will be eligible to execute in this profile.

Methods

处置无效

Deletes the run profile.

ParameterDescription
ReturnsDescription
void

测试运行配置文件类型

TestRunProfiles控制的执行类型。

Enumeration Members

运行1

The Run test profile kind.

调试2

The Debug test profile kind.

覆盖范围3

The Coverage test profile kind.

测试运行请求

TestRunRequest 是TestRun的前身,而 TestRun 又是通过将请求传递给TestController.createTestRun来创建的。TestRunRequest 包含有关应该运行哪些测试、不应运行哪些测试以及如何运行它们的信息(通过配置文件

一般来说, TestRunRequests 由编辑器创建并传递给 TestRunProfile.runHandler,但是您也可以创建测试请求并在runHandler.

Constructors

新的 TestRunRequest (包括? :只读TestItem [],排除? :只读TestItem [],配置文件? : TestRunProfile ,连续? :布尔值) : TestRunRequest

ParameterDescription
include?: readonly TestItem[]

Array of specific tests to run, or undefined to run all tests

exclude?: readonly TestItem[]

An array of tests to exclude from the run.

profile?: TestRunProfile

The run profile used for this request.

continuous?: boolean

Whether to run tests continuously as source changes.

ReturnsDescription
TestRunRequest

Properties

连续布尔值

Whether the profile should run continuously as source code changes. Only relevant for profiles that set TestRunProfile.supportsContinuousRun.

排除只读测试项[]

An array of tests the user has marked as excluded from the test included in this run; exclusions should apply after inclusions.

May be omitted if no exclusions were requested. Test controllers should not run excluded tests or any children of excluded tests.

包括只读测试项[]

A filter for specific tests to run. If given, the extension should run all of the included tests and all their children, excluding any tests that appear in TestRunRequest.exclude. If this property is undefined, then the extension should simply run all tests.

The process of running tests should resolve the children of any test items who have not yet been resolved.

配置文件测试运行配置文件

The profile used for this request. This will always be defined for requests issued from the editor UI, though extensions may programmatically create requests not associated with any profile.

测试标签

标签可以与TestItemsTestRunProfiles关联。带有标签的配置文件只能执行在其TestItem.tags数组中包含该标签的测试。

Constructors

新的测试标签id 字符串测试标签

Creates a new TestTag instance.

ParameterDescription
id: string

ID of the test tag.

ReturnsDescription
TestTag

Properties

id 字符串

ID of the test tag. TestTag instances with the same ID are considered to be identical.

文本文档

表示文本文档,例如源文件。文本文档包含 有关文件等底层资源的行和知识。

Properties

eol :行尾

The end of line sequence that is predominately used in this document.

文件名字符串

The file system path of the associated resource. Shorthand notation for TextDocument.uri.fsPath. Independent of the uri scheme.

已关闭布尔值

true if the document has been closed. A closed document isn't synchronized anymore and won't be re-used when the same resource is opened again.

是否脏布尔值

true if there are unpersisted changes.

isUntitled :布尔值

Is this document representing an untitled file which has never been saved yet. Note that this does not mean the document will be saved to disk, use Uri.scheme to figure out where a document will be saved, e.g. file, ftp etc.

语言 ID :字符串

The identifier of the language associated with this document.

行数数量

The number of lines in this document.

乌里乌里

The associated uri for this document.

Note that most documents use the file-scheme, which means they are files on disk. However, not all documents are saved on disk and therefore the scheme must be checked before trying to access the underlying file or siblings on disk.

See also

版本编号

The version number of this document (it will strictly increase after each change, including undo/redo).

Methods

getText 范围范围字符串

Get the text of this document. A substring can be retrieved by providing a range. The range will be adjusted.

ParameterDescription
range?: Range

Include only the text included by the range.

ReturnsDescription
string

The text inside the provided range or the entire text.

getWordRangeAtPosition (位置:位置,正则表达式? : RegExp ) :范围

Get a word-range at the given position. By default words are defined by common separators, like space, -, _, etc. In addition, per language custom [word definitions] can be defined. It is also possible to provide a custom regular expression.

  • Note 1: A custom regular expression must not match the empty string and if it does, it will be ignored.
  • Note 2: A custom regular expression will fail to match multiline strings and in the name of speed regular expressions should not match words with spaces. Use TextLine.text for more complex, non-wordy, scenarios.

The position will be adjusted.

ParameterDescription
position: Position

A position.

regex?: RegExp

Optional regular expression that describes what a word is.

ReturnsDescription
Range

A range spanning a word, or undefined.

lineAt (:数字) : TextLine

Returns a text line denoted by the line number. Note that the returned object is not live and changes to the document are not reflected.

ParameterDescription
line: number

A line number in [0, lineCount).

ReturnsDescription
TextLine

A line.

lineAt 位置位置文本行

Returns a text line denoted by the position. Note that the returned object is not live and changes to the document are not reflected.

The position will be adjusted.

See also TextDocument.lineAt

ParameterDescription
position: Position

A position.

ReturnsDescription
TextLine

A line.

offsetAt (位置:位置) :数字

Converts the position to a zero-based offset.

The position will be adjusted.

ParameterDescription
position: Position

A position.

ReturnsDescription
number

A valid zero-based offset.

positionAt 偏移量数字位置

Converts a zero-based offset to a position.

ParameterDescription
offset: number

A zero-based offset.

ReturnsDescription
Position

A valid Position.

save ( ) Thenable <boolean> _ _

Save the underlying file.

ParameterDescription
ReturnsDescription
Thenable<boolean>

A promise that will resolve to true when the file has been saved. If the save failed, will return false.

validatePosition (位置:位置) :位置

Ensure a position is contained in the range of this document.

ParameterDescription
position: Position

A position.

ReturnsDescription
Position

The given position or a new, adjusted position.

validateRange 范围范围范围

Ensure a range is completely contained in this document.

ParameterDescription
range: Range

A range.

ReturnsDescription
Range

The given range or a new, adjusted range.

文本文档更改事件

描述交易文档更改的事件。

Properties

contentChanges :只读TextDocumentContentChangeEvent []

An array of content changes.

文档文本文档

The affected document.

原因文本文档更改原因

The reason why the document was changed. Is undefined if the reason is not known.

文本文档更改原因

文本文档发生更改的原因。

Enumeration Members

撤消1

The text change is caused by an undo operation.

重做2

The text change is caused by an redo operation.

文本文档内容更改事件

描述文档文本中的单独更改的事件。

Properties

范围范围

The range that got replaced.

范围长度数字

The length of the range that got replaced.

范围偏移数字

The offset of the range that got replaced.

文本字符串

The new text for the range.

文本文档内容提供者

文本文档内容提供程序允许将只读文档添加到编辑器,例如来自 dll 的源代码或从 md 生成的 html。

内容提供商注册uri-scheme当要加载具有该方案的 uri 时,会询问内容提供者。

Events

onDidChange ? 事件<Uri> _ _

An event to signal a resource has changed.

Methods

ProvideTextDocumentContent ( uri : Uri , token : CancellationToken ) : ProviderResult <字符串>

Provide textual content for a given uri.

The editor will use the returned string-content to create a readonly document. Resources allocated should be released when the corresponding document has been closed.

Note: The contents of the created document might not be identical to the provided text due to end-of-line-sequence normalization.

ParameterDescription
uri: Uri

An uri which scheme matches the scheme this provider was registered for.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<string>

A string or a thenable that resolves to such.

文本文档保存原因

表示保存文本文档的原因。

Enumeration Members

手册1

Manually triggered, e.g. by the user pressing save, by starting debugging, or by an API call.

延迟后2

Automatic after a delay.

焦点输出3

When the editor lost focus.

文本文档显示选项

表示用于配置在编辑器中显示文档的行为的选项。

Properties

保留焦点布尔值

An optional flag that when true will stop the editor from taking focus.

预览布尔值

An optional flag that controls if an editor-tab shows as preview. Preview tabs will be replaced and reused until set to stay - either explicitly or through editing.

Note that the flag is ignored if a user has disabled preview editors in settings.

选择范围

An optional selection to apply for the document in the editor.

视图列:查看栏目

An optional view column in which the editor should be shown. The default is the active. Columns that do not exist will be created as needed up to the maximum of ViewColumn.Nine. Use ViewColumn.Beside to open the editor to the side of the currently active one.

文本文档保存事件

保存文档时触发的事件。

要在保存文档之前对其进行修改,请使用解析 为文本编辑数组的 thenable 调用waitUntil函数。

Properties

文档文本文档

The document that will be saved.

原因TextDocumentSaveReason

The reason why save was triggered.

Methods

waitUntil ( thenable : Thenable <readonly TextEdit []> ) : void

Allows to pause the event loop and to apply pre-save-edits. Edits of subsequent calls to this function will be applied in order. The edits will be ignored if concurrent modifications of the document happened.

Note: This function can only be called during event dispatch and not in an asynchronous manner:

workspace.onWillSaveTextDocument(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
ParameterDescription
thenable: Thenable<readonly TextEdit[]>

A thenable that resolves to pre-save-edits.

ReturnsDescription
void

waitUntil ( thenable : Thenable <任意> ) : void

Allows to pause the event loop until the provided thenable resolved.

Note: This function can only be called during event dispatch.

ParameterDescription
thenable: Thenable<any>

A thenable that delays saving.

ReturnsDescription
void

文本编辑

文本编辑表示应应用于文档的编辑。

Static

删除范围范围文本编辑

Utility to create a delete edit.

ParameterDescription
range: Range

A range.

ReturnsDescription
TextEdit

A new text edit object.

插入位置位置新文本字符串文本编辑

Utility to create an insert edit.

ParameterDescription
position: Position

A position, will become an empty range.

newText: string

A string.

ReturnsDescription
TextEdit

A new text edit object.

替换范围范围新文本字符串文本编辑

Utility to create a replace edit.

ParameterDescription
range: Range

A range.

newText: string

A string.

ReturnsDescription
TextEdit

A new text edit object.

setEndOfLine ( eol : EndOfLine ) :文本编辑

Utility to create an eol-edit.

ParameterDescription
eol: EndOfLine

An eol-sequence

ReturnsDescription
TextEdit

A new text edit object.

Constructors

new TextEdit 范围范围newText 字符串TextEdit

Create a new TextEdit.

ParameterDescription
range: Range

A range.

newText: string

A string.

ReturnsDescription
TextEdit

Properties

新埃欧尔:行尾

The eol-sequence used in the document.

Note that the eol-sequence will be applied to the whole document.

新文本字符串

The string this edit will insert.

范围范围

The range this edit applies to.

文本编辑器

表示附加到文档的编辑器。

Properties

文档文本文档

The document associated with this text editor. The document will be the same for the entire lifetime of this text editor.

选项文本编辑器选项

Text editor options.

选择选择

The primary selection on this text editor. Shorthand for TextEditor.selections[0].

选择只读选择[]

The selections in this text editor. The primary selection is always at index 0.

视图列视图列

The column in which this editor shows. Will be undefined in case this isn't one of the main editors, e.g. an embedded editor, or when the editor column is larger than three.

visibleRanges :只读范围[]

The current visible ranges in the editor (vertically). This accounts only for vertical scrolling, and not for horizontal scrolling.

Methods

编辑回调(editBuilder:TextEditorEdit)=> void选项 {undoStopAfter:布尔值,undoStopBefore:布尔值} Thenable <布尔值>

Perform an edit on the document associated with this text editor.

The given callback-function is invoked with an edit-builder which must be used to make edits. Note that the edit-builder is only valid while the callback executes.

ParameterDescription
callback: (editBuilder: TextEditorEdit) => void

A function which can create edits using an edit-builder.

options?: {undoStopAfter: boolean, undoStopBefore: boolean}

The undo/redo behavior around this edit. By default, undo stops will be created before and after this edit.

ReturnsDescription
Thenable<boolean>

A promise that resolves with a value indicating if the edits could be applied.

隐藏无效

Hide the text editor.

  • deprecated - Use the command workbench.action.closeActiveEditor instead. This method shows unexpected behavior and will be removed in the next major update.
ParameterDescription
ReturnsDescription
void

insertSnippet ( snippet : SnippetString , location ? : Range | Position | readonly Range [] | readonly Position [], options ? : {undoStopAfter: boolean , undoStopBefore: boolean } ) : Thenable < boolean >

Insert a snippet and put the editor into snippet mode. "Snippet mode" means the editor adds placeholders and additional cursors so that the user can complete or accept the snippet.

ParameterDescription
snippet: SnippetString

The snippet to insert in this edit.

location?: Range | Position | readonly Range[] | readonly Position[]

Position or range at which to insert the snippet, defaults to the current editor selection or selections.

options?: {undoStopAfter: boolean, undoStopBefore: boolean}

The undo/redo behavior around this edit. By default, undo stops will be created before and after this edit.

ReturnsDescription
Thenable<boolean>

A promise that resolves with a value indicating if the snippet could be inserted. Note that the promise does not signal that the snippet is completely filled-in or accepted.

RevealRange 范围RangeRevealType TextEditorRevealType 无效

Scroll as indicated by revealType in order to reveal the given range.

ParameterDescription
range: Range

A range.

revealType?: TextEditorRevealType

The scrolling strategy for revealing range.

ReturnsDescription
void

setDecorations 装饰类型TextEditorDecorationTyperangesOrOptions 只读范围[]|只读装饰选项[] 无效

Adds a set of decorations to the text editor. If a set of decorations already exists with the given decoration type, they will be replaced. If rangesOrOptions is empty, the existing decorations with the given decoration type will be removed.

See also createTextEditorDecorationType.

ParameterDescription
decorationType: TextEditorDecorationType

A decoration type.

rangesOrOptions: readonly Range[] | readonly DecorationOptions[]

Either ranges or more detailed options.

ReturnsDescription
void

显示ViewColumn 无效

Show the text editor.

ParameterDescription
column?: ViewColumn

The column in which to show this editor. This method shows unexpected behavior and will be removed in the next major update.

ReturnsDescription
void

文本编辑器光标样式

光标的渲染风格。

Enumeration Members

线路1

Render the cursor as a vertical thick line.

2

Render the cursor as a block filled.

下划线3

Render the cursor as a thick horizontal line.

线细4

Render the cursor as a vertical thin line.

块轮廓5

Render the cursor as a block outlined.

下划线细6

Render the cursor as a thin horizontal line.

文本编辑器装饰类型

表示文本编辑器中共享相同样式选项的一组装饰的句柄。

TextEditorDecorationType要获取使用 createTextEditorDecorationType的实例。

Properties

字符串

Internal representation of the handle.

Methods

处置无效

Remove this decoration type and all decorations on all text editors using it.

ParameterDescription
ReturnsDescription
void

文本编辑器编辑

将在文本编辑器上的一个事务中应用的复杂编辑。这保存了编辑的描述,并且如果编辑有效(即没有重叠区域、文档同时没有改变等),则它们可以应用于与文本编辑器关联文档

Methods

删除位置范围|选择void

Delete a certain text region.

ParameterDescription
location: Range | Selection

The range this operation should remove.

ReturnsDescription
void

插入位置位置字符串void

Insert text at a location. You can use \r\n or \n in value and they will be normalized to the current document. Although the equivalent text edit can be made with replace, insert will produce a different resulting selection (it will get moved).

ParameterDescription
location: Position

The position where the new text should be inserted.

value: string

The new text this operation should insert.

ReturnsDescription
void

替换位置范围|位置|选择字符串void

Replace a certain text region with a new value. You can use \r\n or \n in value and they will be normalized to the current document.

ParameterDescription
location: Range | Position | Selection

The range this operation should remove.

value: string

The new text this operation should insert after removing location.

ReturnsDescription
void

setEndOfLine 行尾行尾无效

Set the end of line sequence.

ParameterDescription
endOfLine: EndOfLine

The new end of line for the document.

ReturnsDescription
void

文本编辑器行号样式

行号的渲染风格。

Enumeration Members

关闭0

Do not render the line numbers.

1

Render the line numbers.

亲属2

Render the line numbers with values relative to the primary cursor location.

文本编辑器选项

Properties

光标样式:文本编辑器光标样式

The rendering style of the cursor in this editor. When getting a text editor's options, this property will always be present. When setting a text editor's options, this property is optional.

缩进大小:字符串| 数字

The number of spaces to insert when insertSpaces is true.

When getting a text editor's options, this property will always be a number (resolved). When setting a text editor's options, this property is optional and it can be a number or "tabSize".

插入空格:字符串| 布尔值

When pressing Tab insert n spaces. When getting a text editor's options, this property will always be a boolean (resolved). When setting a text editor's options, this property is optional and it can be a boolean or "auto".

行号? :文本编辑器行号样式

Render relative line numbers w.r.t. the current line number. When getting a text editor's options, this property will always be present. When setting a text editor's options, this property is optional.

选项卡大小:字符串| 数字

The size in spaces a tab takes. This is used for two purposes:

  • the rendering width of a tab character;
  • the number of spaces to insert when insertSpaces is true and indentSize is set to "tabSize".

When getting a text editor's options, this property will always be a number (resolved). When setting a text editor's options, this property is optional and it can be a number or "auto".

文本编辑器选项更改事件

Properties

选项文本编辑器选项

The new value for the text editor's options.

文本编辑器文本编辑器

The text editor for which the options have changed.

文本编辑器显示类型

代表文本编辑器中的不同显示策略。

Enumeration Members

默认值0

The range will be revealed with as little scrolling as possible.

中心: 1

The range will always be revealed in the center of the viewport.

InCenterIfOutsideViewport : 2

If the range is outside the viewport, it will be revealed in the center of the viewport. Otherwise, it will be revealed with as little scrolling as possible.

顶部3

The range will always be revealed at the top of the viewport.

文本编辑器选择更改事件

Properties

种类TextEditorSelectionChangeKind

The change kind which has triggered this event. Can be undefined.

选择只读选择[]

The new value for the text editor's selections.

文本编辑器文本编辑器

The text editor for which the selections have changed.

文本编辑器选择更改种类

表示可能导致选择更改事件的源。

Enumeration Members

键盘1个

Selection changed due to typing in the editor.

鼠标2

Selection change due to clicking in the editor.

命令3

Selection changed because a command ran.

文本编辑器视图列更改事件

Properties

文本编辑器文本编辑器

The text editor for which the view column has changed.

视图列视图列

The new value for the text editor's view column.

TextEditorVisibleRangesChangeEvent

Properties

文本编辑器文本编辑器

The text editor for which the visible ranges have changed.

visibleRanges :只读范围[]

The new value for the text editor's visible ranges.

文本行

表示一行文本,例如一行源代码。

TextLine 对象是不可变的。当文档更改时,先前检索的行将不代表最新状态。

Properties

第一个非空白字符索引数字

The offset of the first character which is not a whitespace character as defined by /\s/. Note that if a line is all whitespace the length of the line is returned.

isEmptyOrWhitespace :布尔值

Whether this line is whitespace only, shorthand for TextLine.firstNonWhitespaceCharacterIndex === TextLine.text.length.

行号编号

The zero-based line number.

范围范围

The range this line covers without the line separator characters.

范围包括换行符范围

The range this line covers with the line separator characters.

文本字符串

The text of this line without the line separator characters.

主题装饰附件渲染选项

代表文本装饰内容之前之后的主题特定呈现样式。

Properties

背景颜色:字符串| 主题颜色

CSS styling property that will be applied to the decoration attachment.

边界:字符串

CSS styling property that will be applied to the decoration attachment.

边框颜色:字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration.

颜色:字符串| 主题颜色

CSS styling property that will be applied to the decoration attachment.

内容图标路径:字符串| 乌里

An absolute path or an URI to an image to be rendered in the attachment. Either an icon or a text can be shown, but not both.

内容文本:字符串

Defines a text content that is shown in the attachment. Either an icon or a text can be shown, but not both.

字体样式:字符串

CSS styling property that will be applied to the decoration attachment.

字体粗细:字符串

CSS styling property that will be applied to the decoration attachment.

高度:字符串

CSS styling property that will be applied to the decoration attachment.

保证金:字符串

CSS styling property that will be applied to the decoration attachment.

文字装饰? :字符串

CSS styling property that will be applied to the decoration attachment.

宽度:字符串

CSS styling property that will be applied to the decoration attachment.

主题装饰实例渲染选项

表示装饰实例的主题渲染选项。

Properties

之后: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted after the decorated text.

之前: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted before the decorated text.

主题装饰渲染选项

代表文本编辑器装饰的主题特定渲染样式。

Properties

之后: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted after the decorated text.

背景颜色:字符串| 主题颜色

Background color of the decoration. Use rgba() and define transparent background colors to play well with other decorations. Alternatively a color from the color registry can be referenced.

之前: ThemableDecorationAttachmentRenderOptions

Defines the rendering options of the attachment that is inserted before the decorated text.

边界:字符串

CSS styling property that will be applied to text enclosed by a decoration.

边框颜色:字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边界半径:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框间距? :字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框样式:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

边框宽度:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'border' for setting one or more of the individual border properties.

颜色:字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration.

光标:字符串

CSS styling property that will be applied to text enclosed by a decoration.

字体样式:字符串

CSS styling property that will be applied to text enclosed by a decoration.

字体粗细:字符串

CSS styling property that will be applied to text enclosed by a decoration.

装订线图标路径:字符串| 乌里

An absolute path or an URI to an image to be rendered in the gutter.

装订线图标大小:字符串

Specifies the size of the gutter icon. Available values are 'auto', 'contain', 'cover' and any percentage value. For further information: https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspx

字母间距? :字符串

CSS styling property that will be applied to text enclosed by a decoration.

不透明度:字符串

CSS styling property that will be applied to text enclosed by a decoration.

大纲:字符串

CSS styling property that will be applied to text enclosed by a decoration.

轮廓颜色? :字符串| 主题颜色

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

轮廓样式? :字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

轮廓宽度:字符串

CSS styling property that will be applied to text enclosed by a decoration. Better use 'outline' for setting one or more of the individual outline properties.

概述标尺颜色:字符串| 主题颜色

The color of the decoration in the overview ruler. Use rgba() and define transparent colors to play well with other decorations.

文字装饰? :字符串

CSS styling property that will be applied to text enclosed by a decoration.

主题颜色

对https://vscode.github.net.cn/docs/getstarted/theme-color-reference中定义的工作台颜色之一的引用。使用主题颜色优于自定义颜色,因为它使主题作者和用户可以更改颜色。

Constructors

新主题颜色id 字符串主题颜色

Creates a reference to a theme color.

ParameterDescription
id: string

of the color. The available colors are listed in https://vscode.github.net.cn/docs/getstarted/theme-color-reference.

ReturnsDescription
ThemeColor

主题图标

对命名图标的引用。目前,支持FileFolderThemeIcon id 。使用主题图标优于自定义图标,因为它使产品主题作者可以更改图标。

请注意,主题图标也可以呈现在标签和描述内。支持主题图标的地方会说明这一点,并使用$(<name>)- 语法,例如quickPick.label = "Hello World $(globe)"

Static

文件主题图标

Reference to an icon representing a file. The icon is taken from the current file icon theme or a placeholder icon is used.

文件夹主题图标

Reference to an icon representing a folder. The icon is taken from the current file icon theme or a placeholder icon is used.

Constructors

new ThemeIcon ( id : string , color ? : ThemeColor ) : ThemeIcon

Creates a reference to a theme icon.

ParameterDescription
id: string

id of the icon. The available icons are listed in https://vscode.github.net.cn/api/references/icons-in-labels#icon-listing.

color?: ThemeColor

optional ThemeColor for the icon. The color is currently only used in TreeItem.

ReturnsDescription
ThemeIcon

Properties

颜色主题颜色

The optional ThemeColor of the icon. The color is currently only used in TreeItem.

id 字符串

The id of the icon. The available icons are listed in https://vscode.github.net.cn/api/references/icons-in-labels#icon-listing.

TreeCheckboxChangeEvent<T>

描述树项目的复选框状态更改的事件。

Properties

项目 ReadonlyArray<[ T , TreeItemCheckboxState ]>

The items that were checked or unchecked.

树数据提供者<T>

提供树数据的数据提供者

Events

onDidChangeTreeData :事件<无效| T | T []>

An optional event to signal that an element or root has changed. This will trigger the view to update the changed element/root and its children recursively (if shown). To signal that root has changed, do not pass any argument or pass undefined or null.

Methods

getChildren (元素? : T ) : ProviderResult < T [] >

Get the children of element or root if no element is passed.

ParameterDescription
element?: T

The element from which the provider gets children. Can be undefined.

ReturnsDescription
ProviderResult<T[]>

Children of element or root if no element is passed.

getParent (元素: T ) : ProviderResult <T> _ _

Optional method to return the parent of element. Return null or undefined if element is a child of root.

NOTE: This method should be implemented in order to access reveal API.

ParameterDescription
element: T

The element for which the parent has to be returned.

ReturnsDescription
ProviderResult<T>

Parent of element.

getTreeItem (元素: T ) : TreeItem | 然后可<TreeItem> _

Get TreeItem representation of the element

ParameterDescription
element: T

The element for which TreeItem representation is asked for.

ReturnsDescription
TreeItem | Thenable<TreeItem>

TreeItem representation of the element.

resolveTreeItem 项目TreeItem元素T令牌CancellationToken ProviderResult <TreeItem> _ _

Called on hover to resolve the TreeItem property if it is undefined. Called on tree item click/open to resolve the TreeItem property if it is undefined. Only properties that were undefined can be resolved in resolveTreeItem. Functionality may be expanded later to include being called to resolve other missing properties on selection and/or on open.

Will only ever be called once per TreeItem.

onDidChangeTreeData should not be triggered from within resolveTreeItem.

Note that this function is called when tree items are already showing in the UI. Because of that, no property that changes the presentation (label, description, etc.) can be changed.

ParameterDescription
item: TreeItem

Undefined properties of item should be set then item should be returned.

element: T

The object associated with the TreeItem.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TreeItem>

The resolved tree item 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.

TreeDragAndDropController<T>

提供对拖放的支持TreeView

Properties

DragMimeTypes :只读字符串[]

The mime types that the handleDrag method of this TreeDragAndDropController may add to the tree data transfer. This could be well-defined, existing, mime types, and also mime types defined by the extension.

The recommended mime type of the tree (application/vnd.code.tree.<treeidlowercase>) will be automatically added.

dropMimeTypes :只读字符串[]

The mime types that the handleDrop method of this DragAndDropController supports. This could be well-defined, existing, mime types, and also mime types defined by the extension.

To support drops from trees, you will need to add the mime type of that tree. This includes drops from within the same tree. The mime type of a tree is recommended to be of the format application/vnd.code.tree.<treeidlowercase>.

Use the special files mime type to support all types of dropped files files, regardless of the file's actual mime type.

To learn the mime type of a dragged item:

  1. Set up your DragAndDropController
  2. Use the Developer: Set Log Level... command to set the level to "Debug"
  3. Open the developer tools and drag the item with unknown mime type over your tree. The mime types will be logged to the developer console

Note that mime types that cannot be sent to the extension will be omitted.

Methods

handleDrag 只读T [],dataTransfer DataTransfer令牌CancellationToken void | 然后可<无效>

When the user starts dragging items from this DragAndDropController, handleDrag will be called. Extensions can use handleDrag to add their DataTransferItem items to the drag and drop.

When the items are dropped on another tree item in the same tree, your DataTransferItem objects will be preserved. Use the recommended mime type for the tree (application/vnd.code.tree.<treeidlowercase>) to add tree objects in a data transfer. See the documentation for DataTransferItem for how best to take advantage of this.

To add a data transfer item that can be dragged into the editor, use the application specific mime type "text/uri-list". The data for "text/uri-list" should be a string with toString()ed Uris separated by \r\n. To specify a cursor position in the file, set the Uri's fragment to L3,5, where 3 is the line number and 5 is the column number.

ParameterDescription
source: readonly T[]

The source items for the drag and drop operation.

dataTransfer: DataTransfer

The data transfer associated with this drag.

token: CancellationToken

A cancellation token indicating that drag has been cancelled.

ReturnsDescription
void | Thenable<void>

handleDrop 目标T数据传输数据传输令牌CancellationToken 无效| 然后可<无效>

Called when a drag and drop action results in a drop on the tree that this DragAndDropController belongs to.

Extensions should fire onDidChangeTreeData for any elements that need to be refreshed.

ParameterDescription
target: T

The target tree element that the drop is occurring on. When undefined, the target is the root.

dataTransfer: DataTransfer

The data transfer items of the source of the drag.

token: CancellationToken

A cancellation token indicating that the drop has been cancelled.

ReturnsDescription
void | Thenable<void>

树项

树项是树的 UI 元素。树项目由数据提供者创建。

Constructors

新的TreeItem 标签字符串| TreeItemLabelcollapsibleState TreeItemCollapsibleState TreeItem

ParameterDescription
label: string | TreeItemLabel

A human-readable string describing this item

collapsibleState?: TreeItemCollapsibleState
ReturnsDescription
TreeItem

新的TreeItem resourceUri UricollapsibleState TreeItemCollapsibleState TreeItem

ParameterDescription
resourceUri: Uri

The Uri of the resource representing this item.

collapsibleState?: TreeItemCollapsibleState
ReturnsDescription
TreeItem

Properties

可访问性信息? 辅助功能信息

Accessibility information used when screen reader interacts with this tree item. Generally, a TreeItem has no need to set the role of the accessibilityInformation; however, there are cases where a TreeItem is not displayed in a tree-like way where setting the role may make sense.

复选框状态: TreeItemCheckboxState | {accessibilityInformation:AccessibilityInformation,状态:TreeItemCheckboxState,工具提示:字符串}

TreeItemCheckboxState of the tree item. onDidChangeTreeData should be fired when checkboxState changes.

可折叠状态: TreeItemCollapsibleState

TreeItemCollapsibleState of the tree item.

命令命令

The Command that should be executed when the tree item is selected.

Please use vscode.open or vscode.diff as command IDs when the tree item is opening something in the editor. Using these commands ensures that the resulting editor will appear consistent with how other built-in trees open editors.

上下文值:字符串

Context value of the tree item. This can be used to contribute item specific actions in the tree. For example, a tree item is given a context value as folder. When contributing actions to view/item/context using menus extension point, you can specify context value for key viewItem in when expression like viewItem == folder.

"contributes": {
  "menus": {
    "view/item/context": [
      {
        "command": "extension.deleteFolder",
        "when": "viewItem == folder"
      }
    ]
  }
}

This will show action extension.deleteFolder only for items with contextValue is folder.

描述:字符串| 布尔值

A human-readable string which is rendered less prominent. When true, it is derived from resourceUri and when falsy, it is not shown.

图标路径:字符串| 乌里| 主题图标| {暗:字符串| Uri,光:字符串| 乌里}

The icon path or ThemeIcon for the tree item. When falsy, Folder Theme Icon is assigned, if item is collapsible otherwise File Theme Icon. When a file or folder ThemeIcon is specified, icon is derived from the current file icon theme for the specified theme icon using resourceUri (if provided).

身份证号:字符串

Optional id for the tree item that has to be unique across tree. The id is used to preserve the selection and expansion state of the tree item.

If not provided, an id is generated using the tree item's label. Note that when labels change, ids will change and that selection and expansion state cannot be kept stable anymore.

标签:字符串| 树项标签

A human-readable string describing this item. When falsy, it is derived from resourceUri.

资源Uri :乌里

The Uri of the resource representing this item.

Will be used to derive the label, when it is not provided. Will be used to derive the icon from current file icon theme, when iconPath has ThemeIcon value.

工具提示:字符串| 降价字符串

The tooltip text when you hover over this item.

树项复选框状态

树项的复选框状态

Enumeration Members

未选中0

Determines an item is unchecked

已检查1

Determines an item is checked

树项可折叠状态

树项的可折叠状态

Enumeration Members

: 0

Determines an item can be neither collapsed nor expanded. Implies it has no children.

倒塌1

Determines an item is collapsed

扩展2

Determines an item is expanded

树项标签

Properties

亮点:数组 <[数字,数字]>

Ranges in the label to highlight. A range is defined as a tuple of two number where the first is the inclusive start index and the second the exclusive end index

标签字符串

A human-readable string describing the Tree item.

树视图<T>

代表树视图

Events

onDidChangeCheckboxState :事件< TreeCheckboxChangeEvent < T >>

An event to signal that an element or root has either been checked or unchecked.

onDidChangeSelection :事件< TreeViewSelectionChangeEvent < T >>

Event that is fired when the selection has changed

onDidChangeVisibility :事件<TreeViewVisibilityChangeEvent> _ _

Event that is fired when visibility has changed

onDidCollapseElement :事件< TreeViewExpansionEvent < T >>

Event that is fired when an element is collapsed

onDidExpandElement :事件< TreeViewExpansionEvent <T> > _

Event that is fired when an element is expanded

Properties

徽章:查看徽章

The badge to display for this TreeView. To remove the badge, set to undefined.

描述:字符串

An optional human-readable description which is rendered less prominently in the title of the view. Setting the title description to null, undefined, or empty string will remove the description from the view.

留言:字符串

An optional human-readable message that will be rendered in the view. Setting the message to null, undefined, or empty string will remove the message from the view.

选择只读T []

Currently selected elements.

标题:字符串

The tree view title is initially taken from the extension package.json Changes to the title property will be properly reflected in the UI in the title of the view.

可见布尔值

true if the tree view is visible otherwise false.

Methods

处置任何

Dispose this object.

ParameterDescription
ReturnsDescription
any

Reveal (元素: T ,选项? : {expand: number | boolean , focus: boolean , select: boolean } ) : Thenable < void >

Reveals the given element in the tree view. If the tree view is not visible then the tree view is shown and element is revealed.

By default revealed element is selected. In order to not to select, set the option select to false. In order to focus, set the option focus to true. In order to expand the revealed element, set the option expand to true. To expand recursively set expand to the number of levels to expand.

ParameterDescription
element: T
options?: {expand: number | boolean, focus: boolean, select: boolean}
ReturnsDescription
Thenable<void>

TreeViewExpansionEvent<T>

当TreeView中的元素展开或折叠时触发的事件

Properties

元素T

Element that is expanded or collapsed.

树视图选项<T>

用于创建TreeView 的选项

Properties

可以选择很多吗布尔值

Whether the tree supports multi-select. When the tree supports multi-select and a command is executed from the tree, the first argument to the command is the tree item that the command was executed on and the second argument is an array containing all selected tree items.

拖放控制器: TreeDragAndDropController <T> _ _

An optional interface to implement drag and drop in the tree view.

手动管理CheckboxState 布尔值

By default, when the children of a tree item have already been fetched, child checkboxes are automatically managed based on the checked state of the parent tree item. If the tree item is collapsed by default (meaning that the children haven't yet been fetched) then child checkboxes will not be updated. To override this behavior and manage child and parent checkbox state in the extension, set this to true.

Examples where TreeViewOptions.manageCheckboxStateManually is false, the default behavior:

  1. A tree item is checked, then its children are fetched. The children will be checked.

  2. A tree item's parent is checked. The tree item and all of it's siblings will be checked.

  • Parent
    • Child 1
    • Child 2 When the user checks Parent, the tree will look like this:
  • Parent
    • Child 1
    • Child 2
  1. A tree item and all of it's siblings are checked. The parent will be checked.
  • Parent
    • Child 1
    • Child 2 When the user checks Child 1 and Child 2, the tree will look like this:
  • Parent
    • Child 1
    • Child 2
  1. A tree item is unchecked. The parent will be unchecked.
  • Parent
    • Child 1
    • Child 2 When the user unchecks Child 1, the tree will look like this:
  • Parent
    • Child 1
    • Child 2

显示折叠全部布尔值

Whether to show collapse all action or not.

树数据提供者数据提供者<T>

A data provider that provides tree data.

TreeViewSelectionChangeEvent<T>

当树视图的选择发生更改时触发的事件

Properties

选择只读T []

Selected elements.

TreeViewVisibilityChange事件

当树视图的可见性发生变化时触发的事件

Properties

可见布尔值

true if the tree view is visible otherwise false.

类型定义提供者

类型定义提供程序定义扩展和转到类型定义功能之间的契约。

Methods

ProvideTypeDefinition (文档: TextDocument ,位置: Position ,令牌: CancellationToken ) : ProviderResult <定义|定义 位置链接[]>

Provide the type definition of the symbol at the given position and document.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<Definition | LocationLink[]>

A definition or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

类型层次结构项目

表示类型层次结构的一项,例如类或接口。

Constructors

new TypeHierarchyItem 种类SymbolKind名称字符串详细信息字符串uri Uri范围范围selectionRange 范围TypeHierarchyItem

Creates a new type hierarchy item.

ParameterDescription
kind: SymbolKind

The kind of the item.

name: string

The name of the item.

detail: string

The details of the item.

uri: Uri

The Uri of the item.

range: Range

The whole range of the item.

selectionRange: Range

The selection range of the item.

ReturnsDescription
TypeHierarchyItem

Properties

详细:字符串

More detail for this item, e.g. the signature of a function.

种类符号种类

The kind of this item.

名称字符串

The name of this item.

范围范围

The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.

选择范围范围

The range that should be selected and revealed when this symbol is being picked, e.g. the name of a class. Must be contained by the range-property.

标签:只读已弃用[]

Tags for this item.

乌里乌里

The resource identifier of this item.

类型层次结构提供者

类型层次结构提供程序接口描述了扩展和类型层次结构功能之间的契约。

Methods

准备TypeHierarchy 文档TextDocument位置位置令牌CancellationToken ProviderResult < TypeHierarchyItem | 类型HierarchyItem []>

Bootstraps type hierarchy by returning the item that is denoted by the given document and position. This item will be used as entry into the type graph. Providers should return undefined or null when there is no item at the given location.

ParameterDescription
document: TextDocument

The document in which the command was invoked.

position: Position

The position at which the command was invoked.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TypeHierarchyItem | TypeHierarchyItem[]>

One or multiple type hierarchy items or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

提供TypeHierarchySubtypes 项目TypeHierarchyItem令牌CancellationToken ProviderResult < TypeHierarchyItem []>

Provide all subtypes for an item, e.g all types which are derived/inherited from the given item. In graph terms this describes directed and annotated edges inside the type graph, e.g the given item is the starting node and the result is the nodes that can be reached.

ParameterDescription
item: TypeHierarchyItem

The hierarchy item for which subtypes should be computed.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TypeHierarchyItem[]>

A set of direct subtypes or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

提供TypeHierarchySupertypes 项目TypeHierarchyItem令牌CancellationToken ProviderResult < TypeHierarchyItem []>

Provide all supertypes for an item, e.g all types from which a type is derived/inherited. In graph terms this describes directed and annotated edges inside the type graph, e.g the given item is the starting node and the result is the nodes that can be reached.

ParameterDescription
item: TypeHierarchyItem

The hierarchy item for which super types should be computed.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<TypeHierarchyItem[]>

A set of direct supertypes or a thenable that resolves to such. The lack of a result can be signaled by returning undefined or null.

UI种类

可以使用扩展的可能的 UI 类型。

Enumeration Members

台式机1

Extensions are accessed from a desktop application.

2

Extensions are accessed from a web browser.

乌里

表示磁盘上的文件或其他资源(例如无标题资源)的通用资源标识符。

Static

文件路径字符串Uri

Create an URI from a file system path. The scheme will be file.

The difference between Uri.parse and Uri.file is that the latter treats the argument as path, not as stringified-uri. E.g. Uri.file(path) is not the same as Uri.parse('file://' + path) because the path might contain characters that are interpreted (# and ?). See the following sample:

const good = URI.file('/coding/c#/project1');
good.scheme === 'file';
good.path === '/coding/c#/project1';
good.fragment === '';

const bad = URI.parse('file://' + '/coding/c#/project1');
bad.scheme === 'file';
bad.path === '/coding/c'; // path is now broken
bad.fragment === '/project1';
ParameterDescription
path: string

A file system or UNC path.

ReturnsDescription
Uri

A new Uri instance.

from (组件: {权限:字符串, 片段:字符串,路径:字符串,查询:字符串, 方案:字符串} ) : Uri

Create an URI from its component parts

See also Uri.toString

ParameterDescription
components: {authority: string, fragment: string, path: string, query: string, scheme: string}

The component parts of an Uri.

ReturnsDescription
Uri

A new Uri instance.

joinPath (基础: Uri , ... pathSegments : string [] ) : Uri

Create a new uri which path is the result of joining the path of the base uri with the provided path segments.

  • Note 1: joinPath only affects the path component and all other components (scheme, authority, query, and fragment) are left as they are.
  • Note 2: The base uri must have a path; an error is thrown otherwise.

The path segments are normalized in the following ways:

  • sequences of path separators (/ or \) are replaced with a single separator
  • for file-uris on windows, the backslash-character (``) is considered a path-separator
  • the ..-segment denotes the parent segment, the . denotes the current segment
  • paths have a root which always remains, for instance on windows drive-letters are roots so that is true: joinPath(Uri.file('file:///c:/root'), '../../other').fsPath === 'c:/other'
ParameterDescription
base: Uri

An uri. Must have a path.

...pathSegments: string[]

One more more path fragments

ReturnsDescription
Uri

A new uri which path is joined with the given fragments

解析字符串严格布尔值Uri

Create an URI from a string, e.g. http://www.example.com/some/path, file:///usr/home, or scheme:with/path.

Note that for a while uris without a scheme were accepted. That is not correct as all uris should have a scheme. To avoid breakage of existing code the optional strict-argument has been added. We strongly advise to use it, e.g. Uri.parse('my:uri', true)

See also Uri.toString

ParameterDescription
value: string

The string value of an Uri.

strict?: boolean

Throw an error when value is empty or when no scheme can be parsed.

ReturnsDescription
Uri

A new Uri instance.

Constructors

新的Uri 方案字符串权限字符串路径字符串查询字符串片段字符串Uri

Use the file and parse factory functions to create new Uri objects.

ParameterDescription
scheme: string
authority: string
path: string
query: string
fragment: string
ReturnsDescription
Uri

Properties

权限字符串

Authority is the www.example.com part of http://www.example.com/some/path?query#fragment. The part between the first double slashes and the next slash.

片段字符串

Fragment is the fragment part of http://www.example.com/some/path?query#fragment.

fsPath 字符串

The string representing the corresponding file system path of this Uri.

Will handle UNC paths and normalize windows drive letters to lower-case. Also uses the platform specific path separator.

  • Will not validate the path for invalid characters and semantics.
  • Will not look at the scheme of this Uri.
  • The resulting string shall not be used for display purposes but for disk operations, like readFile et al.

The difference to the path-property is the use of the platform specific path separator and the handling of UNC paths. The sample below outlines the difference:

const u = URI.parse('file://server/c$/folder/file.txt');
u.authority === 'server';
u.path === '/shares/c$/file.txt';
u.fsPath === '\\serverc$\folder\file.txt';

路径字符串

Path is the /some/path part of http://www.example.com/some/path?query#fragment.

查询字符串

Query is the query part of http://www.example.com/some/path?query#fragment.

方案字符串

Scheme is the http part of http://www.example.com/some/path?query#fragment. The part before the first colon.

Methods

toJSON ( ) 任何

Returns a JSON representation of this Uri.

ParameterDescription
ReturnsDescription
any

An object.

toString skipEncoding ?:布尔字符串

Returns a string representation of this Uri. The representation and normalization of a URI depends on the scheme.

  • The resulting string can be safely used with Uri.parse.
  • The resulting string shall not be used for display purposes.

Note that the implementation will encode aggressive which often leads to unexpected, but not incorrect, results. For instance, colons are encoded to %3A which might be unexpected in file-uri. Also & and = will be encoded which might be unexpected for http-uris. For stability reasons this cannot be changed anymore. If you suffer from too aggressive encoding you should use the skipEncoding-argument: uri.toString(true).

ParameterDescription
skipEncoding?: boolean

Do not percentage-encode the result, defaults to false. Note that the # and ? characters occurring in the path will always be encoded.

ReturnsDescription
string

A string representation of this Uri.

with (更改: {权限:字符串, 片段:字符串, 路径:字符串,查询:字符串, 方案:字符串} ) : Uri

Derive a new Uri from this Uri.

let file = Uri.parse('before:some/file/path');
let other = file.with({ scheme: 'after' });
assert.ok(other.toString() === 'after:some/file/path');
ParameterDescription
change: {authority: string, fragment: string, path: string, query: string, scheme: string}

An object that describes a change to this Uri. To unset components use null or the empty string.

ReturnsDescription
Uri

A new Uri that reflects the given change. Will return this Uri if the change is not changing anything.

UriHandler

uri 处理程序负责处理系统范围的uris

另请参见 window.registerUriHandler

Methods

handleUri ( uri : Uri ) : ProviderResult <void> _ _

Handle the provided system-wide Uri.

See also window.registerUriHandler.

ParameterDescription
uri: Uri
ReturnsDescription
ProviderResult<void>

查看徽章

代表视图价值的徽章

Properties

工具提示字符串

A label to present in tooltip for the badge.

数字

The value to present in the badge.

视图列

表示编辑器在窗口中的位置。编辑器可以排列在网格中,每一列通过按编辑器出现的顺序对编辑器进行计数来表示该网格中的一个编辑器位置。

Enumeration Members

旁边-2

A symbolic editor column representing the column to the side of the active one. This value can be used when opening editors, but the resolved viewColumn-value of editors will always be One, Two, Three,... or undefined but never Beside.

活跃-1

A symbolic editor column representing the currently active column. This value can be used when opening editors, but the resolved viewColumn-value of editors will always be One, Two, Three,... or undefined but never Active.

1

The first editor column.

2

The second editor column.

3

The third editor column.

4

The fourth editor column.

5

The fifth editor column.

6

The sixth editor column.

7

The seventh editor column.

8

The eighth editor column.

9

The ninth editor column.

网页视图

显示 html 内容,类似于 iframe。

Events

onDidReceiveMessage 事件<任意>

Fired when the webview content posts a message.

Webview content can post strings or json serializable objects back to an extension. They cannot post Blob, File, ImageData and other DOM specific objects since the extension that receives the message does not run in a browser environment.

Properties

csp源字符串

Content security policy source for webview resources.

This is the origin that should be used in a content security policy rule:

`img-src https: ${webview.cspSource} ...;`;

html 字符串

HTML contents of the webview.

This should be a complete, valid html document. Changing this property causes the webview to be reloaded.

Webviews are sandboxed from normal extension process, so all communication with the webview must use message passing. To send a message from the extension to the webview, use postMessage. To send message from the webview back to an extension, use the acquireVsCodeApi function inside the webview to get a handle to the editor's api and then call .postMessage():

<script>
    const vscode = acquireVsCodeApi(); // acquireVsCodeApi can only be invoked once
    vscode.postMessage({ message: 'hello!' });
</script>

To load a resources from the workspace inside a webview, use the asWebviewUri method and ensure the resource's directory is listed in WebviewOptions.localResourceRoots.

Keep in mind that even though webviews are sandboxed, they still allow running scripts and loading arbitrary content, so extensions must follow all standard web security best practices when working with webviews. This includes properly sanitizing all untrusted input (including content from the workspace) and setting a content security policy.

选项Webview选项

Content settings for the webview.

Methods

asWebviewUri 本地资源Uri Uri

Convert a uri for the local file system to one that can be used inside webviews.

Webviews cannot directly load resources from the workspace or local file system using file: uris. The asWebviewUri function takes a local file: uri and converts it into a uri that can be used inside of a webview to load the same resource:

webview.html = `<img src="${webview.asWebviewUri(
  vscode.Uri.file('/Users/codey/workspace/cat.gif')
)}">`;
ParameterDescription
localResource: Uri
ReturnsDescription
Uri

postMessage 消息任意Thenable <boolean> _ _

Post a message to the webview content.

Messages are only delivered if the webview is live (either visible or in the background with retainContextWhenHidden).

ParameterDescription
message: any

Body of the message. This must be a string or other json serializable object.

For older versions of vscode, if an ArrayBuffer is included in message, it will not be serialized properly and will not be received by the webview. Similarly any TypedArrays, such as a Uint8Array, will be very inefficiently serialized and will also not be recreated as a typed array inside the webview.

However if your extension targets vscode 1.57+ in the engines field of its package.json, any ArrayBuffer values that appear in message will be more efficiently transferred to the webview and will also be correctly recreated inside of the webview.

ReturnsDescription
Thenable<boolean>

A promise that resolves when the message is posted to a webview or when it is dropped because the message was not deliverable.

Returns true if the message was posted to the webview. Messages can only be posted to live webviews (i.e. either visible webviews or hidden webviews that set retainContextWhenHidden).

A response of true does not mean that the message was actually received by the webview. For example, no message listeners may be have been hooked up inside the webview or the webview may have been destroyed after the message was posted but before it was received.

If you want confirm that a message as actually received, you can try having your webview posting a confirmation message back to your extension.

网页视图选项

Web 视图的内容设置。

Properties

启用CommandUris :布尔值| 只读字符串[]

Controls whether command uris are enabled in webview content or not.

Defaults to false (command uris are disabled).

If you pass in an array, only the commands in the array are allowed.

启用表单布尔值

Controls whether forms are enabled in the webview content or not.

Defaults to true if scripts are enabled. Otherwise defaults to false. Explicitly setting this property to either true or false overrides the default.

启用脚本布尔值

Controls whether scripts are enabled in the webview content or not.

Defaults to false (scripts-disabled).

本地资源根:只读Uri []

Root paths from which the webview can load local (filesystem) resources using uris from asWebviewUri

Default to the root folders of the current workspace plus the extension's install directory.

Pass in an empty array to disallow access to any local resources.

端口映射:只读WebviewPortMapping []

Mappings of localhost ports used inside the webview.

Port mapping allow webviews to transparently define how localhost ports are resolved. This can be used to allow using a static localhost port inside the webview that is resolved to random port that a service is running on.

If a webview accesses localhost content, we recommend that you specify port mappings even if the webviewPort and extensionHostPort ports are the same.

Note that port mappings only work for http or https urls. Websocket urls (e.g. ws://localhost:3000) cannot be mapped to another port.

网页视图面板

包含网络视图的面板。

Events

onDidChangeViewState 事件<WebviewPanelOnDidChangeViewStateEvent> _ _

Fired when the panel's view state changes.

onDidDispose :事件<void> _ _

Fired when the panel is disposed.

This may be because the user closed the panel or because .dispose() was called on it.

Trying to use the panel after it has been disposed throws an exception.

Properties

活动布尔值

Whether the panel is active (focused by the user).

图标路径乌里| {暗:Uri,亮:Uri }

Icon for the panel shown in UI.

选项WebviewPanelOptions

Content settings for the webview panel.

标题字符串

Title of the panel shown in UI.

视图列视图列

Editor position of the panel. This property is only set if the webview is in one of the editor view columns.

视图类型字符串

Identifies the type of the webview panel, such as 'markdown.preview'.

可见布尔值

Whether the panel is visible.

网页视图网页视图

Webview belonging to the panel.

Methods

处置任何

Dispose of the webview panel.

This closes the panel if it showing and disposes of the resources owned by the webview. Webview panels are also disposed when the user closes the webview panel. Both cases fire the onDispose event.

ParameterDescription
ReturnsDescription
any

显示viewColumn ViewColumn保留焦点布尔值无效

Show the webview panel in a given column.

A webview panel may only show in a single column at a time. If it is already showing, this method moves it to a new column.

ParameterDescription
viewColumn?: ViewColumn

View column to show the panel in. Shows in the current viewColumn if undefined.

preserveFocus?: boolean

When true, the webview will not take focus.

ReturnsDescription
void

WebviewPanelOnDidChangeViewStateEvent

当 Web 视图面板的视图状态更改时触发事件。

Properties

网页视图面板网页视图面板

Webview panel whose view state changed.

WebviewPanel选项

Web 视图面板的内容设置。

Properties

启用FindWidget吗?布尔值

Controls if the find widget is enabled in the panel.

Defaults to false.

保留上下文何时隐藏布尔值

Controls if the webview panel's content (iframe) is kept around even when the panel is no longer visible.

Normally the webview panel's html context is created when the panel becomes visible and destroyed when it is hidden. Extensions that have complex state or UI can set the retainContextWhenHidden to make the editor keep the webview context around, even when the webview moves to a background tab. When a webview using retainContextWhenHidden becomes hidden, its scripts and other dynamic content are suspended. When the panel becomes visible again, the context is automatically restored in the exact same state it was in originally. You cannot send messages to a hidden webview, even with retainContextWhenHidden enabled.

retainContextWhenHidden has a high memory overhead and should only be used if your panel's context cannot be quickly saved and restored.

WebviewPanelSerializer<T>

恢复 vscode 关闭时已保留的 webview 面板。

webview持久化有两种类型:

  • 会话内的持久性。
  • 跨会话持久性(跨编辑器重新启动)。

WebviewPanelSerializer仅第二种情况需要A :跨会话持久保存 Web 视图。

会话中的持久性允许 Web 视图在隐藏时保存其状态,并在再次可见时从该状态恢复其内容。它完全由 webview 内容本身提供支持。要保存持久状态,请acquireVsCodeApi().setState()使用任何 json 可序列化对象进行调用。要再次恢复状态,请调用getState()

// Within the webview
const vscode = acquireVsCodeApi();

// Get existing state
const oldState = vscode.getState() || { value: 0 };

// Update state
setState({ value: oldState.value + 1 });

AWebviewPanelSerializer在编辑器重新启动时扩展了这种持久性。setState当编辑器关闭时,它将保存所有具有序列化器的 Web 视图的状态。当 webview 重新启动后第一次变得可见时,此状态将传递给deserializeWebviewPanel. 然后,扩展程序可以从此WebviewPanel状态恢复旧的状态。

Methods

deserializeWebviewPanel ( webviewPanel : WebviewPanel ,状态: T ) : Thenable < void >

Restore a webview panel from its serialized state.

Called when a serialized webview first becomes visible.

ParameterDescription
webviewPanel: WebviewPanel

Webview panel to restore. The serializer should take ownership of this panel. The serializer must restore the webview's .html and hook up all webview events.

state: T

Persisted state from the webview content.

ReturnsDescription
Thenable<void>

Thenable indicating that the webview has been fully restored.

Webview端口映射

定义用于 webview 内的 localhost 的端口映射。

Properties

扩展主机端口数字

Destination port. The webviewPort is resolved to this port.

网络视图端口数字

Localhost port to remap inside the webview.

网页视图View

基于 webview 的视图。

Events

onDidChangeVisibility 事件<void> _ _

Event fired when the visibility of the view changes.

Actions that trigger a visibility change:

  • The view is collapsed or expanded.
  • The user switches to a different view group in the sidebar or panel.

Note that hiding a view using the context menu instead disposes of the view and fires onDidDispose.

onDidDispose :事件<void> _ _

Event fired when the view is disposed.

Views are disposed when they are explicitly hidden by a user (this happens when a user right clicks in a view and unchecks the webview view).

Trying to use the view after it has been disposed throws an exception.

Properties

徽章:查看徽章

The badge to display for this webview view. To remove the badge, set to undefined.

描述:字符串

Human-readable string which is rendered less prominently in the title.

标题:字符串

View title displayed in the UI.

The view title is initially taken from the extension package.json contribution.

视图类型字符串

Identifies the type of the webview view, such as 'hexEditor.dataView'.

可见布尔值

Tracks if the webview is currently visible.

Views are visible when they are on the screen and expanded.

网页视图网页视图

The underlying webview for the view.

Methods

显示保留焦点布尔值无效

Reveal the view in the UI.

If the view is collapsed, this will expand it.

ParameterDescription
preserveFocus?: boolean

When true the view will not take focus.

ReturnsDescription
void

WebviewViewProvider

用于创建WebviewView元素的提供者。

Methods

解决WebviewView webviewView WebviewView上下文WebviewViewResolveContext <未知>,令牌CancellationToken 无效| 然后可<无效>

Revolves a webview view.

resolveWebviewView is called when a view first becomes visible. This may happen when the view is first loaded or when the user hides and then shows a view again.

ParameterDescription
webviewView: WebviewView

Webview view to restore. The provider should take ownership of this view. The provider must set the webview's .html and hook up all webview events it is interested in.

context: WebviewViewResolveContext<unknown>

Additional metadata about the view being resolved.

token: CancellationToken

Cancellation token indicating that the view being provided is no longer needed.

ReturnsDescription
void | Thenable<void>

Optional thenable indicating that the view has been fully resolved.

WebviewViewResolveContext<T>

正在解析的 webview 视图的附加信息。

Properties

状态T

Persisted state from the webview content.

To save resources, the editor normally deallocates webview documents (the iframe content) that are not visible. For example, when the user collapse a view or switches to another top level activity in the sidebar, the WebviewView itself is kept alive but the webview's underlying document is deallocated. It is recreated when the view becomes visible again.

You can prevent this behavior by setting retainContextWhenHidden in the WebviewOptions. However this increases resource usage and should be avoided wherever possible. Instead, you can use persisted state to save off a webview's state so that it can be quickly recreated as needed.

To save off a persisted state, inside the webview call acquireVsCodeApi().setState() with any json serializable object. To restore the state again, call getState(). For example:

// Within the webview
const vscode = acquireVsCodeApi();

// Get existing state
const oldState = vscode.getState() || { value: 0 };

// Update state
setState({ value: oldState.value + 1 });

The editor ensures that the persisted state is saved correctly when a webview is hidden and across editor restarts.

窗口状态

代表窗口的状态。

Properties

重点布尔值

Whether the current window is focused.

工作区配置

代表配置。这是一个合并视图

  • 默认设置
  • 全局(用户)设置
  • 工作区设置
  • 工作区文件夹设置- 来自请求的资源所属的工作区文件夹之一。
  • 语言设置- 根据请求的语言定义的设置。

有效值(由get返回)是通过按以下顺序覆盖合并值来计算的:

  1. defaultValue(如果以package.json其他方式从值的类型派生定义)
  2. globalValue(如果已定义)
  3. workspaceValue(如果已定义)
  4. workspaceFolderValue(如果已定义)
  5. defaultLanguageValue(如果已定义)
  6. globalLanguageValue(如果已定义)
  7. workspaceLanguageValue(如果已定义)
  8. workspaceFolderLanguageValue(如果已定义)

注意:object合并值类型,并覆盖所有其他值类型。

示例 1:覆盖

defaultValue = 'on';
globalValue = 'relative';
workspaceFolderValue = 'off';
value = 'off';

示例 2:语言值

defaultValue = 'on';
globalValue = 'relative';
workspaceFolderValue = 'off';
globalLanguageValue = 'on';
value = 'on';

示例 3:对象值

defaultValue = { a: 1, b: 2 };
globalValue = { b: 3, c: 4 };
value = { a: 1, b: 3, c: 4 };

注意:工作空间和工作空间文件夹配置包含launchtasks设置。它们的基本名称将是部分标识符的一部分。以下代码片段展示了如何从中检索所有配置launch.json

// launch.json configuration
const config = workspace.getConfiguration(
  'launch',
  vscode.workspace.workspaceFolders[0].uri
);

// retrieve values
const values = config.get('configurations');

请参阅设置了解更多信息。

Methods

获取<T> 部分字符串T _ _

Return a value from this configuration.

ParameterDescription
section: string

Configuration name, supports dotted names.

ReturnsDescription
T

The value section denotes or undefined.

获取<T> 部分字符串默认T T _

Return a value from this configuration.

ParameterDescription
section: string

Configuration name, supports dotted names.

defaultValue: T

A value should be returned when no value could be found, is undefined.

ReturnsDescription
T

The value section denotes or the default.

部分字符串布尔值

Check if this configuration has a certain value.

ParameterDescription
section: string

Configuration name, supports dotted names.

ReturnsDescription
boolean

true if the section doesn't resolve to undefined.

检查<T> 部分字符串 {defaultLanguageValue:T,defaultValue:T,globalLanguageValue:T globalValue:T,键:字符串,语言ID:字符串[],workspaceFolderLanguageValue:T workspaceFolderValue:T,workspaceLanguageValue:T,workspaceValue : } _

Retrieve all information about a configuration setting. A configuration value often consists of a default value, a global or installation-wide value, a workspace-specific value, folder-specific value and language-specific values (if WorkspaceConfiguration is scoped to a language).

Also provides all language ids under which the given configuration setting is defined.

Note: The configuration name must denote a leaf in the configuration tree (editor.fontSize vs editor) otherwise no result is returned.

ParameterDescription
section: string

Configuration name, supports dotted names.

ReturnsDescription
{defaultLanguageValue: T, defaultValue: T, globalLanguageValue: T, globalValue: T, key: string, languageIds: string[], workspaceFolderLanguageValue: T, workspaceFolderValue: T, workspaceLanguageValue: T, workspaceValue: T}

Information about a configuration setting or undefined.

更新字符串任何configurationTarget boolean | ConfigurationTargetoverrideInLanguage boolean Thenable <void> _ _

Update a configuration value. The updated configuration values are persisted.

A value can be changed in

Note: To remove a configuration value use undefined, like so: config.update('somekey', undefined)

  • throws - error while updating
    • configuration which is not registered.
    • window configuration to workspace folder
    • configuration to workspace or workspace folder when no workspace is opened.
    • configuration to workspace folder when there is no workspace folder settings.
    • configuration to workspace folder when WorkspaceConfiguration is not scoped to a resource.
ParameterDescription
section: string

Configuration name, supports dotted names.

value: any

The new value.

configurationTarget?: boolean | ConfigurationTarget

The configuration target or a boolean value. - If true updates Global settings. - If false updates Workspace settings. - If undefined or null updates to Workspace folder settings if configuration is resource specific, otherwise to Workspace settings.

overrideInLanguage?: boolean

Whether to update the value in the scope of requested languageId or not. - If true updates the value under the requested languageId. - If undefined updates the value under the requested languageId only if the configuration is defined for the language.

ReturnsDescription
Thenable<void>

工作区编辑

工作区编辑是多个资源和文档的文本和文件更改的集合。

使用applyEdit函数应用工作区编辑。

Constructors

新的工作区编辑( ) :工作区编辑

ParameterDescription
ReturnsDescription
WorkspaceEdit

Properties

尺寸数量

The number of affected resources of textual or resource changes.

Methods

createFile ( uri : Uri , options ? : {contents: Uint8Array | DataTransferFile ,ignoreIfExists: boolean , overwrite: boolean },元数据? : WorkspaceEditEntryMetadata ) : void

Create a regular file.

ParameterDescription
uri: Uri

Uri of the new file.

options?: {contents: Uint8Array | DataTransferFile, ignoreIfExists: boolean, overwrite: boolean}

Defines if an existing file should be overwritten or be ignored. When overwrite and ignoreIfExists are both set overwrite wins. When both are unset and when the file already exists then the edit cannot be applied successfully. The content-property allows to set the initial contents the file is being created with.

metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

删除uri Uri范围范围元数据WorkspaceEditEntryMetadata 无效

Delete the text at the given range.

ParameterDescription
uri: Uri

A resource identifier.

range: Range

A range.

metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

deleteFile ( uri : Uri , options ? : {ignoreIfNotExists: boolean , recursive: boolean },元数据? : WorkspaceEditEntryMetadata ) : void

Delete a file or folder.

ParameterDescription
uri: Uri

The uri of the file that is to be deleted.

options?: {ignoreIfNotExists: boolean, recursive: boolean}
metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

条目( ) : Array<[ Uri , TextEdit []]>

Get all text edits grouped by resource.

ParameterDescription
ReturnsDescription
Array<[Uri, TextEdit[]]>

A shallow copy of [Uri, TextEdit[]]-tuples.

get ( uri : Uri ) : TextEdit []

Get the text edits for a resource.

ParameterDescription
uri: Uri

A resource identifier.

ReturnsDescription
TextEdit[]

An array of text edits.

uri Uri 布尔值

Check if a text edit for a resource exists.

ParameterDescription
uri: Uri

A resource identifier.

ReturnsDescription
boolean

true if the given resource will be touched by this edit.

插入uri Uri位置位置newText 字符串元数据WorkspaceEditEntryMetadata void

Insert the given text at the given position.

ParameterDescription
uri: Uri

A resource identifier.

position: Position

A position.

newText: string

A string.

metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

renameFile ( oldUri : Uri , newUri : Uri , options ? : {ignoreIfExists: boolean , overwrite: boolean },元数据? : WorkspaceEditEntryMetadata ) : void

Rename a file or folder.

ParameterDescription
oldUri: Uri

The existing file.

newUri: Uri

The new location.

options?: {ignoreIfExists: boolean, overwrite: boolean}

Defines if existing files should be overwritten or be ignored. When overwrite and ignoreIfExists are both set overwrite wins.

metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

替换uri Uri范围范围newText 字符串元数据WorkspaceEditEntryMetadata void

Replace the given range with given text for the given resource.

ParameterDescription
uri: Uri

A resource identifier.

range: Range

A range.

newText: string

A string.

metadata?: WorkspaceEditEntryMetadata

Optional metadata for the entry.

ReturnsDescription
void

设置uri Uri编辑 ReadonlyArray< TextEdit | SnippetTextEdit > void

Set (and replace) text edits or snippet edits for a resource.

ParameterDescription
uri: Uri

A resource identifier.

edits: ReadonlyArray<TextEdit | SnippetTextEdit>

An array of edits.

ReturnsDescription
void

设置uri Uri编辑 ReadonlyArray<[ TextEdit | SnippetTextEditWorkspaceEditEntryMetadata ]> void

Set (and replace) text edits or snippet edits with metadata for a resource.

ParameterDescription
uri: Uri

A resource identifier.

edits: ReadonlyArray<[TextEdit | SnippetTextEdit, WorkspaceEditEntryMetadata]>

An array of edits.

ReturnsDescription
void

set ( uri : Uri编辑: readonly NotebookEdit [] ) : void

Set (and replace) notebook edits for a resource.

ParameterDescription
uri: Uri

A resource identifier.

edits: readonly NotebookEdit[]

An array of edits.

ReturnsDescription
void

设置uri Uri编辑 ReadonlyArray<[ NotebookEditWorkspaceEditEntryMetadata ]> void

Set (and replace) notebook edits with metadata for a resource.

ParameterDescription
uri: Uri

A resource identifier.

edits: ReadonlyArray<[NotebookEdit, WorkspaceEditEntryMetadata]>

An array of edits.

ReturnsDescription
void

工作区编辑条目元数据

工作区编辑条目的附加数据。支持对条目进行标记,并将条目标记为需要用户确认。编辑器将具有相同标签的编辑分组到树节点中,例如,所有标有“字符串更改”的编辑都将是一个树节点。

Properties

描述:字符串

A human-readable string which is rendered less prominent on the same line.

图标路径乌里| 主题图标| {暗:Uri,亮:Uri }

The icon path or ThemeIcon for the edit.

标签字符串

A human-readable string which is rendered prominent.

需求确认布尔值

A flag which indicates that user confirmation is needed.

工作区编辑元数据

有关工作区编辑的附加数据。

Properties

是重构布尔值

Signal to the editor that this edit is a refactoring.

工作区文件夹

工作区文件夹是编辑器可能打开的众多根目录之一。所有工作区文件夹都是相同的,这意味着不存在活动或主工作区文件夹的概念。

Properties

索引数字

The ordinal number of this workspace folder.

名称字符串

The name of this workspace folder. Defaults to the basename of its uri-path

乌里乌里

The associated uri for this workspace folder.

Note: The Uri-type was intentionally chosen such that future releases of the editor can support workspace folders that are not stored on the local disk, e.g. ftp://server/workspaces/foo.

工作区文件夹选择选项

用于配置工作区文件夹选择 UI行为的选项。

Properties

忽略焦点输出布尔值

Set to true to keep the picker open when focus moves to another part of the editor or to another window. This setting is ignored on iPad and is always false.

占位符:字符串

An optional string to show as placeholder in the input box to guide the user what to pick on.

工作区文件夹更改事件

描述工作区文件夹集更改的事件。

Properties

添加只读WorkspaceFolder []

Added workspace folders.

已删除只读WorkspaceFolder []

Removed workspace folders.

WorkspaceSymbolProvider<T>

Methods

ProvideWorkspaceSymbols 查询字符串令牌CancellationToken ProviderResult < T []>

Project-wide search for a symbol matching the given query string.

The query-parameter should be interpreted in a relaxed way as the editor will apply its own highlighting and scoring on the results. A good rule of thumb is to match case-insensitive and to simply check that the characters of query appear in their order in a candidate symbol. Don't use prefix, substring, or similar strict matching.

To improve performance implementors can implement resolveWorkspaceSymbol and then provide symbols with partial location-objects, without a range defined. The editor will then call resolveWorkspaceSymbol for selected symbols only, e.g. when opening a workspace symbol.

ParameterDescription
query: string

A query string, can be the empty string in which case all symbols should be returned.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T[]>

An array of document highlights or a thenable that resolves to such. The lack of a result can be signaled by returning undefined, null, or an empty array.

solveWorkspaceSymbol 符号T令牌CancellationToken ProviderResult <T> _ _

Given a symbol fill in its location. This method is called whenever a symbol is selected in the UI. Providers can implement this method and return incomplete symbols from provideWorkspaceSymbols which often helps to improve performance.

ParameterDescription
symbol: T

The symbol that is to be resolved. Guaranteed to be an instance of an object returned from an earlier call to provideWorkspaceSymbols.

token: CancellationToken

A cancellation token.

ReturnsDescription
ProviderResult<T>

The resolved symbol or a thenable that resolves to that. When no result is returned, the given symbol is used.

API模式

这些是我们在 VS Code API 中使用的一些常见模式。

承诺

VS Code API 表示带有Promise 的异步操作。从扩展中,可以返回任何类型的 Promise,如 ES6、WinJS、A+ 等。

独立于特定的 Promise 库在 API 中通过Thenable-type 来表达。Thenable表示共同点,即then方法。

在大多数情况下,promise 的使用是可选的,当 VS Code 调用扩展时,它可以处理结果类型以及结果类型Thenable的a 。当 Promise 的使用是可选的时,API 通过返回-types 来指示这一点。or

provideNumber(): number | Thenable<number>

取消令牌

通常操作是在易失状态下启动的,易失状态在操作完成之前会发生变化。例如,计算 IntelliSense 开始,用户继续键入,从而使该操作的结果过时。

暴露于此类行为的 API 将通过一个参数,CancellationToken您可以在其上检查取消情况 ( isCancellationRequested) 或在发生取消时收到通知 ( onCancellationRequested)。取消标记通常是函数调用的最后一个参数并且是可选的。

一次性用品

VS Code API对从 VS Code 获取的资源使用处置模式。这适用于事件侦听、命令、与 UI 交互以及各种语言贡献。

例如,该setStatusBarMessage(value: string)函数返回一个Disposable,在调用时dispose会再次删除该消息。

活动

VS Code API 中的事件作为函数公开,您可以使用侦听器函数调用以进行订阅。调用 subscribe 返回 a Disposable,它会在 dispose 时删除事件侦听器。

var listener = function(event) {
  console.log('It happened', event);
};

// start listening
var subscription = fsWatcher.onDidDelete(listener);

// do more stuff

subscription.dispose(); // stop listening

事件的名称遵循该on[Will|Did]VerbNoun?模式。名称表示事件是否将要发生(onWill)还是已经发生(onDid)、发生了什么(动词)以及上下文(名词),除非从上下文中可以明显看出。

VS Code API 的一个示例是,window.onDidChangeActiveTextEditor当活动文本编辑器(名词)发生(onDid)更改(动词)时触发的事件。

严格为空

VS Code API 在适当的情况下使用undefinednullTypeScript 类型来支持严格的 null 检查