vscode namespace API
翻訳途中でも掲載されています
commands
Functions
executeCommand<T>(command: string, …rest: any[]): Thenable<T | undefined>
Executes the command denoted by the given command identifier.
When executing an editor command not all types are allowed to
be passed as arguments. Allowed are the primitive types string
, boolean
,number
, undefined
, and null
, as well as classes defined in this API.
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 | undefined> | A thenable that resolves to the returned value of the given command. |
getCommands(filterInternal?: boolean): Thenable<string[]>
Retrieve the list of all available commands. Commands starting 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(command: string, callback: (args: any[]) => any, thisArg?: any): Disposable
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(command: string, callback: (textEditor: TextEditor, edit: TextEditorEdit, args: any[]) => void, thisArg?: any): Disposable
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.
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. |
debug
Namespace for dealing with debug sessions.
Variables
activeDebugSession: DebugSession | undefined
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
.
Events
onDidChangeActiveDebugSession: Event<DebugSession | undefined>
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
.
onDidReceiveDebugSessionCustomEvent: Event<DebugSessionCustomEvent>
onDidStartDebugSession: Event<DebugSession>
onDidTerminateDebugSession: Event<DebugSession>
Functions
startDebugging(folder: WorkspaceFolder | undefined, nameOrConfiguration: string | DebugConfiguration): 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. '${workspaceRoot}') are resolved against the given folder.
Parameter | Description |
---|---|
folder: WorkspaceFolder | undefined | 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. |
Returns | Description |
Thenable<boolean> | A thenable that resolves when debugging could be successfully started. |
env
エディターが実行される環境を説明する名前空間
Variables
appName: string
'VS Code' のようなエディターのアプリケーション名
- readonly
language: string
de-CH
, fr
, en-US
のようなユーザーが設定したユーザーの言語を表します
- readonly
machineId: string
そのコンピューターを示すユニークな識別子
- readonly
sessionId: string
現在のセッションを示すユニークな識別子
エディターが起動されるたびに変更されます
- readonly
extensions
インストールされた拡張機能を扱うための名前空間
拡張機能は、それらを反映することができる extension インターフェイスに表示します。
拡張機能の作成者は API の public surface を activate
-call (アクティ化呼び出し) から返すことによって他の拡張機能に 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 に依存するときは、extensionDependency
エントリを package.json
に追加し、 getExtension-関数と getExtension-関数を以下のように使用します:
let mathExt = extensions.getExtension(‘genius.math’);
let importedApi = mathExt.exports;
console.log(importedApi.mul(42, 1));
Variables
現在システムに登録されているすべての拡張機能
Functions
getExtension(extensionId: string): Extension<any> | undefined
拡張機能を publisher.name
の形で完全な識別子を取得します
Parameter | Description |
---|---|
extensionId: string | An extension identifier. |
Returns | Description |
Extension<any> | undefined | 拡張機能または |
getExtension<T>(extensionId: string): Extension<T> | undefined
拡張機能を publisher.name
の形で識別子を取得します
Parameter | Description |
---|---|
extensionId: string | An extension identifier. |
Returns | Description |
Extension<T> | undefined | 拡張機能または |
languages
Namespace for participating in language-specific editor features,
like IntelliSense, code actions, diagnostics etc.
Many programming languages exist and there is huge variety in syntaxes, semantics, and paradigms. Despite that, features
like automatic word-completion, code navigation, or code checking have become popular across different tools for different
programming languages.
The editor provides an API that makes it simple to provide such common features by having all UI and actions already in place and
by allowing you to participate by providing data only. For instance, to contribute a hover all you have to do is provide a function
that can be called with a TextDocument and a Position returning hover info. The rest, like tracking the
mouse, positioning the hover, keeping the hover stable etc. is taken care of by the editor.
languages.registerHoverProvider(‘javascript’, {
provideHover(document, position, token) {
return new Hover(‘I am a hover!’);
}
});
Registration is done using a document selector which is either a language id, like javascript
or
a more complex filter like { language: 'typescript', scheme: 'file' }
. Matching a document against such
a selector will result in a score that is used to determine if and how a provider shall be used. When
scores are equal the provider that came last wins. For features that allow full arity, like hover,
the score is only checked to be >0
, for other features, like IntelliSense the
score is used for determining the order in which providers are asked to participate.
Functions
createDiagnosticCollection(name?: string): DiagnosticCollection
Create a diagnostics collection.
Parameter | Description |
---|---|
name?: string | The name of the collection. |
Returns | Description |
DiagnosticCollection | A new diagnostic collection. |
getLanguages(): Thenable<string[]>
Return the identifiers of all known languages.
match(selector: DocumentSelector, document: TextDocument): number
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 containedDocumentFilter
or language identifier and take the maximum value. - A string will be desugared to become the
language
-part of aDocumentFilter
, 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
, orpattern
are defined but one doesn’t match, the result is0
- Matching against
gives a score of
5
, matching via equality or via a glob-pattern gives a score of10
- The result is the maximun 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
Parameter | Description |
---|---|
selector: DocumentSelector | A document selector. |
document: TextDocument | A text document. |
Returns | Description |
number | A number |
registerCodeActionsProvider(selector: DocumentSelector, provider: CodeActionProvider): Disposable
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 | A code action provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerCodeLensProvider(selector: DocumentSelector, provider: CodeLensProvider): Disposable
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 | A code lens provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerCompletionItemProvider(selector: DocumentSelector, provider: CompletionItemProvider, …triggerCharacters: string[]): Disposable
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.
Parameter | Description |
---|---|
selector: DocumentSelector | A selector that defines the documents this provider is applicable to. |
provider: CompletionItemProvider | A completion provider. |
…triggerCharacters: string[] | Trigger completion when the user types one of the characters, like |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerDefinitionProvider(selector: DocumentSelector, provider: DefinitionProvider): Disposable
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. |
registerDocumentFormattingEditProvider(selector: DocumentSelector, provider: DocumentFormattingEditProvider): Disposable
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(selector: DocumentSelector, provider: DocumentHighlightProvider): Disposable
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(selector: DocumentSelector, provider: DocumentLinkProvider): Disposable
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 | A document link provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerDocumentRangeFormattingEditProvider(selector: DocumentSelector, provider: DocumentRangeFormattingEditProvider): Disposable
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. |
registerDocumentSymbolProvider(selector: DocumentSelector, provider: DocumentSymbolProvider): Disposable
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. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerHoverProvider(selector: DocumentSelector, provider: HoverProvider): Disposable
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(selector: DocumentSelector, provider: ImplementationProvider): Disposable
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. |
registerOnTypeFormattingEditProvider(selector: DocumentSelector, provider: OnTypeFormattingEditProvider, firstTriggerCharacter: string, …moreTriggerCharacter: string[]): Disposable
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(selector: DocumentSelector, provider: ReferenceProvider): Disposable
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(selector: DocumentSelector, provider: RenameProvider): Disposable
Register a reference 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: RenameProvider | A rename provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerSignatureHelpProvider(selector: DocumentSelector, provider: SignatureHelpProvider, …triggerCharacters: string[]): Disposable
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. |
registerTypeDefinitionProvider(selector: DocumentSelector, provider: TypeDefinitionProvider): Disposable
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. |
registerWorkspaceSymbolProvider(provider: WorkspaceSymbolProvider): Disposable
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 | A workspace symbol provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
setLanguageConfiguration(language: string, configuration: LanguageConfiguration): Disposable
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. |
scm
Variables
inputBox: SourceControlInputBox
Functions
createSourceControl(id: string, label: string): SourceControl
Creates a new source control instance.
Parameter | Description |
---|---|
id: string | A unique |
label: string | A human-readable string for the source control. Eg: |
Returns | Description |
SourceControl | An instance of source control. |
window
Namespace for dealing with the current window of the editor. That is visible
and active editors, as well as, UI elements to show messages, selections, and
asking for user input.
Variables
activeTextEditor: TextEditor | undefined
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.
visibleTextEditors: TextEditor[]
The currently visible editors or an empty array.
Events
onDidChangeActiveTextEditor: Event<TextEditor>
An event which fires when the active editor
has changed. Note that the event also fires when the active editor changes
to undefined
.
onDidChangeTextEditorOptions: Event<TextEditorOptionsChangeEvent>
onDidChangeTextEditorSelection: Event<TextEditorSelectionChangeEvent>
onDidChangeTextEditorViewColumn: Event<TextEditorViewColumnChangeEvent>
onDidChangeVisibleTextEditors: Event<TextEditor[]>
onDidCloseTerminal: Event<Terminal>
Functions
createOutputChannel(name: string): OutputChannel
Create a new output channel with the given name.
Parameter | Description |
---|---|
name: string | Human-readable string which will be used to represent the channel in the UI. |
Returns | Description |
OutputChannel |
createStatusBarItem(alignment?: StatusBarAlignment, priority?: number): StatusBarItem
Creates a status bar item.
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(name?: string, shellPath?: string, shellArgs?: string[]): Terminal
Creates a Terminal. The cwd of the terminal will be the workspace directory
if it exists, regardless of whether an explicit customStartPath setting exists.
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[] | Optional args for the custom shell executable, this does not work on Windows (see #8429) |
Returns | Description |
Terminal | A new Terminal. |
createTerminal(options: TerminalOptions): Terminal
Creates a Terminal. The cwd of the terminal will be the workspace directory
if it exists, regardless of whether an explicit customStartPath setting exists.
Parameter | Description |
---|---|
options: TerminalOptions | A TerminalOptions object describing the characteristics of the new terminal. |
Returns | Description |
Terminal | A new Terminal. |
createTextEditorDecorationType(options: 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. |
registerTreeDataProvider<T>(viewId: string, treeDataProvider: TreeDataProvider<T>): Disposable
Register a TreeDataProvider for the view contributed using the extension point views
.
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 |
setStatusBarMessage(text: string, hideAfterTimeout: number): 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. |
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): Disposable
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(message: string, …items: string[]): Thenable<string | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
…items: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showErrorMessage(message: string, options: MessageOptions, …items: string[]): Thenable<string | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
options: MessageOptions | Configures the behaviour of the message. |
…items: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showErrorMessage<T extends MessageItem>(message: string, …items: T[]): Thenable<T | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
…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>(message: string, options: MessageOptions, …items: T[]): Thenable<T | undefined>
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(message: string, …items: string[]): Thenable<string | undefined>
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. |
…items: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showInformationMessage(message: string, options: MessageOptions, …items: string[]): Thenable<string | undefined>
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: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showInformationMessage<T extends MessageItem>(message: string, …items: T[]): Thenable<T | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
…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>(message: string, options: MessageOptions, …items: T[]): Thenable<T | undefined>
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(options?: InputBoxOptions, token?: CancellationToken): Thenable<string | undefined>
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 |
showQuickPick(items: string[] | Thenable<string[]>, options?: QuickPickOptions, token?: CancellationToken): Thenable<string | undefined>
Shows a selection list.
Parameter | Description |
---|---|
items: string[] | Thenable<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: T[] | Thenable<T[]>, options?: QuickPickOptions, token?: CancellationToken): Thenable<T | undefined>
Shows a selection list.
Parameter | Description |
---|---|
items: T[] | Thenable<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 |
showTextDocument(document: TextDocument, column?: ViewColumn, preserveFocus?: boolean): 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 one, other values |
preserveFocus?: boolean | When |
Returns | Description |
Thenable<TextEditor> | A promise that resolves to an editor. |
showTextDocument(document: TextDocument, options?: 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 | (#ShowTextDocumentOptions) to configure the behavior of showing the editor. |
Returns | Description |
Thenable<TextEditor> | A promise that resolves to an editor. |
showTextDocument(uri: Uri, options?: TextDocumentShowOptions): Thenable<TextEditor>
A short-hand for openTextDocument(uri).then(document => showTextDocument(document, options))
.
- see - openTextDocument
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
options?: TextDocumentShowOptions | (#ShowTextDocumentOptions) to configure the behavior of showing the editor. |
Returns | Description |
Thenable<TextEditor> | A promise that resolves to an editor. |
showWarningMessage(message: string, …items: string[]): Thenable<string | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
…items: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showWarningMessage(message: string, options: MessageOptions, …items: string[]): Thenable<string | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
options: MessageOptions | Configures the behaviour of the message. |
…items: string[] | A set of items that will be rendered as actions in the message. |
Returns | Description |
Thenable<string | undefined> | A thenable that resolves to the selected item or |
showWarningMessage<T extends MessageItem>(message: string, …items: T[]): Thenable<T | undefined>
Parameter | Description |
---|---|
message: string | The message to show. |
…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>(message: string, options: MessageOptions, …items: T[]): Thenable<T | undefined>
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 |
withProgress<R>(options: ProgressOptions, task: (progress: Progress<{message: string}>) => 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 | |
task: (progress: Progress<{message: string}>) => Thenable<R> | A callback returning a promise. Progress state can be reported with |
Returns | Description |
Thenable<R> | The thenable the task-callback returned. |
withScmProgress<R>(task: (progress: Progress<number>) => 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.
Parameter | Description |
---|---|
task: (progress: Progress<number>) => Thenable<R> | A callback returning a promise. Progress increments can be reported with |
Returns | Description |
Thenable<R> | The thenable the task did rseturn. |
workspace
Namespace for dealing with the current workspace. A workspace is the representation
of the folder that has been opened. There is no workspace when just a file but not a
folder has been opened.
The workspace offers support for listening to fs
events and for finding files. Both perform well and run outside
the editor-process so that they should be always used instead of nodejs-equivalents.
Variables
The folder that is open in the editor. undefined
when no folder
has been opened.
- deprecated - Use
workspaceFolders
instead.
- readonly
textDocuments: TextDocument[]
All text documents currently known to the system.
- readonly
workspaceFolders: WorkspaceFolder[] | undefined
List of workspace folders or undefined
when no folder is open.
Note that the first entry corresponds to the value of rootPath
.
- readonly
Events
onDidChangeConfiguration: Event<void>
onDidChangeTextDocument: Event<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: Event<WorkspaceFoldersChangeEvent>
An event that is emitted when a workspace folder is added or removed.
onDidCloseTextDocument: Event<TextDocument>
onDidOpenTextDocument: Event<TextDocument>
onDidSaveTextDocument: Event<TextDocument>
onWillSaveTextDocument: Event<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(edit: WorkspaceEdit): Thenable<boolean>
Make changes to one or many resources as defined by the given
workspace edit.
When applying a workspace edit, the editor implements an 'all-or-nothing'-strategy,
that means failure to load one document or make changes to one document will cause
the edit to be rejected.
Parameter | Description |
---|---|
edit: WorkspaceEdit | A workspace 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: string, ignoreCreateEvents?: boolean, ignoreChangeEvents?: boolean, ignoreDeleteEvents?: boolean): FileSystemWatcher
Creates a file system watcher.
A glob pattern that filters the file events must be provided. Optionally, flags to ignore certain
kinds of events can be provided. To stop listening to events the watcher must be disposed.
Note that only files within the current workspace folders can be watched.
Parameter | Description |
---|---|
globPattern: string | A glob pattern that is applied to the names of created, changed, and deleted files. |
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. |
findFiles(include: string, exclude?: string, maxResults?: number, token?: CancellationToken): Thenable<Uri[]>
Find files in the workspace.
- sample -
findFiles('∕*.js', '∕node_modules∕**', 10)
Parameter | Description |
---|---|
include: string | A glob pattern that defines the files to search for. |
exclude?: string | A glob pattern that defines files and folders to exclude. |
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. |
getConfiguration(section?: string, resource?: Uri): 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 resource is provided, configuration scoped to that resource is returned.
Parameter | Description |
---|---|
section?: string | A dot-separated identifier. |
resource?: Uri | A resource for which the configuration is asked for |
Returns | Description |
WorkspaceConfiguration | The full configuration or a subset. |
getWorkspaceFolder(uri: Uri): WorkspaceFolder | undefined
Returns a workspace folder for the provided resource. When the resource
is a workspace folder itself, its parent workspace folder or undefined
is returned.
Parameter | Description |
---|---|
uri: Uri | An uri. |
Returns | Description |
WorkspaceFolder | undefined | A workspace folder or |
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, will be rejected if the file does not exist or cannot be loaded.untitled
-scheme: A new file that should be saved on disk, e.g.untitled:c:\frodo\new.js
. The language
will be derived from the file name.- For all other schemes the registered text document content providers are consulted.
Note that the lifecycle of the returned document is owned by the editor and not by the extension. That means anonDidClose
-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(fileName: string): Thenable<TextDocument>
Parameter | Description |
---|---|
fileName: string | A name of a file on disk. |
Returns | Description |
Thenable<TextDocument> | A promise that resolves to a document. |
openTextDocument(options?: {content: string, language: string}): 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. |
registerTaskProvider(type: string, provider: TaskProvider): Disposable
Register a task provider.
Parameter | Description |
---|---|
type: string | The task kind type this provider is registered for. |
provider: TaskProvider | A task provider. |
Returns | Description |
Disposable | A disposable that unregisters this provider when being disposed. |
registerTextDocumentContentProvider(scheme: string, provider: TextDocumentContentProvider): Disposable
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. |
CancellationToken
A cancellation token is passed to an asynchronous or long running
operation to request cancellation, like cancelling a request
for completion items because the user continued to type.
To get an instance of a CancellationToken
use a
CancellationTokenSource.
Properties
isCancellationRequested: boolean
Is true
when the token has been cancelled, false
otherwise.
onCancellationRequested: Event<any>
CancellationTokenSource
A cancellation source creates and controls a cancellation token.
Properties
token: CancellationToken
The cancellation token of this source.
Methods
cancel(): void
dispose(): void
CharacterPair
A tuple of two characters, like a pair of
opening and closing brackets.
CharacterPair: [string, string]
CodeActionContext
Contains additional diagnostic information about the context in which
a code action is run.
Properties
diagnostics: Diagnostic[]
An array of diagnostics.
CodeActionProvider
The code action interface defines the contract between extensions and
the light bulb feature.
A code action can be any command that is known to the system.
Methods
provideCodeActions(document: TextDocument, range: Range, context: CodeActionContext, token: CancellationToken): ProviderResult
Provide commands for the given document and range.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
range: Range | The range for which the command was invoked. |
context: CodeActionContext | Context carrying additional information. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | An array of commands or a thenable of such. The lack of a result can be |
CodeLens
CodeLens は参照の数、テストを実行する方法など、ソース テキストともに表示される command を表します
CodeLens はコマンドが関連付けされていないときは unresolved です。
パフォーマンス上の理由から、CodeLensの作成と解決は 2 つの段階に分かれていなければなりません。
Constructors
new CodeLens(range: Range, command?: Command): CodeLens
新しい CodeLens オブジェクトを作成します
Parameter | Description |
---|---|
range: Range | The range to which this code lens applies. |
command?: Command | The command associated to this code lens. |
Returns | Description |
CodeLens |
Properties
command?: Command
このCodeLens が示すコマンド
isResolved: boolean
関連するコマンドがあるとき true
です
range: Range
このCodeLens が有効な範囲。1 行のみ span します。
CodeLensProvider
Events
onDidChangeCodeLenses?: Event<void>
このプロバイダーが変更されたことを通知するオプションのイベント
Methods
provideCodeLenses(document: TextDocument, token: CancellationToken): ProviderResult
lenses のリストを計算します。
この呼び出しはできるだけ速く返す必要があります。もしコマンドの計算が複雑な実装の場合は範囲を指定する CodeLens オブジェクトを返すだけで resolve するよう実装しなければなりません。
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | An array of code lenses or a thenable that resolves to such. The lack of a result can be |
resolveCodeLens(codeLens: CodeLens, token: CancellationToken): ProviderResult
この関数は CodeLens が表示されるたびに呼び出されます。通常はスクロール後とcompute-lenses を呼び出したあとです。
Parameter | Description |
---|---|
codeLens: CodeLens | code lens that must be resolved. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | The given, resolved code lens or thenable that resolves to such. |
Command
コマンドへの参照を表示します
UI でコマンドを表すために使用されます。オプションで呼び出されたとき、コマンド ハンドラに渡される引数の配列を提供します。
Properties
arguments?: any[]
コマンドハンドラが呼び出されるべき引数
command: string
title: string
save
のようなコマンドのタイトル
tooltip?: string
UI で表示されたときのコマンド用ツールチップ
CommentRule
Describes how comments for a language work.
Properties
blockComment?: CharacterPair
The block comment character pair, like / block comment /
lineComment?: string
The line comment token, like // this is a comment
CompletionItem
A completion item represents a text snippet that is proposed to complete text that is being typed.
It is suffient to create a completion item from just a label. In that
case the completion item will replace the word
until the cursor with the given label or insertText. Otherwise the
the given edit is used.
When selecting a completion item in the editor its defined or synthesized text edit will be applied
to all cursors/selections whereas additionalTextEdits will be
applied as provided.
Constructors
new CompletionItem(label: string, kind?: 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 | The label of the completion. |
kind?: CompletionItemKind | The kind of the completion. |
Returns | Description |
CompletionItem |
Properties
additionalTextEdits?: TextEdit[]
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.
command?: Command
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.
commitCharacters?: string[]
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.
detail?: string
A human-readable string with additional information
about this item, like type or symbol information.
documentation?: string
A human-readable string that represents a doc-comment.
filterText?: string
insertText?: string | SnippetString
A string or snippet that should be inserted in a document when selecting
this completion. When falsy
the label
is used.
kind?: CompletionItemKind
The kind of this completion item. Based on the kind
an icon is chosen by the editor.
label: string
The label of this completion item. By default
this is also the text that is inserted when selecting
this completion.
range?: Range
A range of text that should be replaced by this completion item.
Defaults to a range from the start of the current word to the
current position.
Note: The range must be a single line and it must
contain the position at which completion has been requested.
sortText?: string
textEdit?: TextEdit
- 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.
CompletionItemKind
Completion の種類
Enumeration members
6
15
20
3
12
19
22
4
16
18
2
7
13
1
8
23
9
17
14
21
0
24
10
11
5
CompletionItemProvider
The completion item provider interface defines the contract between extensions and
IntelliSense.
When computing complete completion items is expensive, providers can optionally implement
the resolveCompletionItem
-function. In that case it is enough to return completion
items with a label from the
provideCompletionItems-function. Subsequently,
when a completion item is shown in the UI and gains focus this provider is asked to resolve
the item, like adding doc-comment or details.
Providers are asked for completions either explicitly by a user gesture or -depending on the configuration-
implicitly when typing words or trigger characters.
Methods
provideCompletionItems(document: TextDocument, position: Position, token: CancellationToken): ProviderResult
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. |
Returns | Description |
ProviderResult | An array of completions, a completion list, or a thenable that resolves to either. |
resolveCompletionItem(item: CompletionItem, token: CancellationToken): ProviderResult
Given a completion item fill in more data, like doc-comment
or details.
The editor will only resolve a completion item once.
Parameter | Description |
---|---|
item: CompletionItem | A completion item currently active in the UI. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | The resolved completion item or a thenable that resolves to of such. It is OK to return the given |
CompletionList
Represents a collection of completion items to be presented
in the editor.
Constructors
new CompletionList(items?: CompletionItem[], isIncomplete?: boolean): CompletionList
Creates a new completion list.
Parameter | Description |
---|---|
items?: CompletionItem[] | The completion items. |
isIncomplete?: boolean | The list is not complete. |
Returns | Description |
CompletionList |
Properties
isIncomplete?: boolean
This list it not complete. Further typing should result in recomputing
this list.
items: CompletionItem[]
The completion items.
ConfigurationTarget
The configuration target
Enumeration members
1
2
3
DebugConfiguration
Configuration for a debug session.
Properties
name?: string
An optional name for the debug session.
request: string
The request type of the debug session.
type: string
The type for the debug session.
DebugSession
A debug session.
Properties
id: string
The unique ID of this debug session.
name: string
type: string
Methods
customRequest(command: string, args?: any): Thenable<any>
Send a custom request to the debug adapter.
DebugSessionCustomEvent
A custom Debug Adapter Protocol event received from a debug session.
Properties
body?: any
Event specific information.
event: string
Type of event.
session: DebugSession
DecorationInstanceRenderOptions
Properties
after?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの後ろに挿入される attachment の描画オプションを定義します
before?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの前に挿入される attachment の描画オプションを定義します
dark?: ThemableDecorationInstanceRenderOptions
dark theme 用の上書きオプション
light?: ThemableDecorationInstanceRenderOptions
light theme 用の上書きオプション
DecorationOptions
decoration set 内で特定のデコレーション用のオプションを表します
Properties
hoverMessage?: MarkedString | MarkedString[]
デコレーション上をホバーするとき、描画されるべきメッセージ
range: Range
このデコレーションができようされる範囲。範囲は空にできません。
renderOptions?: DecorationInstanceRenderOptions
現在のデコレーションに適用される描画オプション
パフォーマンスの理由から、デコレーション固有のオプションの数はできるだけ少なくし、可能な限りデコレーション タイプを使用してください
DecorationRangeBehavior
入力/編集するとき、エッジでのデコレーションの動作を説明します
Enumeration members
1
3
2
0
DecorationRenderOptions
text editor decoration 用の描画スタイルを表します
Properties
after?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの後ろに挿入される attachment の描画オプションを定義します
backgroundColor?: string | ThemeColor
before?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの前に挿入される attachment の描画オプションを定義します
border?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
borderColor?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderRadius?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderSpacing?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderStyle?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderWidth?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
color?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
cursor?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
dark?: ThemableDecorationRenderOptions
dark theme 用の上書きオプション
絶対パス または ガターに描画する画像への URI
gutterIconSize?: string
ガターアイコンのサイズを指定します
使用可能な値は 'auto', 'contain', 'cover', 任意のパーセント値です。
詳細: https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspx
isWholeLine?: boolean
デコレーションは行テキストの後ろの空白でも表示されるべきか
既定は false
です
letterSpacing?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
light?: ThemableDecorationRenderOptions
light theme 用の上書きオプション
outline?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
outlineColor?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
outlineStyle?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
outlineWidth?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
overviewRulerColor?: string | ThemeColor
概要ルーラーのデコレーション色
rgba() を使用して透明な色を定義することで、他のデコレーションとうまく一緒になります。
overviewRulerLane?: OverviewRulerLane
デコレーションを描画するべき概要ルーラーの位置
rangeBehavior?: DecorationRangeBehavior
デコレーションの範囲のエッジで編集が行われたとき、デコレーションのどうだが変化するようにカスタマイズします
既定は DecorationRangeBehavior.OpenOpen
です。
textDecoration?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
Definition
The definition of a symbol represented as one or many locations.
For most programming languages there is only one location at which a symbol is
defined.
Definition: Location | Location[]
DefinitionProvider
The definition provider interface defines the contract between extensions and
the go to definition
and peek definition features.
Methods
provideDefinition(document: TextDocument, position: Position, token: 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 | A definition or a thenable that resolves to such. The lack of a result can be |
Diagnostic
Represents a diagnostic, such as a compiler error or warning. Diagnostic objects
are only valid in the scope of a file.
Constructors
new Diagnostic(range: Range, message: string, severity?: DiagnosticSeverity): Diagnostic
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
A code or identifier for this diagnostics. Will not be surfaced
to the user, but should be used for later processing, e.g. when
providing code actions.
message: string
The human-readable message.
range: Range
The range to which this diagnostic applies.
severity: DiagnosticSeverity
source: string
A human-readable string describing the source of this
diagnostic, e.g. 'typescript' or 'super lint'.
DiagnosticCollection
A diagnostics collection is a container that manages a set of
diagnostics. Diagnostics are always scopes to a
diagnostics collection and a resource.
To get an instance of a DiagnosticCollection
use
createDiagnosticCollection.
Properties
name: string
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
clear(): void
Remove all diagnostics from this collection. The same
as calling #set(undefined)
;
Remove all diagnostics from this collection that belong
to the provided uri
. The same as #set(uri, undefined)
.
dispose(): void
forEach(callback: (uri: Uri, diagnostics: Diagnostic[], collection: DiagnosticCollection) => any, thisArg?: any): void
Iterate over each entry in this collection.
Parameter | Description |
---|---|
callback: (uri: Uri, diagnostics: Diagnostic[], collection: DiagnosticCollection) => any | Function to execute for each entry. |
thisArg?: any | The |
Returns | Description |
void |
get(uri: Uri): Diagnostic[] | undefined
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 |
Diagnostic[] | undefined | An immutable array of diagnostics or |
Check if this collection contains diagnostics for a
given resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
boolean |
|
set(uri: Uri, diagnostics: Diagnostic[] | undefined): void
Assign diagnostics for given resource. Will replace
existing diagnostics for that resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
diagnostics: Diagnostic[] | undefined | Array of diagnostics or |
Returns | Description |
void |
set(entries: [Uri, Diagnostic[] | undefined][]): void
Replace all entries in this collection.
Diagnostics of 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: [Uri, Diagnostic[] | undefined][] | An array of tuples, like |
Returns | Description |
void |
DiagnosticSeverity
Represents the severity of diagnostics.
Enumeration members
0
3
2
1
Disposable
Represents a type which can release resources, such
as event listening or a timer.
Static
from(…disposableLikes: {dispose: () => any}[]): Disposable
Combine many disposable-likes into one. Use this method
when having objects with a dispose function which are not
instances of Disposable.
Parameter | Description |
---|---|
…disposableLikes: {dispose: () => any}[] | Objects that have at least a |
Returns | Description |
Disposable | Returns a new disposable which, upon dispose, will |
Constructors
new Disposable(callOnDispose: Function): Disposable
Creates a new Disposable calling the provided function
on dispose.
Parameter | Description |
---|---|
callOnDispose: Function | Function that disposes something. |
Returns | Description |
Disposable |
Methods
dispose(): any
DocumentFilter
A document filter denotes a document by different properties like
the language, the scheme of
its resource, or a glob-pattern that is applied to the path.
- sample - A language filter that applies to typescript files on disk:
{ language: 'typescript', scheme: 'file' }
- sample - A language filter that applies to all package.json paths:
{ language: 'json', pattern: '**∕package.json' }
Properties
language?: string
A language id, like typescript
.
pattern?: string
A glob pattern, like *.{ts,js}
.
scheme?: string
DocumentFormattingEditProvider
The document formatting provider interface defines the contract between extensions and
the formatting-feature.
Methods
provideDocumentFormattingEdits(document: TextDocument, options: FormattingOptions, token: CancellationToken): ProviderResult
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 | A set of text edits or a thenable that resolves to such. The lack of a result can be |
DocumentHighlight
A document highlight is a range inside a text document which deserves
special attention. Usually a document highlight is visualized by changing
the background color of its range.
Constructors
new DocumentHighlight(range: Range, kind?: 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
kind?: DocumentHighlightKind
range: Range
The range this highlight applies to.
DocumentHighlightKind
A document highlight kind.
Enumeration members
1
0
2
DocumentHighlightProvider
document highlight provider interface は拡張機能と word-higliht-機能の間のコントラクトを定義します
Methods
provideDocumentHighlights(document: TextDocument, position: Position, token: CancellationToken): ProviderResult
変数のすべての出現箇所や、関数すべての exit-point のような一連のドキュメント ハイライトを提供します
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 | ドキュメント ハイライトの配列またはそう解決される thenable。結果の欠落は |
DocumentLink
A document link is a range in a text document that links to an internal or external resource, like another
text document or a web site.
Constructors
new DocumentLink(range: Range, target?: 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
range: Range
The range this link applies to.
target?: Uri
The uri this link points to.
DocumentLinkProvider
The document link provider defines the contract between extensions and feature of showing
links in the editor.
Methods
provideDocumentLinks(document: TextDocument, token: CancellationToken): ProviderResult
Provide links for the given document. Note that the editor ships with a default provider that detectshttp(s)
and file
links.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | An array of document links or a thenable that resolves to such. The lack of a result |
resolveDocumentLink(link: DocumentLink, token: CancellationToken): ProviderResult
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 incomple links
(without target) from the provideDocumentLinks
method which
often helps to improve performance.
Parameter | Description |
---|---|
link: DocumentLink | The link that is to be resolved. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult |
DocumentRangeFormattingEditProvider
The document formatting provider interface defines the contract between extensions and
the formatting-feature.
Methods
provideDocumentRangeFormattingEdits(document: TextDocument, range: Range, options: FormattingOptions, token: CancellationToken): ProviderResult
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 | A set of text edits or a thenable that resolves to such. The lack of a result can be |
DocumentSelector
A language selector is the combination of one or many language identifiers
and language filters.
- sample -
let sel:DocumentSelector = 'typescript'
;
- sample -
let sel:DocumentSelector = ['typescript', { language: 'json', pattern: '**∕tsconfig.json' }]
;
DocumentSelector: string | DocumentFilter | string | DocumentFilter[]
DocumentSymbolProvider
document symbol provider interface は拡張機能と go to symbol-機能 の間のコントラクトを定義します
Methods
provideDocumentSymbols(document: TextDocument, token: CancellationToken): ProviderResult
与えられたドキュメントのシンボル情報を提供する
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | ドキュメント ハイライトの配列またはそう解決される thenable。結果の欠落は |
EndOfLine
document 内の行末文字列を表します
Enumeration members
2
1
EnterAction
Describes what to do when pressing Enter.
Properties
appendText?: string
Describes text to be appended after the new line and after the indentation.
indentAction: IndentAction
Describe what to do with the indentation.
removeText?: number
Describes the number of characters to remove from the new line's indentation.
Event<T>
Represents a typed event.
A function that represents an event to which you subscribe by calling it with
a listener function as argument.
- sample -
item.onDidChange(function(event) { console.log("Event happened: " + event); });
(listener: (e: T) => any, thisArgs?: any, disposables?: Disposable[]): Disposable
A function that represents an event to which you subscribe by calling it with
a listener function as argument.
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. |
EventEmitter<T>
An event emitter can be used to create and manage an event for others
to subscribe to. One emitter always owns one event.
Use this class if you want to provide event from within your extension, for instance
inside a TextDocumentContentProvider or when providing
API to other extensions.
Properties
The event listeners can subscribe to.
Methods
dispose(): void
Notify all subscribers of the event. Failure
of one or more listener will not fail this function call.
Extension<T>
Properties
exports: T
The public API exported by this extension. It is an invalid action
to access this field before this extension has been activated.
extensionPath: string
The absolute file path of the directory containing this extension.
id: string
The canonical extension identifier in the form of: publisher.name
.
isActive: boolean
true
if the extension has been activated.
packageJSON: any
The parsed contents of the extension's package.json.
Methods
Activates this extension and returns its public API.
ExtensionContext
An extension context is a collection of utilities private to an
extension.
An instance of an ExtensionContext
is provided as the first
parameter to the activate
-call of an extension.
Properties
extensionPath: string
The absolute file path of the directory containing the extension.
globalState: Memento
storagePath: string | undefined
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
orglobalState
to store key value data.
An array to which disposables can be added. When this
extension is deactivated the disposables will be disposed.
workspaceState: Memento
Methods
asAbsolutePath(relativePath: string): string
Get the absolute path of a resource contained in the extension.
Parameter | Description |
---|---|
relativePath: string | A relative path to a resource contained in the extension. |
Returns | Description |
string | The absolute path of the resource. |
FileSystemWatcher
A file system watcher notifies about changes to files and folders
on disk.
To get an instance of a FileSystemWatcher
use
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.
Static
from(…disposableLikes: {dispose: () => any}[]): Disposable
Combine many disposable-likes into one. Use this method
when having objects with a dispose function which are not
instances of Disposable.
Parameter | Description |
---|---|
…disposableLikes: {dispose: () => any}[] | Objects that have at least a |
Returns | Description |
Disposable | Returns a new disposable which, upon dispose, will |
Constructors
new FileSystemWatcher(callOnDispose: Function): FileSystemWatcher
Creates a new Disposable calling the provided function
on dispose.
Parameter | Description |
---|---|
callOnDispose: Function | Function that disposes something. |
Returns | Description |
FileSystemWatcher |
Properties
ignoreChangeEvents: boolean
true if this file system watcher has been created such that
it ignores change file system events.
ignoreCreateEvents: boolean
true if this file system watcher has been created such that
it ignores creation file system events.
ignoreDeleteEvents: boolean
true if this file system watcher has been created such that
it ignores delete file system events.
Methods
dispose(): any
FormattingOptions
Value-object describing what options formatting should use.
Properties
insertSpaces: boolean
Prefer spaces over tabs.
tabSize: number
Size of a tab in spaces.
Hover
A hover represents additional information for a symbol or word. Hovers are
rendered in a tooltip-like widget.
Constructors
new Hover(contents: MarkedString | MarkedString[], range?: Range): Hover
Creates a new hover object.
Parameter | Description |
---|---|
contents: MarkedString | MarkedString[] | The contents of the hover. |
range?: Range | The range to which the hover applies. |
Returns | Description |
Hover |
Properties
contents: MarkedString[]
The contents of this hover.
range?: Range
The range to which this hover applies. When missing, the
editor will use the range at the current position or the
current position itself.
HoverProvider
The hover provider interface defines the contract between extensions and
the hover-feature.
Methods
provideHover(document: TextDocument, position: Position, token: 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 | A hover or a thenable that resolves to such. The lack of a result can be |
ImplementationProvider
The implemenetation provider interface defines the contract between extensions and
the go to implementation feature.
Methods
provideImplementation(document: TextDocument, position: Position, token: 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 | A definition or a thenable that resolves to such. The lack of a result can be |
IndentAction
Describes what to do with the indentation when pressing Enter.
Enumeration members
1
2
0
3
IndentationRule
Describes indentation rules for a language.
Properties
decreaseIndentPattern: RegExp
If a line matches this pattern, then all the lines after it should be unindendented once (until another rule matches).
increaseIndentPattern: RegExp
If a line matches this pattern, then all the lines after it should be indented once (until another rule matches).
indentNextLinePattern?: RegExp
If a line matches this pattern, then only the next line after it should be indented once.
unIndentedLinePattern?: RegExp
If a line matches this pattern, then its indentation should not be changed and it should not be evaluated against the other rules.
InputBoxOptions
Options to configure the behavior of the input box UI.
Properties
ignoreFocusOut?: boolean
Set to true
to keep the input box open when focus moves to another part of the editor or to another window.
password?: boolean
Set to true
to show a password prompt that will not show the typed value.
placeHolder?: string
An optional string to show as place holder in the input box to guide the user what to type.
prompt?: string
The text to display underneath the input box.
value?: string
The value to prefill in the input box.
valueSelection?: [number, number]
Selection of the prefilled value
. Defined as tuple of two number where the
first is the inclusive start index and the second the exclusive end index. When undefined
the whole
word will be selected, when empty (start equals end) only the cursor will be set,
otherwise the defined range will be selected.
Methods
validateInput(value: string): string | undefined | null
An optional function that will be called to validate input and to give a hint
to the user.
Parameter | Description |
---|---|
value: string | The current value of the input box. |
Returns | Description |
string | undefined | null | A human readable string which is presented as diagnostic message. |
LanguageConfiguration
The language configuration interfaces defines the contract between extensions
and various editor features, like automatic bracket insertion, automatic indentation etc.
Properties
___characterPairSupport?: {autoClosingPairs: {close: string, notIn: string[], open: string}[]}
Deprecated Do not use.
- deprecated - * Use the the autoClosingPairs property in the language configuration file instead.
___electricCharacterSupport?: {brackets: any, docComment: {close: string, lineStart: string, open: string, scope: string}}
Deprecated Do not use.
- deprecated - Will be replaced by a better API soon.
brackets?: CharacterPair[]
The language's brackets.
This configuration implicitly affects pressing Enter around these brackets.
comments?: CommentRule
The language's comment settings.
indentationRules?: IndentationRule
The language's indentation settings.
onEnterRules?: OnEnterRule[]
The language's rules to be evaluated when pressing Enter.
wordPattern?: RegExp
The language's word definition.
If the language supports Unicode identifiers (e.g. JavaScript), it is preferable
to provide a word definition that uses exclusion of known separators.
e.g.: A regex that matches anything except known separators (and dot is allowed to occur in a floating point number):
/(-?\d.\d\w)|([^`~!\@@#\%\^\&*()-\=+[{]}|\;\:\'\"\,.\<>\/\?\s]+)/g
Location
Represents a location inside a resource, such as a line
inside a text file.
Constructors
new Location(uri: Uri, rangeOrPosition: Range | Position): Location
Creates a new location object.
Parameter | Description |
---|---|
uri: Uri | The resource identifier. |
rangeOrPosition: Range | Position | The range or position. Positions will be converted to an empty range. |
Returns | Description |
Location |
Properties
range: Range
The document range of this locations.
uri: Uri
The resource identifier of this location.
MarkedString
MarkedString can be used to render human readable text. It is either a markdown string
or a code-block that provides a language and a code snippet. Note that
markdown strings will be sanitized - that means html will be escaped.
MarkedString: string | {language: string, value: string}
Memento
A memento represents a storage utility. It can store and retrieve
values.
Methods
get<T>(key: string): T | undefined
Return a value.
Parameter | Description |
---|---|
key: string | A string. |
Returns | Description |
T | undefined | The stored value or |
get<T>(key: string, defaultValue: T): T
Return a value.
Parameter | Description |
---|---|
key: string | A string. |
defaultValue: T | A value that should be returned when there is no |
Returns | Description |
T | The stored value or the defaultValue. |
update(key: string, value: any): Thenable<void>
Store a value. The value must be JSON-stringifyable.
Parameter | Description |
---|---|
key: string | A string. |
value: any | A value. MUST not contain cyclic references. |
Returns | Description |
Thenable<void> |
MessageItem
Represents an action that is shown with an information, warning, or
error message.
- see - showInformationMessage
- see - showWarningMessage
- see - showErrorMessage
Properties
isCloseAffordance?: boolean
Indicates that this item replaces the default
'Close' action.
title: string
A short title like 'Retry', 'Open Log' etc.
MessageOptions
Options to configure the behavior of the message.
- see - showInformationMessage
- see - showWarningMessage
- see - showErrorMessage
Properties
modal?: boolean
Indicates that this message should be modal.
OnEnterRule
Describes a rule to be evaluated when pressing Enter.
Properties
action: EnterAction
The action to execute.
afterText?: RegExp
This rule will only execute if the text after the cursor matches this regular expression.
beforeText: RegExp
This rule will only execute if the text before the cursor matches this regular expression.
OnTypeFormattingEditProvider
The document formatting provider interface defines the contract between extensions and
the formatting-feature.
Methods
provideOnTypeFormattingEdits(document: TextDocument, position: Position, ch: string, options: FormattingOptions, token: CancellationToken): ProviderResult
Provide formatting edits after a character has been typed.
The given position and character should hint to the provider
what range the position to expand to, like find the matching {
when }
has been entered.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
position: Position | The position at which the command was invoked. |
ch: string | The character that has been typed. |
options: FormattingOptions | Options controlling formatting. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | A set of text edits or a thenable that resolves to such. The lack of a result can be |
OutputChannel
An output channel is a container for readonly textual information.
To get an instance of an OutputChannel
use
createOutputChannel.
Properties
name: string
The human-readable name of this output channel.
Methods
Append the given value to the channel.
appendLine(value: string): void
Append the given value and a line feed character
to the channel.
clear(): void
dispose(): void
hide(): void
show(preserveFocus?: boolean): void
Reveal this channel in the UI.
Parameter | Description |
---|---|
preserveFocus?: boolean | When |
Returns | Description |
void |
show(column?: ViewColumn, preserveFocus?: boolean): void
Reveal this channel in the UI.
- deprecated - Use the overload with just one parameter (
show(preserveFocus?: boolean): void
).
Parameter | Description |
---|---|
column?: ViewColumn | This argument is deprecated and will be ignored. |
preserveFocus?: boolean | When |
Returns | Description |
void |
OverviewRulerLane
Enumeration members
2
7
1
4
ParameterInformation
呼び出し可能な signature(以下署名) のパラメーターを表します
パラメーターはラベルと doc-comment を持ちます
Constructors
new ParameterInformation(label: string, documentation?: string): ParameterInformation
新しいパラメーター情報オブジェクトを作成します
Parameter | Description |
---|---|
label: string | A label string. |
documentation?: string | A doc string. |
Returns | Description |
ParameterInformation |
Properties
documentation?: string
この署名の human-readable な doc-comment
UI で表示されますが、省略できます
label: string
この署名のラベル
UI で表示されます
Position
カーソルの位置を行と文字の位置で表します
Position オブジェクトは immutable です。既存の位置から新しい位置を導出するには with か translate メソッドを使用してください。
Constructors
new Position(line: number, character: number): Position
Parameter | Description |
---|---|
line: number | A zero-based line value. |
character: number | A zero-based character value. |
Returns | Description |
Position |
Properties
character: number
0 から始まる文字値
line: number
0 から始まる行の値
Methods
compareTo(other: Position): number
これを other
と比較
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
number | この位置が指定された位置の前にある場合は 0 より小さい数値。この位置が指定された位置の後ろにある場合は 0 より大きい数値。これと指定した位置が等しい場合は 0 です。 |
isAfter(other: Position): boolean
この位置の後ろに other
があるか確認します
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
boolean | 位置が後ろにある場合、または後ろの文字で同じ行にある場合は |
isAfterOrEqual(other: Position): boolean
other
がこの位置の後ろか等しいかどうかを確認します
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
boolean | 位置が後ろにある場合、または後ろの文字または同じ文字の同じ行にある場合は |
isBefore(other: Position): boolean
この位置の前に other
があるか確認します
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
boolean | 位置が前にある場合、または前の文字で同じ行にある場合は |
isBeforeOrEqual(other: Position): boolean
other
がこの位置の前か等しいかどうかを確認します
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
boolean | 位置が前にある場合、または前の文字または同じ文字の同じ行にある場合は |
isEqual(other: Position): boolean
other
がこの位置に等しいか確認します
Parameter | Description |
---|---|
other: Position | A position. |
Returns | Description |
boolean | 指定された位置の行と文字がこの位置の行と文字と等しい場合は |
translate(lineDelta?: number, characterDelta?: number): Position
この位置に相対的な新しい位置を作成します
Parameter | Description |
---|---|
lineDelta?: number | Delta value for the line value, default is |
characterDelta?: number | Delta value for the character value, default is |
Returns | Description |
Position | 行と文字の位置は、現在の行と文字と対応するデルタの合計です |
translate(change: {characterDelta: number, lineDelta: number}): Position
この位置と相対的な新しい位置を派生します
Parameter | Description |
---|---|
change: {characterDelta: number, lineDelta: number} | An object that describes a delta to this position. |
Returns | Description |
Position | 指定されたデルタを反映する位置。その変更が何も変更しない場合 |
with(line?: number, character?: number): Position
このポジションから派生した新しいポジションを作成します
Parameter | Description |
---|---|
line?: number | Value that should be used as line value, default is the existing value |
character?: number | Value that should be used as character value, default is the existing value |
Returns | Description |
Position | 行と文字が指定された値で置き換えられた位置 |
with(change: {character: number, line: number}): Position
この位置から新しい位置を派生します
Parameter | Description |
---|---|
change: {character: number, line: number} | An object that describes a change to this position. |
Returns | Description |
Position | 指定した変更を反映する位置。その変更が何も変更しない場合 |
ProcessExecution
The execution of a task happens as an external process
without shell interaction.
Constructors
new ProcessExecution(process: string, options?: ProcessExecutionOptions): ProcessExecution
Creates a process execution.
Parameter | Description |
---|---|
process: string | The process to start. |
options?: ProcessExecutionOptions | Optional options for the started process. |
Returns | Description |
ProcessExecution |
new ProcessExecution(process: string, args: string[], options?: ProcessExecutionOptions): ProcessExecution
Creates a process execution.
Parameter | Description |
---|---|
process: string | The process to start. |
args: string[] | Arguments to be passed to the process. |
options?: ProcessExecutionOptions | Optional options for the started process. |
Returns | Description |
ProcessExecution |
Properties
args: string[]
The arguments passed to the process. Defaults to an empty array.
options?: ProcessExecutionOptions
The process options used when the process is executed.
Defaults to undefined.
process: string
The process to be executed.
ProcessExecutionOptions
Options for a process execution
Properties
cwd?: string
The current working directory of the executed program or shell.
If omitted the tools current workspace root is used.
The additional environment of the executed program or shell. If omitted
the parent process' environment is used. If provided it is merged with
the parent process' environment.
Progress<T>
Defines a generalized way of reporting progress updates.
Methods
Report a progress update.
Parameter | Description |
---|---|
value: T | A progress item, like a message or an updated percentage value |
Returns | Description |
void |
ProgressLocation
A location in the editor at which progress information can be shown. It depends on the
location how progress is visually represented.
Enumeration members
1
10
ProgressOptions
Value-object describing where and how progress should show.
Properties
location: ProgressLocation
The location at which progress should show.
title?: string
A human-readable string which will be used to describe the
operation.
ProviderResult
A provider result represents the values a provider, like the HoverProvider
,
may return. For once this is the actual result type T
, like Hover
, or a thenable that resolves
to that type T
. In addition, null
and undefined
can be returned - either directly or from a
thenable.
The snippets below are all valid implementions of the HoverProvider
:
let a: HoverProvider = {
provideHover(doc, pos, token): ProviderResult<Hover> {
return new Hover(‘Hello World’);
}
}
let b: HoverProvider = {
provideHover(doc, pos, token): ProviderResult<Hover> {
return new Promise(resolve => {
resolve(new Hover(‘Hello World’));
});
}
}
let c: HoverProvider = {
provideHover(doc, pos, token): ProviderResult<Hover> {
return; // undefined
}
}
ProviderResult: T | undefined | null | Thenable<T | undefined | null>
QuickDiffProvider
Methods
provideOriginalResource(uri: Uri, token: CancellationToken): ProviderResult
Provide a uri to the original resource of any given resource uri.
Parameter | Description |
---|---|
uri: Uri | The uri of the resource open in a text editor. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | A thenable that resolves to uri of the matching original resource. |
QuickPickItem
Represents an item that can be selected from
a list of items.
Properties
description: string
A human readable string which is rendered less prominent.
detail?: string
A human readable string which is rendered less prominent.
label: string
A human readable string which is rendered prominent.
QuickPickOptions
Options to configure the behavior of the quick pick UI.
Events
onDidSelectItem(item: QuickPickItem | string): any
An optional function that is invoked whenever an item is selected.
Properties
ignoreFocusOut?: boolean
Set to true
to keep the picker open when focus moves to another part of the editor or to another window.
matchOnDescription?: boolean
An optional flag to include the description when filtering the picks.
matchOnDetail?: boolean
An optional flag to include the detail when filtering the picks.
placeHolder?: string
An optional string to show as place holder in the input box to guide the user what to pick on.
Range
範囲は順序付けられた 2 つの位置のペアで表します
これは start.isBeforeOrEqual(end) が補償されるということです。
Range オブジェクトは immutable です。既存の範囲から新しい範囲を導出するには、with、with、union メソッドを使用してください。
Constructors
new Range(start: Position, end: Position): Range
2 つの位置から新しい範囲を作成します
start
が end
の前になければ値は入れ替えられます。
new Range(startLine: number, startCharacter: number, endLine: number, endCharacter: number): Range
数値座標から新しい範囲を作成します
これは new Range(new Position(startLine, startCharacter), new Position(endLine, endCharacter))
を使用することと同じです。
Parameter | Description |
---|---|
startLine: number | A zero-based line value. |
startCharacter: number | A zero-based character value. |
endLine: number | A zero-based line value. |
endCharacter: number | A zero-based character value. |
Returns | Description |
Range |
Properties
end: Position
isEmpty: boolean
start
と end
が等しい場合は true
を返します
isSingleLine: boolean
start.line
と end.line
が等しい場合は true
を返します
start: Position
Methods
contains(positionOrRange: Position | Range): boolean
この範囲に位置もしくは範囲が含まれているかどうかを確認します
Parameter | Description |
---|---|
positionOrRange: Position | Range | A position or a range. |
Returns | Description |
boolean | 位置または範囲が指定した範囲の中またはそれに等しい場合は |
intersection(range: Range): Range | undefined
この範囲で range
をインターセクトして、範囲に重複がない場合は、新しい範囲または undefined
を返します
Parameter | Description |
---|---|
range: Range | A range. |
Returns | Description |
Range | undefined | その後ろの開始位置とその前の終了位置の範囲。 |
isEqual(other: Range): boolean
other
がこの範囲に等しいかどうかを確認します
Parameter | Description |
---|---|
other: Range | A range. |
Returns | Description |
boolean | 指定した範囲の開始と終了には、開始と終了がequalとき |
この範囲で other
のユニオンを計算します
with(start?: Position, end?: Position): Range
この範囲から新しい範囲を派生します
Parameter | Description |
---|---|
start?: Position | A position that should be used as start. The default value is the current start. |
end?: Position | A position that should be used as end. The default value is the current end. |
Returns | Description |
Range | 指定された開始位置と終了位置で範囲から派生した範囲。 |
with(change: {end: Position, start: Position}): Range
この範囲から新しい範囲を派生します
Parameter | Description |
---|---|
change: {end: Position, start: Position} | An object that describes a change to this range. |
Returns | Description |
Range | 指定された変更を反映する範囲。その変更が何も変更しない場合 |
ReferenceContext
Value-object that contains additional information when
requesting references.
Properties
includeDeclaration: boolean
Include the declaration of the current symbol.
ReferenceProvider
The reference provider interface defines the contract between extensions and
the find references-feature.
Methods
provideReferences(document: TextDocument, position: Position, context: ReferenceContext, token: CancellationToken): ProviderResult
Provide a set of project-wide references 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. |
context: ReferenceContext | |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | An array of locations or a thenable that resolves to such. The lack of a result can be |
RenameProvider
The rename provider interface defines the contract between extensions and
the rename-feature.
Methods
provideRenameEdits(document: TextDocument, position: Position, newName: string, token: CancellationToken): ProviderResult
Provide an edit that describes changes that have to be made to one
or many resources to rename a symbol to a different name.
Parameter | Description |
---|---|
document: TextDocument | The document in which the command was invoked. |
position: Position | The position at which the command was invoked. |
newName: string | The new name of the symbol. If the given name is not valid, the provider must return a rejected promise. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | A workspace edit or a thenable that resolves to such. The lack of a result can be |
Selection
エディター内のテキスト選択範囲を表します
Constructors
new Selection(anchor: Position, active: Position): Selection
2 つの位置から選択範囲を作成します
Parameter | Description |
---|---|
anchor: Position | A position. |
active: Position | A position. |
Returns | Description |
Selection |
new Selection(anchorLine: number, anchorCharacter: number, activeLine: number, activeCharacter: number): Selection
4 つの座標から選択範囲を作成します
Parameter | Description |
---|---|
anchorLine: number | A zero-based line value. |
anchorCharacter: number | A zero-based character value. |
activeLine: number | A zero-based line value. |
activeCharacter: number | A zero-based character value. |
Returns | Description |
Selection |
Properties
active: Position
anchor: Position
end: Position
isEmpty: boolean
start
と end
が等しい場合は true
を返します
isReversed: boolean
isSingleLine: boolean
start.line
と end.line
が等しい場合は true
を返します
start: Position
Methods
contains(positionOrRange: Position | Range): boolean
この範囲に位置もしくは範囲が含まれているかどうかを確認します
Parameter | Description |
---|---|
positionOrRange: Position | Range | A position or a range. |
Returns | Description |
boolean | 位置または範囲が指定した範囲の中またはそれに等しい場合は |
intersection(range: Range): Range | undefined
この範囲で range
をインターセクトして、範囲に重複がない場合は、新しい範囲または undefined
を返します
Parameter | Description |
---|---|
range: Range | A range. |
Returns | Description |
Range | undefined | その後ろの開始位置とその前の終了位置の範囲。 |
isEqual(other: Range): boolean
other
がこの範囲に等しいかどうかを確認します
Parameter | Description |
---|---|
other: Range | A range. |
Returns | Description |
boolean | 指定した範囲の開始と終了には、開始と終了がequalとき |
この範囲で other
のユニオンを計算します
with(start?: Position, end?: Position): Range
この範囲から新しい範囲を派生します
Parameter | Description |
---|---|
start?: Position | A position that should be used as start. The default value is the current start. |
end?: Position | A position that should be used as end. The default value is the current end. |
Returns | Description |
Range | 指定された開始位置と終了位置で範囲から派生した範囲。 |
with(change: {end: Position, start: Position}): Range
この範囲から新しい範囲を派生します
Parameter | Description |
---|---|
change: {end: Position, start: Position} | An object that describes a change to this range. |
Returns | Description |
Range | 指定された変更を反映する範囲。その変更が何も変更しない場合 |
ShellExecution
Constructors
new ShellExecution(commandLine: string, options?: ShellExecutionOptions): ShellExecution
Creates a process execution.
Parameter | Description |
---|---|
commandLine: string | The command line to execute. |
options?: ShellExecutionOptions | Optional options for the started the shell. |
Returns | Description |
ShellExecution |
Properties
commandLine: string
The shell command line
options?: ShellExecutionOptions
The shell options used when the command line is executed in a shell.
Defaults to undefined.
ShellExecutionOptions
Options for a shell execution
Properties
cwd?: string
The current working directory of the executed shell.
If omitted the tools current workspace root is used.
The additional environment of the executed shell. If omitted
the parent process' environment is used. If provided it is merged with
the parent process' environment.
executable?: string
The shell executable.
shellArgs?: string[]
The arguments to be passed to the shell executable used to run the task.
SignatureHelp
呼び出し可能な署名を表します
複数の署名にすることができますが、アクティブなものは一つでアクティブなパラメーターは一つです。
Properties
activeParameter: number
アクティな署名のアクティブ パラメーター
activeSignature: number
アクティブな署名
signatures: SignatureInformation[]
1 つ以上の署名
SignatureHelpProvider
signature help provider interface は拡張機能と parameter hints-機能の間のコントラクトを定義します
Methods
provideSignatureHelp(document: TextDocument, position: Position, token: CancellationToken): ProviderResult
指定する位置とドキュメントで署名のヘルプを提供します
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 | Signature help or a thenable that resolves to such. The lack of a result can be |
SignatureInformation
呼び出し可能な署名を表します
署名は関数名、doc-comment及びパラメーターのようなラベルを付けることができます
Constructors
new SignatureInformation(label: string, documentation?: string): SignatureInformation
新しい署名情報オブジェクトを作成します
Parameter | Description |
---|---|
label: string | A label string. |
documentation?: string | A doc string. |
Returns | Description |
SignatureInformation |
Properties
documentation?: string
この署名の human-readable な doc-comment
UI で表示されますが、省略できます
label: string
この署名のラベル
UI で表示されます
parameters: ParameterInformation[]
この署名のパラメーター
SnippetString
A snippet string is a template which allows to insert text
and to control the editor cursor when insertion happens.
A snippet can define tab stops and placeholders with $1
, $2
and ${3:foo}
. $0
defines the final tab stop, it defaults to
the end of the snippet. Variables are defined with $name
and${name:default value}
. The full snippet syntax is documented
here.
Constructors
new SnippetString(value?: string): SnippetString
Properties
value: string
The snippet string.
Methods
appendPlaceholder(value: string | (snippet: SnippetString) => any, number?: number): SnippetString
Builder-function that appends a placeholder (${1:value}
) to
the value
of this snippet string.
Parameter | Description |
---|---|
value: string | (snippet: SnippetString) => any | The value of this placeholder - either a string or a function |
number?: number | The number of this tabstop, defaults to an auto-incremet |
Returns | Description |
SnippetString | This snippet string. |
appendTabstop(number?: number): SnippetString
Builder-function that appends a tabstop ($1
, $2
etc) to
the value
of this snippet string.
Parameter | Description |
---|---|
number?: number | The number of this tabstop, defaults to an auto-incremet |
Returns | Description |
SnippetString | This snippet string. |
appendText(string: string): SnippetString
Builder-function that appends the given string to
the value
of this snippet string.
Parameter | Description |
---|---|
string: string | A value to append 'as given'. The string will be escaped. |
Returns | Description |
SnippetString | This snippet string. |
appendVariable(name: string, defaultValue: string | (snippet: SnippetString) => any): SnippetString
Builder-function that appends a variable (${VAR}
) to
the value
of this snippet string.
Parameter | Description |
---|---|
name: string | The name of the variable - excluding the |
defaultValue: string | (snippet: SnippetString) => any | The default value which is used when the variable name cannot |
Returns | Description |
SnippetString | This snippet string. |
SourceControl
An source control is able to provide resource states
to the editor and interact with the editor in several source control related ways.
Properties
acceptInputCommand?: Command
Optional accept input command.
This command will be invoked when the user accepts the value
in the Source Control input.
commitTemplate?: string
Optional commit template string.
The Source Control viewlet will populate the Source Control
input with this value when appropriate.
count?: number
The UI-visible count of resource states of
this source control.
Equals to the total number of resource state
of this source control, if undefined.
id: string
The id of this source control.
label: string
The human-readable label of this source control.
quickDiffProvider?: QuickDiffProvider
statusBarCommands?: Command[]
Optional status bar commands.
These commands will be displayed in the editor's status bar.
Methods
createResourceGroup(id: string, label: string): SourceControlResourceGroup
dispose(): void
SourceControlInputBox
Represents the input box in the Source Control viewlet.
Properties
value: string
Setter and getter for the contents of the input box.
SourceControlResourceDecorations
The decorations for a source control resource state.
Can be independently specified for light and dark themes.
Properties
dark?: SourceControlResourceThemableDecorations
The dark theme decorations.
faded?: boolean
light?: SourceControlResourceThemableDecorations
The light theme decorations.
strikeThrough?: boolean
SourceControlResourceGroup
A source control resource group is a collection of
source control resource states.
Properties
hideWhenEmpty?: boolean
Whether this source control resource group is hidden when it contains
no source control resource states.
id: string
The id of this source control resource group.
label: string
The label of this source control resource group.
resourceStates: SourceControlResourceState[]
Methods
dispose(): void
SourceControlResourceState
An source control resource state represents the state of an underlying workspace
resource within a certain source control group.
Properties
command?: Command
decorations?: SourceControlResourceDecorations
resourceUri: Uri
SourceControlResourceThemableDecorations
The theme-aware decorations for a
source control resource state.
Properties
StatusBarAlignment
Represents the alignment of status bar items.
Enumeration members
1
2
StatusBarItem
A status bar item is a status bar contribution that can
show text and icons and run a command on click.
Properties
alignment: StatusBarAlignment
The alignment of this item.
color: string | ThemeColor | undefined
The foreground color for this entry.
priority: number
The priority of this item. Higher value means the item should
be shown more to the left.
text: string
The text to show for the entry. You can embed icons in the text by leveraging the syntax:
My text $(icon-name) contains icons like $(icon'name) this one.
Where the icon-name is taken from the octicon icon set, e.g.light-bulb
, thumbsup
, zap
etc.
The tooltip text when you hover over this entry.
Methods
dispose(): void
hide(): void
show(): void
SymbolInformation
変数、クラス、interface などのプログラミング構造に関する情報を表します
Constructors
new SymbolInformation(name: string, kind: SymbolKind, containerName: string, location: Location): SymbolInformation
新しいシンボル情報のオブジェクトを作成します
Parameter | Description |
---|---|
name: string | The name of the symbol. |
kind: SymbolKind | The kind of the symbol. |
containerName: string | The name of the symbol containing the symbol. |
location: Location | The the location of the symbol. |
Returns | Description |
SymbolInformation |
new SymbolInformation(name: string, kind: SymbolKind, range: Range, uri?: Uri, containerName?: string): SymbolInformation
Parameter | Description |
---|---|
name: string | The name of the symbol. |
kind: SymbolKind | The kind of the symbol. |
range: Range | The range of the location of the symbol. |
uri?: Uri | The resource of the location of symbol, defaults to the current document. |
containerName?: string | The name of the symbol containing the symbol. |
Returns | Description |
SymbolInformation |
Properties
containerName: string
このシンボルを含むシンボルの名前
kind: SymbolKind
このシンボルの種類
location: Location
このシンボルの位置
name: string
このシンボルの名前
SymbolKind
シンボルの種類
Enumeration members
17
16
4
13
8
9
21
23
7
0
11
10
19
5
1
2
20
15
18
24
3
6
14
22
25
12
Task
A task to execute
Constructors
new Task(taskDefinition: TaskDefinition, name: string, source: string, execution?: ProcessExecution | ShellExecution, problemMatchers?: string | string[]): Task
Creates a new task.
Parameter | Description |
---|---|
taskDefinition: TaskDefinition | |
name: string | The task's name. Is presented in the user interface. |
source: string | The task's source (e.g. 'gulp', 'npm', …). Is presented in the user interface. |
execution?: ProcessExecution | ShellExecution | The process or shell execution. |
problemMatchers?: string | string[] | the names of problem matchers to use, like '$tsc' |
Returns | Description |
Task |
Properties
definition: TaskDefinition
The task's definition.
execution: ProcessExecution | ShellExecution
The task's execution engine
group?: TaskGroup
The task group this tasks belongs to. See TaskGroup
for a predefined set of available groups.
Defaults to undefined meaning that the task doesn't
belong to any special group.
isBackground: boolean
Whether the task is a background task or not.
name: string
The task's name
presentationOptions: TaskPresentationOptions
The presentation options. Defaults to an empty literal.
problemMatchers: string[]
The problem matchers attached to the task. Defaults to an empty
array.
source: string
A human-readable string describing the source of this
shell task, e.g. 'gulp' or 'npm'.
TaskDefinition
A structure that defines a task kind in the system.
The value must be JSON-stringifyable.
Properties
type: string
The task definition descibing the task provided by an extension.
Usually a task provider defines more properties to identify
a task. They need to be defined in the package.json of the
extension under the 'taskDefinitions' extension point. The npm
task definition for example looks like this
interface NpmTaskDefinition extends TaskDefinition {
script: string;
}
TaskGroup
A grouping for tasks. The editor by default supports the
'Clean', 'Build', 'RebuildAll' and 'Test' group.
Static
Build: TaskGroup
The build task group;
Clean: TaskGroup
The clean task group;
Rebuild: TaskGroup
The rebuild all task group;
Test: TaskGroup
The test all task group;
Constructors
new TaskGroup(id: string, label: string): TaskGroup
TaskPanelKind
Controls how the task channel is used between tasks
Enumeration members
2
3
1
TaskPresentationOptions
Controls how the task is presented in the UI.
Properties
echo?: boolean
Controls whether the command associated with the task is echoed
in the user interface.
focus?: boolean
Controls whether the panel showing the task output is taking focus.
panel?: TaskPanelKind
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to TaskInstanceKind.Shared
reveal?: TaskRevealKind
Controls whether the task output is reveal in the user interface.
Defaults to RevealKind.Always
.
TaskProvider
A task provider allows to add tasks to the task service.
A task provider is registerd via #workspace.registerTaskProvider.
Methods
provideTasks(token?: CancellationToken): ProviderResult
Provides tasks.
Parameter | Description |
---|---|
token?: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | an array of tasks |
resolveTask(task: Task, token?: CancellationToken): ProviderResult
Resolves a task that has no execution
set. Tasks are
often created from information found in the task.json
-file. Such tasks miss
the information on how to execute them and a task provider must fill in
the missing information in the resolveTask
-method.
Parameter | Description |
---|---|
task: Task | The task to resolve. |
token?: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | The resolved task |
TaskRevealKind
Controls the behaviour of the terminal's visibility.
Enumeration members
1
3
2
Terminal
An individual terminal instance within the integrated terminal.
Properties
name: string
The name of the terminal.
The process ID of the shell process.
Methods
dispose(): void
hide(): void
sendText(text: string, addNewLine?: boolean): void
Send text to the terminal. The text is written to the stdin of the underlying pty process
(shell) of the terminal.
Parameter | Description |
---|---|
text: string | The text to send. |
addNewLine?: boolean | Whether to add a new line to the text being sent, this is normally |
Returns | Description |
void |
show(preserveFocus?: boolean): void
Show the terminal panel and reveal this terminal in the UI.
Parameter | Description |
---|---|
preserveFocus?: boolean | When |
Returns | Description |
void |
TerminalOptions
Value-object describing what options a terminal should use.
Properties
name?: string
A human-readable string which will be used to represent the terminal in the UI.
shellArgs?: string[]
Args for the custom shell executable, this does not work on Windows (see #8429)
shellPath?: string
A path to a custom shell executable to be used in the terminal.
TextDocument
Properties
eol: EndOfLine
fileName: string
isClosed: boolean
ドキュメントが閉じられている場合は true
です
閉じたドキュメントは同期されず、同じリソースが再度開かれたとき再利用されません。
isDirty: boolean
無修正の変更がある場合は true
です
isUntitled: boolean
このドキュメントが無題のファイルかどうか
languageId: string
このドキュメントに関連する言語の識別子
lineCount: number
このドキュメント内で行の番号
uri: Uri
このドキュメントに関連する URL
ほとんどのドキュメントは file スキームをもち、ディスク上のファイルを表します。
ただし、ドキュメントによってはディスク上で利用できないことを表すのスキームを持つことがあります。
version: number
このドキュメントのバージョン番号
取り消し/やり直しを含む各変更後に、厳密に増加します。
Methods
getText(range?: Range): string
Parameter | Description |
---|---|
range?: Range | Include only the text included by the range. |
Returns | Description |
string | 指定された範囲内のテキストまたはテキスト全体 |
getWordRangeAtPosition(position: Position, regex?: RegExp): Range | undefined
与えられた位置で単語の範囲を取得します
既定で単語は、 space, -, _, etc などのような区切り文字で定義されます。
さらに、言語ごとにカスタムな word definitions を定義できます。
これにはカスタムな正規表現を提供することも可能です。
- Note 1: カスタム正規表現は、空の文字列と一致してはいけません。一致した場合は無視されます。
- Note 2: カスタムの正規表現は複数行の文字列に一致せず、speed の名前で正規表現は単語をスペースに一致させるべきではありません。
より複雑で、単語性でない場合は TextLine.text
を使用してください。
position は adjusted されます。
Parameter | Description |
---|---|
position: Position | A position. |
regex?: RegExp | Optional regular expression that describes what a word is. |
Returns | Description |
Range | undefined | 単語にまたがる範囲または |
lineAt(line: number): TextLine
行番号を意味するテキスト行を返します
返されるオブジェクトは live ではありません、ドキュメントへの変更は反映されないことに注意してください。
lineAt(position: Position): TextLine
position を示すテキスト行を返します
返されるオブジェクトは live ではありません、ドキュメントへの変更は反映されないことに注意してください。
position は adjusted されます。
- see - TextDocument.lineAt
offsetAt(position: Position): number
positionAt(offset: number): Position
zero-based offset を position に変換します
元となるファイルを保存します
Returns | Description |
---|---|
Thenable<boolean> | (promise)ファイルが保存されたとき true に解決されます。 |
validatePosition(position: Position): Position
このドキュメントの範囲内に、position が含まれていることを確認します
validateRange(range: Range): Range
このドキュメントに range が完全に含まれていることを確認します
TextDocumentChangeEvent
An event describing a transactional document change.
Properties
contentChanges: TextDocumentContentChangeEvent[]
An array of content changes.
document: TextDocument
The affected document.
TextDocumentContentChangeEvent
An event describing an individual change in the text of a document.
Properties
range: Range
The range that got replaced.
rangeLength: number
The length of the range that got replaced.
text: string
The new text for the range.
TextDocumentContentProvider
A text document content provider allows to add readonly documents
to the editor, such as source from a dll or generated html from md.
Content providers are registered
for a uri-scheme. When a uri with that scheme is to
be loaded the content provider is
asked.
Events
An event to signal a resource has changed.
Methods
provideTextDocumentContent(uri: Uri, token: CancellationToken): ProviderResult
Provide textual content for a given uri.
The editor will use the returned string-content to create a readonly
document. Resources allocated should be released when
the corresponding document has been closed.
Parameter | Description |
---|---|
uri: Uri | An uri which scheme matches the scheme this provider was registered for. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | A string or a thenable that resolves to such. |
TextDocumentSaveReason
Represents reasons why a text document is saved.
Enumeration members
2
3
1
TextDocumentShowOptions
Properties
preserveFocus?: boolean
preview?: boolean
selection?: Range
viewColumn?: ViewColumn
TextDocumentWillSaveEvent
An event that is fired when a document will be saved.
To make modifications to the document before it is being saved, call thewaitUntil
-function with a thenable
that resolves to an array of text edits.
Properties
document: TextDocument
The document that will be saved.
reason: TextDocumentSaveReason
The reason why save was triggered.
Methods
waitUntil(thenable: Thenable<TextEdit[]>): void
Allows to pause the event loop and to apply pre-save-edits.
Edits of subsequent calls to this function will be applied in order. The
edits will be ignored if concurrent modifications of the document happened.
Note: This function can only be called during event dispatch and not
in an asynchronous manner:
workspace.onWillSaveTextDocument(event => {
// async, will throw an error
setTimeout(() => event.waitUntil(promise));
// sync, OK
event.waitUntil(promise);
})
Parameter | Description |
---|---|
thenable: Thenable<TextEdit[]> | A thenable that resolves to pre-save-edits. |
Returns | Description |
void |
waitUntil(thenable: Thenable<any>): void
Allows to pause the event loop until the provided thenable resolved.
Note: This function can only be called during event dispatch.
TextEdit
A text edit represents edits that should be applied
to a document.
Static
delete(range: Range): TextEdit
Utility to create a delete edit.
insert(position: Position, newText: string): TextEdit
Utility to create an insert edit.
Parameter | Description |
---|---|
position: Position | A position, will become an empty range. |
newText: string | A string. |
Returns | Description |
TextEdit | A new text edit object. |
replace(range: Range, newText: string): TextEdit
Utility to create a replace edit.
Parameter | Description |
---|---|
range: Range | A range. |
newText: string | A string. |
Returns | Description |
TextEdit | A new text edit object. |
setEndOfLine(eol: EndOfLine): TextEdit
Utility to create an eol-edit.
Constructors
new TextEdit(range: Range, newText: string): TextEdit
Create a new TextEdit.
Properties
newEol: EndOfLine
The eol-sequence used in the document.
Note that the eol-sequence will be applied to the
whole document.
newText: string
The string this edit will insert.
range: Range
The range this edit applies to.
TextEditor
Represents an editor that is attached to a document.
Properties
document: TextDocument
The document associated with this text editor. The document will be the same for the entire lifetime of this text editor.
options: TextEditorOptions
Text editor options.
selection: Selection
The primary selection on this text editor. Shorthand for TextEditor.selections[0]
.
selections: Selection[]
The selections in this text editor. The primary selection is always at index 0.
viewColumn?: ViewColumn
The column in which this editor shows. Will be undefined
in case this
isn't one of the three main editors, e.g an embedded editor.
Methods
edit(callback: (editBuilder: TextEditorEdit) => void, options?: {undoStopAfter: boolean, undoStopBefore: boolean}): Thenable<boolean>
Perform an edit on the document associated with this text editor.
The given callback-function is invoked with an edit-builder which must
be used to make edits. Note that the edit-builder is only valid while the
callback executes.
Parameter | Description |
---|---|
callback: (editBuilder: TextEditorEdit) => void | A function which can create edits using an edit-builder. |
options?: {undoStopAfter: boolean, undoStopBefore: boolean} | The undo/redo behavior around this edit. By default, undo stops will be created before and after this edit. |
Returns | Description |
Thenable<boolean> | A promise that resolves with a value indicating if the edits could be applied. |
hide(): void
Hide the text editor.
- deprecated - Use the command
workbench.action.closeActiveEditor
instead.
This method shows unexpected behavior and will be removed in the next major update.
insertSnippet(snippet: SnippetString, location?: Position | Range | Position[] | Range[], options?: {undoStopAfter: boolean, undoStopBefore: boolean}): Thenable<boolean>
Insert a snippet and put the editor into snippet mode. "Snippet mode"
means the editor adds placeholders and additionals cursors so that the user can complete
or accept the snippet.
Parameter | Description |
---|---|
snippet: SnippetString | The snippet to insert in this edit. |
location?: Position | Range | Position[] | Range[] | Position or range at which to insert the snippet, defaults to the current editor selection or selections. |
options?: {undoStopAfter: boolean, undoStopBefore: boolean} | The undo/redo behavior around this edit. By default, undo stops will be created before and after this edit. |
Returns | Description |
Thenable<boolean> | A promise that resolves with a value indicating if the snippet could be inserted. Note that the promise does not signal |
revealRange(range: Range, revealType?: TextEditorRevealType): void
Scroll as indicated by revealType
in order to reveal the given range.
Parameter | Description |
---|---|
range: Range | A range. |
revealType?: TextEditorRevealType | The scrolling strategy for revealing |
Returns | Description |
void |
setDecorations(decorationType: TextEditorDecorationType, rangesOrOptions: Range[] | DecorationOptions[]): void
Adds a set of decorations to the text editor. If a set of decorations already exists with
the given decoration type, they will be replaced.
Parameter | Description |
---|---|
decorationType: TextEditorDecorationType | A decoration type. |
rangesOrOptions: Range[] | DecorationOptions[] | |
Returns | Description |
void |
show(column?: ViewColumn): void
Parameter | Description |
---|---|
column?: ViewColumn | The column in which to show this editor. |
Returns | Description |
void |
TextEditorCursorStyle
カーソルの描画スタイル
Enumeration members
2
5
1
4
3
6
TextEditorDecorationType
text editor で同じ styling options を共有する装飾のハンドルを表します
TextEditorDecorationType
のインスタンスを取得するには createTextEditorDecorationType を使用してください。
Properties
key: string
ハンドルの内部表現
Methods
dispose(): void
TextEditorEdit
TextEditor で 1 つのトランザクションに適用する複雑な編集
これは編集の内容を保持し、編集が有効な場合(領域が重複していない、文書が変更されていないなど)、これらは text editor に関連付けられた text editor に適応されます。
Methods
delete(location: Range | Selection): void
特定のテキスト範囲を削除します
Parameter | Description |
---|---|
location: Range | Selection | The range this operation should remove. |
Returns | Description |
void |
insert(location: Position, value: string): void
指定する場所にテキストを挿入しますvalue
には \r\n か \n を使用することができ、これらは現在の document に正規化されます。
insert
はことなる選択範囲を作成します(移動させることができる)。同等のテキスト編集は replace で行うことができます。
Parameter | Description |
---|---|
location: Position | The position where the new text should be inserted. |
value: string | The new text this operation should insert. |
Returns | Description |
void |
replace(location: Position | Range | Selection, value: string): void
Parameter | Description |
---|---|
location: Position | Range | Selection | The range this operation should remove. |
value: string | The new text this operation should insert after removing |
Returns | Description |
void |
setEndOfLine(endOfLine: EndOfLine): void
EOF シーケンスを設定します
TextEditorLineNumbersStyle
行番号の描画スタイル
Enumeration members
0
1
2
TextEditorOptions
text editor の options を示します
Properties
cursorStyle?: TextEditorCursorStyle
このエディターでのカーソルの描画スタイル
テキスト エディターのオプションを取得するとき、このプロパティは常に存在します。
テキスト エディターのオプションを設定するとき、このプロパティはオプションです。
insertSpaces?: boolean | string
Tab を押したとき n 個のスペースを挿入します
テキスト エディターのオプションを取得するとき、このプロパティは常にブール値(解決済み)になります。
テキスト エディターのオプションを設定するとき、このプロパティはオプションであり数値または"auto"
にすることができます。
lineNumbers?: TextEditorLineNumbersStyle
現在の行番号を相対的な行番号で描画します
テキスト エディターのオプションを取得するとき、このプロパティは常に存在します。
テキスト エディターのオプションを設定するとき、このプロパティはオプションです。
タブのスペース サイズ。これは 2 つの目的で使用されます:
- タブ文字の描画幅;
- insertSpaces が true の時に挿入するスペースの数
テキスト エディターのオプションを取得するき、このプロパティは常に数値(解決済み)になります。
テキスト エディターのオプションを設定するとき、このプロパティはオプションであり数値または "auto"
にすることができます。
TextEditorOptionsChangeEvent
text editor's options での変更を説明するイベントを表します
Properties
options: TextEditorOptions
textEditor: TextEditor
TextEditorRevealType
テキスト エディターでの reveal strategies を表します
Enumeration members
3
0
1
2
TextEditorSelectionChangeEvent
text editor's selectionsでの変更を説明するイベントを表します
Properties
kind?: TextEditorSelectionChangeKind
selections: Selection[]
textEditor: TextEditor
TextEditorSelectionChangeKind
selection change events を引き起こす可能性があるソースを表します
Enumeration members
3
1
2
TextEditorViewColumnChangeEvent
text editor's view column の変更を説明するイベントを表します
Properties
textEditor: TextEditor
viewColumn: ViewColumn
TextLine
Properties
firstNonWhitespaceCharacterIndex: number
/\s/
によって定義された空白文字ではない最初の文字のオフセット
Note 行がすべて空白の場合行の長さが返されます。
isEmptyOrWhitespace: boolean
lineNumber: number
0 から始まる行番号 (0オリジン)
range: Range
行の区切り文字を含まない、この行の範囲
rangeIncludingLineBreak: Range
行の区切り文字を含む、この行の範囲
text: string
行の区切り文字を含まない、この行のテキスト
ThemableDecorationAttachmentRenderOptions
Properties
backgroundColor?: string | ThemeColor
デコレーション attachment に適応される CSS スタイル プロパティ
border?: string
デコレーション attachment に適応される CSS スタイル プロパティ
borderColor?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
color?: string | ThemeColor
デコレーション attachment に適応される CSS スタイル プロパティ
contentIconPath?: string | Uri
絶対パス または attachment に描画する画像への URI。アイコンまたはテキストのいずれかを表示できますが、両方を表示することはできません。
contentText?: string
attachment に表示されるテキスト コンテンツを定義します。アイコンまたはテキストのいずれかを表示できますが、両方を表示することはできません。
height?: string
デコレーション attachment に適応される CSS スタイル プロパティ
margin?: string
デコレーション attachment に適応される CSS スタイル プロパティ
textDecoration?: string
デコレーション attachment に適応される CSS スタイル プロパティ
width?: string
デコレーション attachment に適応される CSS スタイル プロパティ
ThemableDecorationInstanceRenderOptions
Properties
after?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの後ろに挿入される attachment の描画オプションを定義します
before?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの前に挿入される attachment の描画オプションを定義します
ThemableDecorationRenderOptions
text editor decoration 用のテーマ固有の描画スタイルを表します
Properties
after?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの後ろに挿入される attachment の描画オプションを定義します
backgroundColor?: string | ThemeColor
before?: ThemableDecorationAttachmentRenderOptions
デコレーションされたテキストの前に挿入される attachment の描画オプションを定義します
border?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
borderColor?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderRadius?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderSpacing?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderStyle?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
borderWidth?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のボーダー プロパティを設定する場合は 'border' を使用する方が効果的です。
color?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
cursor?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
絶対パス または ガターに描画する画像への URI
gutterIconSize?: string
ガターアイコンのサイズを指定します
使用可能な値は 'auto', 'contain', 'cover', 任意のパーセント値です。
詳細: https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspx
letterSpacing?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
outline?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
outlineColor?: string | ThemeColor
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
outlineStyle?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
outlineWidth?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
1 つ以上のアウトライン プロパティを設定する場合は 'outline' を使用する方が効果的です。
overviewRulerColor?: string | ThemeColor
概要ルーラーのデコレーション色
rgba() を使用して透明な色を定義することで、他のデコレーションとうまく一緒になります。
textDecoration?: string
デコレーションで囲まれたテキストに適用される CSS スタイル プロパティ
ThemeColor
https://code.visualstudio.com/docs/getstarted/theme-color-reference で定義されるワークベンチ配色のいずれかへの参照
テーマの配色を使用するとき、テーマ作成者とユーザーが色を変更する可能性があるため、カスタム配色よりも優先されます。
Constructors
new ThemeColor(id: string): ThemeColor
テーマ配色への参照を作成します
Parameter | Description |
---|---|
id: string | of the color. The available colors are listed in https://code.visualstudio.com/docs/getstarted/theme-color-reference. |
Returns | Description |
ThemeColor |
TreeDataProvider<T>
A data provider that provides tree data
Events
onDidChangeTreeData?: Event<T | undefined | null>
An optional event to signal that an element or root has changed.
To signal that root has changed, do not pass any argument or pass undefined
or null
.
Methods
getChildren(element?: T): ProviderResult
Get the children of element
or root if no element is passed.
Parameter | Description |
---|---|
element?: T | The element from which the provider gets children. Can be |
Returns | Description |
ProviderResult | Children of |
getTreeItem(element: T): TreeItem | Thenable<TreeItem>
Get TreeItem representation of the element
Parameter | Description |
---|---|
element: T | The element for which TreeItem representation is asked for. |
Returns | Description |
TreeItem | Thenable<TreeItem> | (#TreeItem) representation of the element |
TreeItem
Constructors
new TreeItem(label: string, collapsibleState?: TreeItemCollapsibleState): TreeItem
Parameter | Description |
---|---|
label: string | A human-readable string describing this item |
collapsibleState?: TreeItemCollapsibleState | (#TreeItemCollapsibleState) of the tree item. Default is TreeItemCollapsibleState.None |
Returns | Description |
TreeItem |
Properties
collapsibleState?: TreeItemCollapsibleState
command?: Command
contextValue?: string
Context value of the tree item. This can be used to contribute item specific actions in the tree.
For example, a tree item is given a context value as folder
. When contributing actions to view/item/context
using menus
extension point, you can specify context value for key viewItem
in when
expression like viewItem == folder
.
“contributes”: {
“menus”: {
“view/item/context”: [
{
“command”: “extension.deleteFolder”,
“when”: “viewItem == folder”
}
]
}
}
This will show action extension.deleteFolder
only for items with contextValue
is folder
.
iconPath?: string | Uri | {dark: string | Uri, light: string | Uri}
The icon path for the tree item
label: string
A human-readable string describing this item
TreeItemCollapsibleState
Collapsible state of the tree item
Enumeration members
1
2
0
TypeDefinitionProvider
The type definition provider defines the contract between extensions and
the go to type definition feature.
Methods
provideTypeDefinition(document: TextDocument, position: Position, token: CancellationToken): ProviderResult
Provide the type 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 | A definition or a thenable that resolves to such. The lack of a result can be |
Uri
ディスク上のファイルまたは無題のリソースのような別のリソースを表すユニバーサル リソース識別子
Static
文字列から URI を作成します
与えられた値が正しくない場合は throw します。
Properties
authority: string
Authority は http://www.msft.com/some/path?query#fragment
の www.msft.com
部分です
最初の 2 重スラッシュから次のスラッシュまでの間の部分を指します。
fragment: string
fsPath: string
この Uri の 対応するファイル システム パスを表す文字列
UNC パスで処理し、Windows ドライブ文字を小文字に正規化します。また、プラットフォーム固有のパス区切り文字も使用されます。
無効な文字とセマンティックのパスを検証しません。
path: string
query: string
scheme: string
Methods
toJSON(): any
toString(skipEncoding?: boolean): string
この Uri を文字列表記で返します
URI の表現と正規化はスキームに依存します。結果の文字列は Uri.parse を使用して安全に使用できます。
Parameter | Description |
---|---|
skipEncoding?: boolean | Do not percentage-encode the result, defaults to |
Returns | Description |
string | この Uri の文字列表記 |
with(change: {authority: string, fragment: string, path: string, query: string, scheme: string}): Uri
この Uri から 新しい Uri を派生します
let file = Uri.parse(‘before:some/file/path’);
let other = file.with({ scheme: ‘after’ });
assert.ok(other.toString() === ‘after:some/file/path’);
Parameter | Description |
---|---|
change: {authority: string, fragment: string, path: string, query: string, scheme: string} | An object that describes a change to this Uri. To unset components use |
Returns | Description |
Uri | 指定された変更を反映する新しい Uri。その変更が何も変更しない場合 |
ViewColumn
Denotes a column in the editor window. Columns are
used to show editors side by side.
Enumeration members
1
3
2
WorkspaceConfiguration
Represents the configuration. It is a merged view of
- Default configuration
- Global configuration
- Workspace configuration (if available)
- Workspace folder configuration of the requested resource (if available)
Global configuration comes from User Settings and shadows Defaults.
Workspace configuration comes from Workspace Settings and shadows Global configuration.
Workspace Folder configuration comes from .vscode
folder under one of the workspace folders.
Note: Workspace and Workspace Folder configurations contains launch
and tasks
settings. Their basename will be
part of the section identifier. The following snippets shows how to retrieve all configurations
from launch.json
:
// launch.json configuration
const config = workspace.getConfiguration(‘launch’, vscode.window.activeTextEditor.document.uri);
// retrieve values
const values = config.get(‘configurations’);
Refer to Settings for more information.
Methods
get<T>(section: string): T | undefined
Return a value from this configuration.
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
Returns | Description |
T | undefined | The value |
get<T>(section: string, defaultValue: T): T
Return a value from this configuration.
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
defaultValue: T | A value should be returned when no value could be found, is |
Returns | Description |
T | The value |
Check if this configuration has a certain value.
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
Returns | Description |
boolean |
|
inspect<T>(section: string): {defaultValue: T, globalValue: T, key: string, workspaceFolderValue: T, workspaceValue: T} | undefined
Retrieve all information about a configuration setting. A configuration value
often consists of a default value, a global or installation-wide value,
a workspace-specific value and a folder-specific value.
The effective value (returned by get
)
is computed like this: defaultValue
overwritten by globalValue
,globalValue
overwritten by workspaceValue
. workspaceValue
overwritten by workspaceFolderValue
.
Refer to Settings Inheritence
for more information.
Note: The configuration name must denote a leaf in the configuration tree
(editor.fontSize
vs editor
) otherwise no result is returned.
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
Returns | Description |
{defaultValue: T, globalValue: T, key: string, workspaceFolderValue: T, workspaceValue: T} | undefined | Information about a configuration setting or |
update(section: string, value: any, configurationTarget?: ConfigurationTarget | boolean): Thenable<void>
Update a configuration value. The updated configuration values are persisted.
A value can be changed in
- Global configuration: Changes the value for all instances of the editor.
- Workspace configuration: Changes the value for current workspace, if available.
- Workspace folder configuration: Changes the value for the
Workspace folder to which the current configuration is scoped to.
Note 1: Setting a global value in the presence of a more specific workspace value
has no observable effect in that workspace, but in others. Setting a workspace value
in the presence of a more specific folder value has no observable effect for the resources
under respective folder, but in others. Refer to
Settings Inheritence for more information.
Note 2: To remove a configuration value use undefined
, like so: config.update('somekey', undefined)
Will throw error when
- Writing a configuration which is not registered.
- Writing a configuration to workspace or folder target when no workspace is opened
- Writing a configuration to folder target when there is no folder settings
- Writing to folder target without passing a resource when getting the configuration (
workspace.getConfiguration(section, resource)
) - Writing a window configuration to folder target
Parameter | Description |
---|---|
section: string | Configuration name, supports dotted names. |
value: any | The new value. |
configurationTarget?: ConfigurationTarget | boolean | The configuration target or a boolean value. |
Returns | Description |
Thenable<void> |
WorkspaceEdit
A workspace edit represents textual changes for many documents.
Properties
size: number
The number of affected resources.
Methods
delete(uri: Uri, range: Range): void
Delete the text at the given range.
entries(): [Uri, TextEdit[]][]
Get all text edits grouped by resource.
Get the text edits for a resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
TextEdit[] | An array of text edits. |
Check if this edit affects the given resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
Returns | Description |
boolean |
|
insert(uri: Uri, position: Position, newText: string): void
Insert the given text at the given position.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
position: Position | A position. |
newText: string | A string. |
Returns | Description |
void |
replace(uri: Uri, range: Range, newText: string): void
Replace the given range with given text for the given resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
range: Range | A range. |
newText: string | A string. |
Returns | Description |
void |
set(uri: Uri, edits: TextEdit[]): void
Set (and replace) text edits for a resource.
Parameter | Description |
---|---|
uri: Uri | A resource identifier. |
edits: TextEdit[] | An array of text edits. |
Returns | Description |
void |
WorkspaceFolder
A workspace folder is one of potentially many roots opened by the editor. All workspace folders
are equal which means there is notion of an active or master workspace folder.
Properties
index: number
The ordinal number of this workspace folder.
name: string
uri: Uri
The associated URI for this workspace folder.
WorkspaceFoldersChangeEvent
An event describing a change to the set of workspace folders.
Properties
added: WorkspaceFolder[]
Added workspace folders.
removed: WorkspaceFolder[]
Removed workspace folders.
WorkspaceSymbolProvider
workspace symbol provider interface は拡張機能と symbol search-機能の間のコントラクトを定義します
the symbol search-feature.
Methods
provideWorkspaceSymbols(query: string, token: CancellationToken): ProviderResult
Project-wide search for a symbol matching the given query string. It is up to the provider
how to search given the query string, like substring, indexOf etc. To improve performance implementors can
skip the location of symbols and implement resolveWorkspaceSymbol
to do that
later.
Parameter | Description |
---|---|
query: string | A non-empty query string. |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | An array of document highlights or a thenable that resolves to such. The lack of a result can be |
resolveWorkspaceSymbol(symbol: SymbolInformation, token: CancellationToken): ProviderResult
Given a symbol fill in its location. This method is called whenever a symbol
is selected in the UI. Providers can implement this method and return incomplete symbols fromprovideWorkspaceSymbols
which often helps to improve
performance.
Parameter | Description |
---|---|
symbol: SymbolInformation | The symbol that is to be resolved. Guaranteed to be an instance of an object returned from an |
token: CancellationToken | A cancellation token. |
Returns | Description |
ProviderResult | The resolved symbol or a thenable that resolves to that. When no result is returned, |
Thenable<T>
Thenable は ES6 promises, Q, jquery.Deferred, WinJS.Promise, その他 の間で共通です。
この API は 特定の promise の実装に移行せずに、既存のコードを再利用することができる promise libary が使用されることについては想定しません。
それでも、このエディターで利用可能な native promises の使用を推奨します。
Methods
then<TResult>(onfulfilled?: (value: T) => TResult | Thenable<TResult>, onrejected?: (reason: any) => TResult | Thenable<TResult>): Thenable<TResult>
Promise の解決やリジェクトのコールバックをアタッチします。
Parameter | Description |
---|---|
onfulfilled?: (value: T) => TResult | Thenable<TResult> | The callback to execute when the Promise is resolved. |
onrejected?: (reason: any) => TResult | Thenable<TResult> | The callback to execute when the Promise is rejected. |
Returns | Description |
Thenable<TResult> | A Promise for the completion of which ever callback is executed. |
then<TResult>(onfulfilled?: (value: T) => TResult | Thenable<TResult>, onrejected?: (reason: any) => void): Thenable<TResult>
Namespace for dealing with commands. In short, a command is a function with a
unique identifier. The function is sometimes also called command handler.
Commands can be added to the editor using the registerCommand
and registerTextEditorCommand functions. Commands
can be executed manually or from a UI gesture. Those are:
commands
-section inpackage.json
to make a command show inthe command palette.
keybindings
-section inpackage.json
to enablekeybindings
for your extension.
Commands from other extensions and from the editor itself are accessible to an extension. However,
when invoking an editor command not all argument types are supported.
This is a sample that registers a command handler and adds an entry for that command to the palette. First
register a command handler with the identifier
extension.sayHello
.commands.registerCommand(‘extension.sayHello’, () => {
window.showInformationMessage(‘Hello World!’);
});
Second, bind the command identifier to a title under which it will show in the palette (
package.json
).{
“contributes”: {
“commands”: [{
“command”: “extension.sayHello”,
“title”: “Hello World”
}]
}
}