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'.
Parameter | Description |
---|---|
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} | The AuthenticationGetSessionOptions to use |
Returns | Description |
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'.
Parameter | Description |
---|---|
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} | The AuthenticationGetSessionOptions to use |
Returns | Description |
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'.
Parameter | Description |
---|---|
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 | The AuthenticationGetSessionOptions to use |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
命令
用于处理命令的命名空间。简而言之,命令是具有唯一标识符的函数。该函数有时也称为命令处理程序。
可以使用registerCommand 和registerTextEditorCommand函数将命令添加到编辑器中。可以手动或通过 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
, andnull
, as well as Position, Range, Uri and Location. - Note 2: There are no restrictions when executing commands that have been contributed by extensions.
Parameter | Description |
---|---|
command: string | Identifier of the command to execute. |
...rest: any[] | Parameters passed to the command function. |
Returns | Description |
Thenable<T> | A thenable that resolves to the returned value of the given command. Returns |
getCommands ( filterInternal ? : boolean ) : Thenable < string []>
Retrieve the list of all available commands. Commands starting with an underscore are treated as internal commands.
Parameter | Description |
---|---|
filterInternal?: boolean | Set |
Returns | Description |
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.
Parameter | Description |
---|---|
command: string | A unique identifier for the command. |
callback: (args: any[]) => any | A command handler function. |
thisArg?: any | The |
Returns | Description |
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.
Parameter | Description |
---|---|
command: string | A unique identifier for the command. |
callback: (textEditor: TextEditor, edit: TextEditorEdit, args: any[]) => void | |
thisArg?: any | The |
Returns | Description |
Disposable | Disposable which unregisters this command on disposal. |
评论
Functions
createCommentController (id :字符串,标签:字符串):CommentController
Creates a new comment controller instance.
Parameter | Description |
---|---|
id: string | An |
label: string | A human-readable string for the comment controller. |
Returns | Description |
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.
Parameter | Description |
---|---|
breakpoints: readonly Breakpoint[] | The breakpoints to add. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
debugType: string | The debug type for which the factory is registered. |
factory: DebugAdapterDescriptorFactory | The debug adapter descriptor factory to register. |
Returns | Description |
Disposable | A Disposable that unregisters this factory when being disposed. |
registerDebugAdapterTrackerFactory (debugType :字符串,工厂:DebugAdapterTrackerFactory ):一次性
Register a debug adapter tracker factory for the given debug type.
Parameter | Description |
---|---|
debugType: string | The debug type for which the factory is registered or '*' for matching all debug types. |
factory: DebugAdapterTrackerFactory | The debug adapter tracker factory to register. |
Returns | Description |
Disposable | A Disposable that unregisters this factory when being disposed. |
registerDebugConfigurationProvider (debugType :字符串,提供者:DebugConfigurationProvider,triggerKind ?: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.
Parameter | Description |
---|---|
debugType: string | The debug type for which the provider is registered. |
provider: DebugConfigurationProvider | The debug configuration provider to register. |
triggerKind?: DebugConfigurationProviderTriggerKind | The trigger for which the 'provideDebugConfiguration' method of the provider is registered. If |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
removeBreakpoints (断点:只读断点[] ) : void
Remove breakpoints.
Parameter | Description |
---|---|
breakpoints: readonly Breakpoint[] | The breakpoints to remove. |
Returns | Description |
void |
startDebugging (文件夹:WorkspaceFolder,nameOrConfiguration :字符串| DebugConfiguration,parentSessionOrOptions ?: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.
Parameter | Description |
---|---|
folder: WorkspaceFolder | The workspace folder for looking up named configurations and resolving variables or |
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
session?: DebugSession | The debug session to stop; if omitted all sessions are stopped. |
Returns | Description |
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.
Indicates that this is a fresh install of the application.
true
if within the first day of installation otherwise false
.
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.
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.
A unique identifier for the current session. Changes each time the editor is started.
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.
The custom uri scheme the editor registers to in the operating system.
Events
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.
createTelemetryLogger (发送者:TelemetrySender,选项?:TelemetryLoggerOptions ):TelemetryLogger
Creates a new telemetry logger.
Parameter | Description |
---|---|
sender: TelemetrySender | The telemetry sender that is used by the telemetry logger. |
options?: TelemetryLoggerOptions | Options for the telemetry logger. |
Returns | Description |
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:
fromvscode.env.uriScheme
)
Note that showTextDocument is the right way to open a text document inside the editor, not this function.
扩展
用于处理已安装扩展的命名空间。扩展由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
.
10n
扩展 API 中与本地化相关的功能的命名空间。要正确使用它,您必须l10n
在扩展清单中进行定义并拥有bundle.l10n。
注意:内置扩展(例如,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');
Parameter | Description |
---|---|
message: string | The message to localize. Supports index templating where strings like |
...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. |
Returns | Description |
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' });
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).
语言
用于参与特定于语言的编辑器功能的命名空间,例如 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.
Parameter | Description |
---|---|
name?: string | The name of the collection. |
Returns | Description |
DiagnosticCollection | A new diagnostic collection. |
createLanguageStatusItem (id :字符串,选择器:DocumentSelector ):LanguageStatusItem
Creates a new language status item.
Parameter | Description |
---|---|
id: string | The identifier of the item. |
selector: DocumentSelector | The document selector that defines for what editors the item shows. |
Returns | Description |
LanguageStatusItem | A new language status item. |
Get all diagnostics for a given resource.
Parameter | Description |
---|---|
resource: Uri | A resource |
Returns | Description |
Diagnostic[] | An array of diagnostics objects or an empty array. |
getDiagnostics ( ) : Array<[ Uri ,诊断[]]>
Get all diagnostics.
Parameter | Description |
---|---|
Returns | Description |
Array<[Uri, Diagnostic[]]> | An array of uri-diagnostics tuples or an empty array. |
getLanguages ( ) : Thenable < string []>
Return the identifiers of all known languages.
Parameter | Description |
---|---|
Returns | Description |
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:
- When DocumentSelector is an array, compute the match for each contained
DocumentFilter
or language identifier and take the maximum value. - A string will be desugared to become the
language
-part of a DocumentFilter, so"fooLang"
is like{ language: "fooLang" }
. - A DocumentFilter will be matched against the document by comparing its parts with the document. The following rules apply:
- When the
DocumentFilter
is empty ({}
) the result is0
- When
scheme
,language
,pattern
, ornotebook
are defined but one doesn't match, the result is0
- Matching against
*
gives a score of5
, matching via equality or via a glob-pattern gives a score of10
- The result is the maximum value of each match
- When the
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
Parameter | Description |
---|---|
selector: DocumentSelector | A document selector. |
document: TextDocument | A text document. |
Returns | Description |
number | A number |
registerCallHierarchyProvider (选择器:DocumentSelector,提供者:CallHierarchyProvider ):一次性
Register a call hierarchy provider.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: CallHierarchyProvider | A call hierarchy provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: CodeLensProvider<CodeLens> | A code lens provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentColorProvider | A color provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DeclarationProvider | A declaration provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DefinitionProvider | A definition provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
registerDocumentDropEditProvider (选择器:DocumentSelector,提供者:DocumentDropEditProvider ):一次性
Registers a new DocumentDropEditProvider.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider applies to. |
provider: DocumentDropEditProvider | A drop provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentFormattingEditProvider | A document formatting edit provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentHighlightProvider | A document highlight provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentLinkProvider<DocumentLink> | A document link provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentRangeFormattingEditProvider | A document range formatting edit provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentRangeSemanticTokensProvider | A document range semantic tokens provider. |
legend: SemanticTokensLegend | |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: DocumentSemanticTokensProvider | A document semantic tokens provider. |
legend: SemanticTokensLegend | |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
registerDocumentSymbolProvider (选择器:DocumentSelector,提供者:DocumentSymbolProvider,metaData ?: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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: EvaluatableExpressionProvider | An evaluatable expression provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: FoldingRangeProvider | A folding range provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: HoverProvider | A hover provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: ImplementationProvider | An implementation provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: InlayHintsProvider<InlayHint> | An inlay hints provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: InlineCompletionItemProvider | An inline completion provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: InlineValuesProvider | An inline values provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: LinkedEditingRangeProvider | A linked editing range provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
registerOnTypeFormattingEditProvider (选择器:DocumentSelector,提供者:OnTypeFormattingEditProvider,firstTriggerCharacter :字符串,... 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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: ReferenceProvider | A reference provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: RenameProvider | A rename provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: SelectionRangeProvider | A selection range provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
registerSignatureHelpProvider (选择器:DocumentSelector,提供者:SignatureHelpProvider,元数据:SignatureHelpProviderMetadata ):一次性
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: TypeDefinitionProvider | A type definition provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
registerTypeHierarchyProvider (选择器:DocumentSelector,提供者:TypeHierarchyProvider ):一次性
Register a type hierarchy provider.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: TypeHierarchyProvider | A type hierarchy provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
provider: WorkspaceSymbolProvider<SymbolInformation> | A workspace symbol provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
setLanguageConfiguration (语言:字符串,配置:LanguageConfiguration ):一次性
Set a language configuration for a language.
Parameter | Description |
---|---|
language: string | A language identifier like |
configuration: LanguageConfiguration | Language configuration. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | The document which language is to be changed |
languageId: string | The new language identifier. |
Returns | Description |
Thenable<TextDocument> | A thenable that resolves with the updated document. |
笔记本
笔记本的命名空间。
笔记本功能由三个松散耦合的组件组成:
- NotebookSerializer使编辑器能够打开、显示和保存笔记本
- NotebookController拥有笔记本的执行,例如它们从代码单元创建输出。
- NotebookRenderer 在编辑器中呈现笔记本输出。它们在单独的上下文中运行。
Functions
createNotebookController ( id : string , notebookType : string , label : string , handler ? : (cells: NotebookCell [], notebook: NotebookDocument , 控制器: NotebookController ) => void | Thenable < void > ) : NotebookController
Creates a new notebook controller.
Parameter | Description |
---|---|
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. |
Returns | Description |
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 toalways
oroptional
in itsnotebookRenderer
contribution.
Parameter | Description |
---|---|
rendererId: string | The renderer ID to communicate with |
Returns | Description |
NotebookRendererMessaging | A new notebook renderer messaging object. |
registerNotebookCellStatusBarItemProvider (notebookType :字符串,提供程序:NotebookCellStatusBarItemProvider ):一次性
Register a cell statusbar item provider for the given notebook type.
Parameter | Description |
---|---|
notebookType: string | The notebook type to register for. |
provider: NotebookCellStatusBarItemProvider | A cell status bar provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
id: string | An |
label: string | A human-readable string for the source control. E.g.: |
rootUri?: Uri | An optional Uri of the root of the source control. E.g.: |
Returns | Description |
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.
Parameter | Description |
---|---|
task: Task | the task to execute |
Returns | Description |
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.
Parameter | Description |
---|---|
filter?: TaskFilter | Optional filter to select tasks of a certain type or version. |
Returns | Description |
Thenable<Task[]> | A thenable that resolves to an array of tasks. |
registerTaskProvider (类型:字符串,提供者:TaskProvider <任务> ):一次性
Register a task provider.
Parameter | Description |
---|---|
type: string | The task kind type this provider is registered for. |
provider: TaskProvider<Task> | A task provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
测试
用于测试功能的命名空间。通过注册TestController实例,然后添加TestItems来发布测试 。控制器还可以描述如何通过创建一个或多个 TestRunProfile实例来运行测试。
Functions
createTestController (id :字符串,标签:字符串):TestController
Creates a new test controller.
Parameter | Description |
---|---|
id: string | Identifier for the controller, must be globally unique. |
label: string | A human-readable label for the controller. |
Returns | Description |
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.
An Event which fires when a terminal is disposed.
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.
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.,
Parameter | Description |
---|---|
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. |
Returns | Description |
OutputChannel | A new output channel. |
createOutputChannel (名称: string ,选项: {log: true } ) : LogOutputChannel
Creates a new log output channel with the given name.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
createStatusBarItem (id :字符串,对齐方式?:StatusBarAlignment,优先级?:数字):StatusBarItem
Creates a status bar item.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
options: TerminalOptions | A TerminalOptions object describing the characteristics of the new terminal. |
Returns | Description |
Terminal | A new Terminal. |
创建终端(选项:ExtensionTerminalOptions ):终端
Creates a Terminal where an extension controls its input and output.
Parameter | Description |
---|---|
options: ExtensionTerminalOptions | An ExtensionTerminalOptions object describing the characteristics of the new terminal. |
Returns | Description |
Terminal | A new Terminal. |
createTextEditorDecorationType (选项: DecorationRenderOptions ) : TextEditorDecorationType
Create a TextEditorDecorationType that can be used to add decorations to text editors.
Parameter | Description |
---|---|
options: DecorationRenderOptions | Rendering options for the decoration type. |
Returns | Description |
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
.
createWebviewPanel ( viewType : string , title : string , showOptions : ViewColumn | {preserveFocus: boolean , viewColumn: ViewColumn }, options ? : WebviewPanelOptions & WebviewOptions ) : WebviewPanel
Create and show a new webview panel.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
viewType: string | Unique identifier for the custom editor provider. This should match the |
provider: CustomTextEditorProvider | CustomReadonlyEditorProvider<CustomDocument> | CustomEditorProvider<CustomDocument> | Provider that resolves custom editors. |
options?: {supportsMultipleEditorsPerDocument: boolean, webviewOptions: WebviewPanelOptions} | Options for the provider. |
Returns | Description |
Disposable | Disposable that unregisters the provider. |
registerFileDecorationProvider (提供者:FileDecorationProvider ):一次性
Register a file decoration provider.
Parameter | Description |
---|---|
provider: FileDecorationProvider | |
Returns | Description |
Disposable | A Disposable that unregisters the provider. |
registerTerminalLinkProvider (提供者: TerminalLinkProvider < TerminalLink > ) :一次性
Register provider that enables the detection and handling of links within the terminal.
Parameter | Description |
---|---|
provider: TerminalLinkProvider<TerminalLink> | The provider that provides the terminal links. |
Returns | Description |
Disposable | Disposable that unregisters the provider. |
registerTerminalProfileProvider (id :字符串,提供者:TerminalProfileProvider ):一次性
Registers a provider for a contributed terminal profile.
Parameter | Description |
---|---|
id: string | The ID of the contributed terminal profile. |
provider: TerminalProfileProvider | The terminal profile provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
viewId: string | Id of the view contributed using the extension point |
treeDataProvider: TreeDataProvider<T> | A TreeDataProvider that provides tree data for the view |
Returns | Description |
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.
Parameter | Description |
---|---|
handler: UriHandler | The uri handler to register for this extension. |
Returns | Description |
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
.
Parameter | Description |
---|---|
viewType: string | Type of the webview panel that can be serialized. |
serializer: WebviewPanelSerializer<unknown> | Webview serializer. |
Returns | Description |
Disposable | A disposable that unregisters the serializer. |
registerWebviewViewProvider ( viewId : string , provider : WebviewViewProvider , options ? : {webviewOptions: {retainContextWhenHidden: boolean }} ) :一次性
Register a new provider for webview views.
Parameter | Description |
---|---|
viewId: string | Unique id of the view. This should match the |
provider: WebviewViewProvider | Provider for the webview views. |
options?: {webviewOptions: {retainContextWhenHidden: boolean}} | |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
text: string | The message to show, supports icon substitution as in status bar items. |
Returns | Description |
Disposable | A disposable which hides the status bar message. |
showErrorMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>
Show an error message.
See also showInformationMessage
showErrorMessage < T 扩展字符串> (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>
Show an error message.
See also showInformationMessage
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
showErrorMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>
Show an error message.
See also showInformationMessage
showErrorMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>
Show an error message.
See also showInformationMessage
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
showInformationMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>
Show an information message to users. Optionally provide an array of items which will be presented as clickable buttons.
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
showInformationMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>
Show an information message.
See also showInformationMessage
showInformationMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>
Show an information message.
See also showInformationMessage
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
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.
Parameter | Description |
---|---|
options?: InputBoxOptions | Configures the behavior of the input box. |
token?: CancellationToken | A token that can be used to signal cancellation. |
Returns | Description |
Thenable<string | undefined> | A promise that resolves to a string the user provided or to |
showNotebookDocument (文档:NotebookDocument,选项?:NotebookDocumentShowOptions ):Thenable <NotebookEditor> _ _
Show the given NotebookDocument in a notebook editor.
Parameter | Description |
---|---|
document: NotebookDocument | A text document to be shown. |
options?: NotebookDocumentShowOptions | Editor options to configure the behavior of showing the notebook editor. |
Returns | Description |
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.
Parameter | Description |
---|---|
options?: OpenDialogOptions | Options that control the dialog. |
Returns | Description |
Thenable<Uri[] | undefined> | A promise that resolves to the selected resources or |
showQuickPick ( items : readonly string [] | Thenable <readonly string []>, options : QuickPickOptions & {canPickMany: true }, token ? : CancellationToken ) : Thenable < string [] | 未定义>
Shows a selection list allowing multiple selections.
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<string[] | undefined> | A promise that resolves to the selected items or |
showQuickPick ( items : readonly string [] | Thenable <readonly string []>, options ? : QuickPickOptions , token ? : CancellationToken ) : Thenable < string | 未定义>
Shows a selection list.
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<string | undefined> | A promise that resolves to the selection or |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T[] | undefined> | A promise that resolves to the selected items or |
showQuickPick < T extends QuickPickItem > ( items : readonly T [] | Thenable <readonly T [] >, options ? : QuickPickOptions , token ? : CancellationToken ) : Thenable < T | 未定义>
Shows a selection list.
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A promise that resolves to the selected item or |
showSaveDialog (选项? : SaveDialogOptions ) : Thenable < Uri | 未定义>
Shows a file save dialog to the user which allows to select a file for saving-purposes.
Parameter | Description |
---|---|
options?: SaveDialogOptions | Options that control the dialog. |
Returns | Description |
Thenable<Uri | undefined> | A promise that resolves to the selected resource or |
showTextDocument (文档:TextDocument,列?:ViewColumn,保留焦点?:布尔):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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | A text document to be shown. |
options?: TextDocumentShowOptions | Editor options to configure the behavior of showing the editor. |
Returns | Description |
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
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
options?: TextDocumentShowOptions | Editor options to configure the behavior of showing the editor. |
Returns | Description |
Thenable<TextEditor> | A promise that resolves to an editor. |
showWarningMessage < T 扩展字符串> (消息:字符串, ...项目: T [] ) : Thenable < T | 未定义>
Show a warning message.
See also showInformationMessage
showWarningMessage < T extends string > ( message : string , options : MessageOptions , ... items : T [] ) : Thenable < T | 未定义>
Show a warning message.
See also showInformationMessage
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
showWarningMessage < T extends MessageItem > (消息: string , ... items : T [] ) : Thenable < T | 未定义>
Show a warning message.
See also showInformationMessage
showWarningMessage < T extends MessageItem > (消息:字符串,选项: MessageOptions , ...项目: T [] ) : Thenable < T | 未定义>
Show a warning message.
See also showInformationMessage
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<T | undefined> | A thenable that resolves to the selected item or |
showWorkspaceFolderPick (选项?:WorkspaceFolderPickOptions ):Thenable < WorkspaceFolder | 未定义>
Shows a selection list of workspace folders to pick from.
Returns undefined
if no folder is open.
Parameter | Description |
---|---|
options?: WorkspaceFolderPickOptions | Configures the behavior of the workspace folder list. |
Returns | Description |
Thenable<WorkspaceFolder | undefined> | A promise that resolves to the workspace folder or |
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.
Parameter | Description |
---|---|
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 To monitor if the operation has been cancelled by the user, use the provided CancellationToken.
Note that currently only |
Returns | Description |
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.
工作区
用于处理当前工作空间的命名空间。工作区是在编辑器窗口(实例)中打开的一个或多个文件夹的集合。
也可以在没有工作区的情况下打开编辑器。例如,当您通过从平台的文件菜单中选择文件来打开新的编辑器窗口时,您将不会处于工作区中。在此模式下,编辑器的某些功能会减少,但您仍然可以打开文本文件并对其进行编辑。
有关工作区概念的更多信息,请参阅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.
- deprecated - Use workspaceFolders instead.
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 theuntitled:
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:
- The event is emitted before the document is updated in the active text editor
- When a text document is already open (e.g.: open in another visible text editor) this event is not emitted
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.
Parameter | Description |
---|---|
edit: WorkspaceEdit | A workspace edit. |
metadata?: WorkspaceEditMetadata | Optional metadata for the edit. |
Returns | Description |
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.
Parameter | Description |
---|---|
pathOrUri: string | Uri | A path or uri. When a uri is given its fsPath is used. |
includeWorkspaceFolder?: boolean | When |
Returns | Description |
string | A path relative to the root or the input. |
createFileSystemWatcher (globPattern :GlobPattern,ignoreCreateEvents ?:boolean,ignoreChangeEvents ?:boolean,ignoreDeleteEvents ?: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, '*')
);
Parameter | Description |
---|---|
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. |
Returns | Description |
FileSystemWatcher | A new file system watcher instance. Must be disposed when no longer needed. |
findFiles (包括:GlobPattern,排除?:GlobPattern,maxResults ?:数字,令牌?:CancellationToken ):Thenable < Uri [ ]>
Find files across all workspace folders in the workspace.
Example
findFiles('**/*.js', '**/node_modules/**', 10);
Parameter | Description |
---|---|
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 |
maxResults?: number | An upper-bound for the result. |
token?: CancellationToken | A token that can be used to signal cancellation to the underlying search engine. |
Returns | Description |
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.
Parameter | Description |
---|---|
section?: string | A dot-separated identifier. |
scope?: ConfigurationScope | A scope for which the configuration is asked for. |
Returns | Description |
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
Parameter | Description |
---|---|
uri: Uri | An uri. |
Returns | Description |
WorkspaceFolder | undefined | A workspace folder or |
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.
Parameter | Description |
---|---|
uri: Uri | The resource to open. |
Returns | Description |
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
Parameter | Description |
---|---|
notebookType: string | The notebook type that should be used. |
content?: NotebookData | The initial contents of the notebook. |
Returns | Description |
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.
Parameter | Description |
---|---|
uri: Uri | Identifies the resource to open. |
Returns | Description |
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
Parameter | Description |
---|---|
fileName: string | A name of a file on disk. |
Returns | Description |
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.
Parameter | Description |
---|---|
options?: {content: string, language: string} | Options to control how the document will be created. |
Returns | Description |
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.
Parameter | Description |
---|---|
scheme: string | The uri-scheme the provider registers for. |
provider: FileSystemProvider | The filesystem provider. |
options?: {isCaseSensitive: boolean, isReadonly: boolean} | Immutable metadata about the provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
notebookType: string | A notebook. |
serializer: NotebookSerializer | A notebook serializer. |
options?: NotebookDocumentContentOptions | Optional context options that define what parts of a notebook should be persisted |
Returns | Description |
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
Parameter | Description |
---|---|
type: string | The task kind type this provider is registered for. |
provider: TaskProvider<Task> | A task provider. |
Returns | Description |
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.
Parameter | Description |
---|---|
scheme: string | The uri-scheme to register for. |
provider: TextDocumentContentProvider | A content provider. |
Returns | Description |
Disposable | A Disposable that unregisters this provider when being disposed. |
saveAll ( includeUntitled ? : boolean ) : Thenable < boolean >
Save all dirty files.
Parameter | Description |
---|---|
includeUntitled?: boolean | Also save files that have been created during this session. |
Returns | Description |
Thenable<boolean> | A thenable that resolves when the files have been saved. Will return |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
scopes: readonly string[] | A list of scopes, permissions, that the new session should be created with. |
Returns | Description |
Thenable<AuthenticationSession> | A promise that resolves to an authentication session. |
getSessions ( scopes ? : readonly string [] ) : Thenable <readonly AuthenticationSession []>
Get a list of sessions.
Parameter | Description |
---|---|
scopes?: readonly string[] | An optional list of scopes. If provided, the sessions returned should match these permissions, otherwise all sessions should be returned. |
Returns | Description |
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.
Parameter | Description |
---|---|
sessionId: string | The id of the session to remove. |
Returns | Description |
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
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.
The identifier of the authentication session.
The permissions granted by the session's access token. Available scopes are defined by the AuthenticationProvider.
身份验证会话帐户信息
与AuthenticationSession关联的帐户信息。
Properties
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
Parameter | Description |
---|---|
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 |
Returns | Description |
Breakpoint |
Properties
An optional expression for conditional breakpoints.
Is breakpoint enabled.
An optional expression that controls how many hits of the breakpoint are ignored.
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.
Parameter | Description |
---|---|
item: CallHierarchyItem | The item making the call. |
fromRanges: Range[] | The ranges at which the calls appear. |
Returns | Description |
CallHierarchyIncomingCall |
Properties
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.
Parameter | Description |
---|---|
kind: SymbolKind | |
name: string | |
detail: string | |
uri: Uri | |
range: Range | |
selectionRange: Range | |
Returns | Description |
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.
Parameter | Description |
---|---|
item: CallHierarchyItem | The item being called |
fromRanges: Range[] | The ranges at which the calls appear. |
Returns | Description |
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.
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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 |
提供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.
Parameter | Description |
---|---|
item: CallHierarchyItem | The hierarchy item for which incoming calls should be computed. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<CallHierarchyIncomingCall[]> | A set of incoming calls or a thenable that resolves to such. The lack of a result can be
signaled by returning |
提供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.
Parameter | Description |
---|---|
item: CallHierarchyItem | The hierarchy item for which outgoing calls should be computed. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<CallHierarchyOutgoingCall[]> | A set of outgoing calls or a thenable that resolves to such. The lack of a result can be
signaled by returning |
取消错误
应用于表示操作取消的错误类型。
此类型可用于响应取消令牌 被取消或当操作被该操作的执行者取消时。
Constructors
新的 CancellationError ( ) : CancellationError
Creates a new cancellation error.
Parameter | Description |
---|---|
Returns | Description |
CancellationError |
取消令牌
取消令牌被传递到异步或长时间运行的操作以请求取消,例如因为用户继续键入而取消对完成项的请求。
要获取 a 的实例,CancellationToken
请使用
CancellationTokenSource。
Properties
Is true
when the token has been cancelled, false
otherwise.
onCancellationRequested :事件<任何>
An Event which fires upon cancellation.
取消令牌源
取消源创建并控制取消令牌。
Constructors
新的 CancellationTokenSource ( ) : CancellationTokenSource
Parameter | Description |
---|---|
Returns | Description |
CancellationTokenSource |
Properties
令牌:取消令牌
The cancellation token of this source.
Methods
Signal cancellation on the token.
Parameter | Description |
---|---|
Returns | Description |
void |
Dispose object and free resources.
Parameter | Description |
---|---|
Returns | Description |
void |
字符对
两个字符的元组,就像一对左括号和右括号。
剪贴板
剪贴板提供对系统剪贴板的读写访问。
Methods
readText ( ) :Thenable <字符串>
Read the current clipboard contents as text.
Parameter | Description |
---|---|
Returns | Description |
Thenable<string> | A thenable that resolves to a string. |
writeText (值:字符串):Thenable <void> _ _
Writes text into the clipboard.
Parameter | Description |
---|---|
value: string | |
Returns | Description |
Thenable<void> | A thenable that resolves when writing happened. |
代码动作
Constructors
新的CodeAction (标题:字符串,种类?:CodeActionKind ):CodeAction
Parameter | Description |
---|---|
title: string | The title of the code action. |
kind?: CodeActionKind | The kind of the code action. |
Returns | Description |
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.
Parameter | Description |
---|---|
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.
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
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.
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
- ...
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.
Parameter | Description |
---|---|
value: string | The value of the kind, such as |
Returns | Description |
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.
Parameter | Description |
---|---|
parts: string | |
Returns | Description |
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"or
refactor`.
Parameter | Description |
---|---|
other: CodeActionKind | Kind to check. |
Returns | Description |
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"`.
Parameter | Description |
---|---|
other: CodeActionKind | Kind to check. |
Returns | Description |
boolean |
代码操作提供者<T>
为代码提供上下文操作。代码操作通常要么修复问题,要么美化/重构代码。
代码操作以几种不同的方式呈现给用户:
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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 We also support returning |
解析代码操作(代码操作: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.
Parameter | Description |
---|---|
codeAction: T | A code action. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T> | The resolved code action or a thenable that resolves to such. It is OK to return the given
|
代码操作提供者元数据
有关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 bothRefactor
andRefactorExtract
, when the user requests code actions forRefactorExtract
, the editor will use the documentation forRefactorExtract
instead of the documentation forRefactor
.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.
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.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T[]> | An array of code lenses or a thenable that resolves to such. The lack of a result can be
signaled by returning |
解析代码透镜(代码透镜:T,令牌:CancellationToken ):ProviderResult <T>
This function will be called for each visible code lens, usually when scrolling and after calls to compute-lenses.
Parameter | Description |
---|---|
codeLens: T | Code lens that must be resolved. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T> | The given, resolved code lens or thenable that resolves to such. |
颜色
表示 RGBA 空间中的颜色。
Constructors
新颜色(红色:数字,绿色:数字,蓝色:数字,alpha :数字):颜色
Creates a new color instance.
Parameter | Description |
---|---|
red: number | The red component. |
green: number | The green component. |
blue: number | The blue component. |
alpha: number | The alpha component. |
Returns | Description |
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.
Parameter | Description |
---|---|
range: Range | The range the color appears in. Must not be empty. |
color: Color | The value of the color. |
Returns | Description |
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.
Parameter | Description |
---|---|
label: string | The label of this color presentation. |
Returns | Description |
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.
文本编辑? :文本编辑
颜色主题
代表颜色主题。
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.
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.
Parameter | Description |
---|---|
comment: Comment | |
reaction: CommentReaction | |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
Returns | Description |
void |
评论范围提供者
评论控制器的评论范围提供者。
Methods
ProvideCommentingRanges (文档:TextDocument,令牌:CancellationToken ):ProviderResult <范围[]>
Provide a list of ranges which allow new comment threads creation or null for a given document
Parameter | Description |
---|---|
document: TextDocument | |
token: CancellationToken | |
Returns | Description |
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
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 */
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.
Parameter | Description |
---|---|
Returns | Description |
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.
Parameter | Description |
---|---|
label: string | CompletionItemLabel | The label of the completion. |
kind?: CompletionItemKind | The kind of the completion. |
Returns | Description |
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 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
andCompletionItem.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函数来延迟详细信息
和文档属性的计算。但是,初始排序和过滤所需的属性(例如、、和)在解析期间不得更改。sortText
filterText
insertText
range
提供者被要求通过用户手势显式地完成,或者在键入单词或触发字符时隐式地要求完成(取决于配置)。
Methods
ProvideCompletionItems (文档: TextDocument ,位置:位置,令牌: CancellationToken ,上下文: CompletionContext ) : ProviderResult < CompletionList < T > | T []>
Provide completion items for the given position and document.
Parameter | Description |
---|---|
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. |
Returns | Description |
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 |
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.
Parameter | Description |
---|---|
item: T | A completion item currently active in the UI. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T> | The resolved completion item or a thenable that resolves to of such. It is OK to return the given
|
完成项目标签
完成项目标签是调整完成项目渲染的额外注释。
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.
Parameter | Description |
---|---|
items?: T[] | The completion items. |
isIncomplete?: boolean | The list is not complete. |
Returns | Description |
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.
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
scope?: ConfigurationScope | A scope in which to check. |
Returns | Description |
boolean |
|
配置范围
配置范围可以是“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.)
Parameter | Description |
---|---|
Returns | Description |
void |
自定义文档备份
CustomDocument的备份。
Properties
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.
Parameter | Description |
---|---|
Returns | Description |
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
.
Parameter | Description |
---|---|
Returns | Description |
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
.
Parameter | Description |
---|---|
Returns | Description |
void | Thenable<void> |
自定义文档打开上下文
有关打开自定义文档的附加信息。
Properties
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.
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).
Parameter | Description |
---|---|
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. |
Returns | Description |
Thenable<CustomDocumentBackup> |
openCustomDocument (uri :Uri,openContext :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
.
Parameter | Description |
---|---|
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. |
Returns | Description |
T | Thenable<T> | The custom document. |
解决自定义编辑器(文档:T,webviewPanel :WebviewPanel,令牌:CancellationToken ):无效| 然后可<无效>
Resolve a custom editor for a given resource.
This is called whenever the user opens a new editor for this CustomEditorProvider
.
Parameter | Description |
---|---|
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 |
token: CancellationToken | A cancellation token that indicates the result is no longer needed. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: T | Document to revert. |
cancellation: CancellationToken | Token that signals the revert is no longer required. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: T | Document to save. |
cancellation: CancellationToken | Token that signals the save is no longer required (for example, if another save was triggered). |
Returns | Description |
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.
Parameter | Description |
---|---|
document: T | Document to save. |
destination: Uri | Location to save to. |
cancellation: CancellationToken | Token that signals the save is no longer required. |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
CustomExecution |
CustomReadonlyEditorProvider<T>
使用自定义文档模型的只读自定义编辑器的提供程序。
自定义编辑器使用CustomDocument作为文档模型而不是TextDocument。
在处理二进制文件或更复杂的场景时,您应该使用这种类型的自定义编辑器。对于基于简单文本的文档,请改用CustomTextEditorProvider。
Methods
openCustomDocument (uri :Uri,openContext :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
.
Parameter | Description |
---|---|
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. |
Returns | Description |
T | Thenable<T> | The custom document. |
解决自定义编辑器(文档:T,webviewPanel :WebviewPanel,令牌:CancellationToken ):无效| 然后可<无效>
Resolve a custom editor for a given resource.
This is called whenever the user opens a new editor for this CustomEditorProvider
.
Parameter | Description |
---|---|
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 |
token: CancellationToken | A cancellation token that indicates the result is no longer needed. |
Returns | Description |
void | Thenable<void> | Optional thenable indicating that the custom editor has been resolved. |
自定义文本编辑器提供者
基于文本的自定义编辑器的提供者。
基于文本的自定义编辑器使用TextDocument作为其数据模型。这大大简化了自定义编辑器的实现,因为它允许编辑器处理许多常见操作,例如撤消和备份。提供者负责同步 webview 和TextDocument
.
Methods
解析自定义文本编辑器(文档:TextDocument,webviewPanel :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
.
Parameter | Description |
---|---|
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 |
token: CancellationToken | A cancellation token that indicates the result is no longer needed. |
Returns | Description |
void | Thenable<void> | Thenable indicating that the custom editor has been resolved. |
数据传输
包含相应传输数据的 MIME 类型映射的映射。
实现的拖放控制器handleDrag
可以向数据传输添加额外的 mime 类型。handleDrop
仅当从同一拖放控制器中的元素发起拖动时,才会包含这些附加的 mime 类型。
Constructors
新的数据传输():数据传输
Parameter | Description |
---|---|
Returns | Description |
DataTransfer |
Methods
[迭代器] ( ) : IterableIterator <[mimeType: string , item: DataTransferItem ]>
Get a new iterator with the [mime, item]
pairs for each element in this data transfer.
Parameter | Description |
---|---|
Returns | Description |
IterableIterator<[mimeType: string, item: DataTransferItem]> |
forEach ( callbackfn : (item: DataTransferItem , mimeType: string , dataTransfer: DataTransfer ) => void , thisArg ? :任意) : void
Allows iteration through the data transfer items.
Parameter | Description |
---|---|
callbackfn: (item: DataTransferItem, mimeType: string, dataTransfer: DataTransfer) => void | Callback for iteration through the data transfer items. |
thisArg?: any | The |
Returns | Description |
void |
获取(mimeType :字符串):DataTransferItem
Retrieves the data transfer item for a given mime type.
Parameter | Description |
---|---|
mimeType: string | The mime type to get the data transfer item for, such as Special mime types:
|
Returns | Description |
DataTransferItem |
设置(mimeType :字符串,值:DataTransferItem ):void
Sets a mime type to data transfer item mapping.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
Returns | Description |
Thenable<Uint8Array> |
数据传输项
封装拖放操作期间传输的数据。
Constructors
新的DataTransferItem (值:任意):DataTransferItem
Parameter | Description |
---|---|
value: any | Custom data stored on this item. Can be retrieved using DataTransferItem.value. |
Returns | Description |
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.
Parameter | Description |
---|---|
Returns | Description |
DataTransferFile | The file for the data transfer or |
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.
Parameter | Description |
---|---|
Returns | Description |
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.
Parameter | Description |
---|---|
Returns | Description |
any |
处理消息(消息:DebugProtocolMessage ):无效
Handle a Debug Adapter Protocol message. Messages can be requests, responses, or events. Results or errors are returned via onSendMessage events.
Parameter | Description |
---|---|
message: DebugProtocolMessage | A Debug Adapter Protocol message |
Returns | Description |
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; }
Parameter | Description |
---|---|
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). |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
implementation: DebugAdapter | |
Returns | Description |
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.
Parameter | Description |
---|---|
path: string | |
Returns | Description |
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.
Parameter | Description |
---|---|
port: number | |
host?: string | |
Returns | Description |
DebugAdapterServer |
Properties
The host.
The port.
调试适配器跟踪器
调试适配器跟踪器是一种跟踪编辑器和调试适配器之间通信的方法。
Events
The debug adapter has sent a Debug Adapter Protocol message to the editor.
onWillReceiveMessage (消息:任何):无效
The debug adapter is about to receive a Debug Adapter Protocol message from the editor.
A session with the debug adapter is about to be started.
Parameter | Description |
---|---|
Returns | Description |
void |
The debug adapter session is about to be stopped.
Parameter | Description |
---|---|
Returns | Description |
void |
Methods
An error with the debug adapter has occurred.
The debug adapter has exited with the given exit code or signal.
调试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.
Parameter | Description |
---|---|
session: DebugSession | The debug session for which the debug adapter tracker will be used. |
Returns | Description |
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.
Parameter | Description |
---|---|
folder: WorkspaceFolder | The workspace folder for which the configurations are used or |
token?: CancellationToken | A cancellation token. |
Returns | Description |
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.
Parameter | Description |
---|---|
folder: WorkspaceFolder | The workspace folder from which the configuration originates from or |
debugConfiguration: DebugConfiguration | The debug configuration to resolve. |
token?: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<DebugConfiguration> | The resolved debug configuration or undefined or null. |
solveDebugConfigurationWithSubstitutedVariables (文件夹:WorkspaceFolder,debugConfiguration :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.
Parameter | Description |
---|---|
folder: WorkspaceFolder | The workspace folder from which the configuration originates from or |
debugConfiguration: DebugConfiguration | The debug configuration to resolve. |
token?: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<DebugConfiguration> | The resolved debug configuration or undefined or null. |
调试配置提供者触发器种类
DebugConfigurationProviderTriggerKind 指定何时触发provideDebugConfigurations
a 的方法。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.
Append the given value and a line feed character to the debug console.
调试控制台模式
调试会话使用的调试控制台模式,请参阅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.
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.
Parameter | Description |
---|---|
command: string | |
args?: any | |
Returns | Description |
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.
Parameter | Description |
---|---|
breakpoint: Breakpoint | A Breakpoint in the editor. |
Returns | Description |
Thenable<DebugProtocolBreakpoint> | A promise that resolves to the Debug Adapter Protocol breakpoint or |
调试会话自定义事件
从调试会话接收到的自定义调试适配器协议事件。
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<Declaration> | A declaration or a thenable that resolves to such. The lack of a result can be
signaled by returning |
装饰实例渲染选项
表示装饰实例的渲染选项。请参阅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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<Definition | LocationLink[]> | A definition or a thenable that resolves to such. The lack of a result can be
signaled by returning |
诊断
表示诊断,例如编译器错误或警告。诊断对象仅在文件范围内有效。
Constructors
新诊断(范围:范围,消息:字符串,严重性?:诊断Severity ):诊断
Creates a new diagnostic object.
Parameter | Description |
---|---|
range: Range | The range to which this diagnostic applies. |
message: string | The human-readable message. |
severity?: DiagnosticSeverity | The severity, default is error. |
Returns | Description |
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)
;
Parameter | Description |
---|---|
Returns | Description |
void |
删除(uri :Uri ):无效
Remove all diagnostics from this collection that belong
to the provided uri
. The same as #set(uri, undefined)
.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
void |
Dispose and free associated resources. Calls clear.
Parameter | Description |
---|---|
Returns | Description |
void |
forEach (回调: (uri: Uri , 诊断: 只读诊断[], 集合: DiagnosticCollection ) =>任何, thisArg ? :任何) : void
Iterate over each entry in this collection.
Parameter | Description |
---|---|
callback: (uri: Uri, diagnostics: readonly Diagnostic[], collection: DiagnosticCollection) => any | Function to execute for each entry. |
thisArg?: any | The |
Returns | Description |
void |
Get the diagnostics for a given resource. Note that you cannot modify the diagnostics-array returned from this call.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
readonly Diagnostic[] | An immutable array of diagnostics or |
有(uri :Uri ):布尔值
Check if this collection contains diagnostics for a given resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
boolean |
|
Assign diagnostics for given resource. Will replace existing diagnostics for that resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
diagnostics: readonly Diagnostic[] | Array of diagnostics or |
Returns | Description |
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.
Parameter | Description |
---|---|
entries: ReadonlyArray<[Uri, readonly Diagnostic[]]> | An array of tuples, like |
Returns | Description |
void |
诊断相关信息
表示诊断的相关消息和源代码位置。这应该用于指向引起诊断或与诊断相关的代码位置,例如在作用域中复制符号时。
Constructors
新的 DiagnosticRelatedInformation (位置:位置,消息:字符串) : DiagnosticRelatedInformation
Creates a new related diagnostic information object.
Parameter | Description |
---|---|
location: Location | The location. |
message: string | The message. |
Returns | Description |
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
.
Parameter | Description |
---|---|
...disposableLikes: Array<{dispose: () => any}> | Objects that have at least a |
Returns | Description |
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.
Parameter | Description |
---|---|
callOnDispose: () => any | Function that disposes something. |
Returns | Description |
Disposable |
Methods
Dispose this object.
Parameter | Description |
---|---|
Returns | Description |
any |
文档颜色提供者
文档颜色提供程序定义了扩展与在编辑器中选择和修改颜色的功能之间的契约。
Methods
提供ColorPresentations (颜色:颜色,上下文: {文档:TextDocument,范围:范围},令牌:CancellationToken ):ProviderResult < ColorPresentation []>
Provide representations for a color.
Parameter | Description |
---|---|
color: Color | The color to show and insert. |
context: {document: TextDocument, range: Range} | A context object with additional information |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<ColorPresentation[]> | An array of color presentations or a thenable that resolves to such. The lack of a result
can be signaled by returning |
ProvideDocumentColors (文档:TextDocument,令牌:CancellationToken ):ProviderResult < ColorInformation []>
Provide colors for the given document.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<ColorInformation[]> | An array of color information or a thenable that resolves to such. The lack of a result
can be signaled by returning |
文件拖放编辑
应用于drop 的编辑操作。
Constructors
新的 DocumentDropEdit ( insertText : string | SnippetString ) : DocumentDropEdit
Parameter | Description |
---|---|
insertText: string | SnippetString | The text or snippet to insert at the drop location. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<DocumentDropEdit> | A DocumentDropEdit or a thenable that resolves to such. The lack of a result can be
signaled by returning |
文档过滤器
文档过滤器通过不同的属性来表示文档,例如语言、其资源的方案或应用于路径的全局模式。
示例 适用于磁盘上的 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.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
options: FormattingOptions | Options controlling formatting. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<TextEdit[]> | A set of text edits or a thenable that resolves to such. The lack of a result can be
signaled by returning |
文档亮点
文档突出显示是文本文档中值得特别关注的范围。通常,文档突出显示是通过更改其范围的背景颜色来可视化的。
Constructors
新的DocumentHighlight (范围:范围,种类?:DocumentHighlightKind ):DocumentHighlight
Creates a new document highlight object.
Parameter | Description |
---|---|
range: Range | The range the highlight applies to. |
kind?: DocumentHighlightKind | The highlight kind, default is text. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<DocumentHighlight[]> | An array of document highlights or a thenable that resolves to such. The lack of a result can be
signaled by returning |
文档链接
文档链接是文本文档中链接到内部或外部资源(例如另一个文本文档或网站)的范围。
Constructors
新的DocumentLink (范围:范围,目标?:Uri ):DocumentLink
Creates a new document link.
Parameter | Description |
---|---|
range: Range | The range the document link applies to. Must not be empty. |
target?: Uri | The uri the document link points to. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T[]> | An array of document links or a thenable that resolves to such. The lack of a result
can be signaled by returning |
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.
Parameter | Description |
---|---|
link: T | The link that is to be resolved. |
token: CancellationToken | A cancellation token. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<TextEdit[]> | A set of text edits or a thenable that resolves to such. The lack of a result can be
signaled by returning |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<TextEdit[]> | A set of text edits or a thenable that resolves to such. The lack of a result can be
signaled by returning |
DocumentRangeSemanticTokensProvider
文档范围语义标记提供者接口定义了扩展和语义标记之间的契约。
Methods
ProvideDocumentRangeSemanticTokens (文档: TextDocument ,范围: Range ,标记: CancellationToken ) : ProviderResult < SemanticTokens >
See also provideDocumentSemanticTokens.
Parameter | Description |
---|---|
document: TextDocument | |
range: Range | |
token: CancellationToken | |
Returns | Description |
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 inSemanticTokensLegend.tokenTypes
. We currently ask thattokenType
< 65536. - at index
5*i+4
-tokenModifiers
: each set bit will be looked up inSemanticTokensLegend.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: [] }
- 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']
- The first transformation step is to encode
tokenType
andtokenModifiers
as integers using the legend. Token types are looked up by index, so atokenType
value of1
meanstokenTypes[1]
. Multiple token modifiers can be set by using bit flags, so atokenModifier
value of3
is first viewed as binary0b00000011
, 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 }
- 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 thestartChar
of the first token, so it will be10 - 5
. The third token is on a different line than the second token, so thestartChar
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 }
- 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'.
Parameter | Description |
---|---|
document: TextDocument | |
token: CancellationToken | |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | |
previousResultId: string | |
token: CancellationToken | |
Returns | Description |
ProviderResult<SemanticTokens | SemanticTokensEdits> |
文档符号
表示出现在文档中的编程结构,如变量、类、接口等。文档符号可以是分层的,并且它们有两个范围:一个包含其定义,另一个指向其最有趣的范围,例如标识符的范围。
Constructors
新 DocumentSymbol (名称:字符串,详细信息:字符串,种类:SymbolKind,范围:范围,selectionRange :范围):DocumentSymbol
Creates a new document symbol.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
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 |
文档符号提供者元数据
有关文档符号提供程序的元数据。
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
void |
Clears all mutators from this collection.
Parameter | Description |
---|---|
Returns | Description |
void |
Deletes this collection's mutator for a variable.
forEach (回调:(变量:字符串,变异器:EnvironmentVariableMutator,集合:EnvironmentVariableCollection )=>任何,thisArg ?:任何) : void
Iterate over each mutator in this collection.
Parameter | Description |
---|---|
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any | Function to execute for each entry. |
thisArg?: any | The |
Returns | Description |
void |
get (变量:字符串) : EnvironmentVariableMutator
Gets the mutator that this collection applies to a variable, if any.
Parameter | Description |
---|---|
variable: string | The variable to get the mutator for. |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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
Apply to the environment just before the process is created. Defaults to false.
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.
Parameter | Description |
---|---|
range: Range | The range in the underlying document from which the evaluatable expression is extracted. |
expression?: string | If specified overrides the extracted expression. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<EvaluatableExpression> | An EvaluatableExpression or a thenable that resolves to such. The lack of a result can be
signaled by returning |
事件<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.
Parameter | Description |
---|---|
listener: (e: T) => any | The listener function will be called when the event happens. |
thisArgs?: any | The |
disposables?: Disposable[] | An array to which a Disposable will be added. |
Returns | Description |
Disposable | A disposable which unsubscribes the event listener. |
事件发射器<T>
事件发射器可用于创建和管理事件以供其他人订阅。一个发射器始终拥有一个事件。
如果您想在扩展程序中提供事件,例如在 TextDocumentContentProvider 中或向其他扩展程序提供 API 时,请使用此类。
Constructors
new EventEmitter <T> ( ) : EventEmitter <T> _ _ _
Parameter | Description |
---|---|
Returns | Description |
EventEmitter<T> |
Properties
The event listeners can subscribe to.
Methods
Dispose this object and free resources.
Parameter | Description |
---|---|
Returns | Description |
void |
火(数据:T ):无效
Notify all subscribers of the event. Failure of one or more listener will not fail this function call.
Parameter | Description |
---|---|
data: T | The event object. |
Returns | Description |
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.
The canonical extension identifier in the form of: publisher.name
.
true
if the extension has been activated.
The parsed contents of the extension's package.json.
Methods
activate ( ) : thenable <T> _ _
Activates this extension and returns its public API.
扩展上下文
扩展上下文是扩展私有的实用程序的集合。
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.
- deprecated - Use globalStorageUri instead.
全局存储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.
- deprecated - Use storageUri instead.
存储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.
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
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);
扩展类型
在远程窗口中,扩展类型描述了扩展是否在 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.
地点?:终端编辑器位置选项| 终端分割位置选项| 航站楼位置
The TerminalLocation or TerminalEditorLocationOptions or TerminalSplitLocationOptions for the terminal.
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.
Parameter | Description |
---|---|
badge?: string | A letter that represents the decoration. |
tooltip?: string | The tooltip of the decoration. |
color?: ThemeColor | The color of the decoration. |
Returns | Description |
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.
Parameter | Description |
---|---|
uri: Uri | The uri of the file to provide a decoration for. |
token: CancellationToken | A cancellation token. |
Returns | Description |
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
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.
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.
删除( uri : Uri , options ? : {recursive: boolean , useTrash: boolean } ) : Thenable < void >
Delete a file.
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.
readDirectory ( uri : Uri ) : Thenable <Array<[ string , FileType ]>>
Retrieve all entries of a directory.
readFile ( uri : Uri ) : Thenable <Uint8Array> _ _
Read the entire contents of a file.
重命名(源:Uri,目标:Uri,选项?: {覆盖:布尔} ):Thenable <void>
Rename a file or folder.
stat ( uri : Uri ) : Thenable < FileStat >
Retrieve metadata about a file.
writeFile (uri :Uri,内容:Uint8Array ):Thenable <void> _ _
Write data to a file, replacing its entire contents.
文件系统错误
文件系统提供者应该使用这种类型来发出错误信号。
此类具有用于常见错误情况的工厂方法,例如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.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
FileIsADirectory ( messageOrUri ? : string | Uri ) : FileSystemError
Create an error to signal that a file is a folder.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
FileNotADirectory ( messageOrUri ? : string | Uri ) : FileSystemError
Create an error to signal that a file is not a folder.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
FileNotFound ( messageOrUri ? : string | Uri ) : FileSystemError
Create an error to signal that a file or folder wasn't found.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
NoPermissions ( messageOrUri ? : string | Uri ) : FileSystemError
Create an error to signal that an operation lacks required permissions.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
不可用(messageOrUri ?:字符串| Uri ):FileSystemError
Create an error to signal that the file system is unavailable or too busy to complete a request.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
Constructors
新的 FileSystemError ( messageOrUri ? : string | Uri ) : FileSystemError
Creates a new filesystem error.
Parameter | Description |
---|---|
messageOrUri?: string | Uri | Message or uri. |
Returns | Description |
FileSystemError |
Properties
A code that identifies this error.
Possible values are names of errors, like FileNotFound,
or Unknown
for unspecified errors.
文件系统提供者
文件系统提供程序定义编辑器需要读取、写入、发现和管理文件和文件夹的内容。它允许扩展从远程位置(例如 ftp 服务器)提供文件服务,并将这些文件无缝集成到编辑器中。
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
source
doesn't exist.
- throws - FileNotFound when parent of
destination
doesn't exist, e.g. no mkdirp-logic required.
- throws - FileExists when
destination
exists and when theoverwrite
option is nottrue
.
- throws - NoPermissions when permissions aren't sufficient.
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.
- throws - FileExists when
uri
already exists.
- throws - NoPermissions when permissions aren't sufficient.
删除( uri : Uri ,选项: {recursive: boolean } ) : void | 然后可<无效>
Delete a file.
- throws - FileNotFound when
uri
doesn't exist.
- throws - NoPermissions when permissions aren't sufficient.
readDirectory ( uri : Uri ) : Array<[字符串,文件类型]> | 然后可以<Array<[ string , FileType ]>>
Retrieve all entries of a directory.
- throws - FileNotFound when
uri
doesn't exist.
读取文件(uri :Uri ):Uint8Array | 然后可<Uint8Array> _
Read the entire contents of a file.
- throws - FileNotFound when
uri
doesn't exist.
重命名( oldUri : Uri , newUri : Uri , options : {overwrite: boolean } ) : void | 然后可<无效>
Rename a file or folder.
- throws - FileNotFound when
oldUri
doesn't exist.
- throws - FileNotFound when parent of
newUri
doesn't exist, e.g. no mkdirp-logic required.
- throws - FileExists when
newUri
exists and when theoverwrite
option is nottrue
.
- throws - NoPermissions when permissions aren't sufficient.
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
.
- throws - FileNotFound when
uri
doesn't exist.
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.
Parameter | Description |
---|---|
uri: Uri | The uri of the file or folder to be watched. |
options: {excludes: readonly string[], recursive: boolean} | Configures the watch. |
Returns | Description |
Disposable | A disposable that tells the provider to stop watching the |
writeFile (uri :Uri,内容:Uint8Array,选项: {创建:布尔值,覆盖:布尔值} ):无效| 然后可<无效>
Write data to a file, replacing its entire contents.
- throws - FileNotFound when
uri
doesn't exist andcreate
is not set.
- throws - FileNotFound when the parent of
uri
doesn't exist andcreate
is set, e.g. no mkdirp-logic required.
- throws - FileExists when
uri
already exists,create
is set butoverwrite
is not set.
- throws - NoPermissions when permissions aren't sufficient.
文件系统观察者
文件系统观察器通知磁盘上或来自其他FileSystemProviders的文件和文件夹的更改。
FileSystemWatcher
要获取使用
createFileSystemWatcher的实例。
Events
An event which fires on file/folder change.
An event which fires on file/folder creation.
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.
Parameter | Description |
---|---|
Returns | Description |
any |
文件类型
文件类型的枚举。类型File
和Directory
也可以是符号链接,在这种情况下使用FileType.File | FileType.SymbolicLink
和
FileType.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);
});
Parameter | Description |
---|---|
thenable: Thenable<WorkspaceEdit> | A thenable that delays saving. |
Returns | Description |
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.
Parameter | Description |
---|---|
thenable: Thenable<any> | A thenable that delays saving. |
Returns | Description |
void |
文件删除事件
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);
});
Parameter | Description |
---|---|
thenable: Thenable<WorkspaceEdit> | A thenable that delays saving. |
Returns | Description |
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.
Parameter | Description |
---|---|
thenable: Thenable<any> | A thenable that delays saving. |
Returns | Description |
void |
文件重命名事件
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);
});
Parameter | Description |
---|---|
thenable: Thenable<WorkspaceEdit> | A thenable that delays saving. |
Returns | Description |
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.
Parameter | Description |
---|---|
thenable: Thenable<any> | A thenable that delays saving. |
Returns | Description |
void |
折叠上下文
折叠上下文(以供将来使用)
折叠范围
基于行的折叠范围。为了有效,起始行和结束行必须大于零且小于文档中的行数。无效范围将被忽略。
Constructors
new FoldingRange (开始:数字,结束:数字,种类?:FoldingRangeKind ):FoldingRange
Creates a new folding range.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
context: FoldingContext | Additional context information (for future use) |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<FoldingRange[]> |
格式选项
描述应使用哪些选项格式的值对象。
Properties
Prefer spaces over tabs.
Size of a tab in spaces.
函数断点
由函数名称指定的断点。
Constructors
new FunctionBreakpoint (函数名:字符串,启用? :布尔值,条件? :字符串, hitCondition ? :字符串, logMessage ? :字符串) : FunctionBreakpoint
Create a new function breakpoint.
Parameter | Description |
---|---|
functionName: string | |
enabled?: boolean | |
condition?: string | |
hitCondition?: string | |
logMessage?: string | |
Returns | Description |
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.
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
void |
Clears all mutators from this collection.
Parameter | Description |
---|---|
Returns | Description |
void |
Deletes this collection's mutator for a variable.
forEach (回调:(变量:字符串,变异器:EnvironmentVariableMutator,集合:EnvironmentVariableCollection )=>任何,thisArg ?:任何) : void
Iterate over each mutator in this collection.
Parameter | Description |
---|---|
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any | Function to execute for each entry. |
thisArg?: any | The |
Returns | Description |
void |
get (变量:字符串) : EnvironmentVariableMutator
Gets the mutator that this collection applies to a variable, if any.
Parameter | Description |
---|---|
variable: string | The variable to get the mutator for. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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.
Parameter | Description |
---|---|
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 |
Returns | Description |
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.
Parameter | Description |
---|---|
contents: MarkdownString | MarkedString | Array<MarkdownString | MarkedString> | The contents of the hover. |
range?: Range | The range to which the hover applies. |
Returns | Description |
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<Hover> | A hover or a thenable that resolves to such. The lack of a result can be
signaled by returning |
实施提供者
实现提供者接口定义了扩展和转到实现功能之间的契约。
Methods
ProvideImplementation (文档: TextDocument ,位置: Position ,令牌: CancellationToken ) : ProviderResult <定义| 位置链接[]>
Provide the implementations of the symbol at the given position and document.
Parameter | Description |
---|---|
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. |
Returns | Description |
ProviderResult<Definition | LocationLink[]> | A definition or a thenable that resolves to such. The lack of a result can be
signaled by returning |
缩进动作
描述按 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).
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.
Parameter | Description |
---|---|
position: Position | The position of the hint. |
label: string | InlayHintLabelPart[] | The label of the hint. |
kind?: InlayHintKind | The kind of the hint. |
Returns | Description |
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.
Parameter | Description |
---|---|
value: string | The value of the part. |
Returns | Description |
InlayHintLabelPart |
Properties
命令?:命令
地点?:地点
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
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.
Parameter | Description |
---|---|
hint: T | An inlay hint. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult<T> | The resolved inlay hint or a thenable that resolves to such. It is OK to return the given |
内联完成上下文
提供有关请求内联完成的上下文的信息。
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.
Parameter | Description |
---|---|
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. |
Returns | Description |
InlineCompletionItem |
Properties
命令?:命令
An optional Command that is executed after inserting this completion.
用于身份验证的命名空间。