🚀 VS Code で で入手しましょう!

VS Code API

VS Code API は、Visual Studio Code 拡張機能内で呼び出すことができる JavaScript API のセットです。このページでは、拡張機能の作成者が利用できるすべての VS Code API をリストアップしています。

API 名前空間とクラス

このリストは、VS Code リポジトリの vscode.d.ts ファイルからコンパイルされています。

認証

認証用の名前空間。

イベント

認証プロバイダーの認証セッションが追加、削除、または変更されたときに発生する イベント

関数

指定されたプロバイダーに対してユーザーがログインしているすべてのアカウントを取得します。特定のアカウントの認証セッションを取得するには、getSession と組み合わせて使用します。

現在、GitHub および Microsoft 認証を実装するエディターへの組み込み拡張機能から提供されている認証プロバイダーは 2 つのみです。それらの providerId は 'github' と 'microsoft' です。

注: アカウントを取得しても、拡張機能がそのアカウントまたはその認証セッションへのアクセス権を持っているとは限りません。アカウントへのアクセス権があるかどうかは、getSession を呼び出すことで確認できます。

パラメーター説明
providerId: string

使用するプロバイダーの ID

戻り値説明
Thenable<readonly AuthenticationSessionAccountInformation[]>

認証アカウントの読み取り専用配列に解決される Thenable。

目的のスコープに一致する認証セッションを取得します。providerId を持つプロバイダーが登録されていない場合、またはユーザーが拡張機能との認証情報の共有に同意しない場合は拒否されます。同じスコープを持つセッションが複数ある場合は、使用するアカウントを選択するためのクイックピックがユーザーに表示されます。

現在、GitHub および Microsoft 認証を実装するエディターへの組み込み拡張機能から提供されている認証プロバイダーは 2 つのみです。それらの providerId は 'github' と 'microsoft' です。

パラメーター説明
providerId: string

使用するプロバイダーの ID

scopes: readonly string[]

要求された権限を表すスコープのリスト。これらは認証プロバイダーに依存します

options: AuthenticationGetSessionOptions & {createIfNone: true | AuthenticationGetSessionPresentationOptions}
戻り値説明
Thenable<AuthenticationSession>

認証セッションに解決される Thenable

目的のスコープに一致する認証セッションを取得します。providerId を持つプロバイダーが登録されていない場合、またはユーザーが拡張機能との認証情報の共有に同意しない場合は拒否されます。同じスコープを持つセッションが複数ある場合は、使用するアカウントを選択するためのクイックピックがユーザーに表示されます。

現在、GitHub および Microsoft 認証を実装するエディターへの組み込み拡張機能から提供されている認証プロバイダーは 2 つのみです。それらの providerId は 'github' と 'microsoft' です。

パラメーター説明
providerId: string

使用するプロバイダーの ID

scopes: readonly string[]

要求された権限を表すスコープのリスト。これらは認証プロバイダーに依存します

options: AuthenticationGetSessionOptions & {forceNewSession: true | AuthenticationGetSessionPresentationOptions}
戻り値説明
Thenable<AuthenticationSession>

認証セッションに解決される Thenable

目的のスコープに一致する認証セッションを取得します。providerId を持つプロバイダーが登録されていない場合、またはユーザーが拡張機能との認証情報の共有に同意しない場合は拒否されます。同じスコープを持つセッションが複数ある場合は、使用するアカウントを選択するためのクイックピックがユーザーに表示されます。

現在、GitHub および Microsoft 認証を実装するエディターへの組み込み拡張機能から提供されている認証プロバイダーは 2 つのみです。それらの providerId は 'github' と 'microsoft' です。

パラメーター説明
providerId: string

使用するプロバイダーの ID

scopes: readonly string[]

要求された権限を表すスコープのリスト。これらは認証プロバイダーに依存します

options?: AuthenticationGetSessionOptions
戻り値説明
Thenable<AuthenticationSession | undefined>

認証セッションが利用可能な場合は認証セッションに解決され、セッションがない場合は undefined に解決される Thenable

認証プロバイダーを登録します。

ID ごとにプロバイダーは 1 つしか存在できず、ID が別のプロバイダーによって既に使用されている場合はエラーがスローされます。ID は大文字と小文字を区別します。

パラメーター説明
id: string

プロバイダーの一意の識別子。

label: string

プロバイダーの人間が読める名前。

provider: AuthenticationProvider

認証プロバイダー。

options?: AuthenticationProviderOptions

プロバイダーの追加オプション。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

チャット

チャット機能の名前空間。ユーザーはチャットビューでチャット参加者にメッセージを送信することで対話します。チャット参加者は、ChatResponseStream を介して markdown または他のタイプのコンテンツで応答できます。

関数

新しい チャット参加者 インスタンスを作成します。

パラメーター説明
id: string

参加者の一意の識別子。

handler: ChatRequestHandler

参加者のリクエストハンドラー。

戻り値説明
ChatParticipant

新しいチャット参加者

コマンド

コマンドを扱うための名前空間。簡単に言うと、コマンドは一意の識別子を持つ関数です。この関数は、コマンドハンドラーとも呼ばれます。

コマンドは、registerCommand および registerTextEditorCommand 関数を使用してエディターに追加できます。コマンドは、手動または UI ジェスチャから実行できます。それらは次のとおりです

  • パレット - package.jsoncommands セクションを使用して、コマンドパレット にコマンドを表示します。
  • キーバインディング - package.jsonkeybindings セクションを使用して、拡張機能の キーバインディング を有効にします。

他の拡張機能およびエディター自体からのコマンドは、拡張機能からアクセスできます。ただし、エディターコマンドを呼び出す場合、すべての引数型がサポートされているわけではありません。

これは、コマンドハンドラーを登録し、そのコマンドのエントリをパレットに追加するサンプルです。まず、識別子 extension.sayHello でコマンドハンドラーを登録します。

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

次に、コマンド識別子をパレットに表示されるタイトル (package.json) にバインドします。

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

関数

指定されたコマンド識別子で示されるコマンドを実行します。

  • 注 1: エディターコマンドを実行する場合、すべての型を引数として渡すことができるわけではありません。許可されているのは、プリミティブ型 stringbooleannumberundefined、および null、ならびに PositionRangeUri、および Location です。
  • 注 2: 拡張機能によって提供されたコマンドを実行する場合、制限はありません。
パラメーター説明
command: string

実行するコマンドの識別子。

...rest: any[]

コマンド関数に渡されるパラメーター。

戻り値説明
Thenable<T>

指定されたコマンドの戻り値に解決される Thenable。コマンドハンドラー関数が何も返さない場合は undefined を返します。

使用可能なすべてのコマンドのリストを取得します。アンダースコアで始まるコマンドは、内部コマンドとして扱われます。

パラメーター説明
filterInternal?: boolean

内部コマンド (アンダースコアで始まる) を表示しない場合は true を設定します

戻り値説明
Thenable<string[]>

コマンド ID のリストに解決される Thenable。

キーボードショートカット、メニュー項目、アクション、または直接的に呼び出すことができるコマンドを登録します。

既存のコマンド識別子を持つコマンドを 2 回登録すると、エラーが発生します。

パラメーター説明
command: string

コマンドの一意の識別子。

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

コマンドハンドラー関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
Disposable

破棄時にこのコマンドを登録解除する Disposable。

キーボードショートカット、メニュー項目、アクション、または直接的に呼び出すことができるテキストエディターコマンドを登録します。

テキストエディターコマンドは、コマンドが呼び出されたときにアクティブなエディターがある場合にのみ実行されるため、通常の コマンド とは異なります。また、エディターコマンドのコマンドハンドラーは、アクティブなエディターと edit-builder にアクセスできます。edit-builder は、コールバックが実行されている間のみ有効であることに注意してください。

パラメーター説明
command: string

コマンドの一意の識別子。

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

エディター および 編集 にアクセスできるコマンドハンドラー関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
Disposable

破棄時にこのコマンドを登録解除する Disposable。

コメント

関数

新しい コメントコントローラー インスタンスを作成します。

パラメーター説明
id: string

コメントコントローラーの ID。

label: string

コメントコントローラーの人間が読める文字列。

戻り値説明
CommentController

コメントコントローラー のインスタンス。

デバッグ

デバッグ機能の名前空間。

変数

現在アクティブな デバッグコンソール。デバッグセッションがアクティブでない場合、デバッグコンソールに送信された出力は表示されません。

現在アクティブな デバッグセッション または undefined。アクティブなデバッグセッションは、デバッグアクションフローティングウィンドウで表されるもの、またはデバッグアクションフローティングウィンドウのドロップダウンメニューに現在表示されているものです。デバッグセッションがアクティブでない場合、値は undefined です。

現在フォーカスされているスレッドまたはスタックフレーム、またはスレッドまたはスタックがフォーカスされていない場合は undefined。スレッドはアクティブなデバッグセッションがある場合はいつでもフォーカスできますが、スタックフレームはセッションが一時停止され、コールスタックが取得された場合にのみフォーカスできます。

ブレークポイントのリスト。

イベント

アクティブなデバッグセッション が変更されたときに発生する イベント イベントは、アクティブなデバッグセッションが undefined に変更されたときにも発生します。

debug.activeStackItem が変更されたときに発生するイベント。

ブレークポイントのセットが追加、削除、または変更されたときに発行される イベント

デバッグセッション からカスタム DAP イベントを受信したときに発生する イベント

新しい デバッグセッション が開始されたときに発生する イベント

デバッグセッション が終了したときに発生する イベント

関数

ブレークポイントを追加します。

パラメーター説明
breakpoints: readonly Breakpoint[]

追加するブレークポイント。

戻り値説明
void

Debug Adapter Protocol を介して受信した "Source" 記述子オブジェクトを、そのコンテンツをロードするために使用できる Uri に変換します。ソース記述子がパスに基づいている場合は、ファイル Uri が返されます。ソース記述子が参照番号を使用している場合は、対応する ContentProvider と実行中のデバッグセッションを必要とする特定のデバッグ Uri (スキーム 'debug') が構築されます

Uri を作成するための情報が "Source" 記述子に不足している場合は、エラーがスローされます。

パラメーター説明
source: DebugProtocolSource

Debug Adapter Protocol で定義されている Source 型に準拠するオブジェクト。

session?: DebugSession

ソース記述子が参照番号を使用してアクティブなデバッグセッションからコンテンツをロードする場合に使用されるオプションのデバッグセッション。

戻り値説明
Uri

ソースのコンテンツをロードするために使用できる uri。

特定のデバッグタイプに対して デバッグアダプター記述子ファクトリ を登録します。拡張機能は、拡張機能によって定義されたデバッグタイプに対してのみ DebugAdapterDescriptorFactory を登録できます。そうしないと、エラーがスローされます。デバッグタイプに対して複数の DebugAdapterDescriptorFactory を登録すると、エラーが発生します。

パラメーター説明
debugType: string

ファクトリが登録されているデバッグタイプ。

factory: DebugAdapterDescriptorFactory
戻り値説明
Disposable

A Disposable that unregisters this factory when being disposed.

指定されたデバッグタイプに対してデバッグアダプター追跡ファクトリを登録します。

パラメーター説明
debugType: string

ファクトリが登録されているデバッグタイプ、またはすべてのデバッグタイプに一致させる場合は '*'。

factory: DebugAdapterTrackerFactory
戻り値説明
Disposable

A Disposable that unregisters this factory when being disposed.

特定のデバッグタイプに対して デバッグ構成プロバイダー を登録します。オプションの triggerKind を使用して、プロバイダーの provideDebugConfigurations メソッドがいつトリガーされるかを指定できます。現在、2 つのトリガーの種類が可能です。値 Initial (またはトリガーの種類引数が指定されていない場合) では、provideDebugConfigurations メソッドは、新しく作成された launch.json にコピーされる初期デバッグ構成を提供するために使用されます。トリガーの種類 Dynamic では、provideDebugConfigurations メソッドは、ユーザーに提示されるデバッグ構成を動的に決定するために使用されます (launch.json からの静的構成に加えて)。triggerKind 引数は provideDebugConfigurations メソッドにのみ適用されることに注意してください。そのため、resolveDebugConfiguration メソッドはまったく影響を受けません。異なるトリガーの種類に対して resolve メソッドを持つ単一のプロバイダーを登録すると、同じ resolve メソッドが複数回呼び出されます。同じタイプに対して複数のプロバイダーを登録できます。

パラメーター説明
debugType: string

プロバイダーが登録されているデバッグタイプ。

provider: DebugConfigurationProvider
triggerKind?: DebugConfigurationProviderTriggerKind

プロバイダーの 'provideDebugConfiguration' メソッドが登録されているトリガー。triggerKind がない場合、値 DebugConfigurationProviderTriggerKind.Initial が想定されます。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ブレークポイントを削除します。

パラメーター説明
breakpoints: readonly Breakpoint[]

削除するブレークポイント。

戻り値説明
void

名前付き起動構成または名前付き複合構成を使用するか、または DebugConfiguration を直接渡すことによってデバッグを開始します。名前付き構成は、指定されたフォルダーにある '.vscode/launch.json' で検索されます。デバッグを開始する前に、保存されていないファイルはすべて保存され、起動構成は最新の状態になります。構成で使用されるフォルダー固有の変数 (例: '${workspaceFolder}') は、指定されたフォルダーに対して解決されます。

パラメーター説明
folder: WorkspaceFolder

名前付き構成を検索し、フォルダー以外のセットアップの場合は変数を解決するか、または undefined にする ワークスペースフォルダー

nameOrConfiguration: string | DebugConfiguration

デバッグまたは複合構成の名前、または DebugConfiguration オブジェクトのいずれか。

parentSessionOrOptions?: DebugSession | DebugSessionOptions

デバッグセッションオプション。親 デバッグセッション が渡されると、この親セッションのみのオプションが想定されます。

戻り値説明
Thenable<boolean>

デバッグが正常に開始された場合に解決される Thenable。

指定されたデバッグセッションを停止するか、セッションが省略されている場合はすべてのデバッグセッションを停止します。

パラメーター説明
session?: DebugSession

session?: DebugSession

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

Thenable<void>

環境

セッションが停止されたときに解決される Thenable。

変数

エディターが実行されている環境を記述する名前空間。

アプリケーションのホストされている場所。デスクトップでは 'desktop' です。Web では、指定された埋め込みツール (つまり、'github.dev'、'codespaces'、または埋め込みツールがその情報を提供しない場合は 'web') です

'VS Code' のようなエディターのアプリケーション名。

エディターが実行されているアプリケーションルートフォルダー。

アプリケーションルートフォルダーの表現を持たない環境で実行している場合、値は空の文字列になります。

システムクリップボード。

これがアプリケーションの新規インストールであることを示します。インストール後 1 日以内の場合は true、それ以外の場合は false

優先されるユーザー言語を表します。例:de-CHfren-US

エディターの現在のログレベル。

コンピューターの一意な識別子。

リモートの名前。拡張機能によって定義され、一般的な例としては、Windows Subsystem for Linux の場合は wsl、セキュアシェルを使用するリモートの場合は ssh-remote などがあります。

:リモート拡張機能ホストが存在しない場合、値は undefined ですが、リモート拡張機能ホストが存在する場合、すべての拡張機能ホスト(ローカルおよびリモート)で値は定義されます。特定拡張機能がリモートで実行されているかどうかを知るには、Extension.extensionKind を使用してください。

現在のセッションの一意な識別子。エディターが起動するたびに変更されます。

拡張機能ホストに対して検出されたデフォルトシェル。これは、拡張機能ホストのプラットフォームの terminal.integrated.defaultProfile 設定によってオーバーライドされます。シェルをサポートしない環境では、値は空の文字列になることに注意してください。

UI 種別プロパティは、拡張機能がどの UI からアクセスされているかを示します。たとえば、拡張機能はデスクトップアプリケーションまたは Web ブラウザーからアクセスできます。

エディターがオペレーティングシステムに登録するカスタム URI スキーム。

イベント

エディターのログレベルが変更されたときに発生する Event

デフォルトシェルが変更されたときに発生する Event。新しいシェルパスと共に発生します。

ユーザーがテレメトリーを有効または無効にしたときに発生する Event。ユーザーがテレメトリーを有効にした場合は true、ユーザーがテレメトリーを無効にした場合は false

関数

URI を外部からアクセス可能な形式に解決します。

http: または https: スキーム

拡張機能が実行されている場所から、クライアントマシン上の同じリソースへの URI に、外部 URI(http:https: リンクなど)を解決します。

拡張機能がクライアントマシン上で実行されている場合、これは何もしません。

拡張機能がリモートで実行されている場合、この関数は自動的にローカルマシンからリモートの target へのポートフォワーディングトンネルを確立し、トンネルへのローカル URI を返します。ポートフォワーディングトンネルのライフサイクルはエディターによって管理され、トンネルはユーザーによって閉じることができます。

openExternal を介して渡される URI は自動的に解決されるため、それらに対して asExternalUri を呼び出すべきではありません。

vscode.env.uriScheme

ブラウザーで開かれた場合(例:openExternal 経由)、登録された UriHandler がトリガーされる URI を作成します。

拡張機能は、結果の URI について一切の仮定を行うべきではなく、いかなる方法でも変更すべきではありません。むしろ、拡張機能は、例えば、認証フローでこの URI を使用できます。認証先のサーバーへのコールバッククエリ引数として URI を追加することによって。

:サーバーが追加のクエリパラメーターを URI に追加することを決定した場合(例:トークンまたはシークレット)、UriHandler に渡される URI に表示されます。

認証フローの

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

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

asExternalUri の結果をキャッシュするべきではありません。解決された URI は、システムまたはユーザーのアクションによって無効になる可能性があるためです。例えば、リモートの場合、ユーザーは asExternalUri によって開かれたポートフォワーディングトンネルを閉じることができます。

その他のスキーム

その他のスキームは、提供された URI がワークスペース URI であるかのように処理されます。その場合、このメソッドは、処理されるとエディターがワークスペースを開く URI を返します。

パラメーター説明
target: Uri
戻り値説明
Thenable<Uri>

クライアントマシンで使用できる URI。

新しい テレメトリーロガーを作成します。

パラメーター説明
sender: TelemetrySender

テレメトリーロガーによって使用されるテレメトリー送信者。

options?: TelemetryLoggerOptions

テレメトリーロガーのオプション。

戻り値説明
TelemetryLogger

新しいテレメトリーロガー

デフォルトアプリケーションを使用して、リンクを外部で開きます。使用されるスキームに応じて、次のようになります。

  • ブラウザー (http:, https:)
  • メールクライアント (mailto:)
  • VSCode 自体 (vscode: from vscode.env.uriScheme)

showTextDocument は、エディター内でテキストドキュメントを開くための正しい方法であり、この関数ではありません。

パラメーター説明
target: Uri

開く必要がある URI。

戻り値説明
Thenable<boolean>

オープンが成功したかどうかを示す Promise。

拡張機能

インストールされている拡張機能を扱うための名前空間。拡張機能は Extension インターフェースで表され、それらに関するリフレクションを可能にします。

拡張機能の作成者は、activate 呼び出しから API パブリックサーフェスを返すことによって、他の拡張機能に API を提供できます。

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

別の拡張機能の API に依存する場合は、package.jsonextensionDependencies エントリを追加し、getExtension 関数と exports プロパティを以下のように使用します。

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

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

変数

システムに現在認識されているすべての拡張機能。

イベント

extensions.all が変更されたときに発生するイベント。これは、拡張機能がインストール、アンインストール、有効化、または無効化されたときに発生する可能性があります。

関数

publisher.name 形式の完全な識別子で拡張機能を取得します。

パラメーター説明
extensionId: string

拡張機能識別子。

戻り値説明
Extension<T> | undefined

拡張機能、または undefined

l10n

拡張機能 API のローカライズ関連機能の名前空間。これを適切に使用するには、拡張機能マニフェストで l10n が定義されており、bundle.l10n..json ファイルが必要です。bundle.l10n..json ファイルを生成する方法の詳細については、vscode-l10n リポジトリ を参照してください。

注:組み込み拡張機能(例:Git、TypeScript Language Features、GitHub Authentication)は、l10n プロパティ要件から除外されます。言い換えれば、翻訳された文字列が言語パックから提供されるため、拡張機能マニフェストに l10n を指定する必要はありません。

変数

拡張機能にロードされたローカライズされた文字列のバンドル。バンドルがロードされていない場合は undefined です。バンドルが見つからなかった場合、またはデフォルト言語で実行している場合、通常、バンドルはロードされません。

拡張機能にロードされたローカライズバンドルの URI。バンドルがロードされていない場合は undefined です。バンドルが見つからなかった場合、またはデフォルト言語で実行している場合、通常、バンドルはロードされません。

関数

ローカライズする文字列をマークします。env.language で指定された言語のローカライズされたバンドルが利用可能で、バンドルにこのメッセージのローカライズされた値がある場合、そのローカライズされた値が返されます(テンプレート化された値の args 値が挿入されます)。

l10n.t('Hello {0}!', 'World');
パラメーター説明
message: string

ローカライズするメッセージ。{0}{1} のような文字列が args 配列内のそのインデックスの項目に置き換えられる、インデックステンプレートをサポートします。

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

ローカライズされた文字列で使用される引数。引数のインデックスは、ローカライズされた文字列のテンプレートプレースホルダーを照合するために使用されます。

戻り値説明
string

引数が挿入されたローカライズされた文字列。

ローカライズする文字列をマークします。env.language で指定された言語のローカライズされたバンドルが利用可能で、バンドルにこのメッセージのローカライズされた値がある場合、そのローカライズされた値が返されます(テンプレート化された値の args 値が挿入されます)。

l10n.t('Hello {name}', { name: 'Erich' });
パラメーター説明
message: string

ローカライズするメッセージ。{foo}{bar} のような文字列が、そのキー(foo、bar など)の Record の値に置き換えられる、名前付きテンプレートをサポートします。

args: Record<string, any>

ローカライズされた文字列で使用される引数。レコード内のキーの名前は、ローカライズされた文字列のテンプレートプレースホルダーを照合するために使用されます。

戻り値説明
string

引数が挿入されたローカライズされた文字列。

ローカライズする文字列をマークします。env.language で指定された言語のローカライズされたバンドルが利用可能で、バンドルにこのメッセージのローカライズされた値がある場合、そのローカライズされた値が返されます(テンプレート化された値の args 値が挿入されます)。

パラメーター説明
options: {args: Array<string | number | boolean> | Record<string, any>, comment: string | string[], message: string}

メッセージをローカライズする際に使用するオプション。

戻り値説明
string

引数が挿入されたローカライズされた文字列。

言語

IntelliSense、コードアクション、診断など、言語固有のエディター 機能 に参加するための名前空間。

多くのプログラミング言語が存在し、構文、セマンティクス、およびパラダイムに大きな多様性があります。それにもかかわらず、単語の自動補完、コードナビゲーション、コードチェックなどの機能は、さまざまなプログラミング言語のさまざまなツールで普及しています。

エディターは、すべての UI とアクションがすでに配置されており、データのみを提供することで参加できるようにすることで、そのような一般的な機能を簡単に提供できる API を提供します。たとえば、ホバーを提供するために必要なのは、TextDocumentPosition を使用して呼び出すことができる関数を提供し、ホバー情報を返すことだけです。マウスの追跡、ホバーの配置、ホバーの安定化など、残りの部分はエディターによって処理されます。

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

登録は、言語 ID(javascript など)またはより複雑な フィルター{ language: 'typescript', scheme: 'file' } など)である ドキュメントセレクター を使用して行われます。ドキュメントをそのようなセレクターと照合すると、プロバイダーを使用するかどうか、およびその方法を決定するために使用される スコア が生成されます。スコアが等しい場合、最後に登場したプロバイダーが勝ちます。ホバー のように完全な可算数を許可する機能の場合、スコアは >0 であることのみがチェックされます。 IntelliSense のような他の機能の場合、スコアは、プロバイダーに参加を求める順序を決定するために使用されます。

イベント

グローバルな診断セットが変更されたときに発生する Event。これは、新しく追加および削除された診断です。

関数

診断コレクションを作成します。

パラメーター説明
name?: string

コレクションの name

戻り値説明
DiagnosticCollection

新しい診断コレクション。

新しい 言語ステータスアイテム を作成します。

パラメーター説明
id: string

アイテムの識別子。

selector: DocumentSelector

アイテムを表示するエディターを定義するドキュメントセレクター。

戻り値説明
LanguageStatusItem

新しい言語ステータスアイテム。

指定されたリソースのすべての診断を取得します。

パラメーター説明
resource: Uri

リソース

戻り値説明
Diagnostic[]

診断 オブジェクトの配列、または空の配列。

すべての診断を取得します。

パラメーター説明
戻り値説明
Array<[Uri, Diagnostic[]]>

URI 診断タプルの配列、または空の配列。

既知のすべての言語の識別子を返します。

パラメーター説明
戻り値説明
Thenable<string[]>

識別子文字列の配列に解決される Promise。

ドキュメント セレクター とドキュメント間のマッチを計算します。ゼロより大きい値は、セレクターがドキュメントに一致することを意味します。

マッチは、次のルールに従って計算されます。

  1. DocumentSelector が配列の場合、含まれている各 DocumentFilter または言語識別子のマッチを計算し、最大値を取得します。
  2. 文字列は、DocumentFilterlanguage 部分になるように脱糖されます。したがって、"fooLang"{ language: "fooLang" } のようなものです。
  3. DocumentFilter は、その部分をドキュメントと比較することによってドキュメントと照合されます。次のルールが適用されます。
    1. DocumentFilter が空の場合 ({})、結果は 0 です。
    2. schemelanguagepattern、または notebook が定義されているが、いずれかが一致しない場合、結果は 0 です。
    3. * との一致は 5 のスコアを与え、等価性またはグロブパターンによる一致は 10 のスコアを与えます。
    4. 結果は、各マッチの最大値です。

サンプル

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

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

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

ドキュメントセレクター。

document: TextDocument

テキストドキュメント。

戻り値説明
number

セレクターが一致する場合は >0 の数値、セレクターが一致しない場合は 0

コール階層プロバイダーを登録します。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: CallHierarchyProvider

コール階層プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

コードアクションプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: CodeActionProvider<CodeAction>

コードアクションプロバイダー。

metadata?: CodeActionProviderMetadata

プロバイダーが提供するコードアクションの種類に関するメタデータ。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

コードレンズプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: CodeLensProvider<CodeLens>

コードレンズプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

カラープロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentColorProvider

カラープロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

補完プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、同じスコアのグループは順番に補完項目を要求されます。プロセスは、グループの 1 つまたは複数のプロバイダーが結果を返すと停止します。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させることはありません。

補完項目プロバイダーは、triggerCharacters のセットに関連付けることができます。トリガー文字が入力されると、補完が要求されますが、入力された文字を登録したプロバイダーからのみ要求されます。そのため、トリガー文字は 単語文字 とは異なる必要があります。一般的なトリガー文字は、メンバー補完をトリガーする . です。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: CompletionItemProvider<CompletionItem>

補完プロバイダー。

...triggerCharacters: string[]

ユーザーが文字の 1 つを入力したときに補完をトリガーします。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

宣言プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DeclarationProvider

宣言プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

定義プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DefinitionProvider

定義プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

新しい DocumentDropEditProvider を登録します。

複数のドロッププロバイダーを言語に登録できます。コンテンツをエディターにドロップすると、エディターの言語に登録されているすべてのプロバイダーが、DocumentDropEditProviderMetadata で指定されている処理対象のマイムタイプに基づいて呼び出されます。

各プロバイダーは、1 つ以上の DocumentDropEdits を返すことができます。編集は、DocumentDropEdit.yieldTo プロパティを使用してソートされます。デフォルトでは、最初の編集が適用されます。追加の編集がある場合は、これらの編集は、ドロップウィジェットの選択可能なドロップオプションとしてユーザーに表示されます。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentDropEditProvider<DocumentDropEdit>

ドロッププロバイダー。

metadata?: DocumentDropEditProviderMetadata

プロバイダーに関する追加のメタデータ。

戻り値説明
Disposable

破棄されるとこのプロバイダーを登録解除する Disposable

ドキュメントのフォーマットプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentFormattingEditProvider

ドキュメントフォーマット編集プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ドキュメントハイライトプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、グループは順番にドキュメントハイライトを要求されます。プロセスは、プロバイダーが 非 falsy または 非失敗 の結果を返すと停止します。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentHighlightProvider

ドキュメントハイライトプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ドキュメントリンクプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentLinkProvider<DocumentLink>

ドキュメントリンクプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

新しい DocumentPasteEditProvider を登録します。

複数のプロバイダーを言語に登録できます。言語に登録されているすべてのプロバイダーは、DocumentPasteProviderMetadata で指定されている処理対象のマイムタイプに基づいて、コピーアンドペースト操作に対して呼び出されます。

コピー操作 の場合、各プロバイダーによって行われた DataTransfer への変更は、クリップボードへの入力に使用される単一の DataTransfer にマージされます。

[DocumentPasteEditProvider.providerDocumentPasteEdits ペースト操作](#DocumentPasteEditProvider.providerDocumentPasteEdits paste operations)では、各プロバイダーが呼び出され、1つ以上のDocumentPasteEditを返すことができます。エディットは、DocumentPasteEdit.yieldToプロパティを使用してソートされます。デフォルトでは、最初のエディットが適用され、残りのエディットはペーストウィジェットで選択可能なペーストオプションとしてユーザーに表示されます。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentPasteEditProvider<DocumentPasteEdit>

ペーストエディタープロバイダー。

metadata: DocumentPasteProviderMetadata

プロバイダーに関する追加のメタデータ。

戻り値説明
Disposable

破棄されるとこのプロバイダーを登録解除する Disposable

ドキュメント範囲のフォーマットプロバイダーを登録します。

注: ドキュメント範囲プロバイダーは、ドキュメントフォーマッターでもあります。つまり、範囲プロバイダーも登録する場合は、ドキュメントフォーマッターを登録する必要はありません。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentRangeFormattingEditProvider

ドキュメント範囲フォーマットエディットプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ドキュメント範囲のセマンティックトークンプロバイダーを登録します。

注: ドキュメントがDocumentSemanticTokensProviderDocumentRangeSemanticTokensProviderの両方を持つ場合、範囲プロバイダーは最初の要求を解決するのにフルドキュメントプロバイダーが時間を要する間のみ、最初に呼び出されます。フルドキュメントプロバイダーが最初の要求を解決すると、範囲プロバイダーを介して提供されたセマンティックトークンは破棄され、それ以降はドキュメントプロバイダーのみが使用されます。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentRangeSemanticTokensProvider

ドキュメント範囲セマンティックトークンプロバイダー。

legend: SemanticTokensLegend
戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ドキュメント全体のセマンティックトークンプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentSemanticTokensProvider

ドキュメントセマンティックトークンプロバイダー。

legend: SemanticTokensLegend
戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ドキュメントシンボルプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: DocumentSymbolProvider

ドキュメントシンボルプロバイダー。

metaData?: DocumentSymbolProviderMetadata

プロバイダーに関するメタデータ

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

テキストドキュメント内で評価可能な式を検索するプロバイダーを登録します。エディターはアクティブなデバッグセッションで式を評価し、デバッグホバーに結果を表示します。

複数のプロバイダーが言語に登録されている場合、任意のプロバイダーが使用されます。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: EvaluatableExpressionProvider

評価可能な式プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

折りたたみ範囲プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。複数の折りたたみ範囲が同じ位置から開始する場合、最初に登録されたプロバイダーの範囲のみが使用されます。折りたたみ範囲が、より小さい位置を持つ別の範囲と重複する場合、それも無視されます。

失敗したプロバイダー(拒否されたPromiseまたは例外)は、操作全体の失敗を引き起こしません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: FoldingRangeProvider

折りたたみ範囲プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ホバープロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: HoverProvider

ホバープロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

実装プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: ImplementationProvider

実装プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

インレイヒントプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: InlayHintsProvider<InlayHint>

インレイヒントプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

インライン補完プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: InlineCompletionItemProvider

インライン補完プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

デバッガーの「インライン値」機能のデータを返すプロバイダーを登録します。汎用デバッガーがソースファイル内で停止するたびに、ファイルの言語に登録されたプロバイダーが呼び出され、行末にエディターに表示されるテキストデータを返します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: InlineValuesProvider

インライン値プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

リンクされた編集範囲プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーはスコアでソートされ、結果を持つ最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: LinkedEditingRangeProvider

リンクされた編集範囲プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

入力時に動作するフォーマットプロバイダーを登録します。プロバイダーは、ユーザーがeditor.formatOnType設定を有効にするとアクティブになります。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは スコア でソートされ、最適な一致プロバイダーが使用されます。選択されたプロバイダーの失敗は、操作全体の失敗を引き起こします。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: OnTypeFormattingEditProvider

入力時フォーマットエディットプロバイダー。

firstTriggerCharacter: string

}のように、フォーマットをトリガーする文字。

...moreTriggerCharacter: string[]

追加のトリガー文字。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

参照プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: ReferenceProvider

参照プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

リネームプロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーはスコアでソートされ、順番に要求されます。最初に結果を生成したプロバイダーが、操作全体の結果を定義します。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: RenameProvider

リネームプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

選択範囲プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: SelectionRangeProvider

選択範囲プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

シグネチャヘルププロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーはスコアでソートされ、プロバイダーが有効な結果を返すまで順番に呼び出されます。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: SignatureHelpProvider

シグネチャヘルププロバイダー。

...triggerCharacters: string[]

ユーザーが,(などの文字を入力したときに、シグネチャヘルプをトリガーします。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: SignatureHelpProvider

シグネチャヘルププロバイダー。

metadata: SignatureHelpProviderMetadata

プロバイダーに関する情報。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

型定義プロバイダーを登録します。

複数のプロバイダーを言語に登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否された Promise または例外)は、操作全体を失敗させる原因にはなりません。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: TypeDefinitionProvider

型定義プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

型階層プロバイダーを登録します。

パラメーター説明
selector: DocumentSelector

このプロバイダーが適用されるドキュメントを定義するセレクター。

provider: TypeHierarchyProvider

型階層プロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ワークスペースシンボルプロバイダーを登録します。

複数のプロバイダーを登録できます。その場合、プロバイダーは並行して要求され、結果はマージされます。失敗したプロバイダー(拒否されたPromiseまたは例外)は、操作全体の失敗を引き起こしません。

パラメーター説明
provider: WorkspaceSymbolProvider<SymbolInformation>

ワークスペースシンボルプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

言語の言語構成を設定します。

パラメーター説明
language: string

typescriptのような言語識別子。

configuration: LanguageConfiguration

言語構成。

戻り値説明
Disposable

Disposable。この構成を解除します。

指定されたドキュメントに関連付けられている言語を設定(および変更)します。

この関数を呼び出すと、onDidCloseTextDocumentイベントに続いてonDidOpenTextDocumentイベントがトリガーされることに注意してください。

パラメーター説明
document: TextDocument

言語を変更するドキュメント

languageId: string

新しい言語識別子。

戻り値説明
Thenable<TextDocument>

更新されたドキュメントで解決されるThenable。

lm

言語モデル関連機能のネームスペース。

変数

lm.registerToolを使用してすべての拡張機能によって登録された、利用可能なすべてのツールのリスト。lm.invokeToolを使用して、宣言されたinputSchemaに一致する入力で呼び出すことができます。

イベント

利用可能なチャットモデルのセットが変更されたときに発生するイベント。

関数

lm.toolsにリストされているツールを、指定された入力で名前で呼び出します。入力は、ツールによって宣言されたスキーマに対して検証されます。

ツールは、チャットリクエストの処理のコンテキストでチャット参加者によって、または任意のカスタムフローで拡張機能によってグローバルに呼び出すことができます。

前者の場合、呼び出し元はtoolInvocationTokenを渡す必要があります。これは、チャットリクエストに付属しています。これにより、チャットUIが正しい会話のツール呼び出しを表示することが保証されます。

ツールの結果は、テキストパートとプロンプトtsxパートの配列です。ツール呼び出し元がvscode/prompt-tsxを使用している場合、ToolResultを使用して応答パートをプロンプトに組み込むことができます。そうでない場合、パートはLanguageModelToolResultPartを持つユーザーメッセージを介してLanguageModelChatに渡すことができます。

チャット参加者が複数のターンのリクエストに対してツールの結果を保持したい場合、ハンドラーから返されたChatResult.metadataにツールの結果を保存し、次のターンでChatResponseTurn.resultから取得できます。

パラメーター説明
name: string

呼び出すツールの名前。

options: LanguageModelToolInvocationOptions<object>

ツールを呼び出すときに使用するオプション。

token?: CancellationToken

キャンセルトークン。CancellationTokenSourceで作成方法を参照してください。

戻り値説明
Thenable<LanguageModelToolResult>

ツール呼び出しの結果。

LanguageModelToolを登録します。ツールは、package.jsonのlanguageModelToolsコントリビューションポイントにも登録する必要があります。登録されたツールは、すべての拡張機能が参照できるlm.toolsリストで利用可能です。ただし、言語モデルに認識されるためには、LanguageModelChatRequestOptions.toolsの利用可能なツールリストで渡す必要があります。

パラメーター説明
name: string
tool: LanguageModelTool<T>
戻り値説明
Disposable

Disposable。破棄されるとツールを登録解除します。

セレクターでチャットモデルを選択します。これにより、複数のチャットモデルまたはチャットモデルなしになる可能性があり、特にチャットモデルが存在しない場合、拡張機能はこれらのケースを適切に処理する必要があります。

const models = await vscode.lm.selectChatModels({ family: 'gpt-3.5-turbo' });
if (models.length > 0) {
    const [first] = models;
    const response = await first.sendRequest(...)
    // ...
} else {
    // NO chat models available
}

セレクターは、特定のベンダーまたはファミリーのすべてのモデルに広く一致するように記述することも、IDで1つのモデルを狭く選択することもできます。利用可能なモデルのセットは時間の経過とともに変化しますが、プロンプトは異なるモデルで異なる動作をする可能性があることにも注意してください。

拡張機能は、この関数によって返された結果を保持し、後で使用できます。ただし、onDidChangeChatModelsイベントが発生すると、チャットモデルのリストが変更されている可能性があり、拡張機能は再クエリする必要があります。

パラメーター説明
selector?: LanguageModelChatSelector

チャットモデルセレクター。省略すると、すべてのチャットモデルが返されます。

戻り値説明
Thenable<LanguageModelChat[]>

チャットモデルの配列。空の場合もあります!

ノートブック

ノートブックのネームスペース。

ノートブック機能は、疎結合された3つのコンポーネントで構成されています。

  1. NotebookSerializerは、エディターがノートブックを開き、表示し、保存できるようにします。
  2. NotebookControllerは、ノートブックの実行を所有します。たとえば、コードセルから出力を生成します。
  3. NotebookRendererは、エディターでノートブック出力を表示します。これらは別のコンテキストで実行されます。

関数

新しいノートブックコントローラーを作成します。

パラメーター説明
id: string

コントローラーの識別子。拡張機能ごとに一意である必要があります。

notebookType: string

このコントローラーが対象とするノートブックタイプ。

label: string

コントローラーのラベル。

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

コントローラーの実行ハンドラー。

戻り値説明
NotebookController

新しいノートブックコントローラー。

特定のレンダラーとの通信に使用される新しいメッセージングインスタンスを作成します。

  • 注1: 拡張機能は、package.jsonファイルで定義したレンダラーのみを作成できます。
  • 注2: レンダラーがメッセージングにアクセスできるのは、notebookRendererコントリビューションでrequiresMessagingalwaysまたはoptionalに設定されている場合のみです。
パラメーター説明
rendererId: string

通信するレンダラーID

戻り値説明
NotebookRendererMessaging

新しいノートブックレンダラーメッセージングオブジェクト。

指定されたノートブックタイプのセルステータスバーアイテムプロバイダーを登録します。

パラメーター説明
notebookType: string

登録するノートブックタイプ。

provider: NotebookCellStatusBarItemProvider

セルステータスバープロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

scm

ソース管理マネジメントのネームスペース。

変数

拡張機能によって作成された最後のソース管理の入力ボックス

  • 非推奨 - 代わりにSourceControl.inputBoxを使用してください

関数

新しいソース管理インスタンスを作成します。

パラメーター説明
id: string

ソース管理のid。例えば、gitのような短い文字列です。

label: string

ソース管理の人間が読める文字列。例:Git

rootUri?: Uri

ソース管理のルートのオプションのUri。例:Uri.parse(workspaceRoot)

戻り値説明
SourceControl

ソース管理のインスタンス。

タスク

タスク機能のネームスペース。

変数

現在アクティブなタスク実行、または空の配列。

イベント

タスクが終了したときに発生します。

基盤となるプロセスが終了したときに発生します。このイベントは、基盤となるプロセスを実行しないタスクに対しては発生しません。

タスクが開始したときに発生します。

基盤となるプロセスが開始されたときに発生します。このイベントは、基盤となるプロセスを実行しないタスクに対しては発生しません。

関数

エディターによって管理されるタスクを実行します。返されたタスク実行を使用して、タスクを終了できます。

  • throws - 新しいプロセスを開始できない環境で ShellExecution または ProcessExecution タスクを実行する場合。そのような環境では、CustomExecution タスクのみを実行できます。
パラメーター説明
task: Task

実行するタスク

戻り値説明
Thenable<TaskExecution>

タスク実行に解決される Thenable。

システムで利用可能なすべてのタスクをフェッチします。これには、tasks.jsonファイルからのタスクと、拡張機能を通じて提供されるタスクプロバイダーからのタスクが含まれます。

パラメーター説明
filter?: TaskFilter

特定のタイプまたはバージョンのタスクを選択するためのオプションのフィルター。

戻り値説明
Thenable<Task[]>

タスクの配列に解決される Thenable。

タスクプロバイダーを登録します。

パラメーター説明
type: string

このプロバイダーが登録されているタスクの種類。

provider: TaskProvider<Task>

タスクプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

テスト

テスト機能のネームスペース。テストは、TestControllerインスタンスを登録し、TestItemを追加することで公開されます。コントローラーは、1つまたは複数のTestRunProfileインスタンスを作成して、テストの実行方法を記述することもできます。

関数

新しいテストコントローラーを作成します。

パラメーター説明
id: string

コントローラーの識別子。グローバルに一意である必要があります。

label: string

コントローラーの人間が読めるラベル。

戻り値説明
TestController

TestControllerのインスタンス。

ウィンドウ

エディターの現在のウィンドウを扱うためのネームスペース。つまり、表示およびアクティブなエディター、メッセージを表示するためのUI要素、選択、およびユーザー入力を求めるためのUI要素です。

変数

設定で構成された現在のアクティブなカラーテーマ。アクティブなテーマは、workbench.colorTheme設定で変更できます。

現在アクティブなノートブックエディターまたはundefined。アクティブなエディターは、現在フォーカスがあるエディター、またはフォーカスがない場合は、最近入力が変更されたエディターです。

現在アクティブなターミナル、またはundefined。アクティブなターミナルは、現在フォーカスがあるターミナル、または最近フォーカスがあったターミナルです。

現在アクティブなエディター、またはundefined。アクティブなエディターは、現在フォーカスがあるエディター、またはフォーカスがない場合は、最近入力が変更されたエディターです。

現在のウィンドウの状態を表します。

メインエディター領域内のグリッドウィジェットを表します

現在開いているターミナル、または空の配列。

現在表示されているノートブックエディター、または空の配列。

現在表示されているエディター、または空の配列。

イベント

アクティブなカラーテーマが変更または変化したときに発生するイベント

アクティブなノートブックエディターが変更されたときに発生するイベントNote イベントは、アクティブなエディターがundefinedに変更されたときにも発生します。

アクティブなターミナルが変更されたときに発生するイベントNote イベントは、アクティブなターミナルがundefinedに変更されたときにも発生します。

アクティブなエディターが変更されたときに発生するイベントNote イベントは、アクティブなエディターがundefinedに変更されたときにも発生します。

ノートブックエディターの選択が変更されたときに発生するイベント

ノートブックエディターの表示範囲が変更されたときに発生するイベント

ターミナルでシェル統合がアクティブになるか、そのプロパティのいずれかが変更されたときに発生します。

ターミナルの状態が変更されたときに発生するイベント

エディターのオプションが変更されたときに発生するイベント

エディター内の選択範囲が変更されたときに発生するイベント

エディターのビュー列が変更されたときに発生するイベント

エディターの表示範囲が変更されたときに発生するイベント

表示されているエディターの配列が変更されたときに発生するイベント

現在のウィンドウのフォーカスまたはアクティビティ状態が変化したときに発生するイベント。イベントの値は、ウィンドウがフォーカスされているかどうかを表します。

ターミナルが破棄されたときに発生するイベント

ターミナルコマンドが終了したときに発生します。このイベントは、シェル統合がターミナルに対してアクティブになっている場合にのみ発生します。

createTerminal APIまたはコマンドを通じてターミナルが作成されたときに発生するイベント

ターミナルコマンドが開始されたときに発生します。このイベントは、シェル統合がターミナルに対してアクティブになっている場合にのみ発生します。

関数

ユーザーがテキスト入力を入力できるようにするInputBoxを作成します。

多くの場合、より便利なwindow.showInputBoxの方が使いやすいことに注意してください。window.showInputBoxでは必要な柔軟性が提供されない場合は、window.createInputBoxを使用する必要があります。

パラメーター説明
戻り値説明
InputBox

新しいInputBox

指定された名前と言語IDを持つ新しい出力チャンネルを作成します。言語IDが指定されていない場合、デフォルトの言語IDとしてログが使用されます。

表示されているエディターまたはアクティブなエディターから、表示またはアクティブな出力チャンネルをテキストドキュメントとしてアクセスし、言語IDを使用して、構文の色付け、コードレンズなどの言語機能を提供できます。

パラメーター説明
name: string

UIでチャンネルを表すために使用される人間が読める文字列。

languageId?: string

チャンネルに関連付けられた言語の識別子。

戻り値説明
OutputChannel

新しい出力チャンネル。

指定された名前を持つ新しいログ出力チャンネルを作成します。

パラメーター説明
name: string

UIでチャンネルを表すために使用される人間が読める文字列。

options: {log: true}

ログ出力チャンネルのオプション。

戻り値説明
LogOutputChannel

新しいログ出力チャンネル。

ユーザーがタイプTのアイテムのリストからアイテムを選択できるようにするQuickPickを作成します。

多くの場合、より便利なwindow.showQuickPickの方が使いやすいことに注意してください。window.showQuickPickでは必要な柔軟性が提供されない場合は、window.createQuickPickを使用する必要があります。

パラメーター説明
戻り値説明
QuickPick<T>

新しいQuickPick

ステータスバーのアイテムを作成します。

パラメーター説明
id: string

アイテムの識別子。拡張機能内で一意である必要があります。

alignment?: StatusBarAlignment

アイテムの配置。

priority?: number

アイテムの優先度。値が大きいほど、アイテムはより左に表示される必要があります。

戻り値説明
StatusBarItem

新しいステータスバーアイテム。

ステータスバーのアイテムを作成します。

参照 識別子を持つステータスバーアイテムを作成するには、createStatusBarItemを参照してください。

パラメーター説明
alignment?: StatusBarAlignment

アイテムの配置。

priority?: number

アイテムの優先度。値が大きいほど、アイテムはより左に表示される必要があります。

戻り値説明
StatusBarItem

新しいステータスバーアイテム。

バッキングシェルプロセスを持つTerminalを作成します。ターミナルのcwdは、ワークスペースディレクトリが存在する場合はワークスペースディレクトリになります。

  • throws - 新しいプロセスを開始できない環境で実行する場合。
パラメーター説明
name?: string

UIでターミナルを表すために使用されるオプションの人間が読める文字列。

shellPath?: string

ターミナルで使用するカスタムシェル実行可能ファイルへのオプションのパス。

shellArgs?: string | readonly string[]

カスタムシェル実行可能ファイルのオプションの引数。文字列はWindowsでのみ使用でき、コマンドライン形式でシェル引数を指定できます。

戻り値説明
Terminal

新しいターミナル。

バッキングシェルプロセスを持つTerminalを作成します。

  • throws - 新しいプロセスを開始できない環境で実行する場合。
パラメーター説明
options: TerminalOptions

新しいターミナルの特性を記述するTerminalOptionsオブジェクト。

戻り値説明
Terminal

新しいターミナル。

拡張機能が入力と出力を制御するTerminalを作成します。

パラメーター説明
options: ExtensionTerminalOptions

新しいターミナルの特性を記述するExtensionTerminalOptionsオブジェクト。

戻り値説明
Terminal

新しいターミナル。

テキストエディターに装飾を追加するために使用できるTextEditorDecorationTypeを作成します。

パラメーター説明
options: DecorationRenderOptions

装飾タイプのレンダリングオプション。

戻り値説明
TextEditorDecorationType

新しい装飾タイプのインスタンス。

拡張機能ポイントviewsを使用して提供されるビューのTreeViewを作成します。

パラメーター説明
viewId: string

拡張機能ポイントviewsを使用して提供されるビューのID。

options: TreeViewOptions<T>

TreeViewを作成するためのオプション

戻り値説明
TreeView<T>

新しいwebviewパネルを作成して表示します。

パラメーター説明
viewType: string

webviewパネルのタイプを識別します。

title: string

パネルのタイトル。

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

エディターでwebviewを表示する場所。 preserveFocusが設定されている場合、新しいwebviewはフォーカスを受け取りません。

options?: WebviewPanelOptions & WebviewOptions

新しいパネルの設定。

戻り値説明
WebviewPanel

新しいwebviewパネル。

customEditors拡張機能ポイントによって提供されるviewTypeのカスタムエディターのプロバイダーを登録します。

カスタムエディターが開かれると、onCustomEditor:viewTypeアクティベーションイベントが発生します。拡張機能は、アクティベーションの一部として、viewTypeCustomTextEditorProviderCustomReadonlyEditorProviderCustomEditorProviderを登録する必要があります。

パラメーター説明
viewType: string

カスタムエディタープロバイダーの一意の識別子。これは、customEditorsコントリビューションポイントからのviewTypeと一致する必要があります。

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

カスタムエディターを解決するプロバイダー。

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

プロバイダーのオプション。

戻り値説明
Disposable

プロバイダーを登録解除するDisposable。

ファイル装飾プロバイダーを登録します。

パラメーター説明
provider: FileDecorationProvider
戻り値説明
Disposable

プロバイダーを登録解除するDisposable

ターミナル内のリンクの検出と処理を可能にするプロバイダーを登録します。

パラメーター説明
provider: TerminalLinkProvider<TerminalLink>

ターミナルリンクを提供するプロバイダー。

戻り値説明
Disposable

プロバイダーを登録解除するDisposable。

提供されたターミナルプロファイルのプロバイダーを登録します。

パラメーター説明
id: string

提供されたターミナルプロファイルのID。

provider: TerminalProfileProvider

ターミナルプロファイルプロバイダー。

戻り値説明
Disposable

プロバイダーを登録解除するディスポーザブル

拡張機能ポイントviewsを使用して提供されるビューのTreeDataProviderを登録します。これにより、TreeViewにデータを追加し、データが変更された場合に更新できます。

注: TreeViewにアクセスして操作を実行するには、createTreeViewを使用してください。

パラメーター説明
viewId: string

拡張機能ポイントviewsを使用して提供されるビューのID。

treeDataProvider: TreeDataProvider<T>

ビューのツリーデータを提供するTreeDataProvider

戻り値説明
Disposable

システム全体のuriを処理できるuriハンドラーを登録します。複数のウィンドウが開いている場合、最上位のウィンドウがuriを処理します。uriハンドラーは、それが提供された拡張機能にスコープされます。拡張機能自体に向けられたuriのみを処理できます。uriは次のルールに従う必要があります

  • uriスキームはvscode.env.uriSchemeである必要があります。
  • uri権限は拡張機能ID(例:my.extension)である必要があります。
  • uriパス、クエリ、フラグメント部分は任意です。

たとえば、my.extension拡張機能がuriハンドラーを登録する場合、プレフィックスproduct-name://my.extensionを持つuriのみを処理できます。

拡張機能は、アクティベーションのライフタイム全体で単一のuriハンドラーのみを登録できます。

  • 注: 現在の拡張機能に向けられたuriが処理されようとしているときに発生するアクティベーションイベントonUriがあります。
パラメーター説明
handler: UriHandler

この拡張機能に登録するuriハンドラー。

戻り値説明
Disposable

ハンドラーを登録解除するディスポーザブル

webviewパネルシリアライザーを登録します。

復元をサポートする拡張機能には、"onWebviewPanel:viewType"アクティベーションイベントがあり、アクティベーション中にregisterWebviewPanelSerializerが呼び出されていることを確認する必要があります。

特定のviewTypeに対して一度に登録できるシリアライザーは1つだけです。

パラメーター説明
viewType: string

シリアライズできるwebviewパネルのタイプ。

serializer: WebviewPanelSerializer<unknown>

Webviewシリアライザー。

戻り値説明
Disposable

シリアライザーを登録解除するディスポーザブル

webviewビューの新しいプロバイダーを登録します。

パラメーター説明
viewId: string

ビューの一意のID。これは、package.jsonのviewsコントリビューションからのidと一致する必要があります。

provider: WebviewViewProvider

webviewビューのプロバイダー。

options?: {webviewOptions: {retainContextWhenHidden: boolean}}
戻り値説明
Disposable

プロバイダーを登録解除するDisposable。

ステータスバーにメッセージを設定します。これは、より強力なステータスバーのアイテムの簡単な方法です。

パラメーター説明
text: string

表示するメッセージ。ステータスバーのアイテムと同様に、アイコンの置換をサポートします。

hideAfterTimeout: number

メッセージが破棄されるまでのタイムアウト(ミリ秒単位)。

戻り値説明
Disposable

ステータスバーメッセージを非表示にするディスポーザブル。

ステータスバーにメッセージを設定します。これは、より強力なステータスバーのアイテムの簡単な方法です。

パラメーター説明
text: string

表示するメッセージ。ステータスバーのアイテムと同様に、アイコンの置換をサポートします。

hideWhenDone: Thenable<any>

完了(resolve または reject)時にメッセージが破棄される Thenable。

戻り値説明
Disposable

ステータスバーメッセージを非表示にするディスポーザブル。

ステータスバーにメッセージを設定します。これは、より強力なステータスバーのアイテムの簡単な方法です。

注意: ステータスバーメッセージはスタックされ、不要になった場合は破棄する必要があります。

パラメーター説明
text: string

表示するメッセージ。ステータスバーのアイテムと同様に、アイコンの置換をサポートします。

戻り値説明
Disposable

ステータスバーメッセージを非表示にするディスポーザブル。

エラーメッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

エラーメッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

エラーメッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

エラーメッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

ユーザーに情報メッセージを表示します。オプションで、クリック可能なボタンとして表示されるアイテムの配列を提供します。

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

ユーザーに情報メッセージを表示します。オプションで、クリック可能なボタンとして表示されるアイテムの配列を提供します。

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

情報メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

情報メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

ユーザーに入力を求める入力ボックスを開きます。

入力ボックスがキャンセルされた場合(例:ESCキーを押した場合)、返される値はundefinedになります。それ以外の場合、返される値はユーザーが入力した文字列、またはユーザーが何も入力せずにOKで入力ボックスを閉じた場合は空の文字列になります。

パラメーター説明
options?: InputBoxOptions

入力ボックスの動作を設定します。

token?: CancellationToken

キャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<string | undefined>

ユーザーが提供した文字列、またはdismissされた場合はundefinedに解決されるPromise。

指定されたNotebookDocumentnotebook editorに表示します。

パラメーター説明
document: NotebookDocument

表示するテキストドキュメント。

options?: NotebookDocumentShowOptions

Editor options notebook editorの表示動作を設定します。

戻り値説明
Thenable<NotebookEditor>

notebook editorに解決されるPromise。

ファイルを開く目的でファイルを選択できるファイルオープンダイアログをユーザーに表示します。

パラメーター説明
options?: OpenDialogOptions

ダイアログを制御するオプション。

戻り値説明
Thenable<Uri[] | undefined>

選択されたリソース、またはundefinedに解決されるPromise。

複数選択を可能にする選択リストを表示します。

パラメーター説明
items: readonly string[] | Thenable<readonly string[]>

文字列の配列、または文字列の配列に解決されるPromise。

options: QuickPickOptions & {canPickMany: true}

選択リストの動作を設定します。

token?: CancellationToken

キャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<string[] | undefined>

選択されたアイテム、またはundefinedに解決されるPromise。

選択リストを表示します。

パラメーター説明
items: readonly string[] | Thenable<readonly string[]>

文字列の配列、または文字列の配列に解決されるPromise。

options?: QuickPickOptions

選択リストの動作を設定します。

token?: CancellationToken

キャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<string | undefined>

選択、またはundefinedに解決されるPromise。

複数選択を可能にする選択リストを表示します。

パラメーター説明
items: readonly T[] | Thenable<readonly T[]>

アイテムの配列、またはアイテムの配列に解決されるPromise。

options: QuickPickOptions & {canPickMany: true}

選択リストの動作を設定します。

token?: CancellationToken

キャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<T[] | undefined>

選択されたアイテム、またはundefinedに解決されるPromise。

選択リストを表示します。

パラメーター説明
items: readonly T[] | Thenable<readonly T[]>

アイテムの配列、またはアイテムの配列に解決されるPromise。

options?: QuickPickOptions

選択リストの動作を設定します。

token?: CancellationToken

キャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはundefinedに解決されるPromise。

ファイルを保存する目的でファイルを選択できるファイル保存ダイアログをユーザーに表示します。

パラメーター説明
options?: SaveDialogOptions

ダイアログを制御するオプション。

戻り値説明
Thenable<Uri | undefined>

選択されたリソース、またはundefinedに解決されるPromise。

指定されたドキュメントをテキストエディターに表示します。columnを指定して、エディターを表示する場所を制御できます。アクティブなエディターが変更される可能性があります。

パラメーター説明
document: TextDocument

表示するテキストドキュメント。

column?: ViewColumn

エディターを表示するビュー列。デフォルトはアクティブです。存在しない列は、最大ViewColumn.Nineまで必要に応じて作成されます。ViewColumn.Besideを使用すると、現在アクティブなエディターの横にエディターを開きます。

preserveFocus?: boolean

trueの場合、エディターはフォーカスを取得しません。

戻り値説明
Thenable<TextEditor>

エディターに解決されるPromise。

指定されたドキュメントをテキストエディターに表示します。Optionsを指定して、エディターの表示オプションを制御できます。アクティブなエディターが変更される可能性があります。

パラメーター説明
document: TextDocument

表示するテキストドキュメント。

options?: TextDocumentShowOptions

Editor options エディターの表示動作を設定します。

戻り値説明
Thenable<TextEditor>

エディターに解決されるPromise。

openTextDocument(uri).then(document => showTextDocument(document, options))の短縮形です。

参照: workspace.openTextDocument

パラメーター説明
uri: Uri

リソース識別子。

options?: TextDocumentShowOptions

Editor options エディターの表示動作を設定します。

戻り値説明
Thenable<TextEditor>

エディターに解決されるPromise。

警告メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

警告メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

警告メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

警告メッセージを表示します。

参照: showInformationMessage

パラメーター説明
message: string

表示するメッセージ。

options: MessageOptions

メッセージの動作を設定します。

...items: T[]

メッセージ内のアクションとしてレンダリングされるアイテムのセット。

戻り値説明
Thenable<T | undefined>

選択されたアイテム、またはdismissされた場合にundefinedに解決されるThenable。

ワークスペースフォルダーの選択リストを表示して、選択できるようにします。フォルダーが開いていない場合はundefinedを返します。

パラメーター説明
options?: WorkspaceFolderPickOptions

ワークスペースフォルダーリストの動作を設定します。

戻り値説明
Thenable<WorkspaceFolder | undefined>

ワークスペースフォルダー、またはundefinedに解決されるPromise。

エディターに進行状況を表示します。進行状況は、指定されたコールバックの実行中、およびそれが返したPromiseがresolveもrejectもされない間に表示されます。進行状況を表示する場所(およびその他の詳細)は、渡されたProgressOptionsによって定義されます。

パラメーター説明
options: ProgressOptions

進行状況の表示に使用するオプション(場所など)を記述するProgressOptionsオブジェクト

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

Promiseを返すコールバック。進行状況の状態は、提供されたProgressオブジェクトで報告できます。

離散的な進行状況を報告するには、完了した作業量をincrementを使用して示します。increment値を使用した各呼び出しは合計され、100%に達するまで全体的な進行状況として反映されます(例:10の値は、完了した作業の10%を占めます)。現在、ProgressLocation.Notificationのみが離散的な進行状況を表示できることに注意してください。

操作がユーザーによってキャンセルされたかどうかを監視するには、提供されたCancellationTokenを使用します。現在、ProgressLocation.Notificationのみが、長時間実行されている操作をキャンセルするためのキャンセルボタンの表示をサポートしていることに注意してください。

戻り値説明
Thenable<R>

taskコールバックが返したThenable。

指定されたコールバックの実行中、およびそれが返したPromiseがresolveまたはrejectされない間、ソース管理ビューレットに進行状況を表示します。

  • 非推奨 - 代わりにwithProgressを使用してください。
パラメーター説明
task: (progress: Progress<number>) => Thenable<R>

Promiseを返すコールバック。進行状況の増分は、提供されたProgressオブジェクトで報告できます。

戻り値説明
Thenable<R>

タスクが返したThenable。

ワークスペース

現在のワークスペースを扱うための名前空間。ワークスペースとは、エディターウィンドウ(インスタンス)で開かれている1つまたは複数のフォルダーのコレクションです。

ワークスペースなしでエディターを開くことも可能です。たとえば、プラットフォームのファイルメニューからファイルを選択して新しいエディターウィンドウを開くと、ワークスペース内にはいません。このモードでは、エディターの一部の機能は制限されますが、テキストファイルを開いて編集することはできます。

ワークスペースの概念の詳細については、https://vscode.dokyumento.jp/docs/editor/workspacesを参照してください。

ワークスペースは、fsイベントをリッスンしたり、ファイルを検索したりするためのサポートを提供します。どちらもパフォーマンスが高く、エディタープロセスで実行されるため、nodejsと同等のものよりも常に使用する必要があります。

変数

ファイルシステムインスタンス。ローカルファイルおよびリモートファイルと対話できます。例:vscode.workspace.fs.readDirectory(someUri)を使用すると、ディレクトリのすべてのエントリを取得できます。また、vscode.workspace.fs.stat(anotherUri)はファイルのメタデータを返します。

trueの場合、ユーザーはワークスペースのコンテンツを明示的に信頼しています。

ワークスペースの名前。ワークスペースが開かれていない場合はundefined

ワークスペースの概念の詳細については、https://vscode.dokyumento.jp/docs/editor/workspacesを参照してください。

エディターが現在認識しているすべてのノートブックドキュメント。

workspaceFoldersの最初のエントリのURIをstringとして表したもの。最初のエントリがない場合はundefined

ワークスペースの詳細については、https://vscode.dokyumento.jp/docs/editor/workspacesを参照してください。

エディターが現在認識しているすべてのテキストドキュメント。

ワークスペースファイルの場所。例:

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

または

untitled:1555503116870

まだ保存されていないタイトルのないワークスペースの場合。

開かれているワークスペースに応じて、値は次のようになります。

  • ワークスペースが開かれていない場合はundefined
  • それ以外の場合はワークスペースファイルのパスをUriとして。ワークスペースにタイトルがない場合、返されるURIはuntitled:スキームを使用します

場所は、たとえば、vscode.openFolderコマンドで使用して、ワークスペースを閉じた後にもう一度開くことができます。

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

ワークスペースの概念の詳細については、https://vscode.dokyumento.jp/docs/editor/workspacesを参照してください。

注意: workspace.workspaceFileを使用して構成データをファイルに書き込むことは推奨されません。代わりにworkspace.getConfiguration().update()を使用できます。これは、単一のフォルダーが開かれている場合でも、タイトルのないワークスペースまたは保存されたワークスペースでも機能します。

エディターで開いているワークスペースフォルダーのリスト(0〜N)。ワークスペースが開かれていない場合はundefined

ワークスペースの詳細については、https://vscode.dokyumento.jp/docs/editor/workspacesを参照してください。

イベント

構成が変更されたときに発行されるイベント。

ノートブックが変更されたときに発行されるイベント。

テキストドキュメントが変更されたときに発行されるイベント。これは通常、コンテンツが変更された場合だけでなく、dirty状態の変更などの他の場合にも発生します。

ワークスペースフォルダーが追加または削除されたときに発行されるイベント。

注意: 最初​​のワークスペースフォルダーが追加、削除、または変更された場合、このイベントは発生しません。その場合、(このイベントをリッスンする拡張機能を含む)現在実行中の拡張機能は終了して再起動されるため、(非推奨の)rootPathプロパティが最初のワークスペースフォルダーを指すように更新されます。

ノートブックnotebookが破棄されたときに発生するイベント。

注 1: エディタータブが閉じられたときにこのイベントが発生する保証はありません。

注 2: ノートブックは開いているがエディターに表示されていない場合があり、これはエディターに表示されていないノートブックに対してもこのイベントが発生する可能性があることを意味します。

テキストドキュメントtext documentが破棄されたとき、またはテキストドキュメントの言語 ID が変更されたときに発生するイベント。

注 1: エディタータブが閉じられたときにこのイベントが発生する保証はありません。エディターの変更を知るには、onDidChangeVisibleTextEditorsイベントを使用してください。

注 2: ドキュメントは開いているがエディターに表示されていない場合があり、これはエディターに表示されていないドキュメントに対してもこのイベントが発生する可能性があることを意味します。

ファイルが作成されたときに発生するイベント。

注: このイベントは、エクスプローラーからのファイルの作成や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。ただし、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

ファイルが削除されたときに発生するイベント。

注 1: このイベントは、エクスプローラーからのファイルの削除や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。ただし、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

注 2: 子を持つフォルダーを削除する場合、イベントは 1 つだけ発生します。

現在のワークスペースが信頼されたときに発生するイベント。

ノートブックnotebookが開かれたときに発生するイベント。

テキストドキュメントtext documentが開かれたとき、またはテキストドキュメントの言語 ID が変更されたときに発生するイベント。

可視テキストドキュメントが開かれたときにイベントリスナーを追加するには、window名前空間のTextEditorイベントを使用してください。注意点として、

ファイルの名前が変更されたときに発生するイベント。

注 1: このイベントは、エクスプローラーからのファイル名の変更や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。ただし、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

注 2: 子を持つフォルダーの名前を変更する場合、イベントは 1 つだけ発生します。

ノートブックnotebookが保存されたときに発生するイベント。

テキストドキュメントtext documentがディスクに保存されたときに発生するイベント。

ファイルが作成されているときに発生するイベント。

注 1: このイベントは、エクスプローラーからのファイルの作成や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。このイベントは、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

注 2: このイベントが発生すると、作成中のファイルへの編集は適用できません。

ファイルが削除されているときに発生するイベント。

注 1: このイベントは、エクスプローラーからのファイルの削除や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。ただし、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

注 2: 子を持つフォルダーを削除する場合、イベントは 1 つだけ発生します。

ファイルの名前が変更されているときに発生するイベント。

注 1: このイベントは、エクスプローラーからのファイル名の変更や、workspace.applyEdit-API などのユーザー操作によってトリガーされます。ただし、別のアプリケーションによってトリガーされたり、workspace.fs-API を使用したりするなど、ディスク上のファイルが変更された場合には発生しません

注 2: 子を持つフォルダーの名前を変更する場合、イベントは 1 つだけ発生します。

ノートブックドキュメントnotebook documentがディスクに保存されようとしているときに発生するイベント。

注 1: サブスクライバーは、非同期処理を登録することで保存を遅らせることができます。データ整合性のため、エディターはこのイベントを発生させずに保存する場合があります。たとえば、ダーティファイルがある状態でシャットダウンする場合などです。

注 2: サブスクライバーは順番に呼び出され、非同期処理を登録することで保存を遅らせることができます。不正な動作をするリスナーに対する保護は、次のように実装されています。

  • すべてのリスナーが共有する全体的な時間制限があり、それが超過すると、それ以上のリスナーは呼び出されません。
  • 時間がかかるリスナーや頻繁にエラーを生成するリスナーは、それ以降呼び出されなくなります。

現在の閾値は、全体的な時間制限として 1.5 秒、リスナーが無視されるまでに不正な動作を許容する回数は 3 回です。

テキストドキュメントtext documentがディスクに保存されようとしているときに発生するイベント。

注 1: サブスクライバーは、非同期処理を登録することで保存を遅らせることができます。データ整合性のため、エディターはこのイベントを発生させずに保存する場合があります。たとえば、ダーティファイルがある状態でシャットダウンする場合などです。

注 2: サブスクライバーは順番に呼び出され、非同期処理を登録することで保存を遅らせることができます。不正な動作をするリスナーに対する保護は、次のように実装されています。

  • すべてのリスナーが共有する全体的な時間制限があり、それが超過すると、それ以上のリスナーは呼び出されません。
  • 時間がかかるリスナーや頻繁にエラーを生成するリスナーは、それ以降呼び出されなくなります。

現在の閾値は、全体的な時間制限として 1.5 秒、リスナーが無視されるまでに不正な動作を許容する回数は 3 回です。

関数

与えられたワークスペース編集workspace editで定義されているように、1 つまたは複数のリソースに変更を加えるか、リソースを作成、削除、および名前変更します。

ワークスペース編集のすべての変更は、追加された順序と同じ順序で適用されます。同じ位置に複数のテキスト挿入が行われた場合、それらがリソース編集とインターリーブされていない限り、これらの文字列は「挿入」が行われた順序で結果のテキストに表示されます。「ファイル a を削除」->「ファイル a にテキストを挿入」のような無効なシーケンスは、操作の失敗を引き起こします。

テキスト編集のみで構成されるワークスペース編集を適用する場合、「all-or-nothing」戦略が使用されます。リソースの作成または削除を含むワークスペース編集は操作を中止します。たとえば、単一の編集が失敗した場合、連続する編集は試行されません。

パラメーター説明
edit: WorkspaceEdit

ワークスペース編集。

metadata?: WorkspaceEditMetadata

編集のオプションのメタデータ

戻り値説明
Thenable<boolean>

編集が適用可能になったときに解決される Thenable。

ワークスペースフォルダーまたはフォルダーに対して相対的なパスを返します。

ワークスペースフォルダーworkspace foldersがない場合、またはパスがそれらに含まれていない場合、入力が返されます。

パラメーター説明
pathOrUri: string | Uri

パスまたは URI。URI が指定された場合、そのfsPathが使用されます。

includeWorkspaceFolder?: boolean

trueの場合、および指定されたパスがワークスペースフォルダー内に含まれている場合、ワークスペースの名前が先頭に追加されます。複数のワークスペースフォルダーがある場合はデフォルトで true、それ以外の場合は false になります。

戻り値説明
string

ルートまたは入力に対する相対パス。

指定されたパラメーターに応じて、ファイルイベント (作成、変更、削除) で通知されるファイルシステムウォッチャーを作成します。

デフォルトでは、開いているすべてのワークスペースフォルダーworkspace foldersは、ファイル変更を再帰的に監視されます。

監視する<コード>baseパスを持つ相対パターンRelativePatternを提供することにより、ファイル監視用の追加パスを追加できます。パスがフォルダーであり、patternが複雑な場合 (例: ** またはパスセグメントを含む)、再帰的に監視され、それ以外の場合は非再帰的に監視されます (つまり、パスの最初のレベルへの変更のみが報告されます)。

ファイルシステムに存在しないパスは、作成されるまで遅延して監視され、その後、提供されたパラメーターに応じて監視されることに注意してください。監視対象のパスが削除されると、ウォッチャーは一時停止し、パスが再度作成されるまでイベントを報告しません。

可能な限り、再帰的なウォッチャーの使用を最小限に抑えてください。再帰的なファイル監視はリソースを非常に消費するためです。

globPatternとしてstringを提供することは、開いているすべてのワークスペースフォルダーでファイルイベントを監視するための便利な方法として機能します。ファイル監視のためにより多くのフォルダーを追加するために使用することはできず、開いているワークスペースフォルダーの一部ではないフォルダーからのファイルイベントを報告することもありません。

オプションで、特定の種類のイベントを無視するフラグを提供できます。

イベントのリスニングを停止するには、ウォッチャーを破棄する必要があります。

再帰的なファイルウォッチャーからのファイルイベントは、ユーザー構成に基づいて除外される場合があることに注意してください。設定 files.watcherExclude は、多くのファイル変更を一度に生成することがわかっているフォルダー (.git フォルダーなど) からのファイルイベントのオーバーヘッドを削減するのに役立ちます。そのため、除外設定が無視され、イベントを完全に制御できる再帰的なウォッチャーを必要としないシンプルなパターンで監視することを強くお勧めします。

監視対象のパス自体がシンボリックリンクでない限り、シンボリックリンクはファイル監視のために自動的に追跡されないことに注意してください。

変更が報告されたファイルパスは、大文字と小文字を区別しないプラットフォーム (通常は macOS と Windows、Linux ではない) でのディスク上の実際の大文字と小文字の区別とは異なるパスの大文字と小文字の区別を持つ場合があることに注意してください。ユーザーは、希望する任意の大文字と小文字の区別でワークスペースフォルダーを開くことができ、それを保持しようとします。これは、

  • パスがワークスペースフォルダーのいずれか内にある場合、パスはそのパスの部分までワークスペースフォルダーの大文字と小文字の区別と一致し、子のディスク上の大文字と小文字の区別と一致します。
  • パスがワークスペースフォルダーのいずれかの外にある場合、大文字と小文字の区別は監視のために提供されたパスの大文字と小文字の区別と一致します。同様に、シンボリックリンクは保持されます。つまり、ファイルイベントは、監視のために提供されたシンボリックリンクのパスを報告し、ターゲットは報告しません。

ファイルウォッチャーの基本的な構造は次のとおりです。

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

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

watcher.dispose(); // dispose after usage

ワークスペースファイルの監視

特定のワークスペースフォルダー内のファイルイベントのみを気にする場合

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

開いているすべてのワークスペースフォルダー間でファイルイベントを監視する場合

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

注: ワークスペースが開かれていない場合 (空のウィンドウ)、ワークスペースフォルダーの配列は空になる可能性があります。

ワークスペース外のファイル監視

ワークスペース外の *.js ファイルの変更をフォルダーを監視するには (非再帰的)、そのようなフォルダーへの Uri を渡します。

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

そして、複雑な glob パターンを使用して再帰的に監視します。

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

アクティブなエディターのファイル変更を監視する例を次に示します。

vscode.workspace.createFileSystemWatcher(
  new vscode.RelativePattern(vscode.window.activeTextEditor.document.uri, '*')
);
パラメーター説明
globPattern: GlobPattern

ウォッチャーが報告する必要があるファイルイベントを制御する glob パターンglob pattern

ignoreCreateEvents?: boolean

ファイルが作成されたときに無視します。

ignoreChangeEvents?: boolean

ファイルが変更されたときに無視します。

ignoreDeleteEvents?: boolean

ファイルが削除されたときに無視します。

戻り値説明
FileSystemWatcher

新しいファイルシステムウォッチャーインスタンス。不要になったら破棄する必要があります。

ワークスペース内のすべてのワークスペースフォルダーworkspace foldersからファイルを検索します。

findFiles('**/*.js', '**/node_modules/**', 10);
パラメーター説明
include: GlobPattern

検索するファイルを定義する glob パターンglob pattern。glob パターンは、ワークスペースに対する相対的な一致結果のファイルパスと照合されます。検索結果をワークスペースフォルダーworkspace folderに制限するには、相対パターンrelative patternを使用します。

exclude?: GlobPattern

除外するファイルとフォルダーを定義する glob パターンglob pattern。glob パターンは、ワークスペースに対する相対的な一致結果のファイルパスと照合されます。undefined の場合、デフォルトのファイル除外 (例: files.exclude 設定、search.exclude 設定ではない) が適用されます。null の場合、除外は適用されません。

maxResults?: number

結果の上限。

token?: CancellationToken

基盤となる検索エンジンにキャンセルを通知するために使用できるトークン。

戻り値説明
Thenable<Uri[]>

リソース識別子の配列に解決される Thenable。ワークスペースフォルダーworkspace foldersが開かれていない場合は、結果を返しません。

ワークスペース構成オブジェクトを取得します。

セクション識別子が提供された場合、構成のその部分のみが返されます。セクション識別子のドットは、{ myExt: { setting: { doIt: true }}}getConfiguration('myExt.setting').get('doIt') === true のように、子アクセスとして解釈されます。

スコープが指定された場合、そのスコープに限定された構成が返されます。スコープは、リソース、言語識別子、または両方にすることができます。

パラメーター説明
section?: string

ドット区切りの識別子。

scope?: ConfigurationScope

構成が要求されるスコープ。

戻り値説明
WorkspaceConfiguration

完全な構成またはサブセット。

指定された URI を含むワークスペースフォルダーworkspace folderを返します。

  • 指定された URI がワークスペースフォルダーと一致しない場合は undefined を返します。
  • 指定された URI がワークスペースフォルダー自体である場合は 入力 を返します。
パラメーター説明
uri: Uri

URI。

戻り値説明
WorkspaceFolder | undefined

ワークスペースフォルダーまたは undefined

ノートブックを開きます。このノートブックがすでにロード済みである場合は、すぐに戻ります。それ以外の場合、ノートブックがロードされ、onDidOpenNotebookDocumentonDidOpenNotebookDocument イベントが発生します。

返されるノートブックのライフサイクルは、拡張機能ではなく、エディターによって所有されていることに注意してください。つまり、onDidCloseNotebookDocumentonDidCloseNotebookDocument イベントは、いつでも発生する可能性があります。

ノートブックを開いても、ノートブックエディターは表示されないことに注意してください。この関数は、ノートブックエディターに表示できるノートブックドキュメントのみを返しますが、他の目的にも使用できます。

パラメーター説明
uri: Uri

開くリソース。

戻り値説明
Thenable<NotebookDocument>

ノートブックnotebookに解決される Promise

無題のノートブックを開きます。ドキュメントを保存するときに、エディターはユーザーにファイルパスの入力を求めます。

参照 workspace.openNotebookDocumentworkspace.openNotebookDocument

パラメーター説明
notebookType: string

使用する必要があるノートブックタイプ。

content?: NotebookData

ノートブックの初期コンテンツ。

戻り値説明
Thenable<NotebookDocument>

ノートブックnotebookに解決される Promise。

ドキュメントを開きます。このドキュメントがすでに開いている場合は、すぐに戻ります。それ以外の場合、ドキュメントがロードされ、didOpendidOpen イベントが発生します。

ドキュメントは URIUri で示されます。スキームschemeに応じて、次のルールが適用されます。

  • file スキーム: ディスク上のファイルを開きます (openTextDocument(Uri.file(path)))。ファイルが存在しない場合、またはロードできない場合は拒否されます。
  • untitled スキーム: 関連付けられたパスを持つ空白の無題ファイルを開きます (openTextDocument(Uri.file(path).with({ scheme: 'untitled' })))。言語はファイル名から派生します。
  • 他のすべてのスキームについては、テキストドキュメントコンテンツプロバイダーtext document content providersとファイルシステムプロバイダーfile system providersが参照されます。

返されるドキュメントのライフサイクルは、拡張機能ではなく、エディターによって所有されていることに注意してください。つまり、onDidCloseonDidClose イベントは、開いた後いつでも発生する可能性があります。

パラメーター説明
uri: Uri

開くリソースを識別します。

戻り値説明
Thenable<TextDocument>

ドキュメントdocumentに解決される Promise。

openTextDocument(Uri.file(path)) の短縮形。

参照: workspace.openTextDocument

パラメーター説明
path: string

ディスク上のファイルのパス。

戻り値説明
Thenable<TextDocument>

ドキュメントdocumentに解決される Promise。

無題のテキストドキュメントを開きます。ドキュメントを保存するときに、エディターはユーザーにファイルパスの入力を求めます。options パラメーターを使用すると、ドキュメントの言語および/またはコンテンツを指定できます。

パラメーター説明
options?: {content: string, language: string}

ドキュメントの作成方法を制御するオプション。

戻り値説明
Thenable<TextDocument>

ドキュメントdocumentに解決される Promise。

指定されたスキーム (例: ftp) のファイルシステムプロバイダーを登録します。

スキームごとにプロバイダーは 1 つしか存在できず、スキームが別のプロバイダーによって要求された場合、または予約されている場合はエラーがスローされます。

パラメーター説明
scheme: string

プロバイダーが登録する uri スキームscheme

provider: FileSystemProvider

ファイルシステムプロバイダー。

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

プロバイダーに関する不変のメタデータ。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

ノートブックシリアライザーnotebook serializerを登録します。

ノートブックシリアライザーは、notebooks 拡張機能ポイントを通じてコントリビューションする必要があります。ノートブックファイルを開くと、エディターは onNotebook:<notebookType> アクティベーションイベントを送信し、拡張機能はそれに応じてシリアライザーを登録する必要があります。

パラメーター説明
notebookType: string

ノートブック。

serializer: NotebookSerializer

ノートブックシリアライザー。

options?: NotebookDocumentContentOptions

ノートブックのどの部分を永続化する必要があるかを定義するオプションのコンテキストオプション

戻り値説明
Disposable

破棄されるときにこのシリアライザーを登録解除する DisposableDisposable

タスクプロバイダーを登録します。

  • 非推奨 - 代わりに tasks 名前空間の対応する関数を使用してください
パラメーター説明
type: string

このプロバイダーが登録されているタスクの種類。

provider: TaskProvider<Task>

タスクプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

テキストドキュメントコンテンツプロバイダーを登録します。

スキームごとに登録できるプロバイダーは 1 つだけです。

パラメーター説明
scheme: string

登録する uri スキーム。

provider: TextDocumentContentProvider

コンテンツプロバイダー。

戻り値説明
Disposable

破棄されるときにこのプロバイダーを登録解除する Disposable

指定されたリソースで識別されるエディターを保存し、保存が成功しなかった場合、または指定されたリソースを持つエディターが見つからなかった場合は、結果のリソースまたは undefined を返します。

保存するには、提供されたリソースを持つエディターが開かれている必要があります。

パラメーター説明
uri: Uri

保存する開いているエディターに関連付けられた URI。

戻り値説明
Thenable<Uri | undefined>

保存操作が完了したときに解決される Thenable。

すべてのダーティファイルを保存します。

パラメーター説明
includeUntitled?: boolean

このセッション中に作成されたファイルも保存します。

戻り値説明
Thenable<boolean>

ファイルが保存されたときに解決される Thenable。保存に失敗したファイルについては false を返します。

指定されたリソースで識別されるエディターを、ユーザーが提供した新しいファイル名で保存し、保存が成功しなかった場合、キャンセルされた場合、または指定されたリソースを持つエディターが見つからなかった場合は、結果のリソースまたは undefined を返します。

名前を付けて保存するには、提供されたリソースを持つエディターが開かれている必要があります。

パラメーター説明
uri: Uri

名前を付けて保存する開いているエディターに関連付けられた URI。

戻り値説明
Thenable<Uri | undefined>

名前を付けて保存操作が完了したときに解決される Thenable。

このメソッドは、vscode.workspace.workspaceFolders 配列のインデックス start から始まる deleteCount 個の ワークスペースフォルダー を、オプションの workspaceFoldersToAdd セットで置き換えます。この「splice」動作は、単一の操作でワークスペースフォルダーを追加、削除、および変更するために使用できます。

注: 場合によっては、このメソッドを呼び出すと、現在実行中の拡張機能(このメソッドを呼び出した拡張機能を含む)が終了して再起動されることがあります。たとえば、最初のワークスペースフォルダーが追加、削除、または変更された場合、(非推奨の)rootPath プロパティが最初のワークスペースフォルダーを指すように更新されます。別のケースとして、空または単一フォルダーのワークスペースからマルチフォルダーワークスペースに移行する場合も該当します(https://vscode.dokyumento.jp/docs/editor/workspaces も参照してください)。

onDidChangeWorkspaceFolders() イベントを使用して、ワークスペースフォルダーが更新されたときに通知を受け取ります。

例: ワークスペースフォルダーの最後尾に新しいワークスペースフォルダーを追加する

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

例: 最初のワークスペースフォルダーを削除する

workspace.updateWorkspaceFolders(0, 1);

例: 既存のワークスペースフォルダーを新しいものと置き換える

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

既存のワークスペースフォルダーを削除し、異なる名前で再度追加して、そのフォルダーの名前を変更することは有効です。

注: onDidChangeWorkspaceFolders() が発生するのを待たずに、updateWorkspaceFolders() を複数回呼び出すことは無効です。

パラメーター説明
start: number

現在開いている ワークスペースフォルダー のリスト内で、ワークスペースフォルダーの削除を開始するゼロベースの位置。

deleteCount: number

削除するワークスペースフォルダーのオプションの数。

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

削除されたワークスペースフォルダーの代わりに、オプションで追加されるワークスペースフォルダーの可変セット。各ワークスペースは、必須の URI とオプションの名前で識別されます。

戻り値説明
boolean

操作が正常に開始された場合は true、無効なワークスペースフォルダーの状態(例:同じ URI を持つ 2 つのフォルダー)になる引数が使用された場合は false。

AccessibilityInformation

スクリーンリーダーの動作を制御するアクセシビリティ情報。

プロパティ

項目がフォーカスされたときにスクリーンリーダーによって読み上げられるラベル。

ウィジェットのロール。スクリーンリーダーがウィジェットとどのように対話するかを定義します。ロールは、たとえばツリー状の要素がチェックボックスのように動作する場合など、特別な場合に設定する必要があります。ロールが指定されていない場合、エディターは適切なロールを自動的に選択します。aria ロールに関する詳細はこちらをご覧ください https://w3c.github.io/aria/#widget_roles

AuthenticationForceNewSessionOptions

forceNewSession フラグを指定して authentication.getSession を呼び出すときに使用するオプションのオプション。

AuthenticationGetSessionOptions

AuthenticationProvider から AuthenticationSession を取得するときに使用するオプション。

プロパティ

セッションを取得したいアカウント。これは、正しいセッションを作成するために使用される認証プロバイダーに渡されます。

既存のセッション設定をクリアする必要があるかどうか。

複数のアカウントへのサインインを同時にサポートする認証プロバイダーの場合、getSession が呼び出されると、使用するアカウントを選択するようにユーザーに求められます。この設定は、getSession がこのフラグ付きで呼び出されるまで記憶されます。

注:設定は拡張機能固有です。したがって、ある拡張機能が getSession を呼び出しても、別の拡張機能が getSession を呼び出す場合の設定には影響しません。さらに、設定は現在のワークスペースおよびグローバルにも設定されます。これは、新しいワークスペースは最初は「グローバル」値を使用し、このフラグが指定されると、そのワークスペースに新しい値を設定できることを意味します。これはまた、新しいワークスペースがこのフラグを設定しても、既存のワークスペースが設定を失わないことを意味します。

デフォルトは false です。

一致するセッションがない場合にログインを実行する必要があるかどうか。

true の場合、サインインするように求めるモーダルダイアログが表示されます。false の場合、アカウントアクティビティバーアイコンに番号付きバッジが表示されます。サインインするためのメニューの下に拡張機能のエントリが追加されます。これにより、ユーザーにサインインを静かに促すことができます。

オプションを指定すると、ダイアログも表示されますが、追加のコンテキストが提供されます。

一致するセッションがあるが、拡張機能がそのセッションへのアクセスを許可されていない場合、これを true に設定すると、すぐにモーダルダイアログが表示され、false に設定すると、アカウントアイコンに番号付きバッジが追加されます。

デフォルトは false です。

注:このオプションを silent と一緒に使用することはできません。

すでにセッションが利用可能な場合でも、再認証を試みる必要があるかどうか。

true の場合、再度サインインするように求めるモーダルダイアログが表示されます。これは主に、トークンがいくつかの認証を失ったために再発行する必要があるシナリオで使用されます。

オプションを指定すると、ダイアログも表示されますが、追加のコンテキストが提供されます。

既存のセッションがなく、forceNewSession が true の場合、createIfNone と同じように動作します。

デフォルトは false です。

アカウントメニューにサインインの表示を表示する必要があるかどうか。

false の場合、ユーザーにはアカウントメニューにバッジが表示され、拡張機能にサインインするオプションが表示されます。true の場合、表示は何も表示されません。

デフォルトは false です。

注:このオプションを、createIfNone のようにユーザーにプロンプトを表示する他のオプションと一緒に使用することはできません。

AuthenticationGetSessionPresentationOptions

インタラクティブオプション forceNewSession および createIfNone を指定して authentication.getSession を呼び出すときに使用するオプションのオプション。

プロパティ

再認証を求める際にユーザーに表示されるオプションのメッセージ。ユーザーに再認証を求める理由に関する追加のコンテキストを提供すると、ユーザーが受け入れる可能性が高まるのに役立ちます。

AuthenticationProvider

サービスへの認証を実行するためのプロバイダー。

イベント

セッションの配列が変更された場合、またはセッション内のデータが変更された場合に発生する イベント

メソッド

ユーザーにログインを促します。

ログインが成功した場合、onDidChangeSessions イベントが発生する必要があります。

ログインが失敗した場合、拒否された Promise が返される必要があります。

プロバイダーが複数のアカウントをサポートしていないと指定している場合、これらのスコープに一致する既存のセッションがすでに存在する場合は、これを呼び出すべきではありません。

パラメーター説明
scopes: readonly string[]

新しいセッションが作成されるべきスコープ、権限のリスト。

options: AuthenticationProviderSessionOptions

セッションを作成するための追加オプション。

戻り値説明
Thenable<AuthenticationSession>

認証セッションに解決される Promise。

セッションのリストを取得します。

パラメーター説明
scopes: readonly string[]

オプションのスコープのリスト。提供されている場合、返されるセッションはこれらの権限に一致する必要があります。それ以外の場合は、すべてのセッションが返される必要があります。

options: AuthenticationProviderSessionOptions

セッションを取得するための追加オプション。

戻り値説明
Thenable<AuthenticationSession[]>

認証セッションの配列に解決される Promise。

セッション ID に対応するセッションを削除します。

削除が成功した場合、onDidChangeSessions イベントが発生する必要があります。

セッションを削除できない場合、プロバイダーはエラーメッセージで拒否する必要があります。

パラメーター説明
sessionId: string

削除するセッションの ID。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

AuthenticationProviderAuthenticationSessionsChangeEvent

AuthenticationSession が追加、削除、または変更されたときに発生する イベント

プロパティ

変更された AuthenticationProviderAuthenticationSessions。セッションは、ID を除くデータが更新されると変更されます。この例としては、セッションの新しいアクセストークンが設定されるセッションの更新があります。

AuthenticationProviderInformation

AuthenticationProvider に関する基本情報

プロパティ

認証プロバイダーの一意の識別子。

認証プロバイダーの人間が読める名前。

AuthenticationProviderOptions

AuthenticationProvider を作成するためのオプション。

プロパティ

このプロバイダーで複数のアカウントに同時にサインインできるかどうか。指定しない場合は、デフォルトで false になります。

AuthenticationProviderSessionOptions

AuthenticationProvider.getSessions および AuthenticationProvider.createSession 呼び出しに渡されるオプション。

プロパティ

問い合わせられているアカウント。これが渡された場合、プロバイダーはこのアカウントにのみ関連するセッションを返そうとする必要があります。

AuthenticationSession

現在ログインしているユーザーのセッションを表します。

プロパティ

アクセストークン。

セッションに関連付けられたアカウント。

認証セッションの識別子。

セッションのアクセストークンによって付与された権限。AuthenticationProvider によって利用可能なスコープが定義されます。

AuthenticationSessionAccountInformation

AuthenticationSession に関連付けられたアカウントの情報。

プロパティ

アカウントの一意の識別子。

アカウントの人間が読める名前。

AuthenticationSessionsChangeEvent

AuthenticationSession が追加、削除、または変更されたときに発生する イベント

プロパティ

セッションが変更された AuthenticationProvider

AutoClosingPair

開始文字列を入力すると、閉じ文字列が自動的に挿入される文字列のペアについて説明します。

プロパティ

開始文字列を入力すると自動的に挿入される閉じ文字列。

ペアを自動的に閉じないトークンのセット。

閉じ文字列の自動挿入をトリガーする文字列。

BranchCoverage

StatementCoverage の分岐に関するカバレッジ情報が含まれています。

コンストラクター

パラメーター説明
executed: number | boolean

この分岐が実行された回数、または正確なカウントが不明な場合は実行されたかどうかを示すブール値。ゼロまたは false の場合、分岐は未カバーとしてマークされます。

location?: Range | Position

分岐位置。

label?: string
戻り値説明
BranchCoverage

プロパティ

この分岐が実行された回数、または正確なカウントが不明な場合は実行されたかどうかを示すブール値。ゼロまたは false の場合、分岐は未カバーとしてマークされます。

ブランチのラベル。たとえば、「${label} 分岐は実行されませんでした」というコンテキストで使用されます。

分岐位置。

Breakpoint

すべてのブレークポイントタイプの基本クラス。

コンストラクター

新しいブレークポイントを作成します

パラメーター説明
enabled?: boolean

ブレークポイントが有効かどうか。

condition?: string

条件付きブレークポイントの式

hitCondition?: string

ブレークポイントのヒット数を無視する方法を制御する式

logMessage?: string

ブレークポイントがヒットしたときに表示するログメッセージ

戻り値説明
Breakpoint

プロパティ

条件付きブレークポイントのオプションの式。

ブレークポイントが有効かどうか。

ブレークポイントのヒット数を無視する方法を制御するオプションの式。

ブレークポイントの一意の ID。

このブレークポイントがヒットしたときにログに記録されるオプションのメッセージ。{} 内の埋め込み式は、デバッグアダプターによって補間されます。

BreakpointsChangeEvent

ブレークポイント のセットへの変更を記述するイベント。

プロパティ

追加されたブレークポイント。

変更されたブレークポイント。

削除されたブレークポイント。

CallHierarchyIncomingCall

メソッドまたはコンストラクターの呼び出し元など、受信呼び出しを表します。

コンストラクター

新しい呼び出しオブジェクトを作成します。

パラメーター説明
item: CallHierarchyItem

呼び出しを行う項目。

fromRanges: Range[]

呼び出しが表示される範囲。

戻り値説明
CallHierarchyIncomingCall

プロパティ

呼び出しを行う項目。

呼び出しが表示される範囲。this.from で示される呼び出し元に対する相対範囲です。

CallHierarchyItem

呼び出し階層のコンテキストにおける関数やコンストラクターなどのプログラミング構成要素を表します。

コンストラクター

新しい呼び出し階層項目を作成します。

パラメーター説明
kind: SymbolKind
name: string
detail: string
uri: Uri
range: Range
selectionRange: Range
戻り値説明
CallHierarchyItem

プロパティ

この項目の詳細。たとえば、関数の署名など。

この項目の種類。

この項目の名前。

このシンボルを囲む範囲。先頭/末尾の空白は含まれませんが、コメントやコードなど、その他すべてが含まれます。

このシンボルが選択されたときに選択および表示される範囲。たとえば、関数の名前など。range に含まれている必要があります。

この項目のタグ。

この項目のリソース識別子。

CallHierarchyOutgoingCall

メソッドからのゲッターの呼び出し、コンストラクターからのメソッドの呼び出しなど、送信呼び出しを表します。

コンストラクター

新しい呼び出しオブジェクトを作成します。

パラメーター説明
item: CallHierarchyItem

呼び出されている項目

fromRanges: Range[]

呼び出しが表示される範囲。

戻り値説明
CallHierarchyOutgoingCall

プロパティ

この項目が呼び出される範囲。これは、呼び出し元に対する相対範囲です。たとえば、provideCallHierarchyOutgoingCalls に渡された項目であり、this.to ではありません。

呼び出される項目。

CallHierarchyProvider

呼び出し階層プロバイダーインターフェースは、関数、メソッド、コンストラクターなどの呼び出しと呼び出し元をブラウズできる呼び出し階層機能と拡張機能間のコントラクトを記述します。

メソッド

指定されたドキュメントと位置によって示される項目を返すことで、呼び出し階層をブートストラップします。この項目は、コールグラフへのエントリとして使用されます。指定された場所に項目がない場合は、プロバイダーは undefined または null を返す必要があります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<CallHierarchyItem | CallHierarchyItem[]>

1 つまたは複数の呼び出し階層項目、またはそのような項目に解決される Thenable。結果がないことは、undefinednull、または空の配列を返すことで通知できます。

項目のすべての受信呼び出しを提供します。たとえば、メソッドのすべての呼び出し元など。グラフ用語では、これはコールグラフ内の有向エッジと注釈付きエッジを記述します。たとえば、指定された項目は開始ノードであり、結果は到達可能なノードです。

パラメーター説明
item: CallHierarchyItem

受信呼び出しを計算する必要がある階層項目。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<CallHierarchyIncomingCall[]>

受信呼び出しのセット、またはそのようなセットに解決される Thenable。結果がないことは、undefined または null を返すことで通知できます。

項目のすべての送信呼び出しを提供します。たとえば、指定された項目からの関数、メソッド、またはコンストラクターへのすべての呼び出し。グラフ用語では、これはコールグラフ内の有向エッジと注釈付きエッジを記述します。たとえば、指定された項目は開始ノードであり、結果は到達可能なノードです。

パラメーター説明
item: CallHierarchyItem

送信呼び出しを計算する必要がある階層項目。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<CallHierarchyOutgoingCall[]>

送信呼び出しのセット、またはそのようなセットに解決される Thenable。結果がないことは、undefined または null を返すことで通知できます。

CancellationError

操作のキャンセルを通知するために使用する必要があるエラータイプ。

このタイプは、キャンセルトークン がキャンセルされた場合、または操作がその操作の実行者によってキャンセルされている場合に応答して使用できます。

コンストラクター

新しいキャンセルエラーを作成します。

パラメーター説明
戻り値説明
CancellationError

CancellationToken

キャンセルトークンは、非同期操作または長時間実行操作に渡され、ユーザーが入力し続けたために完了項目の要求をキャンセルするなど、キャンセルを要求します。

CancellationToken のインスタンスを取得するには、CancellationTokenSource を使用します。

プロパティ

トークンがキャンセルされた場合は true、それ以外の場合は false です。

キャンセル時に発生する イベント

CancellationTokenSource

キャンセルソースは、キャンセル トークンを作成および制御します。

コンストラクター

パラメーター説明
戻り値説明
CancellationTokenSource

プロパティ

このソースのキャンセル トークン。

メソッド

トークンでキャンセルを通知します。

パラメーター説明
戻り値説明
void

オブジェクトを破棄し、リソースを解放します。

パラメーター説明
戻り値説明
void

CharacterPair

開き括弧と閉じ括弧のペアのような、2 つの文字のタプル。

ChatContext

参加者に渡される追加のコンテキスト。

プロパティ

現在のチャット セッションにおけるこれまでのすべてのチャット メッセージ。現在、現在の参加者のチャット メッセージのみが含まれています。

ChatErrorDetails

チャット リクエストからのエラー結果を表します。

プロパティ

ユーザーに表示されるエラー メッセージ。

true に設定すると、応答は部分的にぼかし表示されます。

ChatFollowup

参加者によって提案されたフォローアップ質問。

プロパティ

既定では、フォローアップは同じ参加者/コマンドに送信されます。ただし、このプロパティを設定して、別のコマンドを呼び出すことができます。

ユーザーに表示するタイトル。これが指定されていない場合、プロンプトが既定で表示されます。

既定では、フォローアップは同じ参加者/コマンドに送信されます。ただし、このプロパティを設定して、ID で別の参加者を呼び出すことができます。フォローアップは、同じ拡張機能によって提供された参加者のみを呼び出すことができます。

チャットに送信するメッセージ。

ChatFollowupProvider

ユーザーに表示するフォローアップ質問の候補を取得するために、各リクエストの後に 1 回呼び出されます。ユーザーはフォローアップをクリックしてチャットに送信できます。

メソッド

指定された結果に対するフォローアップを提供します。

パラメーター説明
result: ChatResult

このオブジェクトは、metadata を含む、参加者コールバックから返された結果と同じプロパティを持ちますが、同じインスタンスではありません。

context: ChatContext

参加者に渡される追加のコンテキスト。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<ChatFollowup[]>

ChatLanguageModelToolReference

ユーザーが手動でリクエストに添付したツールへの参照。# 構文をインラインで使用するか、ペーパークリップ ボタンを使用して添付します。

プロパティ

ツール名。lm.tools にリストされているツールを参照します。

prompt 内の参照の開始インデックスと終了インデックス。未定義の場合、参照はプロンプト テキストの一部ではありませんでした。

: インデックスは先頭の # 文字を考慮に入れているため、プロンプトをそのまま変更するために使用できます。

ChatParticipant

チャット参加者は、チャット セッションでユーザーが プレフィックスを使用して呼び出すことができます。呼び出されると、チャット リクエストを処理し、ユーザーに応答を提供することに単独で責任を負います。ChatParticipant は、chat.createChatParticipant を使用して作成されます。

イベント

結果に対するフィードバックが受信されるたびに発生するイベント。たとえば、ユーザーが結果を賛成または反対票を投じた場合などです。

渡された result は、以前にこのチャット参加者のハンドラーから返された結果と同じプロパティを持つことが保証されています。

プロパティ

このプロバイダーは、推奨されるフォローアップ質問を取得するために、各リクエストの後に 1 回呼び出されます。

UI に表示される参加者のアイコン。

この参加者の一意の ID。

この参加者へのリクエストのハンドラー。

メソッド

この参加者を破棄し、リソースを解放します。

パラメーター説明
戻り値説明
void

ChatParticipantToolToken

チャット リクエストの処理中にツールを呼び出すときに lm.invokeTool に渡すことができるトークン。

ChatPromptReference

ユーザーがチャット リクエストに追加した値への参照。

プロパティ

この種のリファレンスの一意の識別子。

LLM プロンプトで使用できるこの値の説明。

prompt 内の参照の開始インデックスと終了インデックス。未定義の場合、参照はプロンプト テキストの一部ではありませんでした。

: インデックスは先頭の # 文字を考慮に入れているため、プロンプトをそのまま変更するために使用できます。

この参照の値。今日では string | Uri | Location 型が使用されていますが、将来拡張される可能性があります。

ChatRequest

チャット参加者へのリクエスト。

プロパティ

このリクエストに対して選択された [ChatCommand command](#ChatCommand command) の名前。

これは、UI で現在選択されているモデルです。拡張機能はこれを使用するか、lm.selectChatModels を使用して別のモデルを選択できます。リクエストの有効期間を超えてこれを保持しないでください。

ユーザーが入力したプロンプト。

このリクエストで使用されている参照に関する情報は、ChatRequest.references に保存されます。

: 参加者の [ChatParticipant.name name](#ChatParticipant.name name) と [ChatCommand.name command](#ChatCommand.name command) はプロンプトの一部ではありません。

プロンプトで参照されている参照とその値のリスト。

: プロンプトには、作成されたとおりに参照が含まれており、参照値をインライン化したり、解決された値を含む見出しへのリンクを作成したりするなど、プロンプトをさらに変更するのは参加者の責任です。参照は、プロンプト内の範囲によって逆順にソートされます。つまり、プロンプト内の最後の参照がこのリストの最初になります。これにより、プロンプトの文字列操作が簡素化されます。

チャット リクエストの処理中にツールを呼び出すときに lm.invokeTool に渡すことができるトークン。これにより、ツール呼び出しがチャット セッションに関連付けられます。

ユーザーがリクエストに添付したツールのリスト。

ツール参照が存在する場合、チャット参加者は LanguageModelChatToolMode.Required を使用してチャット リクエストを行い、言語モデルにツールの入力を強制的に生成させる必要があります。次に、参加者は lm.invokeTool を使用してツールを使用し、結果をユーザーのプロンプトに対するリクエストに添付できます。ツールは、ユーザーのリクエストに役立つ追加のコンテキストを提供できます。

ChatRequestHandler

ChatRequestTurn

チャット履歴内のユーザー リクエストを表します。

プロパティ

このリクエストに対して選択された [ChatCommand command](#ChatCommand command) の名前。

このリクエストが送信されたチャット参加者の ID。

ユーザーが入力したプロンプト。

このリクエストで使用されている参照に関する情報は、ChatRequestTurn.references に保存されます。

: 参加者の [ChatParticipant.name name](#ChatParticipant.name name) と [ChatCommand.name command](#ChatCommand.name command) はプロンプトの一部ではありません。

このメッセージで使用された参照。

このリクエストに添付されたツールのリスト。

ChatResponseAnchorPart

ターゲットへのリンクとしてレンダリングされる、アンカーであるチャット応答の一部を表します。

コンストラクター

新しい ChatResponseAnchorPart を作成します。

パラメーター説明
value: Uri | Location

URI または場所。

title?: string

値とともにレンダリングされるオプションのタイトル。

戻り値説明
ChatResponseAnchorPart

プロパティ

値とともにレンダリングされるオプションのタイトル。

このアンカーのターゲット。

ChatResponseCommandButtonPart

コマンドを実行するボタンであるチャット応答の一部を表します。

コンストラクター

新しい ChatResponseCommandButtonPart を作成します。

パラメーター説明
value: Command

ボタンがクリックされたときに実行される Command。

戻り値説明
ChatResponseCommandButtonPart

プロパティ

ボタンがクリックされたときに実行されるコマンド。

ChatResponseFileTree

チャット応答のファイル ツリー構造を表します。

プロパティ

現在のファイル ツリーがディレクトリである場合の子ファイル ツリーの配列。

ファイルまたはディレクトリの名前。

ChatResponseFileTreePart

ファイル ツリーであるチャット応答の一部を表します。

コンストラクター

新しい ChatResponseFileTreePart を作成します。

パラメーター説明
value: ChatResponseFileTree[]

ファイル ツリー データ。

baseUri: Uri

このファイル ツリーが相対的なベース URI。

戻り値説明
ChatResponseFileTreePart

プロパティ

このファイル ツリーが相対的なベース URI

ファイル ツリー データ。

ChatResponseMarkdownPart

Markdown としてフォーマットされたチャット応答の一部を表します。

コンストラクター

新しい ChatResponseMarkdownPart を作成します。

パラメーター説明
value: string | MarkdownString

マークダウン文字列、またはマークダウンとして解釈される文字列。MarkdownString.isTrusted のブール値形式はサポートされていません。

戻り値説明
ChatResponseMarkdownPart

プロパティ

マークダウン文字列、またはマークダウンとして解釈される文字列。

ChatResponsePart

さまざまなチャット応答タイプを表します。

ChatResponseProgressPart

進行状況メッセージであるチャット応答の一部を表します。

コンストラクター

新しい ChatResponseProgressPart を作成します。

パラメーター説明
value: string

進行状況メッセージ

戻り値説明
ChatResponseProgressPart

プロパティ

進行状況メッセージ

ChatResponseReferencePart

コンテンツとは別にレンダリングされる、参照であるチャット応答の一部を表します。

コンストラクター

新しい ChatResponseReferencePart を作成します。

パラメーター説明
value: Uri | Location

URI または場所

iconPath?: IconPath

UI に表示される参照のアイコン

戻り値説明
ChatResponseReferencePart

プロパティ

参照のアイコン。

参照ターゲット。

ChatResponseStream

ChatResponseStream は、参加者がチャット ビューにコンテンツを返す方法です。チャット ビューで適切な方法でレンダリングされるさまざまなタイプのコンテンツをストリーミングするためのいくつかのメソッドを提供します。参加者は、返したいコンテンツのタイプのヘルパー メソッドを使用するか、ChatResponsePart をインスタンス化し、汎用的な ChatResponseStream.push メソッドを使用してそれを返すことができます。

メソッド

アンカー部分をこのストリームにプッシュします。push(new ChatResponseAnchorPart(value, title)) の略記。アンカーは、特定タイプのリソースへのインライン参照です。

パラメーター説明
value: Uri | Location

URI または場所。

title?: string

値とともにレンダリングされるオプションのタイトル。

戻り値説明
void

コマンド ボタン部分をこのストリームにプッシュします。push(new ChatResponseCommandButtonPart(value, title)) の略記。

パラメーター説明
command: Command

ボタンがクリックされたときに実行される Command。

戻り値説明
void

ファイル ツリー部分をこのストリームにプッシュします。push(new ChatResponseFileTreePart(value)) の略記。

パラメーター説明
value: ChatResponseFileTree[]

ファイル ツリー データ。

baseUri: Uri

このファイル ツリーが相対的なベース URI。

戻り値説明
void

マークダウン部分をこのストリームにプッシュします。push(new ChatResponseMarkdownPart(value)) の略記。

参照: ChatResponseStream.push

パラメーター説明
value: string | MarkdownString

マークダウン文字列、またはマークダウンとして解釈される文字列。MarkdownString.isTrusted のブール値形式はサポートされていません。

戻り値説明
void

進行状況部分をこのストリームにプッシュします。push(new ChatResponseProgressPart(value)) の略記。

パラメーター説明
value: string

進行状況メッセージ

戻り値説明
void

部分をこのストリームにプッシュします。

パラメーター説明
part: ChatResponsePart

応答部分、レンダリングされたものまたはメタデータ

戻り値説明
void

参照をこのストリームにプッシュします。push(new ChatResponseReferencePart(value)) の略記。

: 参照は応答とともにインラインでレンダリングされません。

パラメーター説明
value: Uri | Location

URI または場所

iconPath?: IconPath

UI に表示される参照のアイコン

戻り値説明
void

ChatResponseTurn

チャット履歴におけるチャット参加者の応答を表します。

プロパティ

この応答の送信元のコマンドの名前。

この応答の送信元のチャット参加者の ID。

チャット参加者から受信したコンテンツ。実際のコンテンツ (メタデータではない) を表すストリーム部分のみが表示されます。

チャット参加者から受信した結果。

ChatResult

チャット リクエストの結果。

プロパティ

リクエストがエラーになった場合、このプロパティはエラーの詳細を定義します。

この結果に関する任意のメタデータ。どのようなものでも構いませんが、JSON 文字列化可能である必要があります。

ChatResultFeedback

結果に対するユーザーフィードバックを表します。

プロパティ

受信したフィードバックの種類。

ユーザーがフィードバックを提供している ChatResult。このオブジェクトは、metadata を含め、参加者コールバックから返された結果と同じプロパティを持ちますが、同じインスタンスではありません。

ChatResultFeedbackKind

受信したユーザーフィードバックのタイプを表します。

列挙メンバー

ユーザーが結果を役に立たないとマークしました。

ユーザーが結果を役立つとマークしました。

Clipboard

クリップボードは、システムのクリップボードへの読み取りおよび書き込みアクセスを提供します。

メソッド

現在のクリップボードの内容をテキストとして読み取ります。

パラメーター説明
戻り値説明
Thenable<string>

文字列に解決される Thenable。

テキストをクリップボードに書き込みます。

パラメーター説明
value: string
戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

書き込みが完了したときに解決される Thenable。

CodeAction

コードアクションは、問題を修正したり、コードをリファクタリングするなど、コード内で実行できる変更を表します。

CodeAction は、edit および/または command のいずれかを設定する必要があります。両方が指定されている場合、最初に edit が適用され、次にコマンドが実行されます。

コンストラクター

新しいコードアクションを作成します。

コードアクションは、少なくとも titleedits および/または command を持つ必要があります。

パラメーター説明
title: string

コードアクションのタイトル。

kind?: CodeActionKind

コードアクションの種類。

戻り値説明
CodeAction

プロパティ

このコードアクションが実行する Command

このコマンドが例外をスローした場合、エディターは現在のカーソル位置でエディターのユーザーに例外メッセージを表示します。

このコードアクションが解決する Diagnostics

コードアクションを現在適用できないことを示します。

  • 無効なコードアクションは、自動 電球 コードアクションメニューには表示されません。

  • ユーザーがリファクタリングなど、より具体的なタイプのコードアクションを要求すると、無効なアクションはコードアクションメニューで薄く表示されます。

  • ユーザーがコードアクションを自動適用する キーバインディング を持ち、無効なコードアクションのみが返される場合、エディターはエディターに reason を含むエラーメッセージをユーザーに表示します。

パラメーター説明
reason: string

コードアクションが現在無効になっている理由の人間が読める説明。

これはコードアクション UI に表示されます。

このコードアクションが実行する ワークスペース編集

これを優先アクションとしてマークします。優先アクションは auto fix コマンドで使用され、キーバインディングでターゲットにできます。

クイックフィックスは、根本的なエラーを適切に対処する場合に優先としてマークする必要があります。リファクタリングは、実行するアクションの最も妥当な選択肢である場合に優先としてマークする必要があります。

Kind コードアクションの種類。

コードアクションをフィルタリングするために使用されます。

このコードアクションの短く、人間が読めるタイトル。

CodeActionContext

コードアクション が実行されるコンテキストに関する追加の診断情報が含まれています。

プロパティ

診断の配列。

返すアクションのリクエストされた種類。

この種類ではないアクションは、電球 によって表示される前にフィルタリングされます。

コードアクションがリクエストされた理由。

CodeActionKind

コードアクションの種類。

種類は、. で区切られた識別子の階層リストです。例:"refactor.extract.function"

コードアクションの種類は、リファクタリングコンテキストメニューなどの UI 要素にエディターによって使用されます。ユーザーは、editor.action.codeAction コマンドを使用して、特定の種類のコードアクションをトリガーすることもできます。

静的

空の種類。

ノートブックのスコープ全体に適用されるすべてのコードアクションの基本種類。これを使用する CodeActionKinds は、常に notebook. で始める必要があります。

これには、新しい CodeAction を作成し、拡張機能経由で提供する必要があります。既存の種類は、新しい notebook. プレフィックスを追加するだけではいけません。機能はフルノートブックのスコープに固有であるためです。

ノートブック CodeActionKinds は、次のいずれかとして初期化できます(どちらも notebook.source.xyz になります)。

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

種類の例/アクション

  • notebook.source.organizeImports (すべてのインポートを新しいトップセルに移動する場合があります)
  • notebook.source.normalizeVariableNames (すべての変数を標準化されたケーシング形式に名前変更する場合があります)

クイックフィックスアクションの基本種類:quickfix

クイックフィックスアクションは、コードの問題に対処し、通常のコードアクションコンテキストメニューに表示されます。

リファクタリングアクションの基本種類:refactor

リファクタリングアクションは、リファクタリングコンテキストメニューに表示されます。

リファクタリング抽出アクションの基本種類:refactor.extract

抽出アクションの例

  • メソッドの抽出
  • 関数の抽出
  • 変数の抽出
  • クラスからのインターフェースの抽出
  • ...

リファクタリングインラインアクションの基本種類:refactor.inline

インラインアクションの例

  • 関数のインライン化
  • 変数のインライン化
  • 定数のインライン化
  • ...

リファクタリング移動アクションの基本種類:refactor.move

移動アクションの例

  • 関数を新しいファイルに移動
  • クラス間でプロパティを移動
  • メソッドを基本クラスに移動
  • ...

リファクタリング書き換えアクションの基本種類:refactor.rewrite

書き換えアクションの例

  • JavaScript 関数をクラスに変換
  • パラメーターの追加または削除
  • フィールドのカプセル化
  • メソッドを静的にする
  • ...

ソースアクションの基本種類:source

ソースコードアクションは、ファイル全体に適用されます。これらは明示的にリクエストする必要があり、通常の 電球 メニューには表示されません。ソースアクションは、editor.codeActionsOnSave を使用して保存時に実行でき、source コンテキストメニューにも表示されます。

自動修正ソースアクションの基本種類:source.fixAll

すべて修正アクションは、ユーザー入力を必要としない明確な修正があるエラーを自動的に修正します。エラーを抑制したり、新しい型やクラスを生成するなどの安全でない修正を実行したりしないでください。

インポート整理ソースアクションの基本種類:source.organizeImports

コンストラクター

プライベートコンストラクター、既存のコードアクション種類から派生するには、静的 CodeActionKind.XYZ を使用します。

パラメーター説明
value: string

種類 (例: refactor.extract.function) の値。

戻り値説明
CodeActionKind

プロパティ

種類 (例: "refactor.extract.function") の文字列値。

メソッド

より具体的なセレクターを現在の種類に追加して、新しい種類を作成します。

現在の種類は変更しません。

パラメーター説明
parts: string
戻り値説明
CodeActionKind

other がこの CodeActionKind のサブ種類であるかどうかを確認します。

たとえば、種類 "refactor.extract" は、"refactor.extract" および "refactor.extract.function" を含みますが、"unicorn.refactor.extract""refactor.extractAll"、または refactor は含みません。

パラメーター説明
other: CodeActionKind

確認する種類。

戻り値説明
boolean

このコードアクション種類が other と交差するかどうかを確認します。

たとえば、種類 "refactor.extract" は、refactor"refactor.extract"、および "refactor.extract.function" と交差しますが、"unicorn.refactor.extract" または "refactor.extractAll" とは交差しません。

パラメーター説明
other: CodeActionKind

確認する種類。

戻り値説明
boolean

CodeActionProvider<T>

コードのコンテキストアクションを提供します。コードアクションは通常、問題を修正するか、コードを美化/リファクタリングします。

コードアクションは、いくつかの異なる方法でユーザーに提示されます。

  • 現在のカーソル位置にコードアクションのリストを表示する 電球 機能。電球のアクションリストには、クイックフィックスとリファクタリングの両方が含まれています。
  • ユーザーが実行できる Refactor などのコマンドとして。ユーザーは、コマンドパレットまたはキーバインディングからこれらを実行できます。
  • Organize Imports などのソースアクションとして。
  • クイックフィックス は、問題ビューに表示されます。
  • editor.codeActionsOnSave 設定による保存時に適用される変更。

メソッド

ドキュメント内の指定された範囲のコードアクションを取得します。

リクエストされた範囲に対してユーザーに関連性のあるコードアクションのみを返してください。また、返されたコードアクションが UI にどのように表示されるかを念頭に置いてください。たとえば、電球ウィジェットと Refactor コマンドは、返されたコードアクションをリストとして表示するため、ユーザーを圧倒する可能性のある多数のコードアクションを返さないでください。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

range: Range | Selection

コマンドが呼び出されたセレクターまたは範囲。アクションが現在アクティブなエディターでリクエストされている場合、これは常に selection になります。

context: CodeActionContext

どのようなコードアクションがリクエストされているかに関する追加情報を提供します。これを使用して、エディターによってリクエストされているコードアクションの特定のタイプを確認し、より関連性の高いアクションを返し、エディターが破棄する無関係なコードアクションを返さないようにすることができます。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Array<Command | T>>

クイックフィックスやリファクタリングなどのコードアクションの配列。結果がないことは、undefinednull、または空の配列を返すことで通知できます。

レガシー上の理由から Command の返却もサポートしていますが、すべての新しい拡張機能は代わりに CodeAction オブジェクトを返す必要があります。

コードアクションが与えられた場合、その edit プロパティに入力します。タイトルなど、他のすべてのプロパティへの変更は無視されます。編集を持つコードアクションは解決されません。

コマンドではなくコードアクションを返すコードアクションプロバイダーは、この関数を正常に実装できません。コマンドを返すことは非推奨であり、代わりにコードアクションを返す必要があります。

パラメーター説明
codeAction: T

コードアクション。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決されたコードアクション、またはそのようなアクションに解決される Thenable。与えられた item を返しても問題ありません。結果が返されない場合、与えられた item が使用されます。

CodeActionProviderMetadata

CodeActionProvider が提供するコードアクションのタイプに関するメタデータ。

プロパティ

コードアクションのクラスに関する静的なドキュメント。

プロバイダーからのドキュメントは、次のいずれかの場合にコードアクションメニューに表示されます。

  • kind のコードアクションがエディターによってリクエストされます。この場合、エディターはリクエストされたコードアクションの種類に最も近いドキュメントを表示します。たとえば、プロバイダーが RefactorRefactorExtract の両方のドキュメントを持っている場合、ユーザーが RefactorExtract のコードアクションをリクエストすると、エディターは Refactor のドキュメントではなく、RefactorExtract のドキュメントを使用します。

  • kind のコードアクションがプロバイダーによって返されます。

プロバイダーごとに最大 1 つのドキュメントエントリが表示されます。

CodeActionProvider が返す可能性のある CodeActionKinds のリスト。

このリストは、特定の CodeActionProvider を呼び出す必要があるかどうかを判断するために使用されます。不要な計算を避けるために、すべての CodeActionProviderprovidedCodeActionKinds を使用する必要があります。種類のリストは、[CodeActionKind.Refactor] のようにジェネリックにすることも、[CodeActionKind.Refactor.Extract.append('function'), CodeActionKind.Refactor.Extract.append('constant'), ...] のように提供されるすべての種類をリストすることもできます。

CodeActionTriggerKind

コードアクションがリクエストされた理由。

列挙メンバー

コードアクションは、ユーザーまたは拡張機能によって明示的にリクエストされました。

コードアクションは自動的にリクエストされました。

これは通常、ファイル内の現在の選択範囲が変更されたときに発生しますが、ファイルの内容が変更されたときにもトリガーできます。

CodeLens

コードレンズは、参照の数、テストを実行する方法など、ソーステキストとともに表示される Command を表します。

コードレンズは、コマンドが関連付けられていない場合、未解決 です。パフォーマンス上の理由から、コードレンズの作成と解決は 2 つの段階で行う必要があります。

以下も参照してください

コンストラクター

新しいコードレンズオブジェクトを作成します。

パラメーター説明
range: Range

このコードレンズが適用される範囲。

command?: Command

このコードレンズに関連付けられたコマンド。

戻り値説明
CodeLens

プロパティ

このコードレンズが表すコマンド。

コマンドが関連付けられている場合は true

このコードレンズが有効な範囲。単一行のみにまたがる必要があります。

CodeLensProvider<T>

コードレンズプロバイダーは、commands をソーステキストに追加します。コマンドは、ソーステキスト間の専用の水平線として表示されます。

イベント

このプロバイダーからのコードレンズが変更されたことを通知するオプションのイベント。

メソッド

レンズ のリストを計算します。この呼び出しはできるだけ早く返す必要があり、コマンドの計算にコストがかかる場合は、範囲が設定されたコードレンズオブジェクトのみを返し、resolve を実装する必要があります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

コードレンズの配列、またはそのような配列に解決される Thenable。結果がないことは、undefinednull、または空の配列を返すことで通知できます。

この関数は、通常、スクロール時や compute-レンズの呼び出し後に、表示されるコードレンズごとに呼び出されます。

パラメーター説明
codeLens: T

解決する必要があるコードレンズ。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

指定された、解決済みのコードレンズ、またはそのようなレンズに解決される Thenable。

Color

RGBA 空間の色を表します。

コンストラクター

新しい色インスタンスを作成します。

パラメーター説明
red: number

赤色成分。

green: number

緑色成分。

blue: number

青色成分。

alpha: number

アルファ成分。

戻り値説明
Color

プロパティ

この色のアルファ成分。範囲は [0-1] です。

この色の青色成分。範囲は [0-1] です。

この色の緑色成分。範囲は [0-1] です。

この色の赤色成分。範囲は [0-1] です。

ColorInformation

ドキュメントからの色の範囲を表します。

コンストラクター

新しい色の範囲を作成します。

パラメーター説明
range: Range

色が表れる範囲。空であってはなりません。

color: Color

色の値。

戻り値説明
ColorInformation

プロパティ

この色の範囲の実際の色値。

ドキュメント内でこの色が表示される範囲。

ColorPresentation

カラープレゼンテーションオブジェクトは、Color をテキストとしてどのように表現すべきか、およびソースコードからそれを参照するために必要な編集内容を記述します。

一部の言語では、1 つの色に複数のプレゼンテーションを含めることができます。たとえば、css は定数 Red、16 進数値 #ff0000、または rgba および hsla 形式で赤色を表すことができます。csharp では、System.Drawing.Color.Red など、他の表現が適用されます。

コンストラクター

新しい色の表現を作成します。

パラメーター説明
label: string

この色の表現のラベル。

戻り値説明
ColorPresentation

プロパティ

この色の表現を選択したときに適用される追加のテキスト編集のオプションの配列。編集は、メインの編集やそれ自体と重複してはなりません。

この色の表現のラベル。カラーピッカーのヘッダーに表示されます。デフォルトでは、これはこの色の表現を選択したときに挿入されるテキストでもあります。

色に対してこの表現を選択したときにドキュメントに適用される編集falsyの場合、ラベルが使用されます。

ColorTheme

カラーテーマを表します。

プロパティ

このカラーテーマの種類:ライト、ダーク、ハイコントラストダーク、およびハイコントラストライト。

ColorThemeKind

カラーテーマの種類を表します。

列挙メンバー

ライトカラーテーマ。

ダークカラーテーマ。

ハイコントラストダークカラーテーマ。

ハイコントラストライトカラーテーマ。

Command

コマンドへの参照を表します。UIでコマンドを表すために使用されるタイトル、およびオプションで、呼び出されたときにコマンドハンドラー関数に渡される引数の配列を提供します。

プロパティ

コマンドハンドラーが呼び出される際に使用される引数。

実際のコマンドハンドラーの識別子。

参考 commands.registerCommand

コマンドのタイトル(例:save)。

UIで表示される場合のコマンドのツールチップ。

Comment

コメントは、提供方法に応じて、エディターまたはコメントパネル内に表示されます。

プロパティ

コメントの作成者情報

人間が読めるコメント本文

コメントのコンテキスト値。これは、コメント固有のアクションを提供するために使用できます。たとえば、コメントにはeditableというコンテキスト値が与えられます。menus拡張ポイントを使用してcomments/comment/titleにアクションを提供する場合、when式でキーcommentのコンテキスト値をcomment == editableのように指定できます。

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

これにより、contextValueeditableのコメントに対してのみアクションextension.deleteCommentが表示されます。

オプションのラベル。 コメントを説明します。ラベルが存在する場合、authorNameの横にレンダリングされます。

コメントのコメントモード

コメントのオプションのリアクション

コメントに表示されるオプションのタイムスタンプ。日付は、ユーザーのロケールと設定に従ってフォーマットされます。

CommentAuthorInformation

コメントの作成者情報

プロパティ

作成者のオプションのアイコンパス

コメントの作成者の表示名

CommentController

コメントコントローラーは、エディターにコメントのサポートを提供し、ユーザーにコメントを操作するさまざまな方法を提供できます。

プロパティ

オプションのコメント範囲プロバイダー。指定されたリソースURIへのコメントをサポートする範囲のリストを提供します。

提供されていない場合、ユーザーはコメントを残すことができません。

このコメントコントローラーのID。

このコメントコントローラーの人間が読めるラベル。

コメントコントローラーのオプション

コメントに対するリアクションの作成と削除のためのオプションのリアクションハンドラー。

パラメーター説明
comment: Comment
reaction: CommentReaction
戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

メソッド

コメントスレッドを作成します。コメントスレッドは、作成されると、表示されているテキストエディター(リソースが一致する場合)およびコメントパネルに表示されます。

パラメーター説明
uri: Uri

スレッドが作成されたドキュメントのURI。

range: Range

コメントスレッドがドキュメント内に配置されている範囲。

comments: readonly Comment[]

スレッドの順序付けられたコメント。

戻り値説明
CommentThread

このコメントコントローラーを破棄します。

破棄されると、このコメントコントローラーによって作成されたすべてのコメントスレッドも、エディターとコメントパネルから削除されます。

パラメーター説明
戻り値説明
void

CommentingRangeProvider

コメントコントローラーのコメント範囲プロバイダー。

メソッド

新しいコメントスレッドの作成を許可する範囲のリスト、または指定されたドキュメントの場合はnullを提供します。

パラメーター説明
document: TextDocument
token: CancellationToken
戻り値説明
ProviderResult<Range[] | CommentingRanges>

CommentingRanges

CommentingRangeProviderがコメントを有効にする範囲。

プロパティ

特定の範囲なしでファイルにコメントを追加できるようにします。

新しいコメントスレッドの作成を許可する範囲。

CommentMode

コメントのコメントモード

列挙メンバー

コメントエディターを表示します

コメントのプレビューを表示します

CommentOptions

プロパティ

コメント入力ボックスがフォーカスされているときにプレースホルダーとして表示するオプションの文字列。

コメント入力ボックスが折りたたまれているときに表示するオプションの文字列。

CommentReaction

コメントのリアクション

プロパティ

コメントの作成者がこのリアクションにリアクションしたかどうか

このリアクションにリアクションしたユーザーの数

UIに表示されるリアクションのアイコン。

リアクションの人間が読めるラベル

CommentReply

comments/commentThread/contextに登録されたアクションのコマンド引数。

プロパティ

コメントエディターの値

アクティブなコメントスレッド

CommentRule

言語のコメントの仕組みを記述します。

プロパティ

ブロックコメントの文字ペア(例:/* block comment *&#47;

行コメントトークン(例:// this is a comment

CommentThread

ドキュメントの特定の範囲での会話を表すコメントのコレクション。

プロパティ

スレッドが返信をサポートするかどうか。デフォルトはtrueです。

ドキュメントを開くときにスレッドを折りたたむか展開するか。デフォルトはCollapsedです。

スレッドの順序付けられたコメント。

コメントスレッドのコンテキスト値。これは、スレッド固有のアクションを提供するために使用できます。たとえば、コメントスレッドにはeditableというコンテキスト値が与えられます。menus拡張ポイントを使用してcomments/commentThread/titleにアクションを提供する場合、when式でキーcommentThreadのコンテキスト値をcommentThread == editableのように指定できます。

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

これにより、contextValueeditableのコメントスレッドに対してのみアクションextension.deleteCommentThreadが表示されます。

オプションの人間が読めるラベル。 コメントスレッドを説明します

コメントスレッドがドキュメント内に配置されている範囲。スレッドアイコンは、範囲の最後の行に表示されます。未定義に設定すると、コメントは特定の範囲ではなく、ファイルに関連付けられます。

コメントスレッドのオプションの状態。コメントの表示方法に影響を与える可能性があります。

スレッドが作成されたドキュメントのURI。

メソッド

このコメントスレッドを破棄します。

破棄されると、このコメントスレッドは、適切な場合に表示されているエディターとコメントパネルから削除されます。

パラメーター説明
戻り値説明
void

CommentThreadCollapsibleState

コメントスレッドの折りたたみ可能な状態

列挙メンバー

アイテムが折りたたまれていることを決定します

アイテムが展開されていることを決定します

CommentThreadState

コメントスレッドの状態。

列挙メンバー

未解決のスレッド状態

解決済みのスレッド状態

CompletionContext

コンプリーションプロバイダーがトリガーされるコンテキストに関する追加情報が含まれています。

プロパティ

コンプリーションアイテムプロバイダーをトリガーした文字。

プロバイダーが文字によってトリガーされなかった場合はundefined

トリガー文字は、コンプリーションプロバイダーがトリガーされるときに、すでにドキュメント内に存在します。

コンプリーションがどのようにトリガーされたか。

CompletionItem

コンプリーションアイテムは、入力中のテキストを補完するために提案されるテキストスニペットを表します。

ラベルのみからコンプリーションアイテムを作成するだけで十分です。その場合、コンプリーションアイテムは、指定されたラベルまたはinsertTextを使用して、カーソルまでの単語を置き換えます。それ以外の場合は、指定された編集が使用されます。

エディターでコンプリーションアイテムを選択すると、定義済みまたは合成されたテキスト編集がすべてのカーソル/選択範囲に適用されますが、additionalTextEditsは提供されたとおりに適用されます。

以下も参照してください

コンストラクター

新しいコンプリーションアイテムを作成します。

コンプリーションアイテムは、少なくともラベルを持っている必要があります。これは、挿入テキストとして、またソートとフィルタリングにも使用されます。

パラメーター説明
label: string | CompletionItemLabel

コンプリーションのラベル。

kind?: CompletionItemKind

コンプリーションの種類

戻り値説明
CompletionItem

プロパティ

このコンプリーションを選択したときに適用される追加のテキスト編集のオプションの配列。編集は、メインの編集やそれ自体と重複してはなりません。

このコンプリーションを挿入に実行されるオプションのコマンド:現在のドキュメントへの追加の変更は、additionalTextEditsプロパティで記述する必要があります。

このコンプリーションがアクティブなときに押すと、最初にそれを受け入れてからその文字を入力するオプションの文字セット。:すべてのコミット文字はlength=1である必要があり、不要な文字は無視されます。

このアイテムに関する追加情報(型やシンボル情報など)を含む、人間が読める文字列。

ドキュメントコメントを表す、人間が読める文字列。

コンプリーションアイテムのセットをフィルタリングするときに使用する文字列。falsyの場合、ラベルが使用されます。

フィルターテキストは、rangeプロパティによって定義される先頭の単語(プレフィックス)と照合されることに注意してください。

このコンプリーションを選択したときにドキュメントに挿入される文字列またはスニペット。falsyの場合、ラベルが使用されます。

insertTextの空白をそのまま保持します。デフォルトでは、エディターは、アイテムが受け入れられる行のインデントに一致するように、新しい行の先頭の空白を調整します。これをtrueに設定すると、それが防止されます。

このコンプリーションアイテムの種類。種類に基づいて、エディターによってアイコンが選択されます。

このコンプリーションアイテムのラベル。デフォルトでは、これはこのコンプリーションを選択したときに挿入されるテキストでもあります。

表示時にこのアイテムを選択します。:選択できるコンプリーションアイテムは1つだけであり、それを決定するのはエディターです。ルールは、最もよく一致するアイテムの最初のアイテムが選択されるということです。

このコンプリーションアイテムで置き換えるテキストを選択する範囲、または挿入範囲と置換範囲。

省略した場合、現在の単語の範囲が置換範囲として使用され、現在の単語の先頭から現在の位置までが挿入範囲として使用されます。

注1:範囲は単一行である必要があり、コンプリーションが要求された位置を含む必要があります。 注2:挿入範囲は置換範囲のプレフィックスである必要があります。つまり、同じ位置で開始され、含まれている必要があります。

このアイテムを他のアイテムと比較するときに使用する文字列。falsyの場合、ラベルが使用されます。

sortTextは、コンプリーションアイテムの初期順序付けにのみ使用されることに注意してください。先頭の単語(プレフィックス)がある場合、順序付けはコンプリーションがそのプレフィックスにどれだけうまく一致するかに基づいており、初期順序付けはコンプリーションが同程度にうまく一致する場合にのみ使用されます。プレフィックスはrangeプロパティによって定義され、したがって各コンプリーションで異なる場合があります。

このコンプリーションアイテムのタグ。

  • 非推奨 - 代わりにCompletionItem.insertTextおよびCompletionItem.rangeを使用してください。

このコンプリーションを選択したときにドキュメントに適用される編集。編集が提供されている場合、insertTextの値は無視されます。

範囲の編集は、単一行であり、コンプリーションが要求された行と同じ行にある必要があります。

CompletionItemKind

コンプリーションアイテムの種類。

列挙メンバー

Textコンプリーションアイテムの種類。

Methodコンプリーションアイテムの種類。

Functionコンプリーションアイテムの種類。

Constructorコンプリーションアイテムの種類。

Fieldコンプリーションアイテムの種類。

Variableコンプリーションアイテムの種類。

Classコンプリーションアイテムの種類。

Interfaceコンプリーションアイテムの種類。

Moduleコンプリーションアイテムの種類。

Property 補完項目種別。

Unit 補完項目種別。

Value 補完項目種別。

Enum 補完項目種別。

Keyword 補完項目種別。

Snippet 補完項目種別。

Color 補完項目種別。

File 補完項目種別。

Reference 補完項目種別。

Folder 補完項目種別。

EnumMember 補完項目種別。

Constant 補完項目種別。

Struct 補完項目種別。

Event 補完項目種別。

Operator 補完項目種別。

TypeParameter 補完項目種別。

User 補完項目種別。

Issue 補完項目種別。

CompletionItemLabel

補完項目の構造化されたラベル。

プロパティ

CompletionItemLabel.detail の後に控えめにレンダリングされるオプションの文字列。完全修飾名またはファイルパスに使用する必要があります。

label の直後に、間隔を空けずに控えめにレンダリングされるオプションの文字列。関数のシグネチャまたは型アノテーションに使用する必要があります。

この補完項目のラベル。

デフォルトでは、これはこの補完が選択されたときに挿入されるテキストでもあります。

CompletionItemProvider<T>

補完項目プロバイダーインターフェースは、拡張機能と IntelliSense の間のコントラクトを定義します。

プロバイダーは、detail プロパティと documentation プロパティの計算を、resolveCompletionItem 関数を実装することで遅延させることができます。ただし、sortTextfilterTextinsertTextrange など、最初のソートとフィルタリングに必要なプロパティは、解決中に変更してはなりません。

プロバイダーは、ユーザーのジェスチャーによって明示的に、または構成によっては、単語の入力時またはトリガー文字によって暗黙的に補完を求められます。

メソッド

指定された位置とドキュメントの補完項目を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

context: CompletionContext

コンプリーションがどのようにトリガーされたか。

戻り値説明
ProviderResult<CompletionList<T> | T[]>

補完の配列、補完リスト、またはどちらかに解決される Thenable。結果がないことは、undefinednull、または空の配列を返すことで通知できます。

補完項目が与えられたら、ドキュメントコメント詳細 など、より多くのデータを入力します。

エディターは補完項目を一度だけ解決します。

: この関数は、補完項目がすでに UI に表示されている場合、または項目が挿入のために選択された場合に呼び出されます。そのため、プレゼンテーション (ラベル、ソート、フィルタリングなど) または (プライマリ) 挿入動作 (insertText) を変更するプロパティは変更できません。

この関数は additionalTextEdits を入力する場合があります。ただし、これは項目が解決が完了するに挿入される可能性があることを意味し、その場合でもエディターはそれらの追加のテキスト編集を適用するために最善を尽くします。

パラメーター説明
item: T

UI で現在アクティブな補完項目。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決された補完項目、またはそのような項目に解決される Thenable。与えられた item を返すことは OK です。結果が返されない場合、与えられた item が使用されます。

CompletionItemTag

補完項目タグは、補完項目のレンダリングを調整する追加のアノテーションです。

列挙メンバー

補完を廃止予定としてレンダリングします (通常は取り消し線を使用)。

CompletionList<T>

エディターに表示される 補完項目 のコレクションを表します。

コンストラクター

新しい補完リストを作成します。

パラメーター説明
items?: T[]

補完項目。

isIncomplete?: boolean

リストは不完全です。

戻り値説明
CompletionList<T>

プロパティ

このリストは不完全です。さらにタイプすると、このリストが再計算されるはずです。

補完項目。

CompletionTriggerKind

補完プロバイダーがどのようにトリガーされたか

列挙メンバー

補完は通常どおりトリガーされました。

補完はトリガー文字によってトリガーされました。

現在の補完リストが不完全であるため、補完が再トリガーされました

ConfigurationChangeEvent

構成の変更を記述するイベント

メソッド

指定されたセクションが変更されたかどうかを確認します。スコープが指定されている場合、指定されたスコープのリソースに対してセクションが変更されたかどうかを確認します。

パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

scope?: ConfigurationScope

チェックするスコープ。

戻り値説明
boolean

指定されたセクションが変更された場合は true

ConfigurationScope

構成スコープ。次のいずれかになります。

  • リソースを表す Uri
  • 開いているテキストドキュメントを表す TextDocument
  • ワークスペースフォルダーを表す WorkspaceFolder
  • 次のものを含むオブジェクト
    • uri: テキストドキュメントのオプションの Uri
    • languageId: テキストドキュメントの言語識別子

ConfigurationTarget

構成ターゲット

列挙メンバー

グローバル構成

ワークスペース構成

ワークスペースフォルダー構成

CustomDocument

CustomEditorProvider によって使用されるカスタムドキュメントを表します。

カスタムドキュメントは、特定の CustomEditorProvider 内でのみ使用されます。CustomDocument のライフサイクルはエディターによって管理されます。CustomDocument への参照がなくなると、破棄されます。

プロパティ

このドキュメントに関連付けられた URI。

メソッド

カスタムドキュメントを破棄します。

これは、特定の CustomDocument への参照がなくなった場合 (たとえば、ドキュメントに関連付けられたすべてのエディターが閉じられた場合) に、エディターによって呼び出されます。

パラメーター説明
戻り値説明
void

CustomDocumentBackup

CustomDocument のバックアップ。

プロパティ

バックアップの一意の識別子。

この ID は、バックアップからカスタムエディターを開くときに、openCustomDocument で拡張機能に返されます。

メソッド

現在のバックアップを削除します。

これは、現在のバックアップが不要になったことが明らかな場合 (新しいバックアップが作成された場合や、ファイルが保存された場合など) に、エディターによって呼び出されます。

パラメーター説明
戻り値説明
void

CustomDocumentBackupContext

CustomDocumentBackup を実装するために使用される追加情報。

プロパティ

新しいバックアップを書き込むための推奨されるファイルロケーション。

拡張機能はこれを無視して、独自のバックアップ戦略を使用してもかまいません。

エディターが現在のワークスペースのリソース用である場合、destinationExtensionContext.storagePath 内のファイルを指します。destination の親フォルダーが存在しない場合があるため、バックアップをこの場所に書き込む前に、必ず作成してください。

CustomDocumentContentChangeEvent<T>

CustomDocument のコンテンツが変更されたことをエディターに通知するために拡張機能によってトリガーされるイベント。

参照: CustomEditorProvider.onDidChangeCustomDocument

プロパティ

変更が加えられたドキュメント。

CustomDocumentEditEvent<T>

CustomDocument で編集が発生したことをエディターに通知するために拡張機能によってトリガーされるイベント。

参照: CustomEditorProvider.onDidChangeCustomDocument

プロパティ

編集が加えられたドキュメント。

編集を説明する表示名。

これは、元に戻す/やり直しの操作の UI でユーザーに表示されます。

メソッド

編集操作をやり直します。

これは、ユーザーがこの編集をやり直すときにエディターによって呼び出されます。redo を実装するには、拡張機能は、onDidChangeCustomDocument によってこの編集がエディターの内部編集スタックに追加された直後の状態にドキュメントとエディターを復元する必要があります。

パラメーター説明
戻り値説明
void | Thenable<void>

編集操作を元に戻します。

これは、ユーザーがこの編集を元に戻すときにエディターによって呼び出されます。undo を実装するには、拡張機能は、onDidChangeCustomDocument によってこの編集がエディターの内部編集スタックに追加される直前の状態にドキュメントとエディターを復元する必要があります。

パラメーター説明
戻り値説明
void | Thenable<void>

CustomDocumentOpenContext

カスタムドキュメントを開くことに関する追加情報。

プロパティ

ドキュメントを復元するバックアップの ID。バックアップがない場合は undefined

これが提供されている場合、拡張機能は、ユーザーのワークスペースからファイルを読み取るのではなく、バックアップからエディターを復元する必要があります。

URI が無題のファイルの場合、これはそのファイルのバイトデータで設定されます

これが提供されている場合、拡張機能は、渡された URI で fs API を実行するのではなく、このバイトデータを利用する必要があります

CustomEditorProvider<T>

カスタムドキュメントモデルを使用する編集可能なカスタムエディターのプロバイダー。

カスタムエディターは、TextDocument の代わりに、ドキュメントモデルとして CustomDocument を使用します。これにより、拡張機能は、編集、保存、バックアップなどのアクションを完全に制御できます。

バイナリファイルまたはより複雑なシナリオを扱う場合は、このタイプのカスタムエディターを使用する必要があります。単純なテキストベースのドキュメントの場合は、代わりに CustomTextEditorProvider を使用してください。

イベント

カスタムエディター内で編集が発生したことを通知します。

このイベントは、カスタムエディターで編集が発生するたびに、拡張機能によって発行される必要があります。編集は、テキストの変更から、画像のトリミング、リストの並べ替えまで、あらゆるものにすることができます。拡張機能は、編集とは何か、および各編集にどのようなデータが保存されるかを自由に定義できます。

onDidChange を発行すると、エディターがダーティとしてマークされます。これは、ユーザーがファイルを保存または元に戻すときにクリアされます。

元に戻す/やり直しをサポートするエディターは、編集が発生するたびに CustomDocumentEditEvent を発行する必要があります。これにより、ユーザーはエディターの標準キーボードショートカットを使用して編集を元に戻したり、やり直したりできます。また、ユーザーがすべての編集を最後に保存した状態まで元に戻した場合、エディターはエディターがダーティでなくなったこともマークします。

編集をサポートしているが、エディターの標準の元に戻す/やり直しのメカニズムを使用できないエディターは、CustomDocumentContentChangeEvent を発行する必要があります。元に戻す/やり直しをサポートしていないエディターのダーティ状態をユーザーがクリアする唯一の方法は、ファイルを save または revert することです。

エディターは、CustomDocumentEditEvent イベントのみを発行するか、CustomDocumentContentChangeEvent イベントのみを発行する必要があります。

メソッド

ダーティなカスタムドキュメントをバックアップします。

バックアップは、ホットエグジットとデータ損失を防ぐために使用されます。backup メソッドは、リソースを現在の状態 (つまり、編集が適用された状態) で永続化する必要があります。最も一般的なのは、リソースを ExtensionContext.storagePath のディスクに保存することです。エディターがリロードされ、リソースのカスタムエディターが開かれると、拡張機能は最初にリソースのバックアップが存在するかどうかを確認する必要があります。バックアップがある場合、拡張機能はワークスペースのリソースからではなく、そこからファイルの内容を読み込む必要があります。

backup は、ユーザーがドキュメントの編集を停止してから約 1 秒後にトリガーされます。ユーザーがドキュメントをすばやく編集する場合、編集が停止するまで backup は呼び出されません。

auto save が有効になっている場合、backup は呼び出されません (自動保存はすでにリソースを永続化しているため)。

パラメーター説明
document: T

バックアップするドキュメント。

context: CustomDocumentBackupContext

ドキュメントをバックアップするために使用できる情報。

cancellation: CancellationToken

新しいバックアップが受信されるため、現在のバックアップを通知するトークン。キャンセルにどのように応答するかは、拡張機能次第です。たとえば、拡張機能が完了に時間がかかる操作で大きなファイルをバックアップしている場合、エディターに有効なバックアップがあることを保証するために、拡張機能はキャンセルするのではなく、進行中のバックアップを完了することを選択する場合があります。

戻り値説明
Thenable<CustomDocumentBackup>

指定されたリソースの新しいドキュメントを作成します。

openCustomDocument は、特定のリソースのエディターが最初に開かれたときに呼び出されます。開かれたドキュメントは resolveCustomEditor に渡され、エディターをユーザーに表示できるようになります。

ユーザーが追加のエディターを開いた場合、すでに開いている CustomDocument が再利用されます。特定のリソースのすべてのエディターが閉じられると、CustomDocument は破棄されます。この時点でエディターを開くと、openCustomDocument への別の呼び出しがトリガーされます。

パラメーター説明
uri: Uri

開くドキュメントの URI。

openContext: CustomDocumentOpenContext

カスタムドキュメントを開くことに関する追加情報。

token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
T | Thenable<T>

カスタムドキュメント。

指定されたリソースのカスタムエディターを解決します。

これは、ユーザーがこの CustomEditorProvider の新しいエディターを開くたびに呼び出されます。

パラメーター説明
document: T

解決されるリソースのドキュメント。

webviewPanel: WebviewPanel

このリソースのエディター UI を表示するために使用される Webview パネル。

解決中に、プロバイダーはコンテンツ Webview パネルの初期 HTML を入力し、関心のあるすべてのイベントリスナーを接続する必要があります。プロバイダーは、後で (たとえばコマンドで) 使用するために WebviewPanel を保持することもできます。詳細については、WebviewPanel を参照してください。

token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
void | Thenable<void>

カスタムエディターが解決されたことを示すオプションの Thenable。

カスタムドキュメントを最後に保存された状態に戻します。

このメソッドは、ユーザーがカスタムエディターで ファイル: ファイルを元に戻す をトリガーしたときにエディターによって呼び出されます。(これは、エディターの ファイル: ファイルを元に戻す コマンドを使用する場合にのみ使用され、ファイルの git revert では使用されないことに注意してください)。

revert を実装するには、実装者は、document のすべてのエディターインスタンス (Webview) が、ドキュメントが保存されたときと同じ状態のドキュメントを表示していることを確認する必要があります。これは通常、ワークスペースからファイルをリロードすることを意味します。

パラメーター説明
document: T

元に戻すドキュメント。

cancellation: CancellationToken

元に戻すことが不要になったことを通知するトークン。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

変更が完了したことを通知する Thenable。

カスタムドキュメントを保存します。

このメソッドは、ユーザーがカスタムエディターを保存するときにエディターによって呼び出されます。これは、ユーザーがカスタムエディターがアクティブな間に保存をトリガーした場合、すべて保存 などのコマンドによって、または自動保存が有効になっている場合に発生する可能性があります。

save を実装するには、実装者はカスタムエディターを永続化する必要があります。これは通常、カスタムドキュメントのファイルデータをディスクに書き込むことを意味します。save が完了すると、関連付けられたエディターインスタンスはダーティとしてマークされなくなります。

パラメーター説明
document: T

保存するドキュメント。

cancellation: CancellationToken

保存が不要になったことを通知するトークン (たとえば、別の保存がトリガーされた場合)。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

保存が完了したことを通知する Thenable。

カスタムドキュメントを別の場所に保存します。

このメソッドは、ユーザーがカスタムエディターで「名前を付けて保存」をトリガーしたときにエディターによって呼び出されます。実装者は、カスタムエディターを destination に永続化する必要があります。

ユーザーが名前を付けて保存を受け入れると、現在のエディターは、新しく保存されたファイルのダーティでないエディターに置き換えられます。

パラメーター説明
document: T

保存するドキュメント。

destination: Uri

保存先の場所。

cancellation: CancellationToken

保存が不要になったことを通知するトークン。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

保存が完了したことを通知する Thenable。

CustomExecution

拡張機能のコールバックをタスクとして実行するために使用されるクラス。

コンストラクター

CustomExecution タスクオブジェクトを構築します。コールバックはタスクが実行されるときに実行され、その時点で拡張機能は「実行する」Pseudoterminal を返す必要があります。タスクは、Pseudoterminal.open が呼び出されるまで、それ以上の実行を待機する必要があります。タスクのキャンセルは、Pseudoterminal.close を使用して処理する必要があります。タスクが完了したら、Pseudoterminal.onDidClose を発行します。

パラメーター説明
callback: (resolvedDefinition: TaskDefinition) => Thenable<Pseudoterminal>

タスクがユーザーによって開始されたときに呼び出されるコールバック関数。タスク定義内にあった `${}` スタイルの変数はすべて解決され、resolvedDefinition としてコールバックに渡されます。

戻り値説明
CustomExecution

CustomReadonlyEditorProvider<T>

カスタムドキュメントモデルを使用する読み取り専用カスタムエディターのプロバイダー。

カスタムエディターは、ドキュメントモデルとして TextDocument の代わりに CustomDocument を使用します。

バイナリファイルまたはより複雑なシナリオを扱う場合は、このタイプのカスタムエディターを使用する必要があります。単純なテキストベースのドキュメントの場合は、代わりに CustomTextEditorProvider を使用してください。

メソッド

指定されたリソースの新しいドキュメントを作成します。

openCustomDocument は、特定のリソースのエディターが最初に開かれたときに呼び出されます。開かれたドキュメントは resolveCustomEditor に渡され、エディターをユーザーに表示できるようになります。

ユーザーが追加のエディターを開いた場合、すでに開いている CustomDocument が再利用されます。特定のリソースのすべてのエディターが閉じられると、CustomDocument は破棄されます。この時点でエディターを開くと、openCustomDocument への別の呼び出しがトリガーされます。

パラメーター説明
uri: Uri

開くドキュメントの URI。

openContext: CustomDocumentOpenContext

カスタムドキュメントを開くことに関する追加情報。

token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
T | Thenable<T>

カスタムドキュメント。

指定されたリソースのカスタムエディターを解決します。

これは、ユーザーがこの CustomEditorProvider の新しいエディターを開くたびに呼び出されます。

パラメーター説明
document: T

解決されるリソースのドキュメント。

webviewPanel: WebviewPanel

このリソースのエディター UI を表示するために使用される Webview パネル。

解決中に、プロバイダーはコンテンツ Webview パネルの初期 HTML を入力し、関心のあるすべてのイベントリスナーを接続する必要があります。プロバイダーは、後で (たとえばコマンドで) 使用するために WebviewPanel を保持することもできます。詳細については、WebviewPanel を参照してください。

token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
void | Thenable<void>

カスタムエディターが解決されたことを示すオプションの Thenable。

CustomTextEditorProvider

テキストベースのカスタムエディターのプロバイダー。

テキストベースのカスタムエディターは、データモデルとして TextDocument を使用します。これにより、エディターがアンドゥやバックアップなどの多くの一般的な操作を処理できるようになるため、カスタムエディターの実装が大幅に簡素化されます。プロバイダーは、webview と TextDocument 間でテキストの変更を同期する責任があります。

メソッド

指定されたテキストリソースのカスタムエディターを解決します。

これは、ユーザーが CustomTextEditorProvider のリソースを初めて開いたとき、またはこの CustomTextEditorProvider を使用して既存のエディターを再度開いたときに呼び出されます。

パラメーター説明
document: TextDocument

解決するリソースのドキュメント。

webviewPanel: WebviewPanel

このリソースのエディター UI を表示するために使用される Webview パネル。

解決中に、プロバイダーはコンテンツ Webview パネルの初期 HTML を入力し、関心のあるすべてのイベントリスナーを接続する必要があります。プロバイダーは、後で (たとえばコマンドで) 使用するために WebviewPanel を保持することもできます。詳細については、WebviewPanel を参照してください。

token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
void | Thenable<void>

カスタムエディターが解決されたことを示す Thenable。

DataTransfer

転送されたデータに対応する MIME タイプ のマッピングを含むマップ。

handleDrag を実装するドラッグアンドドロップコントローラーは、データ転送に追加の MIME タイプを追加できます。これらの追加の MIME タイプは、ドラッグが同じドラッグアンドドロップコントローラー内の要素から開始された場合にのみ handleDrop に含まれます。

コンストラクター

パラメーター説明
戻り値説明
DataTransfer

メソッド

このデータ転送の各要素に対して、[mime, item] ペアを持つ新しいイテレーターを取得します。

パラメーター説明
戻り値説明
IterableIterator<[mimeType: string, item: DataTransferItem]>

データ転送項目を反復処理できます。

パラメーター説明
callbackfn: (item: DataTransferItem, mimeType: string, dataTransfer: DataTransfer) => void

データ転送項目を反復処理するためのコールバック関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
void

指定された MIME タイプ のデータ転送項目を取得します。

パラメーター説明
mimeType: string

データ転送項目を取得する MIME タイプ。例: text/plainimage/png。MIME タイプの検索は大文字と小文字を区別しません。

特殊な MIME タイプ

  • text/uri-list — toString() 化された Uri が \r\n で区切られた文字列。ファイル内のカーソル位置を指定するには、Uri のフラグメントを L3,5 に設定します。ここで、3 は行番号、5 は列番号です。
戻り値説明
DataTransferItem

MIME タイプからデータ転送項目へのマッピングを設定します。

パラメーター説明
mimeType: string

データを設定する MIME タイプ。MIME タイプは小文字で保存され、検索は大文字と小文字を区別しません。

value: DataTransferItem

指定された MIME タイプのデータ転送項目。

戻り値説明
void

DataTransferFile

DataTransferItem に関連付けられたファイル。

この型のインスタンスは、エディターによってのみ作成でき、拡張機能によって作成することはできません。

プロパティ

ファイルの名前。

ファイルのフルファイルパス。

Web 上では undefined の場合があります。

メソッド

ファイルの完全なファイル内容。

パラメーター説明
戻り値説明
Thenable<Uint8Array>

DataTransferItem

ドラッグアンドドロップ操作中に転送されるデータをカプセル化します。

コンストラクター

パラメーター説明
value: any

この項目に保存されているカスタムデータ。DataTransferItem.value を使用して取得できます。

戻り値説明
DataTransferItem

プロパティ

この項目に保存されているカスタムデータ。

操作間でデータを共有するために value を使用できます。DataTransferItem を作成した拡張機能が同じ拡張機能ホストで実行されている限り、元のオブジェクトを取得できます。

メソッド

このデータ転送項目に関連付けられた file を取得しようとします。

ファイルオブジェクトは、ドラッグアンドドロップ操作のスコープ内でのみ有効であることに注意してください。

パラメーター説明
戻り値説明
DataTransferFile

データ転送のファイル。項目がファイルでない場合、またはファイルデータにアクセスできない場合は undefined

この項目の文字列表現を取得します。

DataTransferItem.value がオブジェクトの場合、これは DataTransferItem.value 値を JSON 文字列化した結果を返します。

パラメーター説明
戻り値説明
Thenable<string>

DebugAdapter

Debug Adapter Protocol を実装するデバッグアダプターは、DebugAdapter インターフェースを実装している場合、エディターに登録できます。

イベント

デバッグアダプターが Debug Adapter Protocol メッセージをエディターに送信した後に発生するイベント。メッセージは、リクエスト、レスポンス、またはイベントの場合があります。

メソッド

このオブジェクトを破棄します。

パラメーター説明
戻り値説明
any

Debug Adapter Protocol メッセージを処理します。メッセージは、リクエスト、レスポンス、またはイベントの場合があります。結果またはエラーは、onSendMessage イベントを介して返されます。

パラメーター説明
message: DebugProtocolMessage

Debug Adapter Protocol メッセージ

戻り値説明
void

DebugAdapterDescriptor

さまざまなタイプのデバッグアダプターを表します。

DebugAdapterDescriptorFactory

デバッグアダプター記述子を作成するデバッグアダプターファクトリ。

メソッド

'createDebugAdapterDescriptor' は、使用するデバッグアダプターの詳細を提供するために、デバッグセッションの開始時に呼び出されます。これらの詳細は、DebugAdapterDescriptor 型のオブジェクトとして返す必要があります。現在、2 種類のデバッグアダプターがサポートされています。

  • デバッグアダプター実行可能ファイルは、コマンドパスと引数として指定されます (DebugAdapterExecutable を参照)。
  • 通信ポート経由で到達可能なデバッグアダプターサーバー (DebugAdapterServer を参照)。メソッドが実装されていない場合、デフォルトの動作は次のとおりです: createDebugAdapter(session: DebugSession, executable: DebugAdapterExecutable) { if (typeof session.configuration.debugServer === 'number') { return new DebugAdapterServer(session.configuration.debugServer); } return executable; }
パラメーター説明
session: DebugSession

デバッグアダプターが使用される デバッグセッション

executable: DebugAdapterExecutable

package.json で指定されたデバッグアダプターの実行可能ファイル情報 (または、そのような情報が存在しない場合は undefined)。

戻り値説明
ProviderResult<DebugAdapterDescriptor>

デバッグアダプター記述子 または undefined。

DebugAdapterExecutable

デバッグアダプターの実行可能ファイルと、それに渡されるオプションの引数およびランタイムオプションを表します。

コンストラクター

実行可能プログラムに基づいてデバッグアダプターの説明を作成します。

パラメーター説明
command: string

デバッグアダプターを実装するコマンドまたは実行可能ファイルのパス。

args?: string[]

コマンドまたは実行可能ファイルに渡されるオプションの引数。

options?: DebugAdapterExecutableOptions

コマンドまたは実行可能ファイルを開始するときに使用するオプションのオプション。

戻り値説明
DebugAdapterExecutable

プロパティ

デバッグアダプターの実行可能ファイルに渡される引数。デフォルトは空の配列です。

デバッグアダプターの実行可能ファイルのコマンドまたはパス。コマンドは、実行可能ファイルの絶対パス、または PATH 環境変数を介して検索されるコマンドの名前のいずれかである必要があります。特別な値 'node' は、エディターの組み込み Node.js ランタイムにマッピングされます。

デバッグアダプターの起動時に使用するオプションのオプション。デフォルトは undefined です。

DebugAdapterExecutableOptions

デバッグアダプター実行可能ファイルのオプション。

プロパティ

実行されるデバッグアダプターの現在の作業ディレクトリ。

実行されるプログラムまたはシェルの追加の環境。省略した場合、親プロセスの環境が使用されます。提供された場合、親プロセスの環境とマージされます。

DebugAdapterInlineImplementation

インライン実装のデバッグアダプター記述子。

コンストラクター

デバッグアダプターのインライン実装の記述子を作成します。

パラメーター説明
implementation: DebugAdapter
戻り値説明
DebugAdapterInlineImplementation

DebugAdapterNamedPipeServer

Named Pipe (Windows 上)/UNIX ドメインソケット (非 Windows 上) ベースのサーバーとして実行されているデバッグアダプターを表します。

コンストラクター

Named Pipe (Windows 上)/UNIX ドメインソケット (非 Windows 上) ベースのサーバーとして実行されているデバッグアダプターの説明を作成します。

パラメーター説明
path: string
戻り値説明
DebugAdapterNamedPipeServer

プロパティ

Named Pipe/UNIX ドメインソケットへのパス。

DebugAdapterServer

ソケットベースのサーバーとして実行されているデバッグアダプターを表します。

コンストラクター

ソケットベースのサーバーとして実行されているデバッグアダプターの説明を作成します。

パラメーター説明
port: number
host?: string
戻り値説明
DebugAdapterServer

プロパティ

ホスト。

ポート。

DebugAdapterTracker

Debug Adapter Tracker は、エディターとデバッグアダプター間の通信を追跡する手段です。

イベント

デバッグアダプターが Debug Adapter Protocol メッセージをエディターに送信しました。

パラメーター説明
message: any
戻り値説明
void

デバッグアダプターは、エディターから Debug Adapter Protocol メッセージを受信しようとしています。

パラメーター説明
message: any
戻り値説明
void

デバッグアダプターとのセッションが開始されようとしています。

パラメーター説明
戻り値説明
void

デバッグアダプターセッションが停止されようとしています。

パラメーター説明
戻り値説明
void

メソッド

デバッグアダプターでエラーが発生しました。

パラメーター説明
error: Error
戻り値説明
void

デバッグアダプターが、指定された終了コードまたはシグナルで終了しました。

パラメーター説明
code: number
signal: string
戻り値説明
void

DebugAdapterTrackerFactory

デバッグアダプタートラッカーを作成するデバッグアダプターファクトリ。

メソッド

メソッド 'createDebugAdapterTracker' は、エディターとデバッグアダプター間の通信への読み取りアクセスを提供する「トラッカー」オブジェクトを返すために、デバッグセッションの開始時に呼び出されます。

パラメーター説明
session: DebugSession

デバッグアダプタートラッカーが使用される デバッグセッション

戻り値説明
ProviderResult<DebugAdapterTracker>

DebugConfiguration

デバッグセッションの構成。

プロパティ

デバッグセッションの名前。

デバッグセッションのリクエストタイプ。

デバッグセッションのタイプ。

DebugConfigurationProvider

デバッグ構成プロバイダーを使用すると、デバッグサービスにデバッグ構成を追加したり、デバッグセッションを開始するために使用される前に起動構成を解決したりできます。デバッグ構成プロバイダーは、debug.registerDebugConfigurationProvider を介して登録されます。

メソッド

デバッグサービスに デバッグ構成 を提供します。同じタイプに対して複数のデバッグ構成プロバイダーが登録されている場合、デバッグ構成は任意の順序で連結されます。

パラメーター説明
folder: WorkspaceFolder

構成が使用されるワークスペースフォルダー。フォルダーレスセットアップの場合は undefined

token?: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<DebugConfiguration[]>

デバッグ構成 の配列。

不足している値を入力するか、属性を追加/変更/削除することにより、デバッグ構成 を解決します。同じタイプに対して複数のデバッグ構成プロバイダーが登録されている場合、resolveDebugConfiguration 呼び出しは任意の順序でチェーンされ、初期デバッグ構成がチェーンを介してパイプされます。値 'undefined' を返すと、デバッグセッションが開始されなくなります。値 'null' を返すと、デバッグセッションが開始されなくなり、代わりに基になるデバッグ構成が開きます。

パラメーター説明
folder: WorkspaceFolder

構成の発生元のワークスペースフォルダー。フォルダーレスセットアップの場合は undefined

debugConfiguration: DebugConfiguration

解決する デバッグ構成

token?: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<DebugConfiguration>

解決されたデバッグ構成、または undefined または null。

このフックは、'resolveDebugConfiguration' の直後、ただしすべての変数が代入された状態で直接呼び出されます。不足している値を入力するか、属性を追加/変更/削除することにより、デバッグ構成 を解決または検証するために使用できます。同じタイプに対して複数のデバッグ構成プロバイダーが登録されている場合、'resolveDebugConfigurationWithSubstitutedVariables' 呼び出しは任意の順序でチェーンされ、初期デバッグ構成がチェーンを介してパイプされます。値 'undefined' を返すと、デバッグセッションが開始されなくなります。値 'null' を返すと、デバッグセッションが開始されなくなり、代わりに基になるデバッグ構成が開きます。

パラメーター説明
folder: WorkspaceFolder

構成の発生元のワークスペースフォルダー。フォルダーレスセットアップの場合は undefined

debugConfiguration: DebugConfiguration

解決する デバッグ構成

token?: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<DebugConfiguration>

解決されたデバッグ構成、または undefined または null。

DebugConfigurationProviderTriggerKind

DebugConfigurationProviderTriggerKind は、DebugConfigurationProviderprovideDebugConfigurations メソッドがいつトリガーされるかを指定します。現在、2 つの状況があります。新しく作成された launch.json の初期デバッグ構成を提供するか、ユーザーが UI を介して要求した場合 (例: "デバッグの選択と開始" コマンドを使用) に動的に生成されたデバッグ構成を提供する場合です。トリガーの種類は、debug.registerDebugConfigurationProviderDebugConfigurationProvider を登録するときに使用されます。

列挙メンバー

DebugConfigurationProvider.provideDebugConfigurations は、新しく作成された launch.json の初期デバッグ構成を提供するために呼び出されます。

DebugConfigurationProvider.provideDebugConfigurations は、ユーザーが UI を介して要求した場合 (例: "デバッグの選択と開始" コマンドを使用) に動的に生成されたデバッグ構成を提供するために呼び出されます。

DebugConsole

デバッグコンソールを表します。

メソッド

指定された値をデバッグコンソールに追加します。

パラメーター説明
value: string

文字列。falsy 値は出力されません。

戻り値説明
void

指定された値と改行文字をデバッグコンソールに追加します。

パラメーター説明
value: string

文字列。falsy 値も出力されます。

戻り値説明
void

DebugConsoleMode

デバッグセッションで使用されるデバッグコンソールモード。options を参照してください。

列挙メンバー

デバッグセッションは、独立したデバッグコンソールを持つ必要があります。

デバッグセッションは、親セッションとデバッグコンソールを共有する必要があります。この値は、親セッションを持たないセッションには影響しません。

DebugProtocolBreakpoint

DebugProtocolBreakpoint は、Debug Adapter Protocol で定義されている Breakpoint 型の不透明な代用型です。

DebugProtocolMessage

DebugProtocolMessage は、Debug Adapter Protocol で定義されている ProtocolMessage 型の不透明な代用型です。

DebugProtocolSource

DebugProtocolSource は、Debug Adapter Protocol で定義されている Source 型の不透明な代用型です。

DebugSession

デバッグセッション。

プロパティ

このセッションの「解決済み」 デバッグ構成。「解決済み」とは、

  • すべての変数が代入され、
  • プラットフォーム固有の属性セクションが、一致するプラットフォームに対して「フラット化」され、一致しないプラットフォームに対して削除されたことを意味します。

このデバッグセッションの一意の ID。

デバッグセッションの名前は、最初は デバッグ構成 から取得されます。変更はすべて UI に適切に反映されます。

このデバッグセッションの親セッション (子として作成された場合)。

参照 DebugSessionOptions.parentSession

デバッグ構成 からのデバッグセッションのタイプ。

このセッションのワークスペースフォルダー。フォルダーレスセットアップの場合は undefined

メソッド

デバッグアダプターにカスタムリクエストを送信します。

パラメーター説明
command: string
args?: any
戻り値説明
Thenable<any>

エディター内のブレークポイントを、デバッグセッションのデバッグアダプターによって管理される対応するDebug Adapter Protocol(DAP)ブレークポイントにマップします。DAPブレークポイントが存在しない場合(エディターのブレークポイントがまだ登録されていないか、デバッグアダプターがブレークポイントに関心がないかのいずれか)、値undefinedが返されます。

パラメーター説明
breakpoint: Breakpoint

エディター内のブレークポイント

戻り値説明
Thenable<DebugProtocolBreakpoint>

Debug Adapter Protocolブレークポイントまたはundefinedに解決されるPromise。

DebugSessionCustomEvent

デバッグセッションから受信したカスタムDebug Adapter Protocolイベント。

プロパティ

イベント固有の情報。

イベントのタイプ。

カスタムイベントを受信したデバッグセッション

DebugSessionOptions

プロパティ

子セッションが1つしかない場合でも、デバッグセッションの親セッションを[呼び出し履歴]ビューに表示するかどうかを制御します。デフォルトでは、デバッグセッションは親を非表示にしません。compactがtrueの場合、ツリーをよりコンパクトにするために、子セッションが1つのデバッグセッションは[呼び出し履歴]ビューで非表示になります。

このセッションが個別のデバッグコンソールを持つか、親セッションと共有するかを制御します。親セッションを持たないセッションには影響しません。デフォルトはSeparateです。

'restart'のようなライフサイクルリクエストを、新しく作成されたセッションまたはその親セッションのどちらに送信するかを制御します。デフォルトでは(プロパティがfalseまたは欠落している場合)、ライフサイクルリクエストは新しいセッションに送信されます。セッションに親セッションがない場合、このプロパティは無視されます。

このセッションをデバッグなしで実行し、ブレークポイントを無視するかどうかを制御します。このプロパティが指定されていない場合、親セッション(存在する場合)の値が使用されます。

指定すると、新しく作成されたデバッグセッションは、この「親」デバッグセッションの「子」セッションとして登録されます。

trueの場合、このセッションではウィンドウのステータスバーの色は変更されません。

trueの場合、このセッションではデバッグツールバーは表示されません。

trueの場合、このセッションではデバッグビューレットは自動的に表示されません。

trueの場合、debug.saveBeforeStart設定の値に関係なく、デバッグセッションの開始時に開いているエディターの保存はトリガーされません。

デバッグセッションがテスト実行リクエストから開始されたことをエディターに通知します。これは、デバッグセッションとUIアクションでのテスト実行のライフサイクルをリンクするために使用されます。

DebugStackFrame

デバッグセッション内のスタックフレームを表します。

プロパティ

デバッグプロトコルにおけるスタックフレームのID。

スレッドのデバッグセッション。

デバッグプロトコルにおける関連付けられたスレッドのID。

DebugThread

デバッグセッション内のスレッドを表します。

プロパティ

スレッドのデバッグセッション。

デバッグプロトコルにおける関連付けられたスレッドのID。

Declaration

シンボル表現の宣言。1つまたは複数のロケーションまたはロケーションリンクとして。

DeclarationCoverage

宣言のカバレッジ情報を含みます。レポーターと言語に応じて、関数、メソッド、名前空間などのタイプである場合があります。

コンストラクター

パラメーター説明
name: string
executed: number | boolean

この宣言が実行された回数、または正確なカウントが不明な場合は実行されたかどうかを示すブール値。ゼロまたはfalseの場合、宣言は未カバーとしてマークされます。

location: Range | Position

宣言の位置。

戻り値説明
DeclarationCoverage

プロパティ

この宣言が実行された回数、または正確なカウントが不明な場合は実行されたかどうかを示すブール値。ゼロまたはfalseの場合、宣言は未カバーとしてマークされます。

宣言のロケーション。

宣言の名前。

DeclarationProvider

宣言プロバイダーインターフェースは、拡張機能と宣言へ移動機能間のコントラクトを定義します。

メソッド

指定された位置とドキュメントにあるシンボルの宣言を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Declaration>

宣言、または宣言に解決されるThenable。結果がないことは、undefinedまたはnullを返すことで通知できます。

DecorationInstanceRenderOptions

デコレーションインスタンスのレンダリングオプションを表します。DecorationOptions.renderOptionsを参照してください。

プロパティ

装飾されたテキストの後に挿入される添付ファイルのレンダリングオプションを定義します。

装飾されたテキストの前に挿入される添付ファイルのレンダリングオプションを定義します。

ダークテーマのオーバーライドオプション。

ライトテーマのオーバーライドオプション。

DecorationOptions

デコレーションセット内の特定のデコレーションのオプションを表します。

プロパティ

デコレーションの上にカーソルを合わせたときに表示されるメッセージ。

このデコレーションが適用される範囲。範囲は空であってはなりません。

現在のデコレーションに適用されるレンダリングオプション。パフォーマンス上の理由から、デコレーション固有のオプションの数を少なくし、可能な限りデコレーションタイプを使用してください。

DecorationRangeBehavior

エッジでの入力/編集時のデコレーションの動作を記述します。

列挙メンバー

開始または終了時に編集が発生すると、デコレーションの範囲が広がります。

開始または終了時に編集が発生しても、デコレーションの範囲は広がりません。

開始時に編集が発生すると、デコレーションの範囲は広がりますが、終了時には広がりません。

終了時に編集が発生すると、デコレーションの範囲は広がりますが、開始時には広がりません。

DecorationRenderOptions

テキストエディターデコレーションのレンダリングスタイルを表します。

プロパティ

装飾されたテキストの後に挿入される添付ファイルのレンダリングオプションを定義します。

デコレーションの背景色。他のデコレーションとうまく調和するように、rgba()を使用し、透明な背景色を定義します。または、カラーレジストリからの色を参照できます。

装飾されたテキストの前に挿入される添付ファイルのレンダリングオプションを定義します。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

ダークテーマのオーバーライドオプション。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

ガターにレンダリングされる画像の絶対パスまたはURI。

ガターアイコンのサイズを指定します。使用可能な値は、「auto」、「contain」、「cover」、および任意のパーセント値です。詳細については、https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspxを参照してください。

行テキスト後の空白にもデコレーションをレンダリングするかどうか。デフォルトはfalseです。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

ライトテーマのオーバーライドオプション。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

概要ルーラーでのデコレーションの色。他のデコレーションとうまく調和するように、rgba()を使用し、透明な色を定義します。

デコレーションをレンダリングする必要がある概要ルーラー内の位置。

デコレーションの範囲のエッジで編集が発生した場合のデコレーションの拡大動作をカスタマイズします。デフォルトはDecorationRangeBehavior.OpenOpenです。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

Definition

シンボルの定義。1つまたは複数のロケーションとして表されます。ほとんどのプログラミング言語では、シンボルが定義されているロケーションは1つだけです。

シンボルが定義されている場所に関する情報。

定義シンボルの範囲を含む、通常のロケーション定義に追加のメタデータを提供します。

DefinitionProvider

定義プロバイダーインターフェースは、拡張機能と定義へ移動および定義をピーク機能間のコントラクトを定義します。

メソッド

指定された位置とドキュメントにあるシンボルの定義を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Definition | LocationLink[]>

定義、または定義に解決されるThenable。結果がないことは、undefinedまたはnullを返すことで通知できます。

Diagnostic

コンパイラーエラーや警告などの診断を表します。診断オブジェクトは、ファイルのスコープ内でのみ有効です。

コンストラクター

新しい診断オブジェクトを作成します。

パラメーター説明
range: Range

この診断が適用される範囲。

message: string

人間が読めるメッセージ。

severity?: DiagnosticSeverity

重大度。デフォルトはerrorです。

戻り値説明
Diagnostic

プロパティ

この診断のコードまたは識別子。コードアクションを提供する場合など、後続の処理に使用する必要があります。

人間が読めるメッセージ。

この診断が適用される範囲。

関連する診断情報の配列。例えば、スコープ内のシンボル名が衝突する場合、すべての定義をこのプロパティを介してマークできます。

重大度。デフォルトはerrorです。

この診断のソースを記述する人間が読める文字列。例えば、「typescript」または「super lint」。

診断に関する追加のメタデータ。

DiagnosticChangeEvent

診断が変更されたときに発生するイベント。

プロパティ

診断が変更されたリソースの配列。

DiagnosticCollection

診断コレクションは、診断のセットを管理するコンテナです。診断は常に診断コレクションとリソースにスコープされます。

DiagnosticCollectionのインスタンスを取得するには、createDiagnosticCollectionを使用します。

プロパティ

この診断コレクションの名前。たとえば、typescript。このコレクションからのすべての診断は、この名前に関連付けられます。また、タスクフレームワークは、問題Matcherを定義するときにこの名前を使用します。

メソッド

このコレクションからすべての診断を削除します。#set(undefined)を呼び出すのと同じです。

パラメーター説明
戻り値説明
void

指定されたuriに属するこのコレクションからすべての診断を削除します。#set(uri, undefined)と同じです。

パラメーター説明
uri: Uri

リソース識別子。

戻り値説明
void

関連付けられたリソースを破棄および解放します。clearを呼び出します。

パラメーター説明
戻り値説明
void

このコレクション内の各エントリを反復処理します。

パラメーター説明
callback: (uri: Uri, diagnostics: readonly Diagnostic[], collection: DiagnosticCollection) => any

各エントリに対して実行する関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
void

指定されたリソースの診断を取得します。:この呼び出しから返された診断配列は変更できません。

パラメーター説明
uri: Uri

リソース識別子。

戻り値説明
readonly Diagnostic[]

診断のイミュータブルな配列またはundefined

このコレクションに、指定されたリソースの診断が含まれているかどうかを確認します。

パラメーター説明
uri: Uri

リソース識別子。

戻り値説明
boolean

このコレクションに、指定されたリソースの診断がある場合はtrue

指定されたリソースの診断を割り当てます。そのリソースの既存の診断を置き換えます。

パラメーター説明
uri: Uri

リソース識別子。

diagnostics: readonly Diagnostic[]

診断の配列またはundefined

戻り値説明
void

このコレクション内の複数のリソースの診断を置き換えます。

:同じURIの複数のタプルはマージされます。例えば、[[file1, [d1]], [file1, [d2]]][[file1, [d1, d2]]]と同等です。診断項目がundefinedの場合([file1, undefined]など)、以前の診断はすべて削除されますが、後続の診断は削除されません。

パラメーター説明
entries: ReadonlyArray<[Uri, readonly Diagnostic[]]>

[[file1, [d1, d2]], [file2, [d3, d4, d5]]]undefinedのようなタプルの配列。

戻り値説明
void

DiagnosticRelatedInformation

診断に関連するメッセージとソースコードの位置を表します。これは、診断の原因または関連するコードの場所を示すために使用する必要があります。例えば、スコープ内でシンボルを複製する場合などです。

コンストラクター

新しい関連診断情報オブジェクトを作成します。

パラメーター説明
location: Location

場所。

message: string

メッセージ。

戻り値説明
DiagnosticRelatedInformation

プロパティ

この関連診断情報の場所。

この関連診断情報のメッセージ。

DiagnosticSeverity

診断の重要度を表します。

列挙メンバー

言語のルールまたはその他の手段によって許可されていないもの。

疑わしいが許可されているもの。

通知するためのものですが、問題ではありません。

より良い方法を提案するためのヒント、例えばリファクタリングの提案など。

DiagnosticTag

診断の種類に関する追加メタデータ。

列挙メンバー

未使用または不要なコード。

このタグが付いた診断は、フェードアウトして表示されます。フェードの量は、"editorUnnecessaryCode.opacity" テーマカラーによって制御されます。例えば、"editorUnnecessaryCode.opacity": "#000000c0" は、コードを 75% の不透明度でレンダリングします。ハイコントラストテーマの場合は、"editorUnnecessaryCode.border" テーマカラーを使用して、不要なコードをフェードアウトする代わりに下線を引きます。

非推奨または廃止されたコード。

このタグが付いた診断は、取り消し線付きで表示されます。

Disposable

イベントリスニングやタイマーなど、リソースを解放できる型を表します。

静的

多くの disposable-like を 1 つに結合します。Disposable のインスタンスではない dispose 関数を持つオブジェクトがある場合に、このメソッドを使用できます。

パラメーター説明
...disposableLikes: Array<{dispose: () => any}>

少なくとも dispose 関数メンバーを持つオブジェクト。非同期 dispose 関数は待機されないことに注意してください。

戻り値説明
Disposable

破棄時に、提供されたすべての disposable を破棄する新しい disposable を返します。

コンストラクター

破棄時に提供された関数を呼び出す新しい disposable を作成します。

注意: 非同期関数は待機されません。

パラメーター説明
callOnDispose: () => any

何かを破棄する関数。

戻り値説明
Disposable

メソッド

このオブジェクトを破棄します。

パラメーター説明
戻り値説明
any

DocumentColorProvider

ドキュメントカラープロバイダーは、拡張機能とエディターでの色の選択および変更機能の間の契約を定義します。

メソッド

色の 表現 を提供します。

パラメーター説明
color: Color

表示および挿入する色。

context: {document: TextDocument, range: Range}

追加情報を含むコンテキストオブジェクト

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<ColorPresentation[]>

色の表現の配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

指定されたドキュメントの色を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<ColorInformation[]>

色情報 の配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

DocumentDropEdit

ドロップ時 に適用される編集操作。

コンストラクター

パラメーター説明
insertText: string | SnippetString

ドロップ位置に挿入するテキストまたはスニペット。

title?: string

編集内容を説明する人間が読めるラベル。

kind?: DocumentDropOrPasteEditKind

編集の 種類

戻り値説明
DocumentDropEdit

プロパティ

ドロップ時に適用するオプションの追加編集。

ドロップ位置に挿入するテキストまたはスニペット。

編集の 種類

編集内容を説明する人間が読めるラベル。

複数の編集の順序を制御します。このプロバイダーが編集に譲歩する場合、リストの下位に表示されます。

DocumentDropEditProvider<T>

テキストエディターへのリソースのドロップを処理するプロバイダー。

これにより、ユーザーはリソース(外部アプリからのリソースを含む)をエディターにドラッグアンドドロップできます。ファイル​​をドラッグアンドドロップ中に、ユーザーは shift キーを押したままにして、ファイルを開く代わりにエディターにドロップできます。editor.dropIntoEditor.enabled をオンにする必要があります。

メソッド

ドキュメントにドラッグアンドドロップされたコンテンツを挿入する編集を提供します。

パラメーター説明
document: TextDocument

ドロップが発生したドキュメント。

position: Position

ドキュメント内でドロップが発生した位置。

dataTransfer: DataTransfer

ドラッグアンドドロップされているデータに関するデータを保持する DataTransfer オブジェクト。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T | T[]>

DocumentDropEdit またはそのようなものに解決される Thenable。結果がない場合は、undefined または null を返すことで通知できます。

編集が適用される前に、DocumentDropEdit.additionalEdit を入力するオプションのメソッド。

これは編集ごとに 1 回呼び出され、完全な編集の生成に時間がかかる場合に使用する必要があります。Resolve は、DocumentDropEdit.additionalEdit を変更するためにのみ使用できます。

パラメーター説明
edit: T

解決する DocumentDropEdit

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決された編集、またはそのようなものに解決される Thenable。与えられた edit を返すことは OK です。結果が返されない場合、与えられた edit が使用されます。

DocumentDropEditProviderMetadata

DocumentDropEditProvider の動作方法に関する追加メタデータを提供します。

プロパティ

プロバイダーが処理できる DataTransfer MIME タイプのリスト。

これは、image/png などの正確な MIME タイプ、または image/* などのワイルドカードパターンのいずれかになります。

ワークベンチのエクスプローラーまたはその他のツリービューからドロップされたリソースには text/uri-list を使用します。

ファイルDataTransfer に存在する場合にプロバイダーを呼び出す必要があることを示すには、files を使用します。DataTransferFile エントリは、オペレーティングシステムなど、エディターの外部からコンテンツをドロップする場合にのみ作成されることに注意してください。

種類 のリスト。プロバイダーが provideDocumentDropEdits で返す可能性があります。

これは、特定の 種類 の編集が要求された場合にプロバイダーをフィルターアウトするために使用されます。

DocumentDropOrPasteEditKind

DocumentDropEdit または DocumentPasteEdit を識別します

静的

基本的なテキスト編集のルート種類。

この種類は、基本的なテキストをドキュメントに挿入する編集に使用する必要があります。これの良い例は、貼り付けられたテキストに基づいてファイルのインポートを更新しながら、クリップボードのテキストを貼り付ける編集です。このために、text.updateImports.someLanguageId などの種類を使用できます。

ほとんどのドロップ/ペースト編集は最終的にテキストを挿入しますが、これは冗長であるため、すべての編集の基本種類として Text を使用しないでください。代わりに、挿入されるコンテンツのタイプを記述する、より具体的な種類を使用する必要があります。たとえば、編集が Markdown リンクを追加する場合は、挿入されるコンテンツがテキストであっても、編集が Markdown 構文を挿入することを知ることがより重要であるため、markdown.link を使用します。

テキストの挿入に加えて、ドキュメント内のインポートを更新する編集のルート種類。

コンストラクター

DocumentDropOrPasteEditKind.Empty を代わりに使用してください。

パラメーター説明
value: string
戻り値説明
DocumentDropOrPasteEditKind

プロパティ

種類の生の文字列値。

メソッド

現在の種類に追加のスコープを追加して、新しい種類を作成します。

現在の種類は変更しません。

パラメーター説明
...parts: string[]
戻り値説明
DocumentDropOrPasteEditKind

other がこの DocumentDropOrPasteEditKind のサブ種類であるかどうかを確認します。

種類 "text.plain" は、例えば "text.plain" および "text.plain.list" を含みますが、"text" または "unicorn.text.plain" は含みません。

パラメーター説明
other: DocumentDropOrPasteEditKind

確認する種類。

戻り値説明
boolean

この種類が other と交差するかどうかを確認します。

種類 "text.plain" は、例えば text"text.plain" および "text.plain.list" と交差しますが、"unicorn" または "textUnicorn.plain" とは交差しません。

パラメーター説明
other: DocumentDropOrPasteEditKind

確認する種類。

戻り値説明
boolean

DocumentFilter

ドキュメントフィルターは、言語、リソースの スキーム、または パス に適用される glob パターンなど、さまざまなプロパティによってドキュメントを示します。

ディスク上の typescript ファイルに適用される言語フィルター

{ language: 'typescript', scheme: 'file' }

すべての package.json パスに適用される言語フィルター

{ language: 'json', pattern: '**/package.json' }

プロパティ

typescript のような言語 ID。

jupyter-notebook のようなノートブックの 種類セルドキュメント が属するノートブックの種類を絞り込むことができます。

注意: notebookType プロパティを設定すると、scheme および pattern の解釈方法が変わります。設定すると、ドキュメント URI ではなく、ノートブック URI に対して評価されます。

まだ保存されていない (untitled) jupyter ノートブック内の python ドキュメントに一致

{ language: 'python', notebookType: 'jupyter-notebook', scheme: 'untitled' }

ドキュメントの絶対パスと照合される glob パターンワークスペースフォルダー にドキュメントをフィルタリングするには、相対パターン を使用します。

fileuntitled のような Uri スキーム

DocumentFormattingEditProvider

ドキュメントフォーマットプロバイダーインターフェースは、拡張機能とフォーマット機能の間の契約を定義します。

メソッド

ドキュメント全体のフォーマット編集を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

options: FormattingOptions

フォーマットを制御するオプション。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TextEdit[]>

テキスト編集のセット、またはそのようなものに解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

DocumentHighlight

ドキュメントハイライトは、テキストドキュメント内の特別な注意を払うべき範囲です。通常、ドキュメントハイライトは、その範囲の背景色を変更することによって視覚化されます。

コンストラクター

新しいドキュメントハイライトオブジェクトを作成します。

パラメーター説明
range: Range

ハイライトが適用される範囲。

kind?: DocumentHighlightKind

ハイライトの種類、デフォルトは text です。

戻り値説明
DocumentHighlight

プロパティ

ハイライトの種類、デフォルトは text です。

このハイライトが適用される範囲。

DocumentHighlightKind

ドキュメントハイライトの種類。

列挙メンバー

テキストの出現。

変数の読み取りなど、シンボルの読み取りアクセス。

変数への書き込みなど、シンボルの書き込みアクセス。

DocumentHighlightProvider

ドキュメントハイライトプロバイダーインターフェースは、拡張機能とワードハイライト機能の間の契約を定義します。

メソッド

ドキュメントハイライトのセットを提供します。例えば、変数または関数のすべての出口点のすべての出現箇所など。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<DocumentHighlight[]>

ドキュメントハイライトの配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

ドキュメントリンクは、別のテキストドキュメントや Web サイトなどの内部または外部リソースにリンクするテキストドキュメント内の範囲です。

コンストラクター

新しいドキュメントリンクを作成します。

パラメーター説明
range: Range

ドキュメントリンクが適用される範囲。空にすることはできません。

target?: Uri

ドキュメントリンクが指す URI。

戻り値説明
DocumentLink

プロパティ

このリンクが適用される範囲。

このリンクが指す URI。

このリンクにカーソルを合わせたときに表示されるツールチップテキスト。

ツールチップが提供されている場合、{0} (ctrl + click) のように、リンクをトリガーする方法に関する指示を含む文字列で表示されます。具体的な指示は、OS、ユーザー設定、およびローカライズによって異なります。

DocumentLinkProvider<T>

ドキュメントリンクプロバイダーは、拡張機能とエディターでのリンク表示機能の間の契約を定義します。

メソッド

指定されたドキュメントのリンクを提供します。エディターには、http(s) および file リンクを検出するデフォルトのプロバイダーが付属しています。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

ドキュメントリンク の配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

リンクが選択されたときに、その ターゲット を入力します。このメソッドは、UI で不完全なリンクが選択されたときに呼び出されます。プロバイダーは、このメソッドを実装し、provideDocumentLinks メソッドから不完全なリンク (ターゲットなし) を返すことができます。これは、パフォーマンスを向上させるのに役立つことがよくあります。

パラメーター説明
link: T

解決されるリンク。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

DocumentPasteEdit

貼り付け操作を適用する編集。

コンストラクター

新しい貼り付け編集を作成します。

パラメーター説明
insertText: string | SnippetString

貼り付けられた場所に挿入するテキストまたはスニペット。

title: string

編集内容を説明する人間が読めるラベル。

kind: DocumentDropOrPasteEditKind

編集の 種類

戻り値説明
DocumentPasteEdit

プロパティ

貼り付け時に適用するオプションの追加編集。

貼り付けられた場所に挿入するテキストまたはスニペット。

編集にさらに高度な挿入ロジックが必要な場合は、これを空の文字列に設定し、代わりに 追加の編集 を提供します。

編集の 種類

編集内容を説明する人間が読めるラベル。

複数の貼り付け編集を適用できる場合の順序を制御します。

この編集が別の編集に譲歩する場合、ユーザーに表示される可能な貼り付け編集のリストの下位に表示されます。

DocumentPasteEditContext

貼り付け操作に関する追加情報。

プロパティ

要求されたペースト編集の種類を返します。

PasteAs によって明示的な種類が要求された場合、プロバイダーは要求された種類の編集を生成する際により柔軟に対応することが推奨されます。

ペースト編集が要求された理由。

DocumentPasteEditProvider<T>

ユーザーが TextDocument 内でコピーまたはペーストを行うときに呼び出されるプロバイダー。

メソッド

テキストエディターからユーザーがコピーした後で呼び出されるオプションのメソッド。

これにより、プロバイダーはコピーされたテキストに関するメタデータを DataTransfer に添付できます。このデータ転送は、provideDocumentPasteEdits 内のプロバイダーに渡されます。

現在、DataTransfer への変更は現在のエディターウィンドウに隔離されていることに注意してください。これは、追加されたメタデータが他のエディターウィンドウや他のアプリケーションから見えないことを意味します。

パラメーター説明
document: TextDocument

コピーが行われたテキストドキュメント。

ranges: readonly Range[]

document 内でコピーされている範囲。

dataTransfer: DataTransfer

コピーに関連付けられたデータ転送。後で provideDocumentPasteEdits で使用するために、追加の値をこれに保存できます。このオブジェクトは、このメソッドの期間中のみ有効です。

token: CancellationToken

キャンセルトークン。

戻り値説明
void | Thenable<void>

dataTransfer へのすべての変更が完了したときに解決されるオプションの Thenable。

ユーザーが テキストエディター にペーストする前に呼び出されます。

返された編集は、標準のペースト動作を置き換えることができます。

パラメーター説明
document: TextDocument

ペースト先のドキュメント

ranges: readonly Range[]

document 内のペースト先の範囲。

dataTransfer: DataTransfer

ペーストに関連付けられた データ転送。このオブジェクトは、ペースト操作の期間中のみ有効です。

context: DocumentPasteEditContext

ペーストの追加コンテキスト。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

ペーストを適用できる可能性のある 編集 のセット。一度に適用される DocumentPasteEdit は 1 つのみです。すべてのプロバイダーから複数の編集が返された場合、最初の編集が自動的に適用され、ユーザーが他の編集に切り替えることができるウィジェットが表示されます。

編集が適用される前に DocumentPasteEdit.additionalEdit を入力するオプションのメソッド。

これは編集ごとに 1 回呼び出され、完全な編集の生成に時間がかかる場合に使用する必要があります。Resolve は、DocumentPasteEdit.insertText または DocumentPasteEdit.additionalEdit の変更にのみ使用できます。

パラメーター説明
pasteEdit: T

解決する DocumentPasteEdit

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決されたペースト編集、またはそのようなものに解決される Thenable。指定された pasteEdit を返すことは問題ありません。結果が返されない場合、指定された pasteEdit が使用されます。

DocumentPasteProviderMetadata

DocumentPasteEditProvider の動作に関する追加のメタデータを提供します。

プロパティ

prepareDocumentPaste がコピー時に追加する可能性のある MIME タイプ。

provideDocumentPasteEdits を呼び出す必要がある MIME タイプ。

これは、image/png などの正確な MIME タイプ、または image/* などのワイルドカードパターンのいずれかになります。

ワークベンチのエクスプローラーまたはその他のツリービューからドロップされたリソースには text/uri-list を使用します。

DataTransferファイル が存在する場合にプロバイダーを呼び出す必要があることを示すには、files を使用します。DataTransferFile エントリは、オペレーティングシステムなど、エディターの外部からコンテンツをペーストするときにのみ作成されることに注意してください。

プロバイダーが provideDocumentPasteEdits で返す可能性のある 種類 のリスト。

これは、特定の 種類 の編集が要求された場合にプロバイダーをフィルターアウトするために使用されます。

DocumentPasteTriggerKind

ペースト編集が要求された理由。

列挙メンバー

通常のペースト操作の一部としてペーストが要求されました。

ユーザーが 名前を付けてペースト コマンドでペーストを要求しました。

DocumentRangeFormattingEditProvider

ドキュメントフォーマットプロバイダーインターフェースは、拡張機能とフォーマット機能の間の契約を定義します。

メソッド

ドキュメント内の範囲のフォーマット編集を提供します。

指定された範囲はヒントであり、プロバイダーはより小さいまたはより大きい範囲をフォーマットすることを決定できます。多くの場合、これは範囲の開始と終了を完全な構文ノードに調整することによって行われます。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

range: Range

フォーマットする必要がある範囲。

options: FormattingOptions

フォーマットを制御するオプション。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TextEdit[]>

テキスト編集のセット、またはそのようなものに解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

ドキュメント内の複数の範囲のフォーマット編集を提供します。

この関数はオプションですが、フォーマッターが変更された範囲のみをフォーマットする場合、または多数の選択範囲をフォーマットする場合に、より高速に実行できるようにします。

指定された範囲はヒントであり、プロバイダーはより小さいまたはより大きい範囲をフォーマットすることを決定できます。多くの場合、これは範囲の開始と終了を完全な構文ノードに調整することによって行われます。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

ranges: Range[]

フォーマットする必要がある範囲。

options: FormattingOptions

フォーマットを制御するオプション。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TextEdit[]>

テキスト編集のセット、またはそのようなものに解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

DocumentRangeSemanticTokensProvider

ドキュメント範囲セマンティックトークンプロバイダーインターフェースは、拡張機能とセマンティックトークン間のコントラクトを定義します。

メソッド

パラメーター説明
document: TextDocument
range: Range
token: CancellationToken
戻り値説明
ProviderResult<SemanticTokens>

DocumentSelector

言語セレクターは、1 つまたは複数の言語識別子と 言語フィルター の組み合わせです。

注意 言語識別子のみであるドキュメントセレクターは、ディスクに保存されていないドキュメントであっても、すべて のドキュメントを選択します。機能が追加のコンテキストなしで動作する場合(たとえば、関連する「ファイル」を解決する必要がない場合)にのみ、このようなセレクターを使用してください。

let sel: DocumentSelector = { scheme: 'file', language: 'typescript' };

DocumentSemanticTokensProvider

ドキュメントセマンティックトークンプロバイダーインターフェースは、拡張機能とセマンティックトークン間のコントラクトを定義します。

イベント

このプロバイダーからのセマンティックトークンが変更されたことを通知するオプションのイベント。

メソッド

ファイル内のトークンは、整数の配列として表されます。各トークンの位置は、ファイル内で編集が行われた場合でもほとんどのトークンが互いに対して安定しているため、前のトークンからの相対位置として表されます。


簡単に言うと、各トークンは表現するために 5 つの整数を必要とするため、ファイル内の特定のトークン i は次の配列インデックスで構成されます。

  • インデックス 5*i - deltaLine: トークン行番号、前のトークンからの相対位置
  • インデックス 5*i+1 - deltaStart: トークン開始文字、前のトークンからの相対位置 (0 からの相対位置、または前のトークンと同じ行にある場合は前のトークンの開始位置からの相対位置)
  • インデックス 5*i+2 - length: トークンの長さ。トークンを複数行にすることはできません。
  • インデックス 5*i+3 - tokenType: SemanticTokensLegend.tokenTypes で検索されます。現在、tokenType < 65536 であることが求められています。
  • インデックス 5*i+4 - tokenModifiers: 設定された各ビットは SemanticTokensLegend.tokenModifiers で検索されます

トークンをエンコードする方法

uint32 配列で 3 つのトークンを持つファイルをエンコードする例を次に示します。

   { line: 2, startChar:  5, length: 3, tokenType: "property",  tokenModifiers: ["private", "static"] },
   { line: 2, startChar: 10, length: 4, tokenType: "type",      tokenModifiers: [] },
   { line: 5, startChar:  2, length: 7, tokenType: "class",     tokenModifiers: [] }
  1. まず、凡例を作成する必要があります。この凡例は事前に提供する必要があり、可能なすべてのトークンタイプをキャプチャする必要があります。この例では、プロバイダーを登録するときに渡す必要がある次の凡例を選択します。
   tokenTypes: ['property', 'type', 'class'],
   tokenModifiers: ['private', 'static']
  1. 最初の変換ステップは、凡例を使用して tokenType および tokenModifiers を整数としてエンコードすることです。トークンタイプはインデックスで検索されるため、tokenType 値が 1 の場合、tokenTypes[1] を意味します。複数のトークン修飾子をビットフラグを使用して設定できるため、tokenModifier 値が 3 の場合、最初にバイナリ 0b00000011 として表示されます。これは、ビット 0 と 1 が設定されているため、[tokenModifiers[0], tokenModifiers[1]] を意味します。この凡例を使用すると、トークンは次のようになります。
   { line: 2, startChar:  5, length: 3, tokenType: 0, tokenModifiers: 3 },
   { line: 2, startChar: 10, length: 4, tokenType: 1, tokenModifiers: 0 },
   { line: 5, startChar:  2, length: 7, tokenType: 2, tokenModifiers: 0 }
  1. 次のステップは、ファイル内の前のトークンに対する相対位置として各トークンを表すことです。この場合、2 番目のトークンは最初のトークンと同じ行にあるため、2 番目のトークンの startChar は最初のトークンの startChar に対する相対位置になり、10 - 5 になります。3 番目のトークンは 2 番目のトークンとは異なる行にあるため、3 番目のトークンの startChar は変更されません。
   { deltaLine: 2, deltaStartChar: 5, length: 3, tokenType: 0, tokenModifiers: 3 },
   { deltaLine: 0, deltaStartChar: 5, length: 4, tokenType: 1, tokenModifiers: 0 },
   { deltaLine: 3, deltaStartChar: 2, length: 7, tokenType: 2, tokenModifiers: 0 }
  1. 最後に、最後のステップは、トークンの 5 つのフィールドのそれぞれを単一の配列にインライン化することです。これは、メモリに優しい表現です。
   // 1st token,  2nd token,  3rd token
   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

トークンを整数としてエンコードするためのヘルパーについては、SemanticTokensBuilder参照してください注意: 編集を行う場合、エディターがセマンティックトークンプロバイダーを呼び出すまで、複数の編集が発生する可能性があります。注意: プロバイダーが一時的にセマンティックトークンを計算できない場合は、「Busy」というメッセージでエラーをスローすることにより、これを示すことができます。

パラメーター説明
document: TextDocument
token: CancellationToken
戻り値説明
ProviderResult<SemanticTokens>

ファイル内のすべてのトークンを常に返すのではなく、DocumentSemanticTokensProvider がこのメソッド (provideDocumentSemanticTokensEdits) を実装し、以前に提供されたセマンティックトークンへの増分更新を返すことが可能です。


ドキュメントが変更されたときにトークンがどのように変化するか

provideDocumentSemanticTokens が以前に次のセマンティックトークンを返したと仮定します。

   // 1st token,  2nd token,  3rd token
   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

また、いくつかの編集の後、ファイル内の新しいセマンティックトークンが次のようになっていると仮定します。

   // 1st token,  2nd token,  3rd token
   [  3,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ]

これらの新しいトークンは、以前のトークンに適用された編集の観点から表現できます。

   [  2,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ] // old tokens
   [  3,5,3,0,3,  0,5,4,1,0,  3,2,7,2,0 ] // new tokens

   edit: { start:  0, deleteCount: 1, data: [3] } // replace integer at offset 0 with 3

注意: プロバイダーが SemanticTokensEdits を計算できない場合は、「諦めて」、ドキュメント内のすべてのトークンを再度返すことができます。注意: SemanticTokensEdits のすべての編集には、古い整数配列のインデックスが含まれているため、すべて以前の結果状態を参照しています。

パラメーター説明
document: TextDocument
previousResultId: string
token: CancellationToken
戻り値説明
ProviderResult<SemanticTokens | SemanticTokensEdits>

DocumentSymbol

ドキュメントに表示される変数、クラス、インターフェースなどのプログラミング構造を表します。ドキュメントシンボルは階層構造にすることができ、2 つの範囲を持ちます。1 つはその定義を囲む範囲、もう 1 つはその最も興味深い範囲(たとえば、識別子の範囲)を指す範囲です。

コンストラクター

新しいドキュメントシンボルを作成します。

パラメーター説明
name: string

シンボルの名前。

detail: string

シンボルの詳細。

kind: SymbolKind

シンボルの種類。

range: Range

シンボルの完全な範囲。

selectionRange: Range

表示する必要がある範囲。

戻り値説明
DocumentSymbol

プロパティ

このシンボルの子、たとえば、クラスのプロパティ。

このシンボルの詳細、たとえば、関数のシグネチャ。

このシンボルの種類。

このシンボルの名前。

このシンボルを囲む範囲。先頭/末尾の空白は含まれませんが、コメントやコードなど、その他すべてが含まれます。

このシンボルが選択されたときに選択して表示する必要がある範囲(たとえば、関数の名前)。range に含まれている必要があります。

このシンボルのタグ。

DocumentSymbolProvider

ドキュメントシンボルプロバイダーインターフェースは、拡張機能とシンボルへ移動機能間のコントラクトを定義します。

メソッド

指定されたドキュメントのシンボル情報を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<DocumentSymbol[] | SymbolInformation[]>

ドキュメントハイライトの配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

DocumentSymbolProviderMetadata

ドキュメントシンボルプロバイダーに関するメタデータ。

プロパティ

1 つのドキュメントに対して複数のアウトラインツリーが表示される場合に表示される、人間が読める文字列。

EndOfLine

ドキュメント内の行末文字シーケンスを表します。

列挙メンバー

ラインフィード \n 文字。

キャリッジリターンラインフィード \r\n シーケンス。

EnterAction

Enter キーを押したときの動作を記述します。

プロパティ

改行後、およびインデントの後に追加するテキストを記述します。

インデントの処理方法を記述します。

新しい行のインデントから削除する文字数を記述します。

EnvironmentVariableCollection

拡張機能がプロセス環境に適用できる変更のコレクション。

プロパティ

環境変数コレクションの説明。これは UI での変更を説明するために使用されます。

コレクションをワークスペースにキャッシュし、ウィンドウのリロード間でターミナルに適用する必要があるかどうか。true の場合、ウィンドウがリロードされたときなど、コレクションはすぐにアクティブになります。さらに、この API はキャッシュされたバージョンが存在する場合はそれを返します。コレクションは、拡張機能がアンインストールされたとき、またはコレクションがクリアされたときに無効になります。デフォルトは true です。

メソッド

環境変数に値を追加します。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

追加先の変数。

value: string

変数に追加する値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

このコレクションからすべてのミューテーターをクリアします。

パラメーター説明
戻り値説明
void

変数に対するこのコレクションのミューテーターを削除します。

パラメーター説明
variable: string

ミューテーターを削除する変数。

戻り値説明
void

このコレクション内の各ミューテーターを反復処理します。

パラメーター説明
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any

各エントリに対して実行する関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
void

このコレクションが変数に適用するミューテーターを取得します (存在する場合)。

パラメーター説明
variable: string

ミューテーターを取得する変数。

戻り値説明
EnvironmentVariableMutator

環境変数に値を先頭に追加します。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

先頭に追加する変数。

value: string

変数に先頭に追加する値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

環境変数を値で置き換えます。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

置き換える変数。

value: string

変数と置き換える値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

EnvironmentVariableMutator

環境変数に適用されるミューテーションのタイプとその値。

プロパティ

ミューテーターに適用されるオプション。

変数に対して発生するミューテーションのタイプ。

変数に使用する値。

EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。

プロパティ

プロセスが作成される直前の環境に適用します。デフォルトは false です。

シェル統合スクリプトの環境に適用します。シェル統合が無効になっている場合、または何らかの理由で機能していない場合、これはミューテーターを適用しないことに注意してください。デフォルトは false です。

EnvironmentVariableMutatorType

環境変数に適用できるミューテーションのタイプ。

列挙メンバー

変数の既存の値を置き換えます。

変数の既存の値の末尾に追加します。

変数の既存の値の先頭に追加します。

EnvironmentVariableScope

環境変数コレクションが適用されるスコープオブジェクト。

プロパティ

コレクションを取得する特定のワークスペースフォルダー。

EvaluatableExpression

EvaluatableExpression は、アクティブなデバッガーまたはランタイムによって評価できるドキュメント内の式を表します。この評価の結果は、ツールチップのようなウィジェットに表示されます。範囲のみが指定されている場合、式は基になるドキュメントから抽出されます。オプションの式を使用して、抽出された式をオーバーライドできます。この場合でも、範囲はドキュメント内の範囲を強調表示するために使用されます。

コンストラクター

新しい評価可能な式オブジェクトを作成します。

パラメーター説明
range: Range

評価可能な式が抽出される基になるドキュメント内の範囲。

expression?: string

指定された場合、抽出された式をオーバーライドします。

戻り値説明
EvaluatableExpression

プロパティ

EvaluatableExpressionProvider

評価可能な式プロバイダーインターフェースは、拡張機能とデバッグホバー間のコントラクトを定義します。このコントラクトでは、プロバイダーはドキュメント内の指定された位置に対して評価可能な式を返し、エディターはアクティブなデバッグセッションでこの式を評価し、結果をデバッグホバーに表示します。

メソッド

指定されたドキュメントと位置に対して評価可能な式を提供します。エディターはアクティブなデバッグセッションでこの式を評価し、結果をデバッグホバーに表示します。式は、基になるドキュメント内の範囲によって暗黙的に指定することも、式を明示的に返すことによって指定することもできます。

パラメーター説明
document: TextDocument

デバッグホバーが表示されようとしているドキュメント。

position: Position

デバッグホバーが表示されようとしているドキュメント内の行と文字位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<EvaluatableExpression>

EvaluatableExpression またはそのようなものに解決される Thenable。結果がないことは、undefined または null を返すことで通知できます。

Event<T>

型付きイベントを表します。

引数としてリスナー関数を呼び出すことによってサブスクライブするイベントを表す関数。

item.onDidChange(function(event) {
  console.log('Event happened: ' + event);
});

引数としてリスナー関数を呼び出すことによってサブスクライブするイベントを表す関数。

パラメーター説明
listener: (e: T) => any

イベントが発生したときにリスナー関数が呼び出されます。

thisArgs?: any

イベントリスナーを呼び出すときに使用される this 引数。

disposables?: Disposable[]

追加先の Disposable の配列。

戻り値説明
Disposable

イベントリスナーの登録を解除するディスポーザブル。

EventEmitter<T>

イベントエミッターは、他の人がサブスクライブする Event を作成および管理するために使用できます。1つのエミッターは常に1つのイベントを所有します。

拡張機能内からイベントを提供したい場合、たとえば TextDocumentContentProvider 内や、他の拡張機能にAPIを提供する場合に、このクラスを使用します。

コンストラクター

パラメーター説明
戻り値説明
EventEmitter<T>

プロパティ

イベントリスナーがサブスクライブできるイベント。

メソッド

このオブジェクトを破棄し、リソースを解放します。

パラメーター説明
戻り値説明
void

event のすべてのサブスクライバーに通知します。1つ以上のリスナーの失敗は、この関数呼び出しを失敗させません。

パラメーター説明
data: T

イベントオブジェクト。

戻り値説明
void

Extension<T>

拡張機能を表現します。

Extension のインスタンスを取得するには、getExtension を使用します。

プロパティ

この拡張機能によってエクスポートされたパブリックAPI(activate の戻り値)。この拡張機能がアクティブ化される前にこのフィールドにアクセスすることは無効なアクションです。

拡張機能の種類は、拡張機能がUIを実行する場所で実行されるか、リモート拡張機能ホストを実行する場所で実行されるかを記述します。拡張機能の種類は、拡張機能の package.json ファイルで定義されていますが、remote.extensionKind 設定によって絞り込むこともできます。リモート拡張機能ホストが存在しない場合、値は ExtensionKind.UI です。

この拡張機能を含むディレクトリの絶対ファイルパス。Extension.extensionUri.fsPath の短縮表記(URIスキームに依存しません)。

拡張機能を含むディレクトリのURI。

publisher.name の形式の正規拡張機能識別子。

拡張機能がアクティブ化されている場合は true

拡張機能の package.json の解析済みコンテンツ。

メソッド

この拡張機能をアクティブ化し、そのパブリックAPIを返します。

パラメーター説明
戻り値説明
Thenable<T>

この拡張機能がアクティブ化されたときに解決される Promise。

ExtensionContext

拡張機能コンテキストは、拡張機能にプライベートなユーティリティのコレクションです。

ExtensionContext のインスタンスは、拡張機能の activate 呼び出しへの最初のパラメーターとして提供されます。

プロパティ

このワークスペースの拡張機能のグローバル環境変数コレクションを取得します。これにより、ターミナル環境変数への変更を適用できます。

現在の Extension インスタンス。

拡張機能が実行されているモード。可能な値とシナリオについては、ExtensionMode を参照してください。

拡張機能を含むディレクトリの絶対ファイルパス。ExtensionContext.extensionUri.fsPath の短縮表記(URIスキームに依存しません)。

拡張機能を含むディレクトリのURI。

現在開いている ワークスペース に依存しない状態を格納するメメントオブジェクト。

拡張機能がグローバル状態を格納できる絶対ファイルパス。ディレクトリはディスク上に存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。

キーと値のデータを格納するには、globalState を使用します。

拡張機能がグローバル状態を格納できるディレクトリのURI。ディレクトリはディスク上に存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。

キーと値のデータを格納するには、globalState を使用します。

URIからファイルとフォルダーを読み書きする方法については、こちらも参照してください workspace.fs

この拡張機能が言語モデルをどのように使用できるかに関する情報を保持するオブジェクト。

こちらも参照してください LanguageModelChat.sendRequest

拡張機能がログファイルを作成できるディレクトリの絶対ファイルパス。ディレクトリはディスク上に存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。

  • deprecated - 代わりに logUri を使用してください。

拡張機能がログファイルを作成できるディレクトリのURI。ディレクトリはディスク上に存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。

URIからファイルとフォルダーを読み書きする方法については、こちらも参照してください workspace.fs

現在開いている ワークスペース に依存しない状態を格納するシークレットストレージオブジェクト。

拡張機能がプライベート状態を格納できるワークスペース固有のディレクトリの絶対ファイルパス。ディレクトリはディスク上に存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。

キーと値のデータを格納するには、workspaceState または globalState を使用します。

  • deprecated - 代わりに storageUri を使用してください。

拡張機能がプライベート状態を格納できるワークスペース固有のディレクトリのURI。ディレクトリは存在しない可能性があり、作成は拡張機能次第です。ただし、親ディレクトリは存在することが保証されています。ワークスペースもフォルダーも開かれていない場合、値は undefined です。

キーと値のデータを格納するには、workspaceState または globalState を使用します。

URIからファイルとフォルダーを読み書きする方法については、こちらも参照してください workspace.fs

ディスポーザブルを追加できる配列。この拡張機能が非アクティブ化されると、ディスポーザブルは破棄されます。

注意 非同期の dispose 関数は待機されないことに注意してください。

現在開いている ワークスペース のコンテキストで状態を格納するメメントオブジェクト。

メソッド

拡張機能に含まれるリソースの絶対パスを取得します。

注意 絶対URIは Uri.joinPath および extensionUri を介して構築できます。例:vscode.Uri.joinPath(context.extensionUri, relativePath);

パラメーター説明
relativePath: string

拡張機能に含まれるリソースへの相対パス。

戻り値説明
string

リソースの絶対パス。

ExtensionKind

リモートウィンドウでは、拡張機能の種類は、拡張機能がUI(ウィンドウ)を実行する場所で実行されるか、リモートで実行されるかを記述します。

列挙メンバー

拡張機能はUIを実行する場所で実行されます。

拡張機能はリモート拡張機能ホストを実行する場所で実行されます。

ExtensionMode

ExtensionMode は ExtensionContext で提供され、特定の拡張機能が実行されているモードを示します。

列挙メンバー

拡張機能は、エディターに通常どおり(たとえば、マーケットプレイスまたはVSIXから)インストールされています。

拡張機能は、エディターの起動時に提供される --extensionDevelopmentPath から実行されています。

拡張機能は --extensionTestsPath から実行されており、拡張機能ホストはユニットテストを実行しています。

ExtensionTerminalOptions

仮想プロセスターミナルが使用する必要があるオプションを記述する値オブジェクト。

プロパティ

ターミナルのアイコン ThemeColor。最高のコントラストとテーマ間の一貫性のために、標準の terminal.ansi* テーマキーが推奨されます。

ターミナルのアイコンパスまたは ThemeIcon

再起動および再読み込み時のデフォルトのターミナル永続化をオプトアウトします。これは、terminal.integrated.enablePersistentSessions が有効になっている場合にのみ有効になります。

UIでターミナルを表すために使用される人間が読める文字列。

拡張機能がターミナルを制御できるようにする Pseudoterminal の実装。

FileChangeEvent

ファイルシステムのプロバイダーがファイル変更を通知するために使用する必要があるイベント。

プロパティ

変更の種類。

変更されたファイルのURI。

FileChangeType

ファイル変更タイプの列挙。

列挙メンバー

ファイルのコンテンツまたはメタデータが変更されました。

ファイルが作成されました。

ファイルが削除されました。

FileCoverage

ファイルのカバレッジメタデータが含まれています。

静的

カバレッジの詳細から入力されたカウントで FileCoverage インスタンスを作成します。

パラメーター説明
uri: Uri

カバレッジ対象のファイルURI

details: readonly FileCoverageDetail[]
戻り値説明
FileCoverage

コンストラクター

パラメーター説明
uri: Uri

カバレッジ対象のファイルURI

statementCoverage: TestCoverageCount

ステートメントカバレッジ情報。レポーターがステートメントカバレッジ情報を提供しない場合、代わりにこれを使用して行カバレッジを表すことができます。

branchCoverage?: TestCoverageCount

ブランチカバレッジ情報

declarationCoverage?: TestCoverageCount

宣言カバレッジ情報

includesTests?: TestItem[]

このカバレッジレポートに含まれるテストケース。 FileCoverage.includesTests を参照してください

戻り値説明
FileCoverage

プロパティ

ブランチカバレッジ情報。

宣言カバレッジ情報。レポーターと言語によっては、関数、メソッド、名前空間などの型である場合があります。

このファイルのカバレッジを生成した テストケース のリスト。設定されている場合、詳細なカバレッジ情報を取得するために TestRunProfile.loadDetailedCoverageForTest も定義する必要があります。

ステートメントカバレッジ情報。レポーターがステートメントカバレッジ情報を提供しない場合、代わりにこれを使用して行カバレッジを表すことができます。

ファイルURI。

FileCoverageDetail

TestRunProfile.loadDetailedCoverage から返されるカバレッジの詳細。

FileCreateEvent

ファイルの作成後に発生するイベント。

プロパティ

作成されたファイル。

FileDecoration

ファイル装飾は、ファイルとともにレンダリングできるメタデータを表します。

コンストラクター

新しい装飾を作成します。

パラメーター説明
badge?: string

装飾を表す文字。

tooltip?: string

装飾のツールチップ。

color?: ThemeColor

装飾の色。

戻り値説明
FileDecoration

プロパティ

この装飾を表す非常に短い文字列。

この装飾の色。

この装飾を親に伝播する必要があることを表すフラグ。

この装飾の人間が読めるツールチップ。

FileDecorationProvider

装飾プロバイダーインターフェースは、拡張機能とファイル装飾間のコントラクトを定義します。

イベント

1つまたは複数のファイルの装飾が変更されたことを通知するオプションのイベント。

注意 このイベントは、子に関する情報を伝播するために使用する必要があります。

こちらも参照してください EventEmitter

メソッド

指定されたURIの装飾を提供します。

注意 この関数は、ファイルがUIでレンダリングされるときにのみ呼び出されます。これは、子孫からの上向きに伝播する装飾は、onDidChangeFileDecorations イベントを介してエディターに通知する必要があることを意味します。

パラメーター説明
uri: Uri

装飾を提供するファイルのURI。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<FileDecoration>

装飾、またはそのような装飾に解決される Thenable。

FileDeleteEvent

ファイルの削除後に発生するイベント。

プロパティ

削除されたファイル。

FilePermission

ファイルの権限。

列挙メンバー

ファイルは読み取り専用です。

注意: isReadonly: true オプションで登録された FileSystemProvider からのすべての FileStat は、FilePermission.Readonly が設定されているかのように暗黙的に処理されます。結果として、一部の FileStat が読み取り専用ではない読み取り専用ファイルシステムプロバイダーを登録することはできません。

FileRenameEvent

ファイルの名前が変更された後に発生するイベント。

プロパティ

名前が変更されたファイル。

FileStat

FileStat 型は、ファイルに関するメタデータを表します

プロパティ

1970年1月1日 00:00:00 UTCからの経過ミリ秒単位の作成タイムスタンプ。

1970年1月1日 00:00:00 UTCからの経過ミリ秒単位の変更タイムスタンプ。

注意: ファイルが変更された場合、前の値から進んだ更新された mtime を提供することが重要です。そうしないと、たとえば、エディターで更新されたファイルコンテンツが表示されない最適化が適用される可能性があります。

ファイルの権限。たとえば、ファイルが読み取り専用かどうか。

注意: この値はビットマスクである可能性があります。たとえば、FilePermission.Readonly | FilePermission.Other

バイト単位のサイズ。

注意: ファイルが変更された場合、更新された size を提供することが重要です。そうしないと、たとえば、エディターで更新されたファイルコンテンツが表示されない最適化が適用される可能性があります。

ファイルのタイプ。たとえば、通常のファイル、ディレクトリ、またはファイルへのシンボリックリンク。

注意: この値はビットマスクである可能性があります。たとえば、FileType.File | FileType.SymbolicLink

FileSystem

ファイルシステムインターフェースは、エディターの組み込みおよびコントリビューションされた ファイルシステムプロバイダー を公開します。これにより、拡張機能はローカルディスクのファイルと、リモート拡張機能ホストやftpサーバーなどのリモートロケーションのファイルを操作できます。

注意 このインターフェースのインスタンスは、workspace.fs として利用可能です。

メソッド

ファイルまたはフォルダーをコピーします。

パラメーター説明
source: Uri

既存のファイル。

target: Uri

宛先ロケーション。

options?: {overwrite: boolean}

既存のファイルを上書きするかどうかを定義します。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

新しいディレクトリを作成します(新しいファイルは write 呼び出しを介して作成されることに注意してください)。

注意 不足しているディレクトリは自動的に作成されます。たとえば、この呼び出しには mkdirp セマンティクスがあります。

パラメーター説明
uri: Uri

新しいフォルダーのURI。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

ファイルを削除します。

パラメーター説明
uri: Uri

削除されるリソース。

options?: {recursive: boolean, useTrash: boolean}

ゴミ箱を使用するかどうか、およびフォルダーの削除が再帰的かどうかを定義します

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

指定されたファイルシステムがファイルの書き込みをサポートしているかどうかを確認します。

ファイルシステムが書き込みをサポートしているからといって、書き込みが常に成功するとは限らないことに注意してください。ファイルの書き込みを妨げる可能性のある権限の問題やその他のエラーがある場合があります。

パラメーター説明
scheme: string

ファイルシステムのスキーム。たとえば、file または git

戻り値説明
boolean

ファイルシステムが書き込みをサポートしている場合は true、書き込みをサポートしていない(つまり、読み取り専用)場合は false、エディターがファイルシステムについて知らない場合は undefined

ディレクトリ のすべてのエントリを取得します。

パラメーター説明
uri: Uri

フォルダーのURI。

戻り値説明
Thenable<Array<[string, FileType]>>

名前/タイプタプルの配列、またはそのような配列に解決される Thenable。

ファイルの内容全体を読み取ります。

パラメーター説明
uri: Uri

ファイルのURI。

戻り値説明
Thenable<Uint8Array>

バイト配列、またはそのような配列に解決される Thenable。

ファイルまたはフォルダーの名前を変更します。

パラメーター説明
source: Uri

既存のファイル。

target: Uri

新しい場所。

options?: {overwrite: boolean}

既存のファイルを上書きするかどうかを定義します。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

ファイルに関するメタデータを取得します。

パラメーター説明
uri: Uri

メタデータを取得するファイルの URI。

戻り値説明
Thenable<FileStat>

ファイルに関するファイルメタデータ。

ファイルの全内容を置き換えて、データをファイルに書き込みます。

パラメーター説明
uri: Uri

ファイルのURI。

content: Uint8Array

ファイルに書き込む新しいコンテンツ。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

FileSystemError

ファイルシステムプロバイダーがエラーを通知するために使用する必要がある型。

このクラスには、ファイルまたはフォルダーが存在しない場合の FileNotFound など、一般的なエラーケースのファクトリメソッドがあります。次のように使用します: throw vscode.FileSystemError.FileNotFound(someUri);

静的

ファイルまたはフォルダーが既に存在することを示すエラーを作成します。たとえば、ファイルを作成するが、上書きしない場合などです。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

ファイルがフォルダーであることを示すエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

ファイルがフォルダーではないことを示すエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

ファイルまたはフォルダーが見つからなかったことを示すエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

操作に必要な権限がないことを示すエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

ファイルシステムが利用できないか、要求を完了するにはビジーすぎることを示すエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

コンストラクター

新しいファイルシステムエラーを作成します。

パラメーター説明
messageOrUri?: string | Uri

メッセージまたは URI。

戻り値説明
FileSystemError

プロパティ

このエラーを識別するコード。

可能な値は、FileNotFound などのエラーの名前、または指定されていないエラーの場合は Unknown です。

FileSystemProvider

ファイルシステムプロバイダーは、エディターがファイルとフォルダーの読み取り、書き込み、検出、および管理に必要なものを定義します。これにより、拡張機能は ftp サーバーなどのリモート場所からファイルを提供し、それらをエディターにシームレスに統合できます。

  • 注 1: ファイルシステムプロバイダー API は URI で動作し、階層パスを想定しています。たとえば、foo:/my/pathfoo:/my/ の子であり、foo:/my/path/deeper の親です。
  • 注 2: ファイルまたはフォルダーにアクセスすると、アクティベーションイベント onFileSystem:<scheme> が発生します。
  • 注 3: 「ファイル」という単語は、フォルダー、シンボリックリンク、通常のファイルなど、すべての 種類 のファイルを指すためによく使用されます。

イベント

リソースが作成、変更、または削除されたことを通知するイベント。このイベントは、このプロバイダーのクライアントによって 監視 されているリソースに対して発生する必要があります。

注: 変更されたファイルのメタデータは、stat の以前の値から進んだ更新された mtime と、正しい size 値を提供することが重要です。そうしないと、たとえばエディターで変更が表示されない最適化が適用される可能性があります。

メソッド

ファイルまたはフォルダーをコピーします。この関数の実装はオプションですが、コピー操作が高速化されます。

  • throws - source が存在しない場合、FileNotFound
  • throws - destination の親が存在しない場合、FileNotFound。たとえば、mkdirp ロジックは必要ありません。
  • throws - destination が存在し、overwrite オプションが true でない場合、FileExists
パラメーター説明
source: Uri

既存のファイル。

destination: Uri

宛先ロケーション。

options: {overwrite: boolean}

既存のファイルを上書きするかどうかを定義します。

戻り値説明
void | Thenable<void>

新しいディレクトリを作成します(新しいファイルは write 呼び出しを介して作成されることに注意してください)。

  • throws - uri の親が存在しない場合、FileNotFound。たとえば、mkdirp ロジックは必要ありません。
  • throws - uri が既に存在する場合、FileExists
パラメーター説明
uri: Uri

新しいフォルダーのURI。

戻り値説明
void | Thenable<void>

ファイルを削除します。

パラメーター説明
uri: Uri

削除されるリソース。

options: {recursive: boolean}

フォルダーの削除が再帰的かどうかを定義します。

戻り値説明
void | Thenable<void>

ディレクトリ のすべてのエントリを取得します。

パラメーター説明
uri: Uri

フォルダーのURI。

戻り値説明
Array<[string, FileType]> | Thenable<Array<[string, FileType]>>

名前/タイプタプルの配列、またはそのような配列に解決される Thenable。

ファイルの内容全体を読み取ります。

パラメーター説明
uri: Uri

ファイルのURI。

戻り値説明
Uint8Array | Thenable<Uint8Array>

バイト配列、またはそのような配列に解決される Thenable。

ファイルまたはフォルダーの名前を変更します。

  • throws - oldUri が存在しない場合、FileNotFound
  • throws - newUri の親が存在しない場合、FileNotFound。たとえば、mkdirp ロジックは必要ありません。
  • throws - newUri が存在し、overwrite オプションが true でない場合、FileExists
パラメーター説明
oldUri: Uri

既存のファイル。

newUri: Uri

新しい場所。

options: {overwrite: boolean}

既存のファイルを上書きするかどうかを定義します。

戻り値説明
void | Thenable<void>

ファイルに関するメタデータを取得します。

シンボリックリンクのメタデータは、参照先のファイルのメタデータである必要があることに注意してください。それでも、SymbolicLink 型は、実際の型 (FileType.SymbolicLink | FileType.Directory など) に加えて使用する必要があります。

パラメーター説明
uri: Uri

メタデータを取得するファイルの URI。

戻り値説明
FileStat | Thenable<FileStat>

ファイルに関するファイルメタデータ。

uri で示されるファイルまたはフォルダー内のファイル変更イベントをサブスクライブします。フォルダーの場合、オプション recursive は、サブフォルダー、サブサブフォルダーなどもファイル変更を監視する必要があるかどうかを示します。recursive: false の場合、フォルダーの直接の子であるファイルへの変更のみがイベントをトリガーする必要があります。

excludes 配列は、ファイル監視から除外する必要があるパスを示すために使用されます。これは通常、ユーザーが構成可能な files.watcherExclude 設定から派生します。各エントリは次のいずれかになります。

  • 除外する絶対パス
  • 除外する相対パス (例: build/output)
  • 単純なグロブパターン (例: **/build, output/**)

これらのルールに従って、すべての変更に対して onDidChangeFile を呼び出すのは、ファイルシステムプロバイダーのジョブです。指定された除外のいずれかに一致するファイルに対してイベントを発行しないでください。

パラメーター説明
uri: Uri

監視するファイルまたはフォルダーの URI。

options: {excludes: readonly string[], recursive: boolean}

ウォッチを構成します。

戻り値説明
Disposable

プロバイダーに uri の監視を停止するように指示する Disposable。

ファイルの全内容を置き換えて、データをファイルに書き込みます。

  • throws - uri が存在せず、create が設定されていない場合、FileNotFound
  • throws - uri の親が存在せず、create が設定されている場合、FileNotFound。たとえば、mkdirp ロジックは必要ありません。
  • throws - uri が既に存在し、create が設定されているが、overwrite が設定されていない場合、FileExists
パラメーター説明
uri: Uri

ファイルのURI。

content: Uint8Array

ファイルに書き込む新しいコンテンツ。

options: {create: boolean, overwrite: boolean}

ファイルが存在しない場合に作成する必要があるかどうかを定義します。

戻り値説明
void | Thenable<void>

FileSystemWatcher

ファイルシステムウォッチャーは、ディスク上または他の FileSystemProvider からのファイルとフォルダーの変更について通知します。

FileSystemWatcher のインスタンスを取得するには、createFileSystemWatcher を使用します。

イベント

ファイル/フォルダーの変更時に発生するイベント。

ファイル/フォルダーの作成時に発生するイベント。

ファイル/フォルダーの削除時に発生するイベント。

プロパティ

このファイルシステムウォッチャーが、ファイルシステムの変更イベントを無視するように作成されている場合は true。

このファイルシステムウォッチャーが、ファイルシステムの作成イベントを無視するように作成されている場合は true。

このファイルシステムウォッチャーが、ファイルシステムの削除イベントを無視するように作成されている場合は true。

メソッド

このオブジェクトを破棄します。

パラメーター説明
戻り値説明
any

FileType

ファイルタイプの列挙。型 FileDirectory はシンボリックリンクにすることもできます。その場合は、FileType.File | FileType.SymbolicLink および FileType.Directory | FileType.SymbolicLink を使用します。

列挙メンバー

ファイルタイプが不明です。

通常ファイル。

ディレクトリ。

ファイルへのシンボリックリンク。

FileWillCreateEvent

ファイルが作成されようとしているときに発生するイベント。

ファイルが作成される前にワークスペースに変更を加えるには、waitUntil 関数を ワークスペース編集 に解決される Thenable で呼び出します。

プロパティ

作成されようとしているファイル。

キャンセルトークン。

メソッド

イベントを一時停止し、ワークスペース編集 を適用できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができ、非同期的に呼び出すことはできません。

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
パラメーター説明
thenable: Thenable<WorkspaceEdit>

保存を遅延させる Thenable。

戻り値説明
void

提供された Thenable が解決されるまでイベントを一時停止できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができます。

パラメーター説明
thenable: Thenable<any>

保存を遅延させる Thenable。

戻り値説明
void

FileWillDeleteEvent

ファイルが削除されようとしているときに発生するイベント。

ファイルが削除される前にワークスペースに変更を加えるには、waitUntil 関数を ワークスペース編集 に解決される Thenable で呼び出します。

プロパティ

削除されようとしているファイル。

キャンセルトークン。

メソッド

イベントを一時停止し、ワークスペース編集 を適用できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができ、非同期的に呼び出すことはできません。

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
パラメーター説明
thenable: Thenable<WorkspaceEdit>

保存を遅延させる Thenable。

戻り値説明
void

提供された Thenable が解決されるまでイベントを一時停止できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができます。

パラメーター説明
thenable: Thenable<any>

保存を遅延させる Thenable。

戻り値説明
void

FileWillRenameEvent

ファイルの名前が変更されようとしているときに発生するイベント。

ファイルの名前が変更される前にワークスペースに変更を加えるには、waitUntil 関数を ワークスペース編集 に解決される Thenable で呼び出します。

プロパティ

名前が変更されようとしているファイル。

キャンセルトークン。

メソッド

イベントを一時停止し、ワークスペース編集 を適用できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができ、非同期的に呼び出すことはできません。

workspace.onWillCreateFiles(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
パラメーター説明
thenable: Thenable<WorkspaceEdit>

保存を遅延させる Thenable。

戻り値説明
void

提供された Thenable が解決されるまでイベントを一時停止できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができます。

パラメーター説明
thenable: Thenable<any>

保存を遅延させる Thenable。

戻り値説明
void

FoldingContext

折りたたみコンテキスト (将来の使用のため)

FoldingRange

行ベースの折りたたみ範囲。有効にするには、開始行と終了行が 0 より大きく、ドキュメント内の行数より小さくなければなりません。無効な範囲は無視されます。

コンストラクター

新しい折りたたみ範囲を作成します。

パラメーター説明
start: number

折りたたまれた範囲の開始行。

end: number

折りたたまれた範囲の終了行。

kind?: FoldingRangeKind

折りたたみ範囲の種類。

戻り値説明
FoldingRange

プロパティ

折りたたむ範囲の 0 ベースの終了行。折りたたまれた領域は、行の最後の文字で終わります。有効にするには、end は 0 以上で、ドキュメント内の行数より小さくなければなりません。

FoldingRangeKind (例: CommentRegion) の種類を記述します。種類は、折りたたみ範囲を分類し、「すべてのコメントを折りたたむ」などのコマンドで使用されます。すべての種類の列挙については、FoldingRangeKind を参照してください。設定されていない場合、範囲は構文要素から生成されます。

折りたたむ範囲の 0 ベースの開始行。折りたたまれた領域は、行の最後の文字の後に開始されます。有効にするには、end は 0 以上で、ドキュメント内の行数より小さくなければなりません。

FoldingRangeKind

特定の折りたたみ範囲の種類の列挙。種類は FoldingRange のオプションのフィールドであり、コメントから生成された範囲などの特定の折りたたみ範囲を区別するために使用されます。種類は、「すべてのコメントを折りたたむ」または「すべてのリージョンを折りたたむ」などのコマンドで使用されます。範囲に種類が設定されていない場合、範囲はコメント、インポート、またはリージョンマーカー以外の構文要素から生成されます。

列挙メンバー

コメントを表す折りたたみ範囲の種類。

インポートを表す折りたたみ範囲の種類。

#region#endregion などの折りたたみマーカーから生成されたリージョンを表す折りたたみ範囲の種類。

FoldingRangeProvider

折りたたみ範囲プロバイダーインターフェイスは、拡張機能とエディターの 折りたたみ の間の契約を定義します。

イベント

このプロバイダーからの折りたたみ範囲が変更されたことを通知するオプションのイベント。

メソッド

プロバイダーが参加したくない場合、またはキャンセルされた場合は、折りたたみ範囲のリスト、または null と undefined を返します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

context: FoldingContext

追加のコンテキスト情報 (将来の使用のため)

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<FoldingRange[]>

FormattingOptions

整形で使用する必要があるオプションを記述する値オブジェクト。

プロパティ

タブよりもスペースを優先します。

スペースでのタブのサイズ。

FunctionBreakpoint

関数名で指定されたブレークポイント。

コンストラクター

新しい関数ブレークポイントを作成します。

パラメーター説明
functionName: string
enabled?: boolean
condition?: string
hitCondition?: string
logMessage?: string
戻り値説明
FunctionBreakpoint

プロパティ

条件付きブレークポイントのオプションの式。

ブレークポイントが有効かどうか。

このブレークポイントがアタッチされている関数の名前。

ブレークポイントのヒット数を無視する方法を制御するオプションの式。

ブレークポイントの一意の ID。

このブレークポイントがヒットしたときにログに記録されるオプションのメッセージ。{} 内の埋め込み式は、デバッグアダプターによって補間されます。

GlobalEnvironmentVariableCollection

拡張機能がプロセス環境に適用できる変更のコレクション。すべてのスコープに適用されます。

プロパティ

環境変数コレクションの説明。これは UI での変更を説明するために使用されます。

コレクションをワークスペースにキャッシュし、ウィンドウのリロード間でターミナルに適用する必要があるかどうか。true の場合、ウィンドウがリロードされたときなど、コレクションはすぐにアクティブになります。さらに、この API はキャッシュされたバージョンが存在する場合はそれを返します。コレクションは、拡張機能がアンインストールされたとき、またはコレクションがクリアされたときに無効になります。デフォルトは true です。

メソッド

環境変数に値を追加します。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

追加先の変数。

value: string

変数に追加する値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

このコレクションからすべてのミューテーターをクリアします。

パラメーター説明
戻り値説明
void

変数に対するこのコレクションのミューテーターを削除します。

パラメーター説明
variable: string

ミューテーターを削除する変数。

戻り値説明
void

このコレクション内の各ミューテーターを反復処理します。

パラメーター説明
callback: (variable: string, mutator: EnvironmentVariableMutator, collection: EnvironmentVariableCollection) => any

各エントリに対して実行する関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
void

このコレクションが変数に適用するミューテーターを取得します (存在する場合)。

パラメーター説明
variable: string

ミューテーターを取得する変数。

戻り値説明
EnvironmentVariableMutator

拡張機能のスコープ固有の環境変数コレクションを取得します。これにより、指定されたスコープ内でのみターミナル環境変数を変更でき、グローバルコレクションに追加(およびその後)で適用されます。

このメソッドを通じて取得された各オブジェクトは分離されており、グローバルコレクションを含む他のスコープのオブジェクトには影響を与えません。

パラメーター説明
scope: EnvironmentVariableScope

環境変数コレクションが適用されるスコープ。

スコープパラメーターが省略された場合、そのパラメーターに関連するすべてのスコープに適用可能なコレクションが返されます。たとえば、「workspaceFolder」パラメーターが指定されていない場合、すべてのワークスペースフォルダーに適用されるコレクションが返されます。

戻り値説明
EnvironmentVariableCollection

渡されたスコープの環境変数コレクション。

環境変数に値を先頭に追加します。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

先頭に追加する変数。

value: string

変数に先頭に追加する値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

環境変数を値で置き換えます。

拡張機能は 1 つの変数に対して 1 つの変更のみを行うことができることに注意してください。したがって、これは replace、append、または prepend の以前の呼び出しをすべて上書きします。

パラメーター説明
variable: string

置き換える変数。

value: string

変数と置き換える値。

options?: EnvironmentVariableMutatorOptions

ミューテーターに適用されるオプション。オプションが指定されていない場合、これは { applyAtProcessCreation: true } にデフォルト設定されます。

戻り値説明
void

GlobPattern

ファイルパスと照合するファイルグロブパターン。これは、グロブパターン文字列(**/*.{ts,js}*.{ts,js} など)または相対パターンのいずれかになります。

グロブパターンは、次の構文を持つことができます

  • * パスセグメント内の 0 個以上の文字に一致します
  • ? パスセグメント内の 1 文字に一致します
  • ** パスセグメントの数に関係なく(なしを含む)一致します
  • {} 条件をグループ化します(例:**/*.{ts,js} はすべての TypeScript および JavaScript ファイルに一致します)
  • [] パスセグメント内で一致する文字の範囲を宣言します(例:example.[0-9]example.0example.1、...に一致します)
  • [!...] パスセグメント内で一致する文字の範囲を否定します(例:example.[!0-9]example.aexample.b に一致しますが、example.0 には一致しません)

注:バックスラッシュ(``)はグロブパターン内では無効です。照合する既存のファイルパスがある場合は、バックスラッシュをスラッシュに変換する相対パターンのサポートを使用することを検討してください。それ以外の場合は、グロブパターンを作成するときに、バックスラッシュを必ずスラッシュに変換してください。

Hover

ホバーは、シンボルまたは単語の追加情報を表します。ホバーは、ツールチップのようなウィジェットにレンダリングされます。

コンストラクター

新しいホバーオブジェクトを作成します。

パラメーター説明
contents: MarkdownString | MarkedString | Array<MarkdownString | MarkedString>

ホバーの内容。

range?: Range

ホバーが適用される範囲。

戻り値説明
Hover

プロパティ

このホバーの内容。

このホバーが適用される範囲。省略した場合、エディターは現在の位置の範囲または現在の位置自体を使用します。

HoverProvider

ホバープロバイダーインターフェースは、拡張機能とホバー機能間の契約を定義します。

メソッド

指定された位置とドキュメントのホバーを提供します。同じ位置にある複数のホバーは、エディターによってマージされます。ホバーは範囲を持つことができ、省略すると、位置の単語範囲がデフォルトになります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Hover>

ホバー、またはそのようなものに解決される Thenable。結果がない場合は、undefined または null を返すことで通知できます。

IconPath

UI のアイコンを表します。これは、uri、ライトテーマとダークテーマ用の個別の uri、またはテーマアイコンのいずれかです。

ImplementationProvider

実装プロバイダーインターフェースは、拡張機能と実装へ移動機能間の契約を定義します。

メソッド

指定された位置とドキュメントにあるシンボルの実装を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Definition | LocationLink[]>

定義、または定義に解決されるThenable。結果がないことは、undefinedまたはnullを返すことで通知できます。

IndentAction

Enter キーを押したときのインデントの処理を記述します。

列挙メンバー

新しい行を挿入し、前の行のインデントをコピーします。

新しい行を挿入し、1 回インデントします(前の行のインデントを基準)。

2 つの新しい行を挿入します

  • カーソルを保持する最初の行はインデントされます
  • 2 番目の行は同じインデントレベルになります

新しい行を挿入し、1 回アウトデントします(前の行のインデントを基準)。

IndentationRule

言語のインデント規則を記述します。

プロパティ

行がこのパターンに一致する場合、その後のすべての行は(別の規則が一致するまで)1 回インデント解除される必要があります。

行がこのパターンに一致する場合、その後のすべての行は(別の規則が一致するまで)1 回インデントされる必要があります。

行がこのパターンに一致する場合、その後の次の行のみが 1 回インデントされる必要があります。

行がこのパターンに一致する場合、そのインデントは変更されるべきではなく、他の規則に対して評価されるべきではありません。

InlayHint

インレイヒント情報。

コンストラクター

新しいインレイヒントを作成します。

パラメーター説明
position: Position

ヒントの位置。

label: string | InlayHintLabelPart[]

ヒントのラベル。

kind?: InlayHintKind

ヒントの種類

戻り値説明
InlayHint

プロパティ

このヒントの種類。インレイヒントの種類は、このインレイヒントの外観を定義します。

このヒントのラベル。人間が読める文字列またはラベルパーツの配列。

:文字列とラベルパーツのどちらも空にすることはできません。

ヒントの前にパディングをレンダリングします。パディングは、ヒント自体の背景色ではなく、エディターの背景色を使用します。つまり、パディングを使用して、インレイヒントを視覚的に整列/分離できます。

ヒントの後にパディングをレンダリングします。パディングは、ヒント自体の背景色ではなく、エディターの背景色を使用します。つまり、パディングを使用して、インレイヒントを視覚的に整列/分離できます。

このヒントの位置。

このインレイヒントを受け入れるときに実行されるオプションのテキスト編集。インレイヒントを受け入れるためのデフォルトのジェスチャーはダブルクリックです。

:編集は、インレイヒント(またはその最も近いバリアント)がドキュメントの一部になり、インレイヒント自体が不要になるようにドキュメントを変更することが期待されます。

:このプロパティは、インレイヒントの解決中に後で設定できます。

この項目にカーソルを合わせたときのツールチップテキスト。

:このプロパティは、インレイヒントの解決中に後で設定できます。

InlayHintKind

インレイヒントの種類。

インラインヒントの種類は、その外観を定義します。たとえば、対応する前景色と背景色が使用されます。

列挙メンバー

型注釈のためのインレイヒント。

パラメーターのためのインレイヒント。

InlayHintLabelPart

インレイヒントラベルパーツは、インレイヒントのインタラクティブで複合的なラベルを可能にします。

コンストラクター

新しいインレイヒントラベルパーツを作成します。

パラメーター説明
value: string

パーツの値。

戻り値説明
InlayHintLabelPart

プロパティ

このラベルパーツのオプションのコマンド。

エディターは、コマンド付きのパーツをクリック可能なリンクとしてレンダリングします。ラベルパーツがlocationcommandを定義すると、コマンドがコンテキストメニューに追加されます。

:このプロパティは、インレイヒントの解決中に後で設定できます。

このラベルパーツを表すオプションのソースコードの場所

エディターは、ホバーとコードナビゲーション機能にこの場所を使用します。このパーツは、指定された場所にあるシンボルの定義(必ずしも場所自体ではない)に解決されるクリック可能なリンクになり、指定された場所に表示されるホバーが表示され、さらにコードナビゲーションコマンドを含むコンテキストメニューが表示されます。

:このプロパティは、インレイヒントの解決中に後で設定できます。

このラベルパーツにカーソルを合わせたときのツールチップテキスト。

:このプロパティは、インレイヒントの解決中に後で設定できます。

このラベルパーツの値。

InlayHintsProvider<T>

インレイヒントプロバイダーインターフェースは、拡張機能とインレイヒント機能間の契約を定義します。

イベント

このプロバイダーからのインレイヒントが変更されたことを通知するオプションのイベント。

メソッド

指定された範囲とドキュメントのインレイヒントを提供します。

:指定された範囲に含まれていないインレイヒントは無視されます。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

range: Range

インレイヒントを計算する必要がある範囲。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

インレイヒントの配列、またはそのようなものに解決される Thenable。

インレイヒントが与えられた場合、ツールチップテキスト編集、または完全なラベルパーツを入力します。

:エディターは、インレイヒントを最大で 1 回解決します。

パラメーター説明
hint: T

インレイヒント。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決されたインレイヒント、またはそのようなものに解決される Thenable。与えられた item を返してもかまいません。結果が返されない場合、与えられた item が使用されます。

InlineCompletionContext

インライン補完が要求されたコンテキストに関する情報を提供します。

プロパティ

オートコンプリートウィジェットが表示されている場合に、現在選択されている項目に関する情報を提供します。

設定されている場合、提供されるインライン補完は、選択された項目のテキストを拡張し、同じ範囲を使用する必要があります。そうしないと、プレビューとして表示されません。例として、ドキュメントテキストが console. で、選択された項目がドキュメント内の . を置き換える .log の場合、インライン補完も . を置き換え、.log で始まる必要があります(例: .log() )。

インライン補完プロバイダーは、選択された項目が変更されるたびに再度要求されます。

インライン補完がどのようにトリガーされたかを記述します。

InlineCompletionItem

インライン補完項目は、入力中のテキストを補完するためにインラインで提案されるテキストスニペットを表します。

参照InlineCompletionItemProvider.provideInlineCompletionItems

コンストラクター

新しいインライン補完項目を作成します。

パラメーター説明
insertText: string | SnippetString

範囲を置き換えるテキスト。

range?: Range

置き換える範囲。設定されていない場合、要求された位置の単語が使用されます。

command?: Command

この補完を挿入に実行されるオプションのコマンド

戻り値説明
InlineCompletionItem

プロパティ

この補完を挿入に実行されるオプションのコマンド

このインライン補完を表示するかどうかを決定するために使用されるテキスト。 falsy の場合、InlineCompletionItem.insertText が使用されます。

置き換えるテキストがフィルターテキストのプレフィックスである場合、インライン補完が表示されます。

範囲を置き換えるテキスト。設定する必要があります。プレビューと受け入れ操作の両方に使用されます。

置き換える範囲。同じ行の先頭と末尾である必要があります。

ユーザーが入力したテキストを削除した場合に、より良いエクスペリエンスを提供するために、挿入よりも置換を優先します。

InlineCompletionItemProvider

インライン補完項目プロバイダーインターフェースは、拡張機能とインライン補完機能間の契約を定義します。

プロバイダーは、ユーザーのジェスチャーによって明示的に、または入力時に暗黙的に補完を求められます。

メソッド

指定された位置とドキュメントのインライン補完項目を提供します。インライン補完が有効になっている場合、ユーザーが入力を停止するたびにこのメソッドが呼び出されます。また、ユーザーが明示的にインライン補完をトリガーした場合、または明示的に次のインライン補完または前のインライン補完を要求した場合にも呼び出されます。その場合、利用可能なすべてのインライン補完を返す必要があります。 context.triggerKind を使用して、これらのシナリオを区別できます。

パラメーター説明
document: TextDocument

インライン補完が要求されているドキュメント。

position: Position

インライン補完が要求されている位置。

context: InlineCompletionContext

追加情報を含むコンテキストオブジェクト。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<InlineCompletionList | InlineCompletionItem[]>

補完項目の配列、または補完項目の配列に解決される Thenable。

InlineCompletionList

インライン補完項目のエディターに表示されるコレクションを表します。

コンストラクター

インライン補完項目の新しいリストを作成します。

パラメーター説明
items: InlineCompletionItem[]
戻り値説明
InlineCompletionList

プロパティ

インライン補完項目。

InlineCompletionTriggerKind

インライン補完プロバイダーがどのようにトリガーされたかを記述します。

列挙メンバー

補完は、ユーザーのジェスチャーによって明示的にトリガーされました。複数の補完項目を返して、それらを循環できるようにします。

補完は、編集中に自動的にトリガーされました。この場合は、単一の補完項目を返すだけで十分です。

InlineValue

インライン値情報は、さまざまな方法で提供できます

  • テキスト値として直接(InlineValueText クラス)。
  • 変数ルックアップに使用する名前として(InlineValueVariableLookup クラス)
  • 評価可能な式として(InlineValueEvaluatableExpression クラス)InlineValue 型は、すべてのインライン値型を 1 つの型に結合します。

InlineValueContext

InlineValuesProvider からインライン値を要求するときに、コンテキスト情報を含む値オブジェクト。

プロパティ

実行が停止したスタックフレーム(DAP ID として)。

実行が停止したドキュメント範囲。通常、範囲の終了位置は、インライン値が表示される行を示します。

InlineValueEvaluatableExpression

式評価を通じてインライン値を提供します。範囲のみが指定されている場合、式は基になるドキュメントから抽出されます。オプションの式を使用して、抽出された式をオーバーライドできます。

コンストラクター

新しい InlineValueEvaluatableExpression オブジェクトを作成します。

パラメーター説明
range: Range

評価可能な式が抽出される基になるドキュメント内の範囲。

expression?: string

指定された場合、抽出された式をオーバーライドします。

戻り値説明
InlineValueEvaluatableExpression

プロパティ

指定した場合、式は抽出された式をオーバーライドします。

インライン値が適用されるドキュメント範囲。範囲は、基になるドキュメントから評価可能な式を抽出するために使用されます。

InlineValuesProvider

インライン値プロバイダーインターフェースは、拡張機能とエディターのデバッガーインライン値機能間の契約を定義します。この契約では、プロバイダーは指定されたドキュメント範囲のインライン値情報を返し、エディターはこの情報を行の末尾にエディターに表示します。

イベント

インライン値が変更されたことを通知するオプションのイベント。

こちらも参照してください EventEmitter

メソッド

指定されたドキュメントと範囲の「インライン値」情報を提供します。エディターは、デバッグが指定されたドキュメントで停止するたびにこのメソッドを呼び出します。返されたインライン値情報は、行の末尾にエディターにレンダリングされます。

パラメーター説明
document: TextDocument

インライン値情報が必要なドキュメント。

viewPort: Range

インライン値を計算する必要がある表示ドキュメント範囲。

context: InlineValueContext

現在の場所のようなコンテキスト情報を含むバッグ。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<InlineValue[]>

InlineValueDescriptors の配列、またはそのようなものに解決される Thenable。結果がない場合は、undefined または null を返すことで通知できます。

InlineValueText

インライン値をテキストとして提供します。

コンストラクター

新しい InlineValueText オブジェクトを作成します。

パラメーター説明
range: Range

インライン値を表示するドキュメント行。

text: string

行に表示する値。

戻り値説明
InlineValueText

プロパティ

インライン値が適用されるドキュメント範囲。

インライン値のテキスト。

InlineValueVariableLookup

変数ルックアップを通じてインライン値を提供します。範囲のみが指定された場合、変数名は基になるドキュメントから抽出されます。オプションの変数名を使用して、抽出された名前をオーバーライドできます。

コンストラクター

新しい InlineValueVariableLookup オブジェクトを作成します。

パラメーター説明
range: Range

インライン値を表示するドキュメント行。

variableName?: string

ルックアップする変数の名前。

caseSensitiveLookup?: boolean

ルックアップの実行方法。指定しない場合、ルックアップは大文字と小文字を区別します。

戻り値説明
InlineValueVariableLookup

プロパティ

ルックアップの実行方法。

インライン値が適用されるドキュメント範囲。この範囲は、基になるドキュメントから変数名を抽出するために使用されます。

指定された場合、ルックアップする変数の名前。

InputBox

テキスト値をユーザーに入力させるための具体的な QuickInput

多くの場合、より便利なwindow.showInputBoxの方が使いやすいことに注意してください。window.showInputBoxでは必要な柔軟性が提供されない場合は、window.createInputBoxを使用する必要があります。

イベント

ユーザーが入力値の受け入れを示したときに通知するイベント。

値が変更されたときに通知するイベント。

この入力 UI が非表示になったときに通知するイベント。

この UI が非表示になる理由はいくつかあり、拡張機能は QuickInput.onDidHide を通じて通知を受け取ります。(例:QuickInput.hide の明示的な呼び出し、ユーザーが Esc キーを押した場合、他の入力 UI が開いた場合など)

ボタンがトリガーされたときに通知するイベント。

プロパティ

UI がプログレスインジケーターを表示する必要があるかどうか。デフォルトは false です。

より多くのデータをロードしたり、ユーザー入力を検証したりする間など、これを true に変更します。

UI のアクション用のボタン。

UI がユーザー入力を許可する必要があるかどうか。デフォルトは true です。

ユーザー入力を検証したり、ユーザー入力の次のステップのためにデータをロードしたりする間など、これを false に変更します。

UI フォーカスを失っても UI を開いたままにする必要があるかどうか。デフォルトは false です。この設定は iPad では無視され、常に false になります。

入力値を非表示にする必要があるかどうか。デフォルトは false です。

値が入力されていない場合に表示されるオプションのプレースホルダー。

ユーザーへの質問や説明を提供するオプションのプロンプトテキスト。

オプションの現在のステップ数。

オプションのタイトル。

オプションの合計ステップ数。

現在の入力値に問題があることを示すオプションの検証メッセージ。文字列を返すことで、InputBox はデフォルトの InputBoxValidationSeverity の Error を使用します。undefined を返すと、検証メッセージがクリアされます。

現在の入力値。

入力値内の選択範囲。最初の数値が開始インデックス(包括的)、2 番目の数値が終了インデックス(排他的)であるタプルとして定義されます。undefined の場合、事前に入力された値全体が選択され、空の場合(開始と終了が同じ)、カーソルのみが設定され、それ以外の場合は定義された範囲が選択されます。

このプロパティは、ユーザーが入力または選択を行っても更新されませんが、拡張機能によって更新できます。

メソッド

この入力 UI と関連するリソースを破棄します。まだ表示されている場合は、最初に非表示にされます。この呼び出しの後、入力 UI は機能しなくなり、それ以上のメソッドやプロパティにアクセスしないでください。代わりに、新しい入力 UI を作成する必要があります。

パラメーター説明
戻り値説明
void

この入力 UI を非表示にします。これは QuickInput.onDidHide イベントも発生させます。

パラメーター説明
戻り値説明
void

現在の構成で入力 UI を表示します。他の入力 UI は最初に QuickInput.onDidHide イベントを発生させます。

パラメーター説明
戻り値説明
void

InputBoxOptions

入力ボックス UI の動作を構成するためのオプション。

プロパティ

フォーカスがエディターの別の部分または別のウィンドウに移動しても、入力ボックスを開いたままにするには true に設定します。この設定は iPad では無視され、常に false になります。

パスワード入力を表示するかどうかを制御します。パスワード入力は、入力されたテキストを非表示にします。

ユーザーが何を入力すべきかをガイドするために、入力ボックスにプレースホルダーとして表示するオプションの文字列。

入力ボックスの下に表示するテキスト。

入力ボックスのタイトルを表すオプションの文字列。

入力ボックスに事前に入力する値。

事前に入力された value の選択。最初の数値が開始インデックス(包括的)、2 番目の数値が終了インデックス(排他的)であるタプルとして定義されます。undefined の場合、事前に入力された値全体が選択され、空の場合(開始と終了が同じ)、カーソルのみが設定され、それ以外の場合は定義された範囲が選択されます。

メソッド

入力を検証し、ユーザーにヒントを与えるために呼び出されるオプションの関数。

パラメーター説明
value: string

入力ボックスの現在の値。

戻り値説明
string | InputBoxValidationMessage | Thenable<string | InputBoxValidationMessage>

エラーメッセージとして表示される人間が読める文字列、または特定メッセージの重要度を提供できる InputBoxValidationMessage のいずれか。 'value' が有効な場合は、undefinednull、または空の文字列を返します。

InputBoxValidationMessage

検証メッセージの動作を構成するオブジェクト。

プロパティ

表示する検証メッセージ。

検証メッセージの重要度。注:InputBoxValidationSeverity.Error を使用すると、ユーザーは入力を受け入れる(ENTER キーを押す)ことが許可されません。Info および Warning は、InputBox が入力を受け入れることを許可します。

InputBoxValidationSeverity

入力ボックスの検証の重要度レベル。

列挙メンバー

情報重要度レベル。

警告重要度レベル。

エラー重要度レベル。

LanguageConfiguration

言語構成インターフェースは、拡張機能と、自動括弧挿入、自動インデントなどのさまざまなエディター機能間のコントラクトを定義します。

プロパティ

非推奨 使用しないでください。

  • deprecated - * 代わりに言語構成ファイルで autoClosingPairs プロパティを使用してください。
パラメーター説明
autoClosingPairs: Array<{close: string, notIn: string[], open: string}>
  • deprecated

非推奨 使用しないでください。

  • deprecated - より良い API にすぐに置き換えられます。
パラメーター説明
brackets: any

このプロパティは非推奨であり、エディターからは無視されます。

  • deprecated
docComment: {close: string, lineStart: string, open: string, scope: string}

このプロパティは非推奨であり、エディターでは完全にはサポートされていません(scope と lineStart は無視されます)。代わりに言語構成ファイルで autoClosingPairs プロパティを使用してください。

  • deprecated

言語の自動閉括弧ペア。

言語の括弧。この構成は、これらの括弧の周りで Enter キーを押す動作に暗黙的に影響を与えます。

言語のコメント設定。

言語のインデント設定。

Enter キーを押したときに評価される言語のルール。

言語の単語定義。言語が Unicode 識別子(例:JavaScript)をサポートしている場合、既知の区切り文字の除外を使用する単語定義を提供することが推奨されます。例:既知の区切り文字を除くすべてに一致する正規表現(およびドットは浮動小数点数で発生することが許可されています)

/(-?\d*\.\d\w*)|([^\`\~\!\\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>/\?\s]+)/g

LanguageModelAccessInformation

言語モデルへのアクセスに関する拡張機能固有の情報を表します。

イベント

アクセス情報が変更されたときに発生するイベント。

メソッド

言語モデルにリクエストを送信できるかどうかを確認します。

:この関数を呼び出しても、同意 UI はトリガーされず、永続化された状態のみを確認します。

パラメーター説明
chat: LanguageModelChat

言語モデルチャットオブジェクト。

戻り値説明
boolean

リクエストを送信できる場合は true、そうでない場合は false、言語モデルが存在しないか、同意が求められていない場合は undefined

LanguageModelChat

チャットリクエストを行うための言語モデルを表します。

参照lm.selectChatModels

プロパティ

言語モデルの不透明なファミリー名。値は gpt-3.5-turbogpt4phi2、または llama の場合がありますが、言語を提供する拡張機能によって定義され、変更される可能性があります。

言語モデルの不透明な識別子。

単一のリクエストでモデルに送信できるトークンの最大数。

言語モデルの人間が読める名前。

言語モデルのベンダーの既知の識別子。例は copilot ですが、値はチャットモデルを提供する拡張機能によって定義され、それらで参照する必要があります。

モデルの不透明なバージョン文字列。これは、言語モデルを提供する拡張機能によって定義され、変更される可能性があります。

メソッド

モデル固有のトークナイザーロジックを使用して、メッセージ内のトークンの数をカウントします。

パラメーター説明
text: string | LanguageModelChatMessage

文字列またはメッセージインスタンス。

token?: CancellationToken

オプションのキャンセルトークン。作成方法については、CancellationTokenSource を参照してください。

戻り値説明
Thenable<number>

トークン数に解決される Thenable。

言語モデルを使用してチャットリクエストを行います。

:言語モデルの使用は、アクセス制限およびユーザーの同意の対象となる場合があります。この関数を(拡張機能で)初めて呼び出すと、ユーザーに同意ダイアログが表示されるため、この関数はユーザーアクションへの応答でのみ呼び出す必要があります! 拡張機能は、LanguageModelAccessInformation.canSendRequest を使用して、リクエストを行うために必要な権限があるかどうかを確認できます。

言語モデルへのリクエストが不可能な場合、この関数は拒否された Promise を返します。これの理由は次のとおりです。

  • ユーザーの同意が得られていない場合、NoPermissions を参照してください
  • モデルがもう存在しない場合、NotFound を参照してください
  • クォータ制限を超えた場合、Blocked を参照してください
  • その他の問題が発生した場合、拡張機能は [LanguageModelError.cause LanguageModelError.cause](#LanguageModelError.cause LanguageModelError.cause) を確認する必要があります

拡張機能は、ツールセットを LanguageModelChatRequestOptions.tools に渡すことにより、言語モデルツールの呼び出しを利用できます。言語モデルは LanguageModelToolCallPart を返し、拡張機能はツールを呼び出して、結果とともに別のリクエストを行うことができます。

パラメーター説明
messages: LanguageModelChatMessage[]

メッセージインスタンスの配列。

options?: LanguageModelChatRequestOptions

リクエストを制御するオプション。

token?: CancellationToken

リクエストを制御するキャンセルトークン。作成方法については、CancellationTokenSource を参照してください。

戻り値説明
Thenable<LanguageModelChatResponse>

LanguageModelChatResponse に解決される Thenable。リクエストを作成できなかった場合、Promise は拒否されます。

LanguageModelChatMessage

チャット内のメッセージを表します。ユーザーやアシスタントなどのさまざまな役割を想定できます。

静的

新しいアシスタントメッセージを作成するユーティリティ。

パラメーター説明
content: string | Array<LanguageModelTextPart | LanguageModelToolCallPart>

メッセージの内容。

name?: string

メッセージのユーザーのオプションの名前。

戻り値説明
LanguageModelChatMessage

新しいユーザーメッセージを作成するユーティリティ。

パラメーター説明
content: string | Array<LanguageModelTextPart | LanguageModelToolResultPart>

メッセージの内容。

name?: string

メッセージのユーザーのオプションの名前。

戻り値説明
LanguageModelChatMessage

コンストラクター

新しいユーザーメッセージを作成します。

パラメーター説明
role: LanguageModelChatMessageRole

メッセージの役割。

content: string | Array<LanguageModelTextPart | LanguageModelToolResultPart | LanguageModelToolCallPart>

メッセージの内容。

name?: string

メッセージのユーザーのオプションの名前。

戻り値説明
LanguageModelChatMessage

プロパティ

メッセージがコンテンツとして含めることができる、文字列または異種配列。一部のパーツは、一部のモデルではメッセージタイプ固有である場合があります。

このメッセージのユーザーのオプションの名前。

このメッセージの役割。

LanguageModelChatMessageRole

チャットメッセージの役割を表します。これは、ユーザーまたはアシスタントのいずれかです。

列挙メンバー

ユーザーの役割。例:言語モデルと対話する人間。

アシスタントの役割。例:応答を生成する言語モデル。

LanguageModelChatRequestOptions

言語モデルを使用してチャットリクエストを行うためのオプション。

こちらも参照してください LanguageModelChat.sendRequest

プロパティ

言語モデルへのアクセスが必要な理由と、それによって有効になる機能を説明する、人間が読めるメッセージ。

言語モデルの動作を制御するオプションのセット。これらのオプションは言語モデルに固有であり、それぞれのドキュメントで参照する必要があります。

使用するツール選択モード。デフォルトは LanguageModelChatToolMode.Auto です。

言語モデルが利用できるツールのオプションリスト。これらは、lm.tools 経由で利用可能な登録済みツール、または呼び出し元の拡張機能内に実装されたプライベートツールである可能性があります。

LLM がこれらのツールのいずれかを呼び出すように要求した場合、LanguageModelChatResponse.streamLanguageModelToolCallPart を返します。ツールを呼び出すのは呼び出し側の責任です。lm.tools に登録されたツールの場合、lm.invokeTool を呼び出すことを意味します。

その後、ツール結果は、LanguageModelToolCallPart を持つ Assistant タイプの LanguageModelChatMessage を作成し、その後に LanguageModelToolResultPart を持つ User タイプのメッセージを続けることで、LLM に提供できます。

LanguageModelChatResponse

言語モデルの応答を表します。

参照 ChatRequest

プロパティ

全体の応答を形成するテキストとツール呼び出し部分のストリームである非同期イテラブル。LanguageModelTextPart は、ユーザーに表示されるアシスタントの応答の一部です。LanguageModelToolCallPart は、ツールを呼び出すための言語モデルからのリクエストです。後者は、LanguageModelChatRequestOptions.tools 経由でリクエストでツールが渡された場合にのみ返されます。unknown 型は、画像データ部分のような将来の部分のプレースホルダーとして使用されます。

注意 このストリームは、データ受信中にエラーが発生するとエラーになります。ストリームのコンシューマーは、エラーを適切に処理する必要があります。

ストリームをキャンセルするには、コンシューマーはリクエストの作成に使用されたトークンを キャンセル するか、for ループから抜け出すことができます。

try {
  // consume stream
  for await (const chunk of response.stream) {
    if (chunk instanceof LanguageModelTextPart) {
      console.log('TEXT', chunk);
    } else if (chunk instanceof LanguageModelToolCallPart) {
      console.log('TOOL CALL', chunk);
    }
  }
} catch (e) {
  // stream ended with an error
  console.error(e);
}

これは、LanguageModelChatResponse.stream からテキスト部分を除くすべてをフィルタリングすることと同等です。

参照 LanguageModelChatResponse.stream

LanguageModelChatSelector

チャットリクエスト用の言語モデルを選択する方法を記述します。

参照lm.selectChatModels

プロパティ

言語モデルのファミリー。

参照 LanguageModelChat.family

言語モデルの識別子。

参照 LanguageModelChat.id

言語モデルのベンダー。

参照 LanguageModelChat.vendor

言語モデルのバージョン。

参照 LanguageModelChat.version

LanguageModelChatTool

LanguageModelChatRequestOptions を介して言語モデルで利用可能なツール。言語モデルは、このインターフェースのすべてのプロパティを使用して、どのツールをどのように呼び出すかを決定します。

プロパティ

ツールの説明。

このツールが受け入れる入力の JSON スキーマ。

ツールの名前。

LanguageModelChatToolMode

言語モデルが使用するツール呼び出しモード。

列挙メンバー

言語モデルは、ツールを呼び出すか、メッセージを生成するかを選択できます。デフォルトです。

言語モデルは、提供されたツールのいずれかを呼び出す必要があります。注 - 一部のモデルは、このモードを使用する場合、単一のツールのみをサポートします。

LanguageModelError

言語モデル固有のエラーのエラー型。

言語モデルのコンシューマーは、不明な言語モデルを参照する場合など、特定のエラー原因を特定するために code プロパティを確認する必要があります (例: if(someError.code === vscode.LanguageModelError.NotFound.name) {...})。特定されていないエラーの場合、cause プロパティに実際のエラーが含まれます。

静的

リクエスターはこの言語モデルの使用をブロックされています。

パラメーター説明
message?: string
戻り値説明
LanguageModelError

リクエスターはこの言語モデルを使用する権限がありません。

パラメーター説明
message?: string
戻り値説明
LanguageModelError

言語モデルが存在しません。

パラメーター説明
message?: string
戻り値説明
LanguageModelError

コンストラクター

パラメーター説明
message?: string
戻り値説明
LanguageModelError

プロパティ

このエラーを識別するコード。

可能な値は、NotFound のようなエラーの名前、または言語モデル自体からの特定されていないエラーの場合は Unknown です。後者の場合、cause プロパティに実際のエラーが含まれます。

LanguageModelPromptTsxPart

vscode/prompt-tsx からの PromptElementJSON を含む言語モデルの応答部分。

参照 LanguageModelToolResult

コンストラクター

指定されたコンテンツで prompt-tsx 部分を構築します。

パラメーター説明
value: unknown

部分の値、vscode/prompt-tsx からの renderPromptElementJSON の結果。

戻り値説明
LanguageModelPromptTsxPart

プロパティ

パーツの値。

LanguageModelTextPart

LanguageModelChatResponse から返される、テキストの一部を含む言語モデルの応答部分。

コンストラクター

指定されたコンテンツでテキスト部分を構築します。

パラメーター説明
value: string

部分のテキストコンテンツ。

戻り値説明
LanguageModelTextPart

プロパティ

部分のテキストコンテンツ。

LanguageModelTool<T>

LanguageModelChat の呼び出しによって呼び出すことができるツール。

メソッド

指定された入力でツールを呼び出し、結果を返します。

提供された LanguageModelToolInvocationOptions.input は、宣言されたスキーマに対して検証済みです。

パラメーター説明
options: LanguageModelToolInvocationOptions<T>
token: CancellationToken
戻り値説明
ProviderResult<LanguageModelToolResult>

ツールが呼び出される前に一度呼び出されます。ツール実行中に表示される進行状況メッセージをカスタマイズし、呼び出し入力からのコンテキストを含む、より役立つメッセージを提供するために、これを実装することをお勧めします。必要に応じて、ツールを実行する前にユーザーの確認が必要であることを通知することもできます。

  • 注 1: 副作用がないようにする必要があります。
  • 注 2: prepareInvocation の呼び出しは、必ずしも invoke の呼び出しが続くとは限りません。
パラメーター説明
options: LanguageModelToolInvocationPrepareOptions<T>
token: CancellationToken
戻り値説明
ProviderResult<PreparedToolInvocation>

LanguageModelToolCallPart

LanguageModelChatResponse から返されるツール呼び出しを示す言語モデルの応答部分。また、チャットリクエストで以前のツール呼び出しを表すために、LanguageModelChatMessage のコンテンツ部分として含めることもできます。

コンストラクター

新しい LanguageModelToolCallPart を作成します。

パラメーター説明
callId: string

ツール呼び出しの ID。

name: string

呼び出すツールの名前。

input: object

ツールを呼び出すための入力。

戻り値説明
LanguageModelToolCallPart

プロパティ

ツール呼び出しの ID。これは、チャットリクエスト内のツール呼び出しの一意の識別子です。

ツールを呼び出すための入力。

呼び出すツールの名前。

LanguageModelToolConfirmationMessages

PreparedToolInvocation でこれが返されると、ツールを実行する前にユーザーに確認を求めるプロンプトが表示されます。これらのメッセージは、「続行」および「キャンセル」と表示されたボタンとともに表示されます。

プロパティ

確認メッセージの本文。

確認メッセージのタイトル。

LanguageModelToolInformation

lm.tools で利用可能な登録済みツールに関する情報。

プロパティ

言語モデルに渡される可能性のあるこのツールの説明。

このツールが受け入れる入力の JSON スキーマ。

ツールのユニークな名前。

ツールによって宣言されたタグのセットで、ツールの機能を大まかに記述します。ツールユーザーは、これらを使用して、手元のタスクに関連するツールのみにツールセットをフィルタリングできます。

LanguageModelToolInvocationOptions<T>

ツール呼び出しに提供されるオプション。

プロパティ

ツールを呼び出すための入力。入力は、LanguageModelToolInformation.inputSchema で定義されたスキーマと一致する必要があります。

ツールが応答で返すトークンの数をヒントし、ツールがトークンを正確にカウントできるようにするオプション。

ツール呼び出しを チャット参加者 からのチャットリクエストに関連付ける不透明なオブジェクト。

有効なツール呼び出しトークンを取得する唯一の方法は、チャットリクエストから提供された toolInvocationToken を使用することです。その場合、チャット応答ビューにツール呼び出しの進行状況バーが自動的に表示され、ツールにユーザーの確認が必要な場合は、チャットビューにインラインで表示されます。

ツールがチャットリクエストの外部で呼び出されている場合、代わりに undefined を渡す必要があり、確認を除いて特別な UI は表示されません。

ツールがその呼び出し中に別のツールを呼び出す場合、受信した toolInvocationToken を渡すことができます。

LanguageModelToolInvocationPrepareOptions<T>

プロパティ

ツールが呼び出される入力。

LanguageModelToolResult

ツール呼び出しから返される結果。vscode/prompt-tsx を使用している場合、この結果は ToolResult を使用してレンダリングされる場合があります。

コンストラクター

LanguageModelToolResult を作成します

パラメーター説明
content: Array<LanguageModelTextPart | LanguageModelPromptTsxPart>

ツール結果コンテンツ部分のリスト

戻り値説明
LanguageModelToolResult

プロパティ

ツール結果コンテンツ部分のリスト。このリストは将来新しいコンテンツタイプで拡張される可能性があるため、unknown が含まれています。

参照 lm.invokeTool

LanguageModelToolResultPart

ツール呼び出しの結果。これは ツール呼び出し の対となるものであり、ユーザーメッセージのコンテンツにのみ含めることができます。

コンストラクター

パラメーター説明
callId: string

ツール呼び出しの ID。

content: unknown[]

ツール結果のコンテンツ。

戻り値説明
LanguageModelToolResultPart

プロパティ

ツール呼び出しの ID。

注意 これはツール呼び出し部分の callId と一致する必要があります。

ツール結果の値。

LanguageModelToolTokenizationOptions

ツール呼び出しのトークン化に関連するオプション。

プロパティ

既知の場合、ツールが結果で出力するトークンの最大数。

メソッド

モデル固有のトークナイザーロジックを使用して、メッセージ内のトークンの数をカウントします。

パラメーター説明
text: string

文字列。

token?: CancellationToken

オプションのキャンセルトークン。作成方法については、CancellationTokenSource を参照してください。

戻り値説明
Thenable<number>

トークン数に解決される Thenable。

LanguageStatusItem

言語ステータス項目は、選択されたリンターや構成問題に関する通知など、アクティブなテキストエディターの言語ステータスレポートを提示するための推奨される方法です。

プロパティ

スクリーンリーダーがこの項目と対話するときに使用されるアクセシビリティ情報

項目を「ビジー」として表示するかどうかを制御します。デフォルトは false です。

この項目の コマンド

オプション、この項目の人間が判読できる詳細。

この項目の識別子。

'Java Language Status' などのこの項目の短い名前。

この項目を表示するエディターを定義する セレクター

この項目の重要度。

デフォルトは information です。このプロパティを使用して、実行可能ファイルが見つからない場合や構成が無効な場合など、注意が必要な問題があることをユーザーに知らせることができます。

エントリに表示するテキスト。構文を活用して、テキストにアイコンを埋め込むことができます

My text $(icon-name) contains icons like $(icon-name) this one.

ここで、icon-name は ThemeIcon アイコンセット (例: light-bulbthumbsupzap など) から取得されます。

メソッド

破棄して、関連付けられたリソースを解放します。

パラメーター説明
戻り値説明
void

LanguageStatusSeverity

言語ステータスの重要度レベルを表します。

列挙メンバー

情報重要度レベル。

警告重要度レベル。

エラー重要度レベル。

LinkedEditingRangeProvider

リンクされた編集範囲プロバイダーインターフェースは、拡張機能とリンクされた編集機能間のコントラクトを定義します。

メソッド

ドキュメント内の指定された位置について、その位置にあるシンボルの範囲と、同じコンテンツを持つすべての範囲を返します。新しいコンテンツが有効な場合、範囲の 1 つへの変更は他のすべての範囲に適用できます。オプションの単語パターンを結果とともに返して、有効なコンテンツを記述できます。結果固有の単語パターンが提供されない場合、言語構成の単語パターンが使用されます。

パラメーター説明
document: TextDocument

プロバイダーが呼び出されたドキュメント。

position: Position

プロバイダーが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<LinkedEditingRanges>

一緒に編集できる範囲のリスト

LinkedEditingRanges

有効な範囲コンテンツを記述する単語パターンとともに、一緒に編集できる範囲のリストを表します。

コンストラクター

新しいリンクされた編集範囲オブジェクトを作成します。

パラメーター説明
ranges: Range[]

一緒に編集できる範囲のリスト

wordPattern?: RegExp

指定された範囲の有効なコンテンツを記述するオプションの単語パターン

戻り値説明
LinkedEditingRanges

プロパティ

一緒に編集できる範囲のリスト。範囲は、長さとテキストコンテンツが同一である必要があります。範囲は重複できません。

指定された範囲の有効なコンテンツを記述するオプションの単語パターン。パターンが指定されていない場合、言語構成の単語パターンが使用されます。

Location

テキストファイル内の行など、リソース内の場所を表します。

コンストラクター

新しい location オブジェクトを作成します。

パラメーター説明
uri: Uri

リソース識別子。

rangeOrPosition: Range | Position

範囲または位置。位置は空の範囲に変換されます。

戻り値説明
Location

プロパティ

この location のドキュメント範囲。

この location のリソース識別子。

2つの location の接続を表します。通常の locations に加えて、origin range などの追加のメタデータを提供します。

プロパティ

このリンクの origin の範囲。

マウスの定義ホバーの下線付き範囲として使用されます。デフォルトは定義位置の単語範囲です。

このリンクの完全な target 範囲。

このリンクの範囲。

このリンクの target リソース識別子。

LogLevel

ログレベル

列挙メンバー

このレベルではメッセージはログに記録されません。

すべてのメッセージがこのレベルでログに記録されます。

debug およびより高いログレベルのメッセージがこのレベルでログに記録されます。

info およびより高いログレベルのメッセージがこのレベルでログに記録されます。

warning およびより高いログレベルのメッセージがこのレベルでログに記録されます。

エラーメッセージのみがこのレベルでログに記録されます。

LogOutputChannel

ログ出力を格納するためのチャネル。

LogOutputChannel のインスタンスを取得するには、createOutputChannel を使用します。

イベント

チャネルのログレベルが変更されたときに発生する Event

プロパティ

チャネルの現在のログレベル。デフォルトは editor log level です。

この出力チャネルの人間が読める名前。

メソッド

指定された値をチャネルに追加します。

パラメーター説明
value: string

文字列。falsy 値は出力されません。

戻り値説明
void

指定された値と改行文字をチャネルに追加します。

パラメーター説明
value: string

文字列。falsy 値も出力されます。

戻り値説明
void

チャネルからすべての出力を削除します。

パラメーター説明
戻り値説明
void

指定されたデバッグメッセージをチャネルに出力します。

メッセージは、チャネルが debug ログレベル以下を表示するように構成されている場合にのみログに記録されます。

パラメーター説明
message: string

ログに記録するデバッグメッセージ

...args: any[]
戻り値説明
void

破棄して、関連付けられたリソースを解放します。

パラメーター説明
戻り値説明
void

指定されたエラーまたはエラーメッセージをチャネルに出力します。

メッセージは、チャネルが error ログレベル以下を表示するように構成されている場合にのみログに記録されます。

パラメーター説明
error: string | Error

ログに記録するエラーまたはエラーメッセージ

...args: any[]
戻り値説明
void

このチャネルを UI から非表示にします。

パラメーター説明
戻り値説明
void

指定された情報メッセージをチャネルに出力します。

メッセージは、チャネルが info ログレベル以下を表示するように構成されている場合にのみログに記録されます。

パラメーター説明
message: string

ログに記録する情報メッセージ

...args: any[]
戻り値説明
void

チャネルからのすべての出力を指定された値に置き換えます。

パラメーター説明
value: string

文字列。falsy 値は出力されません。

戻り値説明
void

このチャネルを UI に表示します。

パラメーター説明
preserveFocus?: boolean

true の場合、チャネルはフォーカスを取得しません。

戻り値説明
void

このチャネルを UI に表示します。

  • deprecated - 1つのパラメータ (show(preserveFocus?: boolean): void) のオーバーロードを使用してください。
パラメーター説明
column?: ViewColumn

この引数は非推奨であり、無視されます。

preserveFocus?: boolean

true の場合、チャネルはフォーカスを取得しません。

戻り値説明
void

指定されたトレースメッセージをチャネルに出力します。詳細な情報をログに記録するには、このメソッドを使用します。

メッセージは、チャネルが trace ログレベルを表示するように構成されている場合にのみログに記録されます。

パラメーター説明
message: string

ログに記録するトレースメッセージ

...args: any[]
戻り値説明
void

指定された警告メッセージをチャネルに出力します。

メッセージは、チャネルが warning ログレベル以下を表示するように構成されている場合にのみログに記録されます。

パラメーター説明
message: string

ログに記録する警告メッセージ

...args: any[]
戻り値説明
void

MarkdownString

markdown 構文による書式設定をサポートする人間が読めるテキスト。

テーマアイコンのレンダリングは、supportThemeIconstrue に設定されている場合、$(<name>) 構文でサポートされます。

埋め込み HTML のレンダリングは、supportHtmltrue に設定されている場合にサポートされます。

コンストラクター

指定された値で新しい markdown 文字列を作成します。

パラメーター説明
value?: string

オプションの初期値。

supportThemeIcons?: boolean

オプション。ThemeIconsMarkdownString 内でサポートされるかどうかを指定します。

戻り値説明
MarkdownString

プロパティ

相対パスが相対的に解決される Uri。

baseUri/ で終わる場合、ディレクトリと見なされ、markdown 内の相対パスはそのディレクトリに対して相対的に解決されます

const md = new vscode.MarkdownString(`[link](./file.js)`);
md.baseUri = vscode.Uri.file('/path/to/dir/');
// Here 'link' in the rendered markdown resolves to '/path/to/dir/file.js'

baseUri がファイルの場合、markdown 内の相対パスはそのファイルの親ディレクトリに対して相対的に解決されます

const md = new vscode.MarkdownString(`[link](./file.js)`);
md.baseUri = vscode.Uri.file('/path/to/otherFile.js');
// Here 'link' in the rendered markdown resolves to '/path/to/file.js'

この markdown 文字列が信頼できるソースからのものであることを示します。信頼できる markdown のみが、コマンドを実行するリンク (例: [Run it](command:myCommandId)) をサポートします。

デフォルトは false (コマンドは無効) です。

この markdown 文字列に生の html タグを含めることができることを示します。デフォルトは false です。

supportHtml が false の場合、markdown レンダラーは markdown テキストに表示される生の html タグをすべて削除します。これは、レンダリングに markdown 構文のみを使用できることを意味します。

supportHtml が true の場合、markdown レンダラーは、レンダリングされる html タグと属性の安全なサブセットも許可します。サポートされているすべてのタグと属性のリストについては、https://github.com/microsoft/vscode/blob/6d2920473c6f13759c978dd89104c4270a83422d/src/vs/base/browser/markdownRenderer.ts#L296 を参照してください。

この markdown 文字列に ThemeIcons (例: $(zap)) を含めることができることを示します。

markdown 文字列。

メソッド

指定された文字列を、指定された言語を使用してコードブロックとして追加します。

パラメーター説明
value: string

コードスニペット。

language?: string

オプションの 言語識別子

戻り値説明
MarkdownString

指定された文字列を「そのまま」この markdown 文字列に追加します。supportThemeIconstrue の場合、value 内の ThemeIcons はアイコン化されます。

パラメーター説明
value: string

Markdown 文字列。

戻り値説明
MarkdownString

指定された文字列をエスケープして、この markdown 文字列に追加します。

パラメーター説明
value: string

プレーンテキスト。

戻り値説明
MarkdownString

MarkedString

MarkedString は、人間が読めるテキストをレンダリングするために使用できます。markdown 文字列、または言語とコードスニペットを提供するコードブロックのいずれかです。markdown 文字列はサニタイズされることに注意してください。つまり、html はエスケープされます。

  • deprecated - この型は非推奨です。代わりに MarkdownString を使用してください。

Memento

memento はストレージユーティリティを表します。値を保存および取得できます。

メソッド

値を返します。

パラメーター説明
key: string

文字列。

戻り値説明
T

保存された値、または undefined

値を返します。

パラメーター説明
key: string

文字列。

defaultValue: T

指定されたキーを持つ値 (undefined) がない場合に返される値。

戻り値説明
T

保存された値、または defaultValue。

保存されたキーを返します。

パラメーター説明
戻り値説明
readonly string[]

保存されたキー。

値を保存します。値は JSON 文字列化可能である必要があります。

: undefined を値として使用すると、基になるストレージからキーが削除されます。

パラメーター説明
key: string

文字列。

value: any

値。循環参照を含めてはなりません。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

MessageItem

情報、警告、またはエラーメッセージとともに表示されるアクションを表します。

以下も参照してください

プロパティ

ユーザーがダイアログをキャンセルしたとき (ESC キーを押すなど) に、項目をトリガーする必要があるモーダルダイアログのヒント。

注: このオプションは、非モーダルメッセージでは無視されます。

'再試行'、'ログを開く' などの短いタイトル。

MessageOptions

メッセージの動作を構成するオプション。

以下も参照してください

プロパティ

目立たないようにレンダリングされる人間が読める詳細メッセージ。: detail は モーダルメッセージでのみ表示されます。

このメッセージをモーダルにする必要があることを示します。

NotebookCell

notebook のセルを表します。コードセルまたは マークアップセルのいずれかです。

NotebookCell インスタンスはイミュータブルであり、notebook の一部である限り同期が維持されます。

プロパティ

このセルの テキスト。テキストドキュメントとして表されます。

このセルの最新の 実行サマリー

包含する notebook 内のこのセルのインデックス。インデックスは、セルが notebook 内で移動されると更新されます。セルが notebook から削除されると、インデックスは -1 になります。

このセルの種類。

このセルのメタデータ。JSON 文字列化可能である必要がありますが、何でもかまいません。

このセルを含む notebook

このセルの出力。

NotebookCellData

NotebookCellData は、notebook セルの生の表現です。NotebookData の一部です。

コンストラクター

新しいセルデータを作成します。最小限のセルデータは、その種類、ソース値、およびソースの言語識別子を指定します。

パラメーター説明
kind: NotebookCellKind

種類。

value: string

ソース値。

languageId: string

ソース値の言語識別子。

戻り値説明
NotebookCellData

プロパティ

このセルデータの実行サマリー。

このセルデータの 種類

このセルデータのソース値の言語識別子。getLanguages の任意の値が可能です。

このセルデータの任意のメタデータ。JSON 文字列化可能である必要がありますが、何でもかまいません。

このセルデータの出力。

このセルデータのソース値 (ソースコードまたは書式設定されたテキストのいずれか)。

NotebookCellExecution

NotebookCellExecution は、notebook controller が実行中に notebook セルを変更する方法です。

セル実行オブジェクトが作成されると、セルは [NotebookCellExecutionState.Pending Pending](#NotebookCellExecutionState.Pending Pending) 状態になります。start(...) が実行タスクで呼び出されると、[NotebookCellExecutionState.Executing Executing](#NotebookCellExecutionState.Executing Executing) 状態になります。end(...) が呼び出されると、[NotebookCellExecutionState.Idle Idle](#NotebookCellExecutionState.Idle Idle) 状態になります。

プロパティ

この実行が作成された セル

このセル実行の順序を設定および設定解除します。

UI からセル実行がキャンセルされたときにトリガーされるキャンセルトークン。

: キャンセルトークンは、この実行を作成した コントローラーinterrupt-handler を使用する場合、トリガーされません。

メソッド

実行中のセルの出力、またはこの実行の影響を受ける別のセルに出力を追加します。

パラメーター説明
out: NotebookCellOutput | readonly NotebookCellOutput[]

現在の出力に追加される出力。

cell?: NotebookCell

出力がクリアされるセル。デフォルトは、この実行の セル です。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

操作が完了したときに解決される Thenable。

既存のセル出力に出力項目を追加します。

パラメーター説明
items: NotebookCellOutputItem | readonly NotebookCellOutputItem[]

既存の出力に追加される出力項目。

output: NotebookCellOutput

既に存在する出力オブジェクト。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

操作が完了したときに解決される Thenable。

実行中のセル、またはこの実行の影響を受ける別のセルの出力をクリアします。

パラメーター説明
cell?: NotebookCell

出力がクリアされるセル。デフォルトは、この実行の セル です。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

操作が完了したときに解決される Thenable。

実行が終了したことを通知します。

パラメーター説明
success: boolean

true の場合、緑色のチェックマークがセルステータスバーに表示されます。false の場合、赤色の X が表示されます。undefined の場合、チェックマークまたは X アイコンは表示されません。

endTime?: number

実行が終了した時刻 (Unix エポックからのミリ秒単位)。

戻り値説明
void

実行中またはこの実行の影響を受ける別のセルの出力を置き換えます。

パラメーター説明
out: NotebookCellOutput | readonly NotebookCellOutput[]

現在の出力を置き換える出力。

cell?: NotebookCell

出力がクリアされるセル。デフォルトは、この実行の セル です。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

操作が完了したときに解決される Thenable。

既存のセル出力のすべての出力項目を置き換えます。

パラメーター説明
items: NotebookCellOutputItem | readonly NotebookCellOutputItem[]

既存の出力の項目を置き換える出力項目。

output: NotebookCellOutput

既に存在する出力オブジェクト。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

操作が完了したときに解決される Thenable。

実行が開始されたことを通知します。

パラメーター説明
startTime?: number

実行が開始された時刻(Unixエポックからのミリ秒単位)。セルが実行されている時間を示す時計を駆動するために使用されます。指定しない場合、時計は表示されません。

戻り値説明
void

NotebookCellExecutionSummary

ノートブックセルの実行の概要。

プロパティ

実行が発生した順序。

実行が正常に終了した場合。

実行が開始および終了した時刻(Unixタイムスタンプ)。

パラメーター説明
endTime: number

実行終了時刻。

startTime: number

実行開始時刻。

NotebookCellKind

ノートブックセルの種類。

列挙メンバー

マークアップセルは、表示に使用される書式設定されたソースです。

コードセルは、実行可能であり、出力を生成するソースです。

NotebookCellOutput

ノートブックセルの出力は、セルの実行結果を表します。これは複数の出力項目のコンテナ型であり、含まれる項目は同じ結果を表しますが、異なるMIMEタイプを使用します。

コンストラクター

新しいノートブック出力を作成します。

パラメーター説明
items: NotebookCellOutputItem[]

ノートブックの出力項目。

metadata?:

オプションのメタデータ。

戻り値説明
NotebookCellOutput

プロパティ

この出力の出力項目。各項目は同じ結果を表す必要があります。:出力ごとにMIMEタイプが繰り返されるのは無効であり、エディターはそれらのいずれかを選択するだけです。

new vscode.NotebookCellOutput([
  vscode.NotebookCellOutputItem.text('Hello', 'text/plain'),
  vscode.NotebookCellOutputItem.text('<i>Hello</i>', 'text/html'),
  vscode.NotebookCellOutputItem.text('_Hello_', 'text/markdown'),
  vscode.NotebookCellOutputItem.text('Hey', 'text/plain') // INVALID: repeated type, editor will pick just one
]);

このセル出力の任意のメタデータ。JSON文字列化可能である必要がありますが、何でもかまいません。

NotebookCellOutputItem

ノートブック出力の1つの表現。MIMEタイプとデータによって定義されます。

静的

application/vnd.code.notebook.error MIMEタイプを使用するNotebookCellOutputItemを作成するファクトリ関数。

パラメーター説明
value: Error

エラーオブジェクト。

戻り値説明
NotebookCellOutputItem

新しい出力項目オブジェクト。

JSONオブジェクトからNotebookCellOutputItemを作成するファクトリ関数。

:この関数は「文字列化されたJSON」ではなく、文字列化できるオブジェクトを想定しています。渡された値がJSON文字列化できない場合、この関数はエラーをスローします。

パラメーター説明
value: any

JSON文字列化可能な値。

mime?: string

オプションのMIMEタイプ。デフォルトはapplication/jsonです。

戻り値説明
NotebookCellOutputItem

新しい出力項目オブジェクト。

application/vnd.code.notebook.stderr MIMEタイプを使用するNotebookCellOutputItemを作成するファクトリ関数。

パラメーター説明
value: string

文字列。

戻り値説明
NotebookCellOutputItem

新しい出力項目オブジェクト。

application/vnd.code.notebook.stdout MIMEタイプを使用するNotebookCellOutputItemを作成するファクトリ関数。

パラメーター説明
value: string

文字列。

戻り値説明
NotebookCellOutputItem

新しい出力項目オブジェクト。

文字列からNotebookCellOutputItemを作成するファクトリ関数。

:UTF-8エンコーダーは、文字列のバイトを作成するために使用されます。

パラメーター説明
value: string

文字列。

mime?: string

オプションのMIMEタイプ。デフォルトはtext/plainです。

戻り値説明
NotebookCellOutputItem

新しい出力項目オブジェクト。

コンストラクター

新しいノートブックセル出力項目を作成します。

パラメーター説明
data: Uint8Array

出力項目の値。

mime: string

出力項目のMIMEタイプ。

戻り値説明
NotebookCellOutputItem

プロパティ

この出力項目のデータ。常に符号なし8ビット整数の配列である必要があります。

dataプロパティの解釈方法を決定するMIMEタイプ。

ノートブックは特定のMIMEタイプを組み込みでサポートしており、拡張機能は新しいタイプへのサポートを追加したり、既存のタイプをオーバーライドしたりできます。

NotebookCellStatusBarAlignment

ステータスバー項目の配置を表します。

列挙メンバー

左側に配置されます。

右側に配置されます。

NotebookCellStatusBarItem

セルのステータスバーへの貢献。

コンストラクター

新しいNotebookCellStatusBarItemを作成します。

パラメーター説明
text: string

項目に表示するテキスト。

alignment: NotebookCellStatusBarAlignment

項目を左または右のどちらに配置するか。

戻り値説明
NotebookCellStatusBarItem

プロパティ

スクリーンリーダーがこの項目と対話するときに使用されるアクセシビリティ情報。

項目を左または右のどちらに配置するか。

クリック時に実行するオプションのCommandまたはコマンドの識別子。

コマンドは既知である必要があります。

これがCommandオブジェクトの場合、commandargumentsのみがエディターで使用されることに注意してください。

項目の優先度。値が高い項目ほど左側に表示されます。

項目に表示するテキスト。

項目にカーソルを合わせたときに表示するツールチップ。

NotebookCellStatusBarItemProvider

セルのエディターの下に表示されるステータスバーに項目を提供できるプロバイダー。

イベント

ステータスバー項目が変更されたことを通知するオプションのイベント。provideメソッドが再度呼び出されます。

メソッド

プロバイダーは、セルがビューにスクロールインしたとき、そのコンテンツ、出力、言語、またはメタデータが変更されたとき、および実行状態が変化したときに呼び出されます。

パラメーター説明
cell: NotebookCell

項目を返すセル。

token: CancellationToken

このリクエストをキャンセルする必要がある場合にトリガーされるトークン。

戻り値説明
ProviderResult<NotebookCellStatusBarItem | NotebookCellStatusBarItem[]>

NotebookController

ノートブックコントローラーは、ノートブックセルを実行できるエンティティを表します。これは、多くの場合カーネルと呼ばれます。

複数のコントローラーが存在する可能性があり、エディターはユーザーに特定のノートブックに使用するコントローラーを選択させます。notebookTypeプロパティは、コントローラーが対象とするノートブックの種類を定義し、updateNotebookAffinity関数を使用すると、コントローラーは特定のノートブックドキュメントの優先度を設定できます。コントローラーが選択されると、onDidChangeSelectedNotebooksイベントが発生します。

セルが実行されている場合、エディターはexecuteHandlerを呼び出し、コントローラーはノートブックセル実行を作成および完了することが期待されます。ただし、コントローラーは独自に実行を作成することも自由にできます。

イベント

コントローラーがノートブックドキュメントに対して選択または選択解除されたときに発生するイベント。

ノートブックには複数のコントローラーが存在する可能性があり、その場合、コントローラーを選択する必要があります。これはユーザー操作であり、明示的に、またはコントローラーが提案されたノートブックを操作するときに暗黙的に発生します。可能な場合、エディターは選択される可能性が最も高いコントローラーを提案します。

:コントローラーの選択は(コントローラーのidによって)永続化され、コントローラーが再作成されたとき、またはノートブックが開かれたときに復元されます。

プロパティ

人間が読める説明。あまり目立たないようにレンダリングされます。

人間が読める詳細。あまり目立たないようにレンダリングされます。

実行ハンドラーは、UIの実行ジェスチャ([セルの実行]、[すべて実行]、[選択範囲を実行]など)が選択されたときに呼び出されます。実行ハンドラーは、executionオブジェクトの作成と管理を担当します。

パラメーター説明
cells: NotebookCell[]
notebook: NotebookDocument
controller: NotebookController
戻り値説明
void | Thenable<void>

このノートブックコントローラーの識別子。

:コントローラーは識別子によって記憶され、拡張機能はセッション間で安定した識別子を使用する必要があります。

オプションの割り込みハンドラー。

デフォルトでは、セルの実行はトークンを介してキャンセルされます。キャンセルトークンでは、コントローラーが実行を追跡し、後で特定の実行をキャンセルできるようにする必要があります。すべてのシナリオでそれが可能になるわけではありません。たとえば、REPLスタイルのコントローラーは、多くの場合、現在実行中のものを中断することによって機能します。これらの場合のために、割り込みハンドラーが存在します。これは、ターミナルのSIGINTまたはControl + Cと同等と考えることができます。

キャンセルトークンをサポートすることが推奨されており、トークンをサポートできない場合にのみ割り込みハンドラーを使用する必要があります。

パラメーター説明
notebook: NotebookDocument
戻り値説明
void | Thenable<void>

このノートブックコントローラーの人間が読めるラベル。

このコントローラーが対象とするノートブックタイプ。

このコントローラーでサポートされている言語識別子の配列。getLanguagesの任意の言語識別子が可能です。falseyの場合、すべての言語がサポートされます。

サンプル

// support JavaScript and TypeScript
myController.supportedLanguages = ['javascript', 'typescript'];

// support all languages
myController.supportedLanguages = undefined; // falsy
myController.supportedLanguages = []; // falsy

このコントローラーが実行順序をサポートしているかどうか。エディターがそれらのプレースホルダーをレンダリングできるようにします。

メソッド

セル実行タスクを作成します。

:セルごとにアクティブにできる実行は1つだけであり、別の実行がまだアクティブなときにセル実行が作成されるとエラーがスローされます。

これは、実行ハンドラーが呼び出された応答として、またはセル実行が開始されたとき(たとえば、セルがすでに実行中である場合、またはセル実行が別のソースからトリガーされた場合)に使用する必要があります。

パラメーター説明
cell: NotebookCell

実行を作成するノートブックセル。

戻り値説明
NotebookCellExecution

ノートブックセルの実行。

破棄して、関連付けられたリソースを解放します。

パラメーター説明
戻り値説明
void

コントローラーは、特定のノートブックドキュメントのアフィニティを設定できます。これにより、一部のノートブックに対してコントローラーをより目立つように表示できます。

パラメーター説明
notebook: NotebookDocument

優先度を設定するノートブック。

affinity: NotebookControllerAffinity

コントローラーアフィニティ。

戻り値説明
void

NotebookControllerAffinity

ノートブックドキュメントのノートブックコントローラーアフィニティ。

参照NotebookController.updateNotebookAffinity

列挙メンバー

デフォルトのアフィニティ。

コントローラーはノートブックに対して優先されます。

NotebookData

ノートブックの生の表現。

拡張機能は、エディターがNotebookDocumentを作成できるように、NotebookDataを作成する責任があります。

参照NotebookSerializer

コンストラクター

新しいノートブックデータを作成します。

パラメーター説明
cells: NotebookCellData[]

セルデータの配列。

戻り値説明
NotebookData

プロパティ

このノートブックデータのセルデータ。

ノートブックデータの任意のメタデータ。

NotebookDocument

コードセルまたはマークアップセルのシーケンスであるノートブックを表します。ノートブックドキュメントは、ノートブックデータから作成されます。

プロパティ

ノートブック内のセルの数。

ノートブックが閉じられている場合はtrue。閉じられたノートブックは同期されなくなり、同じリソースが再度開かれたときに再利用されません。

未保存の変更がある場合はtrue

これは、まだ保存されていない名前のないファイルを表すノートブックですか。

このノートブックの任意のメタデータ。JSON文字列化可能である必要がありますが、何でもかまいません。

ノートブックの種類。

このノートブックに関連付けられたURI。

:ほとんどのノートブックはfileスキームを使用します。これは、ディスク上のファイルであることを意味します。ただし、すべてのノートブックがディスクに保存されているわけではないため、基になるファイルまたはディスク上の兄弟ファイルにアクセスする前にschemeを確認する必要があります。

参照FileSystemProvider

このノートブックのバージョン番号(元に戻す/やり直しを含む、変更ごとに厳密に増加します)。

メソッド

指定されたインデックスにあるセルを返します。インデックスはノートブックに合わせて調整されます。

パラメーター説明
index: number

取得するセルのインデックス。

戻り値説明
NotebookCell

セル

このノートブックのセルを取得します。範囲を指定すると、サブセットを取得できます。範囲はノートブックに合わせて調整されます。

パラメーター説明
range?: NotebookRange

ノートブックの範囲。

戻り値説明
NotebookCell[]

範囲に含まれるセルまたはすべてのセル。

ドキュメントを保存します。保存は、対応するシリアライザーによって処理されます。

パラメーター説明
戻り値説明
Thenable<boolean>

ドキュメントが保存されたときにtrueに解決されるPromise。ファイルがダーティでなかった場合、または保存に失敗した場合はfalseを返します。

NotebookDocumentCellChange

ノートブックセルの変更について説明します。

参照NotebookDocumentChangeEvent

プロパティ

影響を受けるセル。

セルのドキュメント。変更がない場合はundefined

:実行された編集内容など、詳細な変更情報については、onDidChangeTextDocumentイベントを使用する必要があります。

セルの新しい実行の概要。変更がない場合はundefined

セルの新しいメタデータ。変更がない場合はundefined

セルの新しい出力、または変更がない場合はundefined

NotebookDocumentChangeEvent

トランザクショナルなノートブックの変更を記述するイベント。

プロパティ

セルの変更の配列。

追加または削除されたセルを記述するコンテンツ変更の配列。

ノートブックの新しいメタデータ、または変更がない場合はundefined

影響を受けるノートブック。

NotebookDocumentContentChange

ノートブックドキュメントの構造的な変更、例えば、新しく追加および削除されたセルについて記述します。

参照NotebookDocumentChangeEvent

プロパティ

ドキュメントに追加されたセル。

セルが追加または削除された範囲。

この範囲がの場合、削除されたセルはないことに注意してください。

ドキュメントから削除されたセル。

NotebookDocumentContentOptions

ノートブックのコンテンツオプションは、ノートブックのどの部分が永続化されるかを定義します。注意

例えば、ノートブックシリアライザーは出力を保存しないことを選択でき、その場合、エディターは出力が変更されてもノートブックをダーティとしてマークしません。

プロパティ

セルメタデータプロパティの変更イベントがノートブックドキュメントのコンテンツ変更イベントをトリガーするかどうか、およびdiffエディターで使用されるかどうかを制御します。デフォルトはfalseです。コンテンツプロバイダーがファイルドキュメントにメタデータプロパティを永続化しない場合は、trueに設定する必要があります。

ドキュメントメタデータプロパティの変更イベントがノートブックドキュメントのコンテンツ変更イベントをトリガーするかどうか、およびdiffエディターで使用されるかどうかを制御します。デフォルトはfalseです。コンテンツプロバイダーがファイルドキュメントにメタデータプロパティを永続化しない場合は、trueに設定する必要があります。

出力変更イベントがノートブックドキュメントのコンテンツ変更イベントをトリガーするかどうか、およびdiffエディターで使用されるかどうかを制御します。デフォルトはfalseです。コンテンツプロバイダーがファイルドキュメントに出力を永続化しない場合は、trueに設定する必要があります。

NotebookDocumentShowOptions

ノートブックエディターノートブックドキュメントを表示する動作を構成するためのオプションを表します。

プロパティ

trueの場合、ノートブックエディターがフォーカスを受け取るのを停止するオプションのフラグ。

ノートブックエディタータブをプレビューとして表示するかどうかを制御するオプションのフラグ。プレビュータブは、明示的に、または編集によって、維持するように設定されるまで、置き換えられ、再利用されます。デフォルトの動作は、workbench.editor.enablePreview設定に依存します。

ノートブックエディターのドキュメントに適用するオプションの選択範囲。

ノートブックエディターを表示する必要があるオプションのビュー列。デフォルトはアクティブです。存在しない列は、ViewColumn.Nineの最大数まで必要に応じて作成されます。ViewColumn.Besideを使用して、現在アクティブなエディターの横にエディターを開きます。

NotebookDocumentWillSaveEvent

ノートブックドキュメントが保存されるときに発生するイベント。

保存される前にドキュメントを変更するには、waitUntil関数を、ワークスペース編集に解決されるThenableで呼び出します。

プロパティ

保存がトリガーされた理由。

キャンセルトークン。

メソッド

イベントループを一時停止し、ワークスペース編集を適用できるようにします。この関数への後続の呼び出しによる編集は、順番に適用されます。ノートブックドキュメントの同時変更が発生した場合、編集は無視されます。

注: この関数は、イベントディスパッチ中のみ呼び出すことができ、非同期的に呼び出すことはできません。

workspace.onWillSaveNotebookDocument(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
パラメーター説明
thenable: Thenable<WorkspaceEdit>

ワークスペース編集に解決されるThenable。

戻り値説明
void

提供されたThenableが解決されるまでイベントループを一時停止できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができます。

パラメーター説明
thenable: Thenable<any>

保存を遅延させる Thenable。

戻り値説明
void

NotebookEdit

ノートブック編集は、ノートブックのコンテンツに適用する必要がある編集を表します。

静的

ノートブック内のセルを削除する編集を作成するユーティリティ。

パラメーター説明
range: NotebookRange

削除するセルの範囲。

戻り値説明
NotebookEdit

ノートブック内のセルを置き換える編集を作成するユーティリティ。

パラメーター説明
index: number

セルを挿入するインデックス。

newCells: NotebookCellData[]

新しいノートブックセル。

戻り値説明
NotebookEdit

ノートブック内のセルを置き換える編集を作成するユーティリティ。

パラメーター説明
range: NotebookRange

置き換えるセルの範囲

newCells: NotebookCellData[]

新しいノートブックセル。

戻り値説明
NotebookEdit

セルのメタデータを更新する編集を作成するユーティリティ。

パラメーター説明
index: number

更新するセルのインデックス。

newCellMetadata:

セルの新しいメタデータ。

戻り値説明
NotebookEdit

ノートブックのメタデータを更新する編集を作成するユーティリティ。

パラメーター説明
newNotebookMetadata:

ノートブックの新しいメタデータ。

戻り値説明
NotebookEdit

コンストラクター

新しいノートブック編集を作成します。

パラメーター説明
range: NotebookRange

ノートブックの範囲。

newCells: NotebookCellData[]

新しいセルデータの配列。

戻り値説明
NotebookEdit

プロパティ

セルのオプションの新しいメタデータ。

挿入される新しいセル。空の場合もあります。

ノートブックのオプションの新しいメタデータ。

編集されるセルの範囲。空の場合もあります。

NotebookEditor

ノートブックにアタッチされているノートブックエディターを表します。 NotebookEditorの追加のプロパティは、提案されたAPIで利用可能であり、後で最終決定されます。

プロパティ

このノートブックエディターに関連付けられたノートブックドキュメント

このノートブックエディターのプライマリ選択範囲。

このノートブックエディターのすべての選択範囲。

プライマリ選択範囲(またはフォーカスされた範囲)はselections[0]です。ドキュメントにセルがない場合、プライマリ選択範囲は空{ start: 0, end: 0 }です。

このエディターが表示される列。

エディターの現在の可視範囲(垂直方向)。

メソッド

指定された範囲を表示するために、revealTypeで示されるようにスクロールします。

パラメーター説明
range: NotebookRange

範囲。

revealType?: NotebookEditorRevealType

rangeを表示するためのスクロール戦略。

戻り値説明
void

NotebookEditorRevealType

ノートブックにアタッチされているノートブックエディターを表します。

列挙メンバー

範囲は、可能な限り少ないスクロールで表示されます。

範囲は常にビューポートの中央に表示されます。

範囲がビューポートの外側にある場合は、ビューポートの中央に表示されます。それ以外の場合は、可能な限り少ないスクロールで表示されます。

範囲は常にビューポートの上部に表示されます。

NotebookEditorSelectionChangeEvent

ノートブックエディターの選択範囲の変更を記述するイベントを表します。

プロパティ

選択範囲が変更されたノートブックエディター

NotebookEditorVisibleRangesChangeEvent

ノートブックエディターの可視範囲の変更を記述するイベントを表します。

プロパティ

可視範囲が変更されたノートブックエディター

NotebookRange

ノートブック範囲は、2つのセルインデックスの順序付けられたペアを表します。開始は終了以下であることが保証されています。

コンストラクター

新しいノートブック範囲を作成します。startend以前でない場合、値はスワップされます。

パラメーター説明
start: number

開始インデックス

end: number

終了インデックス。

戻り値説明
NotebookRange

プロパティ

この範囲の排他的な終了インデックス(ゼロベース)。

startendが等しい場合はtrue

この範囲のゼロベースの開始インデックス。

メソッド

この範囲の新しい範囲を派生させます。

パラメーター説明
change: {end: number, start: number}

この範囲への変更を記述するオブジェクト。

戻り値説明
NotebookRange

指定された変更を反映する範囲。変更がない場合は、this範囲を返します。

NotebookRendererMessaging

レンダーメッセージングは、単一のレンダラーと通信するために使用されます。 notebooks.createRendererMessagingから返されます。

イベント

レンダラーからメッセージを受信したときに発生するイベント。

メソッド

1つまたはすべてのレンダラーにメッセージを送信します。

パラメーター説明
message: any

送信するメッセージ

editor?: NotebookEditor

メッセージのターゲットとなるエディター。提供されていない場合、メッセージはすべてのレンダラーに送信されます。

戻り値説明
Thenable<boolean>

メッセージがレンダラーに正常に配信されたかどうかを示すブール値。

NotebookSerializer

ノートブックシリアライザーは、エディターがノートブックファイルを開くことを可能にします。

そのコアでは、エディターはノートブックデータ構造のみを認識しており、そのデータ構造がファイルにどのように書き込まれるか、またはファイルからどのように読み取られるかは認識していません。ノートブックシリアライザーは、バイトをノートブックデータに逆シリアル化し、その逆も行うことで、このギャップを埋めます。

メソッド

ノートブックファイルの内容をノートブックデータ構造に逆シリアル化します。

パラメーター説明
content: Uint8Array

ノートブックファイルの内容。

token: CancellationToken

キャンセルトークン。

戻り値説明
NotebookData | Thenable<NotebookData>

ノートブックデータ、またはそのようなデータに解決されるThenable。

ノートブックデータをファイルコンテンツにシリアル化します。

パラメーター説明
data: NotebookData

ノートブックデータ構造。

token: CancellationToken

キャンセルトークン。

戻り値説明
Uint8Array | Thenable<Uint8Array>

バイト配列、またはそのような配列に解決される Thenable。

OnEnterRule

Enterキーを押したときに評価されるルールを記述します。

プロパティ

実行するアクション。

このルールは、カーソルの後のテキストがこの正規表現に一致する場合にのみ実行されます。

このルールは、カーソルの前のテキストがこの正規表現に一致する場合にのみ実行されます。

このルールは、現在の行の上のテキストがこの正規表現に一致する場合にのみ実行されます。

OnTypeFormattingEditProvider

ドキュメントフォーマットプロバイダーインターフェースは、拡張機能とフォーマット機能の間の契約を定義します。

メソッド

文字が入力された後にフォーマット編集を提供します。

指定された位置と文字は、}が入力されたときに一致する{を見つけるなど、プロバイダーが拡張する位置の範囲をヒントする必要があります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

ch: string

入力された文字。

options: FormattingOptions

フォーマットを制御するオプション。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TextEdit[]>

テキスト編集のセット、またはそのようなものに解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

OpenDialogOptions

ファイルを開くダイアログの動作を構成するためのオプション。

  • 注1:WindowsおよびLinuxでは、ファイルダイアログはファイルセレクターとフォルダーセレクターの両方になることはできません。したがって、これらのプラットフォームでcanSelectFilescanSelectFoldersの両方をtrueに設定すると、フォルダーセレクターが表示されます。
  • 注2:canSelectFilescanSelectFoldersを明示的にfalseに設定することは無駄であり、エディターはファイルを​​選択するようにオプションをサイレントに調整します。

プロパティ

ファイルの選択を許可します。デフォルトはtrueです。

フォルダーの選択を許可します。デフォルトはfalseです。

多数のファイルまたはフォルダーを選択できるようにします。

ダイアログが開いたときに表示するリソース。

ダイアログで使用されるファイルフィルターのセット。各エントリは、 "TypeScript"のような人間が読めるラベルと、拡張子の配列です。例:

{
    'Images': ['png', 'jpg'],
    'TypeScript': ['ts', 'tsx']
}

「開く」ボタンの人間が読める文字列。

ダイアログのタイトル。

このパラメーターは、すべてのオペレーティングシステムが開くダイアログにタイトルを表示するわけではないため(たとえば、macOS)、無視される場合があります。

OutputChannel

出力チャンネルは、読み取り専用のテキスト情報のコンテナです。

OutputChannelのインスタンスを取得するには、createOutputChannelを使用します。

プロパティ

この出力チャネルの人間が読める名前。

メソッド

指定された値をチャネルに追加します。

パラメーター説明
value: string

文字列。falsy 値は出力されません。

戻り値説明
void

指定された値と改行文字をチャネルに追加します。

パラメーター説明
value: string

文字列。falsy 値も出力されます。

戻り値説明
void

チャネルからすべての出力を削除します。

パラメーター説明
戻り値説明
void

破棄して、関連付けられたリソースを解放します。

パラメーター説明
戻り値説明
void

このチャネルを UI から非表示にします。

パラメーター説明
戻り値説明
void

チャネルからのすべての出力を指定された値に置き換えます。

パラメーター説明
value: string

文字列。falsy 値は出力されません。

戻り値説明
void

このチャネルを UI に表示します。

パラメーター説明
preserveFocus?: boolean

true の場合、チャネルはフォーカスを取得しません。

戻り値説明
void

このチャネルを UI に表示します。

  • deprecated - 1つのパラメータ (show(preserveFocus?: boolean): void) のオーバーロードを使用してください。
パラメーター説明
column?: ViewColumn

この引数は非推奨であり、無視されます。

preserveFocus?: boolean

true の場合、チャネルはフォーカスを取得しません。

戻り値説明
void

OverviewRulerLane

概要ルーラーレーンで装飾をレンダリングするためのさまざまな位置を表します。概要ルーラーは3つのレーンをサポートしています。

列挙メンバー

概要ルーラーの左レーン。

概要ルーラーの中央レーン。

概要ルーラーの右レーン。

概要ルーラーのすべてのレーン。

ParameterInformation

呼び出し可能なシグネチャのパラメーターを表します。パラメーターには、ラベルとドキュメントコメントを含めることができます。

コンストラクター

新しいパラメーター情報オブジェクトを作成します。

パラメーター説明
label: string | [number, number]

ラベル文字列、またはそれを含むシグネチャラベル内の開始オフセット(開始位置を含む)と終了オフセット(終了位置を含まない)。

documentation?: string | MarkdownString

ドキュメント文字列。

戻り値説明
ParameterInformation

プロパティ

このシグネチャの人間が読めるドキュメントコメント。UIに表示されますが、省略可能です。

このシグネチャのラベル。

文字列、またはそれを含むシグネチャラベル内の開始オフセット(開始位置を含む)と終了オフセット(終了位置を含まない)。: string 型のラベルは、それを含むシグネチャ情報のラベルの部分文字列である必要があります。

Position

カーソルの位置など、行と文字の位置を表します。

Position オブジェクトはimmutable(不変)です。既存の Position から新しい Position を派生させるには、with メソッドまたは translate メソッドを使用してください。

コンストラクター

パラメーター説明
line: number

ゼロから始まる行の値。

character: number

ゼロから始まる文字の値。

戻り値説明
Position

プロパティ

ゼロから始まる文字の値。

文字オフセットは、UTF-16 コードユニットを使用して表現されます。

ゼロから始まる行の値。

メソッド

これを other と比較します。

パラメーター説明
other: Position

ポジション。

戻り値説明
number

このポジションが指定されたポジションより前にある場合はゼロより小さい数値、このポジションが指定されたポジションより後にある場合はゼロより大きい数値、またはこのポジションと指定されたポジションが等しい場合はゼロ。

このポジションが other より後にあるかどうかを確認します。

パラメーター説明
other: Position

ポジション。

戻り値説明
boolean

ポジションが行番号が大きい行にあるか、または同じ行番号で文字番号が大きい場合、true

このポジションが other 以降であるかどうかを確認します。

パラメーター説明
other: Position

ポジション。

戻り値説明
boolean

ポジションが行番号が大きい行にあるか、または同じ行番号で文字番号が大きいか等しい場合、true

このポジションが other より前にあるかどうかを確認します。

パラメーター説明
other: Position

ポジション。

戻り値説明
boolean

ポジションが行番号が小さい行にあるか、または同じ行番号で文字番号が小さい場合、true

このポジションが other 以前であるかどうかを確認します。

パラメーター説明
other: Position

ポジション。

戻り値説明
boolean

ポジションが行番号が小さい行にあるか、または同じ行番号で文字番号が小さいか等しい場合、true

このポジションが other と等しいかどうかを確認します。

パラメーター説明
other: Position

ポジション。

戻り値説明
boolean

指定されたポジションの行と文字が、このポジションの行と文字と等しい場合、true

このポジションを基準とした新しいポジションを作成します。

パラメーター説明
lineDelta?: number

行の値の差分値。デフォルトは 0 です。

characterDelta?: number

文字の値の差分値。デフォルトは 0 です。

戻り値説明
Position

行と文字が、現在の行と文字、および対応する差分の合計であるポジション。

このポジションを基準とした新しいポジションを派生させます。

パラメーター説明
change: {characterDelta: number, lineDelta: number}

このポジションへの差分を記述するオブジェクト。

戻り値説明
Position

指定された差分を反映するポジション。変更がない場合は、this ポジションを返します。

このポジションから派生した新しいポジションを作成します。

パラメーター説明
line?: number

行の値として使用される値。デフォルトは既存の値です

character?: number

文字の値として使用される値。デフォルトは既存の値です

戻り値説明
Position

行と文字が指定された値に置き換えられたポジション。

このポジションから新しいポジションを派生させます。

パラメーター説明
change: {character: number, line: number}

このポジションへの変更を記述するオブジェクト。

戻り値説明
Position

指定された変更を反映するポジション。変更がない場合は、this ポジションを返します。

PreparedToolInvocation

LanguageModelTool.prepareInvocation の呼び出しの結果。

プロパティ

このプロパティが存在する場合、ツールを実行する前にユーザーに確認を求める必要があることを示します。副作用があるツール、または潜在的に危険な可能性があるツールについては、ユーザーに確認を求める必要があります。

ツールの実行中に表示するカスタマイズされた進行状況メッセージ。

ProcessExecution

タスクの実行は、シェルインタラクションなしで外部プロセスとして行われます。

コンストラクター

プロセス実行を作成します。

パラメーター説明
process: string

開始するプロセス。

options?: ProcessExecutionOptions

開始されたプロセスのオプション(任意)。

戻り値説明
ProcessExecution

プロセス実行を作成します。

パラメーター説明
process: string

開始するプロセス。

args: string[]

プロセスに渡される引数。

options?: ProcessExecutionOptions

開始されたプロセスのオプション(任意)。

戻り値説明
ProcessExecution

プロパティ

プロセスに渡される引数。デフォルトは空の配列です。

プロセス実行時に使用されるプロセスオプション。デフォルトは undefined です。

実行されるプロセス。

ProcessExecutionOptions

プロセス実行のオプション

プロパティ

実行されるプログラムまたはシェルの現在のワーキングディレクトリ。省略した場合、ツールの現在のワークスペースルートが使用されます。

実行されるプログラムまたはシェルの追加の環境。省略した場合、親プロセスの環境が使用されます。提供された場合、親プロセスの環境とマージされます。

Progress<T>

進捗状況の更新を報告するための一般的な方法を定義します。

メソッド

進捗状況の更新を報告します。

パラメーター説明
value: T

メッセージや、どの程度の作業が完了したかのレポートなどの進捗項目

戻り値説明
void

ProgressLocation

進捗情報を表示できるエディター内の場所。進捗状況がどのように視覚的に表現されるかは、場所によって異なります。

列挙メンバー

ソース管理ビューレットの進捗状況を表示します。アイコンのオーバーレイとして、および(表示されている場合は)ビューレット内のプログレスバーとして表示されます。キャンセル、離散的な進捗状況、または操作を説明するラベルはサポートされていません。

エディターのステータスバーに進捗状況を表示します。キャンセルも離散的な進捗状況もサポートされていません。進捗ラベルで $(<name>) 構文を介して テーマアイコン のレンダリングをサポートします。

オプションのキャンセルボタン付きの通知として進捗状況を表示します。無限および離散的な進捗状況の表示をサポートしますが、アイコンのレンダリングはサポートしません。

ProgressOptions

進捗状況をどこに、どのように表示するかを記述する値オブジェクト。

プロパティ

ユーザーが長時間実行されている操作をキャンセルできるように、キャンセルボタンを表示するかどうかを制御します。現在、ProgressLocation.Notification のみがキャンセルボタンの表示をサポートしていることに注意してください。

進捗状況を表示する場所。

操作を説明するために使用される人間が読める文字列。

ProviderResult<T>

HoverProvider などのプロバイダーが返す可能性のある値を表すプロバイダーの結果。 一つには、これは実際の結果型 THover など)、またはその型 T に解決される Thenable です。 さらに、nullundefined を返すことができます。直接的にも、Thenable からも。

以下のスニペットはすべて、HoverProvider の有効な実装です。

let a: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return new Hover('Hello World');
  }
};

let b: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return new Promise(resolve => {
      resolve(new Hover('Hello World'));
    });
  }
};

let c: HoverProvider = {
  provideHover(doc, pos, token): ProviderResult<Hover> {
    return; // undefined
  }
};

Pseudoterminal

ターミナルを制御するための拡張機能を有効にする、ターミナル pty のインターフェースを定義します。

イベント

発生すると、ターミナルの名前を変更できるイベント。

Pseudoterminal.open が呼び出される前に発生したイベントは無視されます。

例: ターミナル名を "My new terminal" に変更します。

const writeEmitter = new vscode.EventEmitter<string>();
const changeNameEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidChangeName: changeNameEmitter.event,
  open: () => changeNameEmitter.fire('My new terminal'),
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

発生すると、pty が閉じられ、ターミナルが破棄されることを通知するイベント。

Pseudoterminal.open が呼び出される前に発生したイベントは無視されます。

数値を使用して、ターミナルの終了コードを提供できます。終了コードは正である必要があり、ゼロ以外の終了コードはエラーを示します。これは、通常のターミナルの場合は通知を表示し、CustomExecution API で使用すると、依存タスクの続行を許可します。

例: "y" が押されたときにターミナルを終了し、それ以外の場合は通知を表示します。

const writeEmitter = new vscode.EventEmitter<string>();
const closeEmitter = new vscode.EventEmitter<void>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidClose: closeEmitter.event,
  open: () => writeEmitter.fire('Press y to exit successfully'),
  close: () => {},
  handleInput: data => {
    if (data !== 'y') {
      vscode.window.showInformationMessage('Something went wrong');
    }
    closeEmitter.fire();
  }
};
const terminal = vscode.window.createTerminal({ name: 'Exit example', pty });
terminal.show(true);

発生すると、ターミナルの dimensions をオーバーライドできるイベント。 設定すると、オーバーライドされた寸法は、ターミナルの実際の寸法よりも低い場合にのみ有効になります(つまり、スクロールバーが表示されることはありません)。 ターミナルを通常の寸法(パネルのサイズに合わせる)に戻すには、undefined に設定します。

Pseudoterminal.open が呼び出される前に発生したイベントは無視されます。

例: ターミナルの寸法を 20 列、10 行にオーバーライドします。

const dimensionsEmitter = new vscode.EventEmitter<vscode.TerminalDimensions>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  onDidOverrideDimensions: dimensionsEmitter.event,
  open: () => {
    dimensionsEmitter.fire({
      columns: 20,
      rows: 10
    });
  },
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

発生すると、ターミナルにデータを書き込むイベント。Terminal.sendText とは異なり、テキストを基になる子擬似デバイス(子)に送信しますが、これはテキストを親擬似デバイス(ターミナル自体)に書き込みます。

\n を書き込んでもカーソルが 1 行下に移動するだけで、カーソルを左端のセルに移動するには \r も書き込む必要があります。

Pseudoterminal.open が呼び出される前に発生したイベントは無視されます。

例: 赤いテキストをターミナルに書き込みます。

const writeEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  open: () => writeEmitter.fire('\x1b[31mHello world\x1b[0m'),
  close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });

例: カーソルを 10 行目、20 列目に移動し、アスタリスクを書き込みます。

writeEmitter.fire('\x1b[10;20H*');

メソッド

ユーザーの操作によってターミナルが閉じられたときに処理を実装します。

パラメーター説明
戻り値説明
void

ターミナルへの入力キーストローク、または拡張機能が Terminal.sendText を呼び出したときに処理を実装します。data には、キーストローク/テキストが対応する VT シーケンス表現にシリアル化されて含まれています。

パラメーター説明
data: string

入力データ。

例: ターミナルに入力をエコーバックします。Enter キー (\r) のシーケンスは CRLF に変換され、新しい行に移動し、カーソルを行の先頭に移動します。

const writeEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
  onDidWrite: writeEmitter.event,
  open: () => {},
  close: () => {},
  handleInput: data => writeEmitter.fire(data === '\r' ? '\r\n' : data)
};
vscode.window.createTerminal({ name: 'Local echo', pty });
戻り値説明
void

pty が開き、イベントの発行を開始する準備ができたときに処理を実装します。

パラメーター説明
initialDimensions: TerminalDimensions

ターミナルの寸法。ターミナルパネルがこれまでに開かれていない場合、これは undefined になります。

戻り値説明
void

フォントサイズの変更時やパネルのサイズ変更時など、ターミナルパネルに収まる行数と列数が変更されたときに処理を実装します。ターミナルの初期状態の寸法は、ターミナルのサイズがユーザーインターフェースに表示されるまで不明であるため、これがトリガーされるまで undefined として扱う必要があります。

寸法が onDidOverrideDimensions によってオーバーライドされている場合でも、setDimensions は通常のパネル寸法で引き続き呼び出され、拡張機能は寸法の変更に引き続き対応できます。

パラメーター説明
dimensions: TerminalDimensions

新しい寸法。

戻り値説明
void

QuickDiffProvider

クイック差分プロバイダーは、変更されたリソースの元の状態への uri を提供します。エディターはこの情報を使用して、テキスト内にアドホック差分をレンダリングします。

メソッド

指定されたリソース URI の元のリソースへの Uri を提供します。

パラメーター説明
uri: Uri

テキストエディターで開いているリソースの URI。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Uri>

一致する元のリソースの URI に解決される Thenable。

QuickInput

最初は表示されない軽量なユーザー入力 UI。プロパティを通じて構成した後、拡張機能は QuickInput.show を呼び出して表示できます。

この UI が非表示になる理由はいくつかあり、拡張機能は QuickInput.onDidHide を通じて通知を受け取ります。(例:QuickInput.hide の明示的な呼び出し、ユーザーが Esc キーを押した場合、他の入力 UI が開いた場合など)

ユーザーが Enter キーを押すか、現在の状態の受け入れを意味するその他のジェスチャを行っても、この UI コンポーネントは自動的に非表示になりません。ユーザーの入力を受け入れるかどうか、および UI を実際に QuickInput.hide の呼び出しを通じて非表示にするかどうかを決定するのは、拡張機能次第です。

拡張機能がこの入力 UI を必要としなくなった場合は、QuickInput.dispose して、それに関連付けられているリソースを解放できるようにする必要があります。

具体的な UI については、QuickPick および InputBox を参照してください。

イベント

この入力 UI が非表示になったときに通知するイベント。

この UI が非表示になる理由はいくつかあり、拡張機能は QuickInput.onDidHide を通じて通知を受け取ります。(例:QuickInput.hide の明示的な呼び出し、ユーザーが Esc キーを押した場合、他の入力 UI が開いた場合など)

プロパティ

UI がプログレスインジケーターを表示する必要があるかどうか。デフォルトは false です。

より多くのデータをロードしたり、ユーザー入力を検証したりする間など、これを true に変更します。

UI がユーザー入力を許可する必要があるかどうか。デフォルトは true です。

ユーザー入力を検証したり、ユーザー入力の次のステップのためにデータをロードしたりする間など、これを false に変更します。

UI フォーカスを失っても UI を開いたままにする必要があるかどうか。デフォルトは false です。この設定は iPad では無視され、常に false になります。

オプションの現在のステップ数。

オプションのタイトル。

オプションの合計ステップ数。

メソッド

この入力 UI と関連するリソースを破棄します。まだ表示されている場合は、最初に非表示にされます。この呼び出しの後、入力 UI は機能しなくなり、それ以上のメソッドやプロパティにアクセスしないでください。代わりに、新しい入力 UI を作成する必要があります。

パラメーター説明
戻り値説明
void

この入力 UI を非表示にします。これは QuickInput.onDidHide イベントも発生させます。

パラメーター説明
戻り値説明
void

現在の構成で入力 UI を表示します。他の入力 UI は最初に QuickInput.onDidHide イベントを発生させます。

パラメーター説明
戻り値説明
void

QuickInputButton

QuickPick または InputBox のアクションのボタン。

プロパティ

ボタンのアイコン。

オプションのツールチップ。

QuickInputButtons

QuickPick および InputBox の定義済みボタン。

静的

QuickPick および InputBox の戻るボタン。

ナビゲーションの「戻る」ボタンが必要な場合は、一貫性のためにこれを使用する必要があります。定義済みのアイコン、ツールチップ、および場所が付属しています。

QuickPick<T>

タイプ T のアイテムのリストからアイテムをユーザーに選択させるための具体的な QuickInput。 アイテムはフィルタテキストフィールドを通じてフィルタリングでき、複数のアイテムを選択できるようにする canSelectMany オプションがあります。

多くの場合、より便利なwindow.showQuickPickの方が使いやすいことに注意してください。window.showQuickPickでは必要な柔軟性が提供されない場合は、window.createQuickPickを使用する必要があります。

イベント

ユーザーが選択したアイテムの受け入れを示したときに通知するイベント。

アクティブなアイテムが変更されたときに通知するイベント。

選択されたアイテムが変更されたときに通知するイベント。

フィルタテキストの値が変更されたときに通知するイベント。

この入力 UI が非表示になったときに通知するイベント。

この UI が非表示になる理由はいくつかあり、拡張機能は QuickInput.onDidHide を通じて通知を受け取ります。(例:QuickInput.hide の明示的な呼び出し、ユーザーが Esc キーを押した場合、他の入力 UI が開いた場合など)

トップレベルボタン(buttons に格納されているボタン)がトリガーされたときに通知するイベント。このイベントは、QuickPickItem のボタンでは発生しません。

特定の QuickPickItem のボタンがトリガーされたときに通知するイベント。このイベントは、タイトルバーのボタンでは発生しません。

プロパティ

アクティブなアイテム。これは、拡張機能によって読み取りおよび更新できます。

UI がプログレスインジケーターを表示する必要があるかどうか。デフォルトは false です。

より多くのデータをロードしたり、ユーザー入力を検証したりする間など、これを true に変更します。

UI のアクション用のボタン。

複数のアイテムを同時に選択できるかどうか。デフォルトは false です。

UI がユーザー入力を許可する必要があるかどうか。デフォルトは true です。

ユーザー入力を検証したり、ユーザー入力の次のステップのためにデータをロードしたりする間など、これを false に変更します。

UI フォーカスを失っても UI を開いたままにする必要があるかどうか。デフォルトは false です。この設定は iPad では無視され、常に false になります。

選択するアイテム。これは、拡張機能によって読み取りおよび更新できます。

クイックピックアイテムが更新されたときに、クイックピックのスクロール位置を維持するためのオプションフラグ。デフォルトは false です。

フィルタテキストをアイテムの説明とも照合する必要があるかどうか。デフォルトは false です。

フィルタテキストをアイテムの詳細とも照合する必要があるかどうか。デフォルトは false です。

フィルタが入力されていない場合にフィルタテキストボックスに表示されるオプションのプレースホルダー。

選択されたアイテム。これは、拡張機能によって読み取りおよび更新できます。

オプションの現在のステップ数。

オプションのタイトル。

オプションの合計ステップ数。

フィルタテキストの現在の値。

メソッド

この入力 UI と関連するリソースを破棄します。まだ表示されている場合は、最初に非表示にされます。この呼び出しの後、入力 UI は機能しなくなり、それ以上のメソッドやプロパティにアクセスしないでください。代わりに、新しい入力 UI を作成する必要があります。

パラメーター説明
戻り値説明
void

この入力 UI を非表示にします。これは QuickInput.onDidHide イベントも発生させます。

パラメーター説明
戻り値説明
void

現在の構成で入力 UI を表示します。他の入力 UI は最初に QuickInput.onDidHide イベントを発生させます。

パラメーター説明
戻り値説明
void

QuickPickItem

リストから選択できる項目を表します。

プロパティ

常にこの項目を表示します。

注意: kindQuickPickItemKind.Separator に設定されている場合、このプロパティは無視されます。

この特定の項目に表示されるオプションのボタンです。これらのボタンは、クリックされると QuickPickItemButtonEvent をトリガーします。ボタンは、createQuickPick() API によって作成されたクイックピックを使用している場合にのみ表示されます。ボタンは、showQuickPick() API を使用している場合は表示されません。

注意: kindQuickPickItemKind.Separator に設定されている場合、このプロパティは無視されます。

同じ行内で目立たないように表示される、人間が読める文字列です。$(<name>) 構文による テーマアイコン のレンダリングをサポートします。

注意: kindQuickPickItemKind.Separator に設定されている場合、このプロパティは無視されます。

別の行で目立たないように表示される、人間が読める文字列です。$(<name>) 構文による テーマアイコン のレンダリングをサポートします。

注意: kindQuickPickItemKind.Separator に設定されている場合、このプロパティは無視されます。

QuickPickItem のアイコンパスまたは ThemeIcon です。

クイックピックでのこの項目のレンダリング方法を決定する QuickPickItem の種類です。指定しない場合のデフォルトは QuickPickItemKind.Default です。

目立つように表示される、人間が読める文字列です。$(<name>) 構文による テーマアイコン のレンダリングをサポートします。

注意: kindQuickPickItemKind.Default (セパレーターではなく通常の項目) に設定されている場合、$(<name>) 構文による テーマアイコン のレンダリングをサポートします。

この項目が最初に選択されているかどうかを示すオプションのフラグです。これは showQuickPick() API を使用している場合にのみ有効です。createQuickPick() API で同じことを行うには、QuickPick.selectedItems を最初に選択したい項目に設定するだけです。(注意: これは、ピッカーが複数選択を許可している場合にのみ有効です。)

参照 QuickPickOptions.canPickMany

注意: kindQuickPickItemKind.Separator に設定されている場合、このプロパティは無視されます。

QuickPickItemButtonEvent<T>

特定の QuickPickItem のボタンがトリガーされたときに通知するイベント。このイベントは、タイトルバーのボタンでは発生しません。

プロパティ

クリックされたボタン。

ボタンが属する項目。

QuickPickItemKind

列挙メンバー

QuickPickItem の種類が Separator の場合、項目は単なる視覚的な区切りであり、実際の項目を表しません。適用されるプロパティは label のみです。QuickPickItem の他のすべてのプロパティは無視され、効果はありません。

デフォルトの QuickPickItem.kind は、クイックピックで選択できる項目です。

QuickPickOptions

クイックピック UI の動作を設定するためのオプション。

イベント

項目が選択されるたびに呼び出されるオプションの関数。

パラメーター説明
item: string | QuickPickItem
戻り値説明
any

プロパティ

ピッカーで複数選択を許可するオプションのフラグ。true の場合、結果は選択項目の配列になります。

フォーカスがエディターの別の部分または別のウィンドウに移動しても、ピッカーを開いたままにする場合は true に設定します。この設定は iPad では無視され、常に false になります。

ピックをフィルタリングするときに説明を含めるオプションのフラグ。

ピックをフィルタリングするときに詳細を含めるオプションのフラグ。

ユーザーが何を選択すべきかをガイドするために、入力ボックスにプレースホルダーとして表示するオプションの文字列。

クイックピックのタイトルを表すオプションの文字列。

Range

Range は、2 つの位置の順序付けられたペアを表します。start.isBeforeOrEqual(end) であることが保証されています。

Range オブジェクトは不変です。既存の Range から新しい範囲を派生させるには、withintersection、または union メソッドを使用します。

コンストラクター

2 つの位置から新しい範囲を作成します。startend より前または等しくない場合、値は交換されます。

パラメーター説明
start: Position

ポジション。

end: Position

ポジション。

戻り値説明
Range

数値座標から新しい範囲を作成します。new Range(new Position(startLine, startCharacter), new Position(endLine, endCharacter)) を使用するよりも短い記述です。

パラメーター説明
startLine: number

ゼロから始まる行の値。

startCharacter: number

ゼロから始まる文字の値。

endLine: number

ゼロから始まる行の値。

endCharacter: number

ゼロから始まる文字の値。

戻り値説明
Range

プロパティ

終了位置。start 以降です。

startendが等しい場合はtrue

start.lineend.line が等しい場合は true

開始位置。end 以前です。

メソッド

位置または範囲がこの範囲に含まれているかどうかを確認します。

パラメーター説明
positionOrRange: Range | Position

位置または範囲。

戻り値説明
boolean

位置または範囲がこの範囲の内側または等しい場合は true

range とこの範囲を交差させ、新しい範囲を返します。範囲に重複がない場合は undefined を返します。

パラメーター説明
range: Range

範囲。

戻り値説明
Range

開始位置が大きく、終了位置が小さい範囲。重複がない場合は undefined を返します。

other がこの範囲と等しいかどうかを確認します。

パラメーター説明
other: Range

範囲。

戻り値説明
boolean

開始位置と終了位置がこの範囲の開始位置と終了位置に 等しい 場合に true

other とこの範囲の和集合を計算します。

パラメーター説明
other: Range

範囲。

戻り値説明
Range

開始位置が小さく、終了位置が大きい範囲。

この範囲から新しい範囲を派生させます。

パラメーター説明
start?: Position

開始位置として使用する必要がある位置。デフォルト値は 現在の開始位置 です。

end?: Position

終了位置として使用する必要がある位置。デフォルト値は 現在の終了位置 です。

戻り値説明
Range

指定された開始位置と終了位置を持つ、この範囲から派生した範囲。開始位置と終了位置が異ならない場合、this 範囲が返されます。

この範囲から新しい範囲を派生させます。

パラメーター説明
change: {end: Position, start: Position}

この範囲への変更を記述するオブジェクト。

戻り値説明
Range

指定された変更を反映する範囲。変更がない場合は、this範囲を返します。

ReferenceContext

参照を要求する際の追加情報を含む値オブジェクト。

プロパティ

現在のシンボルの宣言を含めます。

ReferenceProvider

参照プロバイダーインターフェースは、拡張機能と 参照の検索 機能間のコントラクトを定義します。

メソッド

指定された位置とドキュメントのプロジェクト全体の参照のセットを提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

context: ReferenceContext

参照要求に関する追加情報。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Location[]>

位置の配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

RelativePattern

相対パターンは、ベースファイルパスに対して相対的に一致する glob パターンを構築するヘルパーです。ベースパスは、文字列または URI としての絶対ファイルパス、または ワークスペースフォルダー のいずれかになります。ワークスペースフォルダーは、相対パターンを作成する推奨方法です。

コンストラクター

ベースファイルパスと一致するパターンを持つ新しい相対パターンオブジェクトを作成します。このパターンは、ベースに対する相対ファイルパスで一致します。

const folder = vscode.workspace.workspaceFolders?.[0];
if (folder) {
  // Match any TypeScript file in the root of this workspace folder
  const pattern1 = new vscode.RelativePattern(folder, '*.ts');

  // Match any TypeScript file in `someFolder` inside this workspace folder
  const pattern2 = new vscode.RelativePattern(folder, 'someFolder/*.ts');
}
パラメーター説明
base: string | Uri | WorkspaceFolder

このパターンが相対的に照合されるベース。パターンがワークスペース内で一致する必要がある場合は、ワークスペースフォルダー を渡すことをお勧めします。それ以外の場合、URI または文字列は、パターンがワークスペース外のファイルパス用である場合にのみ使用する必要があります。

pattern: string

ベースに対する相対パスで一致するファイル glob パターン (例: *.{ts,js})。

戻り値説明
RelativePattern

プロパティ

このパターンが相対的に照合されるベースファイルパス。

これは、RelativePattern.baseUrifsPath 値と一致します。

注意: この値を更新すると、RelativePattern.baseUrifile スキームの URI に更新されます。

  • 非推奨 - このプロパティは非推奨です。RelativePattern.baseUri を代わりに使用してください。

このパターンが相対的に照合されるベースファイルパス。ファイルパスは絶対パスである必要があり、末尾にパス区切り文字を含めたり、相対セグメント (. または ..) を含めたりしないでください。

ベースパスに対する相対パスで一致するファイル glob パターン (例: *.{ts,js})。

例: ベースが /home/work/folder で、ファイルパスが /home/work/folder/index.js の場合、ファイル glob パターンは index.js と一致します。

RenameProvider

リネームプロバイダーインターフェースは、拡張機能と リネーム 機能間のコントラクトを定義します。

メソッド

リネームを実行する前に、位置を解決および検証するためのオプションの関数。結果は、範囲、または範囲とプレースホルダーテキストにすることができます。プレースホルダーテキストは、リネームされるシンボルの識別子である必要があります。省略した場合、返された範囲のテキストが使用されます。

注意: この関数は、指定された位置でリネームが許可されない場合、エラーをスローするか、拒否された Thenable を返す必要があります。

パラメーター説明
document: TextDocument

リネームが呼び出されるドキュメント。

position: Position

リネームが呼び出される位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Range | {placeholder: string, range: Range}>

リネームされる識別子の範囲または範囲とプレースホルダーテキスト。結果がない場合は、undefined または null を返すことで通知できます。

シンボルを別の名前にリネームするために 1 つまたは複数のリソースに対して行う必要のある変更を記述する編集を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

newName: string

シンボルの新しい名前。指定された名前が有効でない場合、プロバイダーは拒否された Promise を返す必要があります。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<WorkspaceEdit>

ワークスペース編集、またはそのような編集に解決される Thenable。結果がない場合は、undefined または null を返すことで通知できます。

RunOptions

タスクの実行オプション。

プロパティ

タスク変数を再実行時に再評価するかどうかを制御します。

SaveDialogOptions

ファイル保存ダイアログの動作を設定するためのオプション。

プロパティ

ダイアログが開いたときに表示するリソース。

ダイアログで使用されるファイルフィルターのセット。各エントリは、 "TypeScript"のような人間が読めるラベルと、拡張子の配列です。例:

{
    'Images': ['png', 'jpg'],
    'TypeScript': ['ts', 'tsx']
}

保存ボタンの人間が読める文字列。

ダイアログのタイトル。

このパラメーターは、すべてのオペレーティングシステムが保存ダイアログにタイトルを表示するわけではないため (たとえば、macOS)、無視される場合があります。

SecretStorage

暗号化されて保存される秘密情報 (または機密情報) のストレージユーティリティを表します。シークレットストレージの実装はプラットフォームごとに異なり、シークレットはマシン間で同期されません。

イベント

シークレットが保存または削除されたときに発生します。

メソッド

ストレージからシークレットを削除します。

パラメーター説明
key: string

シークレットが保存されたキー。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

キーで保存されたシークレットを取得します。そのキーに一致するパスワードがない場合は undefined を返します。

パラメーター説明
key: string

シークレットが保存されたキー。

戻り値説明
Thenable<string>

保存された値、または undefined

指定されたキーでシークレットを保存します。

パラメーター説明
key: string

シークレットを保存するキー。

value: string

シークレット。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

SecretStorageChangeEvent

シークレットが追加または削除されたときに発生するイベントデータ。

プロパティ

変更されたシークレットのキー。

SelectedCompletionInfo

現在選択されている補完項目について説明します。

プロパティ

この補完項目が受け入れられた場合に置き換えられる範囲。

この補完が受け入れられた場合に範囲が置き換えられるテキスト。

Selection

エディター内のテキスト選択を表します。

コンストラクター

2 つの位置から選択範囲を作成します。

パラメーター説明
anchor: Position

ポジション。

active: Position

ポジション。

戻り値説明
Selection

4 つの座標から選択範囲を作成します。

パラメーター説明
anchorLine: number

ゼロから始まる行の値。

anchorCharacter: number

ゼロから始まる文字の値。

activeLine: number

ゼロから始まる行の値。

activeCharacter: number

ゼロから始まる文字の値。

戻り値説明
Selection

プロパティ

カーソルの位置。この位置は anchor の前または後の場合があります。

選択範囲が始まる位置。この位置は active の前または後の場合があります。

終了位置。start 以降です。

startendが等しい場合はtrue

選択範囲の アンカー終了 位置である場合、選択範囲は反転しています。

start.lineend.line が等しい場合は true

開始位置。end 以前です。

メソッド

選択範囲の開始位置を取得します。

位置または範囲がこの範囲に含まれているかどうかを確認します。

パラメーター説明
positionOrRange: Range | Position

位置または範囲。

戻り値説明
boolean

位置または範囲がこの範囲の内側または等しい場合は true

指定された位置または範囲が選択範囲に含まれているかどうかを判定します。

range とこの範囲を交差させ、新しい範囲を返します。範囲に重複がない場合は undefined を返します。

パラメーター説明
range: Range

範囲。

戻り値説明
Range

開始位置が大きく、終了位置が小さい範囲。重複がない場合は undefined を返します。

指定された範囲との共通部分である範囲を返します。

other がこの範囲と等しいかどうかを確認します。

パラメーター説明
other: Range

範囲。

戻り値説明
boolean

開始位置と終了位置がこの範囲の開始位置と終了位置に 等しい 場合に true

この選択範囲が指定された範囲と等しいかどうかを判定します。

other とこの範囲の和集合を計算します。

パラメーター説明
other: Range

範囲。

戻り値説明
Range

開始位置が小さく、終了位置が大きい範囲。

この選択範囲と指定された範囲の和集合である範囲を返します。

この範囲から新しい範囲を派生させます。

パラメーター説明
start?: Position

開始位置として使用する必要がある位置。デフォルト値は 現在の開始位置 です。

end?: Position

終了位置として使用する必要がある位置。デフォルト値は 現在の終了位置 です。

戻り値説明
Range

指定された開始位置と終了位置を持つ、この範囲から派生した範囲。開始位置と終了位置が異ならない場合、this 範囲が返されます。

開始位置と終了位置を指定して新しい範囲を作成します。

この範囲から新しい範囲を派生させます。

パラメーター説明
change: {end: Position, start: Position}

この範囲への変更を記述するオブジェクト。

戻り値説明
Range

指定された変更を反映する範囲。変更がない場合は、this範囲を返します。

変更オブジェクトを指定して新しい範囲を作成します。SelectionRange

SelectionRange は、選択範囲の階層構造の一部を表します。SelectionRange は、それを包含する親の SelectionRange を持つ場合があります。

コンストラクター

新しい選択範囲を作成します。

パラメーター説明
range: Range

選択範囲の範囲。

parent?: SelectionRange

選択範囲の親。

戻り値説明
SelectionRange

プロパティ

この範囲を包含する親の選択範囲。

この選択範囲の Range

SelectionRangeProvider

SelectionRangeProvider インターフェースは、拡張機能と「選択範囲の拡大と縮小」機能間のコントラクトを定義します。

メソッド

指定された位置に対する選択範囲を提供します。

選択範囲は、各位置に対して個別に、そして独立して計算される必要があります。エディターは範囲をマージおよび重複排除しますが、プロバイダーは選択範囲の階層構造を返す必要があります。これにより、ある範囲がその親によって包含されるようになります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

positions: readonly Position[]

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<SelectionRange[]>

選択範囲、またはそのような範囲に解決される Thenable。結果がないことは、undefined または null を返すことで通知できます。

SemanticTokens

セマンティックトークンを表します。範囲内またはドキュメント全体に存在します。

以下も参照してください

コンストラクター

新しいセマンティックトークンを作成します。

パラメーター説明
data: Uint32Array

トークンデータ。

resultId?: string

結果識別子。

戻り値説明
SemanticTokens

プロパティ

実際のトークンデータ。

参照 provideDocumentSemanticTokens で形式の説明を参照してください。

トークンの結果 ID。

これは、DocumentSemanticTokensProvider.provideDocumentSemanticTokensEdits (実装されている場合)に渡される ID です。

SemanticTokensBuilder

セマンティックトークンビルダーは、差分エンコードされたセマンティックトークンを含む SemanticTokens インスタンスの作成を支援します。

コンストラクター

セマンティックトークンビルダーを作成します。

パラメーター説明
legend?: SemanticTokensLegend

セマンティックトークン凡例。

戻り値説明
SemanticTokensBuilder

メソッド

SemanticTokens インスタンスを完了して作成します。

パラメーター説明
resultId?: string
戻り値説明
SemanticTokens

別のトークンを追加します。

パラメーター説明
line: number

トークンの開始行番号(絶対値)。

char: number

トークンの開始文字(絶対値)。

length: number

文字単位でのトークンの長さ。

tokenType: number

エンコードされたトークンタイプ。

tokenModifiers?: number

エンコードされたトークン修飾子。

戻り値説明
void

別のトークンを追加します。凡例を提供する場合のみ使用してください。

パラメーター説明
range: Range

トークンの範囲。単一行である必要があります。

tokenType: string

トークンタイプ。

tokenModifiers?: readonly string[]

トークン修飾子。

戻り値説明
void

SemanticTokensEdit

セマンティックトークンの編集を表します。

参照 provideDocumentSemanticTokensEdits で形式の説明を参照してください。

コンストラクター

セマンティックトークンの編集を作成します。

パラメーター説明
start: number

開始オフセット

deleteCount: number

削除する要素の数。

data?: Uint32Array

挿入する要素

戻り値説明
SemanticTokensEdit

プロパティ

挿入する要素。

削除する要素の数。

編集の開始オフセット。

SemanticTokensEdits

セマンティックトークンの編集群を表します。

参照 provideDocumentSemanticTokensEdits で形式の説明を参照してください。

コンストラクター

新しいセマンティックトークン編集群を作成します。

パラメーター説明
edits: SemanticTokensEdit[]

セマンティックトークン編集の配列

resultId?: string

結果識別子。

戻り値説明
SemanticTokensEdits

プロパティ

トークンデータへの編集。すべての編集は初期データ状態を参照します。

トークンの結果 ID。

これは、DocumentSemanticTokensProvider.provideDocumentSemanticTokensEdits (実装されている場合)に渡される ID です。

SemanticTokensLegend

セマンティックトークン凡例には、整数エンコードされたセマンティックトークンの表現を解読するために必要な情報が含まれています。

コンストラクター

セマンティックトークン凡例を作成します。

パラメーター説明
tokenTypes: string[]

トークンタイプの配列。

tokenModifiers?: string[]

トークン修飾子の配列。

戻り値説明
SemanticTokensLegend

プロパティ

可能なトークン修飾子。

可能なトークンタイプ。

ShellExecution

シェル内で実行されるタスク実行を表します。

コンストラクター

完全なコマンドラインでシェル実行を作成します。

パラメーター説明
commandLine: string

実行するコマンドライン。

options?: ShellExecutionOptions

シェル起動のオプション(任意)。

戻り値説明
ShellExecution

コマンドと引数でシェル実行を作成します。実際の実装では、エディターはコマンドと引数からコマンドラインを構築します。これは、特に引用符に関しては解釈に依存します。コマンドラインを完全に制御する必要がある場合は、完全なコマンドラインで ShellExecution を作成するコンストラクターを使用してください。

パラメーター説明
command: string | ShellQuotedString

実行するコマンド。

args: Array<string | ShellQuotedString>

コマンド引数。

options?: ShellExecutionOptions

シェル起動のオプション(任意)。

戻り値説明
ShellExecution

プロパティ

シェル引数。完全なコマンドラインで作成された場合は undefined です。

シェルコマンド。完全なコマンドラインで作成された場合は undefined です。

シェルコマンドライン。コマンドと引数で作成された場合は undefined です。

コマンドラインがシェルで実行されるときに使用されるシェルオプション。デフォルトは undefined です。

ShellExecutionOptions

シェル実行のオプション

プロパティ

実行されたシェルの現在のワーキングディレクトリ。省略した場合、ツールの現在のワークスペースルートが使用されます。

実行されたシェルの追加環境。省略した場合、親プロセスの環境が使用されます。指定した場合、親プロセスの環境とマージされます。

シェル実行可能ファイル。

タスクを実行するために使用されるシェル実行可能ファイルに渡される引数。ほとんどのシェルでは、コマンドを実行するために特別な引数が必要です。たとえば、bash にはコマンドを実行するための -c 引数が必要で、PowerShell には -Command が必要で、cmd には /d/c の両方が必要です。

このシェルでサポートされているシェル引用符。

ShellQuotedString

使用されるシェルに応じて引用符で囲まれる文字列。

プロパティ

使用する引用符スタイル。

実際の文字列値。

ShellQuoting

引数にスペースまたはサポートされていない文字が含まれている場合に、引数をどのように引用符で囲むかを定義します。

列挙メンバー

文字エスケープを使用する必要があります。たとえば、bash では \ を、PowerShell では ` を使用します。

強い文字列引用符を使用する必要があります。たとえば、Windows cmd では " を、bash と PowerShell では ' を使用します。強い引用符は引数をリテラル文字列として扱います。PowerShell で echo 'The value is $(2 * 3)' とすると、The value is $(2 * 3) と出力されます。

弱い文字列引用符を使用する必要があります。たとえば、Windows cmd、bash、PowerShell では " を使用します。弱い引用符は、引用符で囲まれた文字列内である種​​の評価を実行します。PowerShell で echo "The value is $(2 * 3)" とすると、The value is 6 と出力されます。

ShellQuotingOptions

シェル引用符オプション。

プロパティ

文字エスケープに使用される文字。文字列が提供された場合は、スペースのみがエスケープされます。{ escapeChar, charsToEscape } リテラルが提供された場合は、charsToEscape 内のすべての文字が escapeChar を使用してエスケープされます。

強い引用符に使用される文字。文字列の長さは 1 である必要があります。

弱い引用符に使用される文字。文字列の長さは 1 である必要があります。

SignatureHelp

シグネチャヘルプは、呼び出し可能なもののシグネチャを表します。複数のシグネチャが存在する可能性がありますが、アクティブなシグネチャは 1 つのみ、アクティブなパラメーターも 1 つのみです。

コンストラクター

パラメーター説明
戻り値説明
SignatureHelp

プロパティ

アクティブなシグネチャのアクティブなパラメーター。

アクティブなシグネチャ。

1 つまたは複数のシグネチャ。

SignatureHelpContext

SignatureHelpProvider がトリガーされたコンテキストに関する追加情報。

プロパティ

現在アクティブな SignatureHelp

activeSignatureHelp は、ユーザーが使用可能なシグネチャを矢印キーで移動するのに応じて、activeSignature フィールドが更新されます。

シグネチャヘルプがトリガーされたときにすでに表示されていた場合は true

再トリガーは、シグネチャヘルプがすでにアクティブになっている場合に発生し、トリガー文字の入力、カーソルの移動、ドキュメントコンテンツの変更などのアクションによって引き起こされる可能性があります。

シグネチャヘルプがトリガーされた原因となった文字。

これは、手動でシグネチャヘルプを呼び出す場合や、カーソルを移動する場合など、入力によってシグネチャヘルプがトリガーされない場合は undefined です。

シグネチャヘルプがトリガーされた原因となったアクション。

SignatureHelpProvider

SignatureHelpProvider インターフェースは、拡張機能とパラメーターヒント機能間のコントラクトを定義します。

メソッド

指定された位置とドキュメントのシグネチャのヘルプを提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

context: SignatureHelpContext

シグネチャヘルプがどのようにトリガーされたかに関する情報。

戻り値説明
ProviderResult<SignatureHelp>

シグネチャヘルプ、またはそのようなヘルプに解決される Thenable。結果がないことは、undefined または null を返すことで通知できます。

SignatureHelpProviderMetadata

登録された SignatureHelpProvider に関するメタデータ。

プロパティ

シグネチャヘルプを再トリガーする文字のリスト。

これらのトリガー文字は、シグネチャヘルプがすでに表示されている場合にのみアクティブになります。すべてのトリガー文字も再トリガー文字としてカウントされます。

シグネチャヘルプをトリガーする文字のリスト。

SignatureHelpTriggerKind

SignatureHelpProvider がどのようにトリガーされたか。

列挙メンバー

シグネチャヘルプは、ユーザーまたはコマンドによって手動で呼び出されました。

シグネチャヘルプは、トリガー文字によってトリガーされました。

シグネチャヘルプは、カーソルの移動またはドキュメントコンテンツの変更によってトリガーされました。

SignatureInformation

呼び出し可能なもののシグネチャを表します。シグネチャには、関数名のようなラベル、ドキュメントコメント、および一連のパラメーターを含めることができます。

コンストラクター

新しいシグネチャ情報オブジェクトを作成します。

パラメーター説明
label: string

ラベル文字列。

documentation?: string | MarkdownString

ドキュメント文字列。

戻り値説明
SignatureInformation

プロパティ

アクティブなパラメーターのインデックス。

提供されている場合、これは SignatureHelp.activeParameter の代わりに使用されます。

このシグネチャの人間が読めるドキュメントコメント。UIに表示されますが、省略可能です。

このシグネチャのラベル。UI に表示されます。

このシグネチャのパラメーター。

SnippetString

スニペット文字列は、テキストを挿入し、挿入が発生したときにエディターカーソルを制御できるテンプレートです。

スニペットは、タブストップとプレースホルダーを $1$2、および ${3:foo} で定義できます。$0 は最後のタブストップを定義し、デフォルトではスニペットの末尾になります。変数は $name および ${name:default value} で定義されます。 完全なスニペット構文も参照してください。

コンストラクター

新しいスニペット文字列を作成します。

パラメーター説明
value?: string

スニペット文字列。

戻り値説明
SnippetString

プロパティ

スニペット文字列。

メソッド

選択肢(${1|a,b,c|})をこのスニペット文字列の value に追加するビルダー関数。

パラメーター説明
values: readonly string[]

選択肢の値 - 文字列の配列

number?: number

このタブストップの番号。デフォルトは 1 から始まる自動インクリメント値です。

戻り値説明
SnippetString

このスニペット文字列。

プレースホルダー(${1:value})をこのスニペット文字列の value に追加するビルダー関数。

パラメーター説明
value: string | (snippet: SnippetString) => any

このプレースホルダーの値 - 文字列、またはネストされたスニペットを作成できる関数。

number?: number

このタブストップの番号。デフォルトは 1 から始まる自動インクリメント値です。

戻り値説明
SnippetString

このスニペット文字列。

タブストップ($1$2 など)をこのスニペット文字列の value に追加するビルダー関数。

パラメーター説明
number?: number

このタブストップの番号。デフォルトは 1 から始まる自動インクリメント値です。

戻り値説明
SnippetString

このスニペット文字列。

指定された文字列をこのスニペット文字列の value に追加するビルダー関数。

パラメーター説明
string: string

「そのまま」追加する値。文字列はエスケープされます。

戻り値説明
SnippetString

このスニペット文字列。

変数(${VAR})をこのスニペット文字列のvalueに追加するビルダー関数。

パラメーター説明
name: string

変数の名前 - $は除く。

defaultValue: string | (snippet: SnippetString) => any

変数が解決できない場合に使用されるデフォルト値 - 文字列、またはネストされたスニペットを作成できる関数。

戻り値説明
SnippetString

このスニペット文字列。

SnippetTextEdit

スニペットエディットは、エディターによって実行されるインタラクティブな編集を表します。

: スニペットエディットは常に通常のテキストエディットとして実行できます。これは、一致するエディターが開かれていない場合、またはワークスペースエディットに複数のファイルのスニペットエディットが含まれている場合に発生します。その場合、アクティブなエディターに一致するもののみがスニペットエディットとして実行され、その他は通常のテキストエディットとして実行されます。

静的

挿入スニペットエディットを作成するユーティリティ。

パラメーター説明
position: Position

positionは空の範囲になります。

snippet: SnippetString

スニペット文字列。

戻り値説明
SnippetTextEdit

新しいスニペットエディットオブジェクト。

置換スニペットエディットを作成するユーティリティ。

パラメーター説明
range: Range

範囲。

snippet: SnippetString

スニペット文字列。

戻り値説明
SnippetTextEdit

新しいスニペットエディットオブジェクト。

コンストラクター

新しいスニペットエディットを作成します。

パラメーター説明
range: Range

範囲。

snippet: SnippetString

スニペット文字列。

戻り値説明
SnippetTextEdit

プロパティ

スニペットエディットを既存の空白を保持したまま適用するかどうか。

この編集が適用される範囲。

この編集が実行するスニペット

SourceBreakpoint

ソース位置によって指定されたブレークポイント。

コンストラクター

ソース位置の新しいブレークポイントを作成します。

パラメーター説明
location: Location
enabled?: boolean
condition?: string
hitCondition?: string
logMessage?: string
戻り値説明
SourceBreakpoint

プロパティ

条件付きブレークポイントのオプションの式。

ブレークポイントが有効かどうか。

ブレークポイントのヒット数を無視する方法を制御するオプションの式。

ブレークポイントの一意の ID。

このブレークポイントのソースと行位置。

このブレークポイントがヒットしたときにログに記録されるオプションのメッセージ。{} 内の埋め込み式は、デバッグアダプターによって補間されます。

SourceControl

ソース管理は、リソースの状態をエディターに提供し、いくつかのソース管理関連の方法でエディターと対話できます。

プロパティ

オプションの入力受付コマンド。

このコマンドは、ユーザーがソース管理入力の値を承認したときに呼び出されます。

オプションのコミットテンプレート文字列。

ソース管理ビューレットは、適切な場合にこの値をソース管理入力に入力します。

このソース管理のリソースの状態のUIに表示される数。

未定義の場合、このソース管理は

  • UIに表示される数をゼロとして表示し、
  • リソースの状態の数をすべてのソース管理のUIに表示される集計数に貢献します

このソース管理のID。

このソース管理の入力ボックス

このソース管理の人間が読めるラベル。

このソース管理のルートの(オプションの)Uri。

オプションのステータスバーコマンド。

これらのコマンドは、エディターのステータスバーに表示されます。

メソッド

新しいリソースグループを作成します。

パラメーター説明
id: string
label: string
戻り値説明
SourceControlResourceGroup

このソース管理を破棄します。

パラメーター説明
戻り値説明
void

SourceControlInputBox

ソース管理ビューレットの入力ボックスを表します。

プロパティ

入力ボックスを有効にするかどうかを制御します(デフォルトはtrue)。

ユーザーをガイドするために、入力ボックスにプレースホルダーとして表示する文字列。

入力ボックスの内容のセッターとゲッター。

入力ボックスを表示するかどうかを制御します(デフォルトはtrue)。

SourceControlResourceDecorations

ソース管理リソースの状態の装飾。ライトテーマとダークテーマで個別に指定できます。

プロパティ

ダークテーマの装飾。

ソース管理リソースの状態をUIでフェードアウトさせるかどうか。

特定のソース管理リソースの状態のアイコンパス。

ライトテーマの装飾。

ソース管理リソースの状態をUIで取り消し線で表示するかどうか。

特定のソース管理リソースの状態のタイトル。

SourceControlResourceGroup

ソース管理リソースグループは、ソース管理リソースの状態のコレクションです。

プロパティ

リソースグループのコンテキスト値。これは、リソースグループ固有のアクションを提供するために使用できます。たとえば、リソースグループにexportableのコンテキスト値が与えられている場合、menus拡張機能ポイントを使用してscm/resourceGroup/contextにアクションを提供するときに、when式でキーscmResourceGroupStateのコンテキスト値をscmResourceGroupState == exportableのように指定できます。

"contributes": {
  "menus": {
    "scm/resourceGroup/context": [
      {
        "command": "extension.export",
        "when": "scmResourceGroupState == exportable"
      }
    ]
  }
}

これにより、contextValueexportableに等しいリソースグループに対してのみアクションextension.exportが表示されます。

このソース管理リソースグループにソース管理リソースの状態が含まれていない場合に非表示にするかどうか。

このソース管理リソースグループのID。

このソース管理リソースグループのラベル。

このグループのソース管理リソースの状態のコレクション。

メソッド

このソース管理リソースグループを破棄します。

パラメーター説明
戻り値説明
void

SourceControlResourceState

ソース管理リソースの状態は、特定のソース管理グループ内の基になるワークスペースリソースの状態を表します。

プロパティ

リソースの状態がソース管理ビューレットで開かれたときに実行されるコマンド

リソースの状態のコンテキスト値。これは、リソース固有のアクションを提供するために使用できます。たとえば、リソースにdiffableとしてコンテキスト値が与えられている場合、menus拡張機能ポイントを使用してscm/resourceState/contextにアクションを提供するときに、when式でキーscmResourceStateのコンテキスト値をscmResourceState == diffableのように指定できます。

"contributes": {
  "menus": {
    "scm/resourceState/context": [
      {
        "command": "extension.diff",
        "when": "scmResourceState == diffable"
      }
    ]
  }
}

これにより、contextValuediffableであるリソースに対してのみアクションextension.diffが表示されます。

このソース管理リソースの状態の装飾

ワークスペース内の基になるリソースのUri

SourceControlResourceThemableDecorations

ソース管理リソースの状態のテーマ対応の装飾。

プロパティ

特定のソース管理リソースの状態のアイコンパス。

StatementCoverage

単一のステートメントまたは行のカバレッジ情報が含まれています。

コンストラクター

パラメーター説明
executed: number | boolean

このステートメントが実行された回数、または正確な回数が不明な場合は、実行されたかどうかを示すブール値。ゼロまたはfalseの場合、ステートメントは未カバーとしてマークされます。

location: Range | Position

ステートメントの位置。

branches?: BranchCoverage[]

この行の分岐からのカバレッジ。条件付きでない場合は、省略する必要があります。

戻り値説明
StatementCoverage

プロパティ

この行またはステートメントの分岐からのカバレッジ。条件付きでない場合は、空になります。

このステートメントが実行された回数、または正確な回数が不明な場合は、実行されたかどうかを示すブール値。ゼロまたはfalseの場合、ステートメントは未カバーとしてマークされます。

ステートメントの位置。

StatusBarAlignment

ステータスバー項目の配置を表します。

列挙メンバー

左側に配置されます。

右側に配置されます。

StatusBarItem

ステータスバー項目は、テキストとアイコンを表示し、クリック時にコマンドを実行できるステータスバーのコントリビューションです。

プロパティ

スクリーンリーダーがこのStatusBar項目と対話するときに使用されるアクセシビリティ情報

この項目の配置。

このエントリの背景色。

:次の色のみがサポートされています

  • new ThemeColor('statusBarItem.errorBackground')
  • new ThemeColor('statusBarItem.warningBackground')

より多くの背景色が将来サポートされる可能性があります。

:背景色が設定されている場合、ステータスバーは、すべてのテーマでエントリが読みやすくなるように、colorの選択をオーバーライドする場合があります。

このエントリの前景色。

コマンドまたはクリック時に実行するコマンドの識別子。

コマンドは既知である必要があります。

これがCommandオブジェクトの場合、commandargumentsのみがエディターで使用されることに注意してください。

この項目の識別子。

window.createStatusBarItemメソッドによって識別子が提供されていない場合、識別子は拡張機能識別子と一致します。

「Python言語インジケーター」、「Gitステータス」などのエントリの名前。ステータスバー項目が何であるかをユーザーが理解できるように、名前の長さを短く、かつ十分に説明的なものにしてください。

この項目の優先度。値が大きいほど、項目はより左側に表示される必要があります。

エントリに表示するテキスト。構文を活用して、テキストにアイコンを埋め込むことができます

My text $(icon-name) contains icons like $(icon-name) this one.

ここで、icon-name は ThemeIcon アイコンセット (例: light-bulbthumbsupzap など) から取得されます。

このエントリにカーソルを合わせるときのツールチップテキスト。

メソッド

関連するリソースを破棄して解放します。hideを呼び出します。

パラメーター説明
戻り値説明
void

ステータスバーのエントリを非表示にします。

パラメーター説明
戻り値説明
void

ステータスバーにエントリを表示します。

パラメーター説明
戻り値説明
void

SymbolInformation

変数、クラス、インターフェースなどのプログラミング構造に関する情報を表します。

コンストラクター

新しいシンボル情報オブジェクトを作成します。

パラメーター説明
name: string

シンボルの名前。

kind: SymbolKind

シンボルの種類。

containerName: string

シンボルを含むシンボルの名前。

location: Location

シンボルの位置。

戻り値説明
SymbolInformation

新しいシンボル情報オブジェクトを作成します。

  • 非推奨 - Locationオブジェクトを受け取るコンストラクターを使用してください。
パラメーター説明
name: string

シンボルの名前。

kind: SymbolKind

シンボルの種類。

range: Range

シンボルの位置の範囲。

uri?: Uri

シンボルの位置のリソース。デフォルトは現在のドキュメントです。

containerName?: string

シンボルを含むシンボルの名前。

戻り値説明
SymbolInformation

プロパティ

このシンボルを含むシンボルの名前。

このシンボルの種類。

このシンボルの位置。

このシンボルの名前。

このシンボルのタグ。

SymbolKind

シンボルの種類。

列挙メンバー

Fileシンボルの種類。

Moduleシンボルの種類。

Namespaceシンボルの種類。

Packageシンボルの種類。

Classシンボルの種類。

Methodシンボルの種類。

Propertyシンボルの種類。

Fieldシンボルの種類。

Constructorシンボルの種類。

Enumシンボルの種類。

Interfaceシンボルの種類。

Functionシンボルの種類。

Variableシンボルの種類。

Constantシンボルの種類。

Stringシンボルの種類。

Numberシンボルの種類。

Booleanシンボルの種類。

Arrayシンボルの種類。

Objectシンボルの種類。

Keyシンボルの種類。

Nullシンボルの種類。

EnumMemberシンボルの種類。

Structシンボルの種類。

Event シンボル種別。

Operator シンボル種別。

TypeParameter シンボル種別。

SymbolTag

シンボルタグは、シンボルのレンダリングを調整する追加のアノテーションです。

列挙メンバー

シンボルを廃止されたものとしてレンダリングします。通常は取り消し線を使用します。

SyntaxTokenType

一般的に見られる構文トークンタイプの列挙。

列挙メンバー

コメント、文字列リテラル、正規表現の一部であるトークンを除くすべて。

コメント。

文字列リテラル。

正規表現。

Tab

タブグループ内のタブを表します。タブはエディター領域内のグラフィカルな表現にすぎません。バッキングエディターは保証されていません。

プロパティ

タブが属するグループ。

タブの構造を定義します。例:テキスト、ノートブック、カスタムなど。リソースおよびその他の有用なプロパティは、タブの種類で定義されています。

タブが現在アクティブであるかどうか。これは、グループ内で選択されたタブであることによって決定されます。

ダーティインジケーターがタブに表示されているかどうか。

タブがピン留めされているかどうか(ピンアイコンが表示されている)。

タブがプレビューモードであるかどうか。

タブに表示されるテキスト。

TabChangeEvent

タブの変更を記述するイベント。

プロパティ

変更されたタブ。例:active 状態が変更されたなど。

閉じられたタブ。

開かれたタブ。

TabGroup

タブのグループを表します。タブグループ自体は複数のタブで構成されています。

プロパティ

グループ内のアクティブな タブ。これは、コンテンツが現在レンダリングされているタブです。

:グループごとにアクティブなタブは1つですが、アクティブなグループは1つだけです。

グループが現在アクティブであるかどうか。

:一度にアクティブになるタブグループは1つだけですが、複数のタブグループがアクティブなタブを持つことができます。

参照Tab.isActive

グループ内に含まれるタブのリスト。グループにタブが開いていない場合は空にすることができます。

グループの表示列。

TabGroupChangeEvent

タブグループの変更を記述するイベント。

プロパティ

変更されたタブグループ。例:active 状態が変更されたなど。

閉じられたタブグループ。

開かれたタブグループ。

TabGroups

複数のグループで構成されるメインエディター領域を表し、グループにはタブが含まれています。

イベント

タブグループが変更されたときに発生するイベント

タブが変更されたときに発生するイベント

プロパティ

現在アクティブなグループ。

グループコンテナ内のすべてのグループ。

メソッド

タブを閉じます。これにより、タブオブジェクトが無効になり、タブをそれ以上のアクションに使用できなくなります。注:ダーティタブの場合、確認ダイアログが表示され、キャンセルされる場合があります。キャンセルされた場合でも、タブは有効です。

パラメーター説明
tab: Tab | readonly Tab[]

閉じるタブ。

preserveFocus?: boolean

true の場合、フォーカスは現在の位置に残ります。false の場合、次のタブにジャンプします。

戻り値説明
Thenable<boolean>

すべてのタブが閉じられたときに true に解決される Promise。

タブグループを閉じます。これにより、タブグループオブジェクトが無効になり、タブグループをそれ以上のアクションに使用できなくなります。

パラメーター説明
tabGroup: TabGroup | readonly TabGroup[]

閉じるタブグループ。

preserveFocus?: boolean

true の場合、フォーカスは現在の位置に残ります。

戻り値説明
Thenable<boolean>

すべてのタブグループが閉じられたときに true に解決される Promise。

TabInputCustom

タブはカスタムエディターを表します。

コンストラクター

カスタムエディタータブ入力を構築します。

パラメーター説明
uri: Uri

タブの URI。

viewType: string

カスタムエディターのビュータイプ。

戻り値説明
TabInputCustom

プロパティ

タブが表す URI。

カスタムエディターのタイプ。

TabInputNotebook

タブはノートブックを表します。

コンストラクター

ノートブックの新しいタブ入力を構築します。

パラメーター説明
uri: Uri

ノートブックの URI。

notebookType: string

ノートブックのタイプ。NotebookDocumentsの notebookType にマップします

戻り値説明
TabInputNotebook

プロパティ

ノートブックのタイプ。NotebookDocumentsの notebookType にマップします

タブが表す URI。

TabInputNotebookDiff

タブは、差分構成の2つのノートブックを表します。

コンストラクター

ノートブック差分タブ入力を構築します。

パラメーター説明
original: Uri

元の未変更のノートブックの URI。

modified: Uri

変更されたノートブックの URI。

notebookType: string

ノートブックのタイプ。NotebookDocumentsの notebookType にマップします

戻り値説明
TabInputNotebookDiff

プロパティ

変更されたノートブックの URI。

ノートブックのタイプ。NotebookDocumentsの notebookType にマップします

元のノートブックの URI。

TabInputTerminal

タブはエディター領域のターミナルを表します。

コンストラクター

ターミナルタブ入力を構築します。

パラメーター説明
戻り値説明
TabInputTerminal

TabInputText

タブは単一のテキストベースのリソースを表します。

コンストラクター

指定された URI でテキストタブ入力を構築します。

パラメーター説明
uri: Uri

タブの URI。

戻り値説明
TabInputText

プロパティ

タブによって表される URI。

TabInputTextDiff

タブは、差分としてレンダリングされる2つのテキストベースのリソースを表します。

コンストラクター

指定された URI で新しいテキスト差分タブ入力を構築します。

パラメーター説明
original: Uri

元のテキストリソースの URI。

modified: Uri

変更されたテキストリソースの URI。

戻り値説明
TabInputTextDiff

プロパティ

変更されたテキストリソースの URI。

元のテキストリソースの URI。

TabInputWebview

タブは Webview を表します。

コンストラクター

指定されたビュータイプで Webview タブ入力を構築します。

パラメーター説明
viewType: string

Webview のタイプ。WebviewPanel の viewType にマップします

戻り値説明
TabInputWebview

プロパティ

Webview のタイプ。WebviewPanel の viewType にマップします

Task

実行するタスク

コンストラクター

新しいタスクを作成します。

パラメーター説明
taskDefinition: TaskDefinition

taskDefinitions 拡張ポイントで定義されているタスク定義。

scope: WorkspaceFolder | Global | Workspace

タスクのスコープを指定します。グローバルタスク、ワークスペース タスク、または特定のワークスペース フォルダーのタスクのいずれかです。グローバルタスクは現在サポートされていません。

name: string

タスクの名前。ユーザーインターフェースに表示されます。

source: string

タスクのソース(例:「gulp」、「npm」、...)。ユーザーインターフェースに表示されます。

execution?: ProcessExecution | ShellExecution | CustomExecution

プロセスまたはシェル実行。

problemMatchers?: string | string[]

使用する問題 matcher の名前(例:「$tsc」または「$eslint」)。問題 matcher は、problemMatchers 拡張ポイントを使用して拡張機能によって提供できます。

戻り値説明
Task

新しいタスクを作成します。

  • deprecated - タスクのスコープを指定できる新しいコンストラクターを使用してください。
パラメーター説明
taskDefinition: TaskDefinition

taskDefinitions 拡張ポイントで定義されているタスク定義。

name: string

タスクの名前。ユーザーインターフェースに表示されます。

source: string

タスクのソース(例:「gulp」、「npm」、...)。ユーザーインターフェースに表示されます。

execution?: ProcessExecution | ShellExecution

プロセスまたはシェル実行。

problemMatchers?: string | string[]

使用する問題 matcher の名前(例:「$tsc」または「$eslint」)。問題 matcher は、problemMatchers 拡張ポイントを使用して拡張機能によって提供できます。

戻り値説明
Task

プロパティ

タスクの定義。

タスクの名前が表示される場所に、別の行に目立たないようにレンダリングされる人間が読める文字列。テーマアイコンのレンダリングを $(<name>) 構文でサポートします。

タスクの実行エンジン

このタスクが属するタスクグループ。利用可能なグループの定義済みセットについては、TaskGroup を参照してください。デフォルトは未定義で、タスクが特別なグループに属していないことを意味します。

タスクがバックグラウンドタスクであるかどうか。

タスクの名前

プレゼンテーションオプション。デフォルトは空のリテラルです。

タスクにアタッチされた問題 matcher。デフォルトは空の配列です。

タスクの実行オプション

タスクのスコープ。

このシェルタスクのソースを記述する人間が読める文字列(例:「gulp」または「npm」)。テーマアイコンのレンダリングを $(<name>) 構文でサポートします。

TaskDefinition

システム内のタスクの種類を定義する構造。値は JSON 文字列化可能である必要があります。

プロパティ

拡張機能によって提供されるタスクを記述するタスク定義。通常、タスクプロバイダーはタスクを識別するためにより多くのプロパティを定義します。これらは、拡張機能の package.json の「taskDefinitions」拡張ポイントで定義する必要があります。たとえば、npm タスク定義は次のようになります。

interface NpmTaskDefinition extends TaskDefinition {
  script: string;
}

「$」で始まるタイプ識別子は内部使用のために予約されており、拡張機能で使用しないでください。

TaskEndEvent

実行されたタスクの終了を通知するイベント。

このインターフェースは実装されることを意図していません。

プロパティ

終了したタスクを表すタスクアイテム。

TaskExecution

実行された Task を表すオブジェクト。タスクを終了するために使用できます。

このインターフェースは実装されることを意図していません。

プロパティ

開始されたタスク。

メソッド

タスクの実行を終了します。

パラメーター説明
戻り値説明
void

TaskFilter

タスクフィルターは、バージョンとタイプでタスクを示します

プロパティ

返すタスクタイプ。

tasks.json ファイルで使用されるタスクバージョン。文字列は package.json semver 表記をサポートします。

TaskGroup

タスクのグループ化。エディターはデフォルトで、「Clean」、「Build」、「RebuildAll」、および「Test」グループをサポートしています。

静的

ビルドタスクグループ。

クリーンタスクグループ。

リビルドオールタスクグループ。

テストオールタスクグループ。

コンストラクター

プライベートコンストラクター

パラメーター説明
id: string

タスクグループの識別子。

label: string

タスクグループの人間が読める名前。

戻り値説明
TaskGroup

プロパティ

タスクグループの ID。TaskGroup.Clean.id、TaskGroup.Build.id、TaskGroup.Rebuild.id、または TaskGroup.Test.id のいずれかです。

タスクグループに属するタスクが、そのグループのデフォルトであるかどうかを示します。このプロパティはAPIを通じて設定することはできず、ユーザーのタスク構成によって制御されます。

TaskPanelKind

タスク間でタスクチャネルをどのように使用するかを制御します。

列挙メンバー

他のタスクとパネルを共有します。これはデフォルトです。

このタスク専用のパネルを使用します。パネルは他のタスクと共有されません。

このタスクが実行されるたびに新しいパネルを作成します。

TaskPresentationOptions

タスクをUIでどのように表示するかを制御します。

プロパティ

タスク実行前にターミナルをクリアするかどうかを制御します。

タスク実行後にターミナルを閉じるかどうかを制御します。

タスクに関連付けられたコマンドをユーザーインターフェースにエコー表示するかどうかを制御します。

タスク出力を表示するパネルにフォーカスを当てるかどうかを制御します。

タスクパネルをこのタスク専用に使用するか (専用)、タスク間で共有するか (共有)、またはタスク実行ごとに新しいパネルを作成するか (新規) を制御します。デフォルトは TaskInstanceKind.Shared です。

タスク出力をユーザーインターフェースに表示するかどうかを制御します。デフォルトは RevealKind.Always です。

「ターミナルはタスクによって再利用されます。閉じるには任意のキーを押してください」というメッセージを表示するかどうかを制御します。

TaskProcessEndEvent

タスクを通じてトリガーされたプロセス実行の終了を知らせるイベント

プロパティ

プロセスが開始されたタスク実行。

プロセスの終了コード。タスクが終了した場合、undefined になります。

TaskProcessStartEvent

タスクを通じてトリガーされたプロセス実行の開始を知らせるイベント

プロパティ

プロセスが開始されたタスク実行。

基盤となるプロセスID。

TaskProvider<T>

タスクプロバイダーは、タスクサービスにタスクを追加することを可能にします。タスクプロバイダーは tasks.registerTaskProvider を介して登録されます。

メソッド

タスクを提供します。

パラメーター説明
token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

タスクの配列

execution が設定されていないタスクを解決します。タスクは tasks.json ファイルで見つかった情報から作成されることがよくあります。そのようなタスクは、それらをどのように実行するかに関する情報が欠落しており、タスクプロバイダーは resolveTask メソッドで欠落している情報を記入する必要があります。このメソッドは、上記の provideTasks メソッドから返されたタスクに対しては呼び出されません。これらのタスクは常に完全に解決されているためです。 resolveTask メソッドの有効なデフォルト実装は、undefined を返すことです。

task のプロパティを記入する際、新しい TaskDefinition を作成するのではなく、必ずまったく同じ TaskDefinition を使用してください。他のプロパティは変更してもかまいません。

パラメーター説明
task: T

解決するタスク。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決されたタスク

TaskRevealKind

ターミナルの可視性の動作を制御します。

列挙メンバー

タスクが実行される場合、常にターミナルを前面に表示します。

タスクの実行中に問題が検出された場合 (タスクを開始できなかったなど) にのみ、ターミナルを前面に表示します。

タスクが実行されても、ターミナルは前面に表示されません。

TaskScope

タスクのスコープ。

列挙メンバー

タスクはグローバルタスクです。グローバルタスクは現在サポートされていません。

タスクはワークスペース タスクです

TaskStartEvent

タスク実行の開始を知らせるイベント。

このインターフェースは実装されることを意図していません。

プロパティ

開始されたタスクを表すタスク項目。

TelemetryLogger

拡張機能が使用状況とエラーのテレメトリをログ記録するために使用できるテレメトリロガー。

ロガーは sender をラップしますが、以下を保証します。

  • テレメトリを無効または調整するためのユーザー設定が尊重されること、および
  • 潜在的な機密データが削除されること

また、送信されたデータを印刷する「エコーUI」を有効にし、エディターが未処理のエラーをそれぞれの拡張機能に転送できるようにします。

TelemetryLogger のインスタンスを取得するには、createTelemetryLogger を使用します。

イベント

使用状況またはエラーテレメトリの有効状態が変更されたときに発生する Event

プロパティ

このロガーでエラーテレメトリが有効になっているかどうか。

このロガーで使用状況テレメトリが有効になっているかどうか。

メソッド

このオブジェクトを破棄し、リソースを解放します。

パラメーター説明
戻り値説明
void

エラーイベントをログに記録します。

クリーニング、テレメトリ設定の確認、およびデータミックスインの呼び出しを完了した後、イベントをログに記録するために TelemetrySender.sendEventData を呼び出します。テレメトリ設定がエラー+の場合にイベントをログに記録するという点で logUsage と異なります。拡張機能テレメトリ出力チャネルへのエコー出力を自動的にサポートします。

パラメーター説明
eventName: string

ログに記録するイベント名

data?: Record<string, any>

ログに記録するデータ

戻り値説明
void

エラーイベントをログに記録します。

TelemetrySender.sendErrorData を呼び出します。クリーニング、テレメトリチェック、およびデータミックスインを実行します。拡張機能テレメトリ出力チャネルへのエコー出力を自動的にサポートします。また、拡張機能ホストプロセス内でスローされた例外も自動的にログに記録します。

パラメーター説明
error: Error

PIIがクリーニングされたスタックトレースを含むエラーオブジェクト

data?: Record<string, any>

スタックトレースと一緒にログに記録する追加データ

戻り値説明
void

使用状況イベントをログに記録します。

クリーニング、テレメトリ設定の確認、およびデータミックスインの呼び出しを完了した後、イベントをログに記録するために TelemetrySender.sendEventData を呼び出します。拡張機能テレメトリ出力チャネルへのエコー出力を自動的にサポートします。

パラメーター説明
eventName: string

ログに記録するイベント名

data?: Record<string, any>

ログに記録するデータ

戻り値説明
void

TelemetryLoggerOptions

TelemetryLogger を作成するためのオプション

プロパティ

データオブジェクトに注入する必要がある追加の共通プロパティ。

OS、拡張機能名などの組み込みの共通プロパティをデータオブジェクトに注入しないようにするかどうか。定義されていない場合は、デフォルトで false になります。

拡張機能によって引き起こされた拡張機能ホストでの未処理のエラーを送信者にログ記録するかどうか。定義されていない場合は、デフォルトで false になります。

TelemetrySender

テレメトリ送信者は、テレメトリロガーと一部のテレメトリサービス間の契約です。注意 拡張機能は、ロガーが追加の保護とクリーニングを提供するため、送信者のメソッドを直接呼び出さないでください。

const sender: vscode.TelemetrySender = {...};
const logger = vscode.env.createTelemetryLogger(sender);

// GOOD - uses the logger
logger.logUsage('myEvent', { myData: 'myValue' });

// BAD - uses the sender directly: no data cleansing, ignores user settings, no echoing to the telemetry output channel etc
sender.logEvent('myEvent', { myData: 'myValue' });

メソッド

オプションのフラッシュ関数。これにより、TelemetryLogger が破棄されるときに、この送信者が残りのイベントを送信する機会が得られます。

パラメーター説明
戻り値説明
void | Thenable<void>

エラーを送信する関数。TelemetryLogger 内で使用されます

パラメーター説明
error: Error

ログに記録されているエラー

data?: Record<string, any>

例外とともに収集される追加データ

戻り値説明
void

スタックトレースなしでイベントデータを送信する関数。TelemetryLogger 内で使用されます

パラメーター説明
eventName: string

ログに記録しているイベントの名前

data?: Record<string, any>

ログに記録されているシリアル化可能なキーと値のペア

戻り値説明
void

TelemetryTrustedValue<T>

クリーニングしないことが安全な値を表す特別な値ラッパー。これは、値に識別可能な情報が含まれておらず、クリーニングが不適切に編集していることを保証できる場合に使用されます。

コンストラクター

新しいテレメトリトラステッド値を作成します。

パラメーター説明
value: T

信頼する値

戻り値説明
TelemetryTrustedValue<T>

プロパティ

PIIを含まないと信頼されている値。

Terminal

統合ターミナル内の個々のターミナルインスタンス。

プロパティ

ターミナルの初期化に使用されるオブジェクト。これは、たとえば、ターミナルがこの拡張機能によって起動されなかった場合のシェルタイプを検出したり、シェルが起動されたフォルダーを検出したりするのに役立ちます。

ターミナルの終了ステータス。ターミナルがアクティブな間は未定義になります。

例: ターミナルがゼロ以外の終了コードで終了した場合に、終了コードを含む通知を表示します。

window.onDidCloseTerminal(t => {
  if (t.exitStatus && t.exitStatus.code) {
    vscode.window.showInformationMessage(`Exit code: ${t.exitStatus.code}`);
  }
});

ターミナルの名前。

シェルプロセスのプロセスID。

シェル統合機能を含むオブジェクト。これは、ターミナルが作成された直後は常に undefined になります。ターミナルのシェル統合がアクティブ化されたときに通知されるように、window.onDidChangeTerminalShellIntegration をリッスンします。

シェル統合がアクティブ化されない場合、このオブジェクトは未定義のままになる可能性があることに注意してください。たとえば、コマンドプロンプトはシェル統合をサポートしておらず、ユーザーのシェル設定が自動シェル統合のアクティブ化と競合する可能性があります。

Terminal の現在の状態。

メソッド

破棄して、関連付けられたリソースを解放します。

パラメーター説明
戻り値説明
void

このターミナルが現在表示されている場合、ターミナルパネルを非表示にします。

パラメーター説明
戻り値説明
void

ターミナルにテキストを送信します。テキストは、ターミナルの基盤となるptyプロセス (シェル) のstdinに書き込まれます。

パラメーター説明
text: string

送信するテキスト。

shouldExecute?: boolean

送信されるテキストが、ターミナルに挿入されるだけでなく、実行される必要があることを示します。追加される文字は、プラットフォームに応じて \n または \r\n です。これはデフォルトで true です。

戻り値説明
void

ターミナルパネルを表示し、このターミナルをUIに表示します。

パラメーター説明
preserveFocus?: boolean

true の場合、ターミナルはフォーカスを取得しません。

戻り値説明
void

TerminalDimensions

ターミナルの寸法を表します。

プロパティ

ターミナルの列数。

ターミナルの行数。

TerminalEditorLocationOptions

エディターの TerminalLocation を想定し、ViewColumnpreserveFocus プロパティを指定できます

プロパティ

true の場合、Terminal がフォーカスを取得するのを停止するオプションのフラグ。

ターミナル をエディター領域に表示する必要があるビュー列。デフォルトは active です。存在しない列は、ViewColumn.Nine の最大数まで必要に応じて作成されます。ViewColumn.Beside を使用して、現在アクティブなエディターの横にエディターを開きます。

TerminalExitReason

ターミナル終了理由の種類。

列挙メンバー

不明な理由。

ウィンドウが閉じる/再読み込み。

シェルプロセスが終了しました。

ユーザーがターミナルを閉じました。

拡張機能がターミナルを破棄しました。

TerminalExitStatus

ターミナルがどのように終了したかを表します。

プロパティ

ターミナルが終了した終了コード。次の値を持つことができます

  • ゼロ: ターミナルプロセスまたはカスタム実行が成功しました。
  • ゼロ以外: ターミナルプロセスまたはカスタム実行が失敗しました。
  • undefined: ユーザーがターミナルを強制的に閉じたか、カスタム実行が終了コードを提供せずに終了しました。

ターミナルの終了をトリガーした理由。

ターミナル行のリンク。

コンストラクター

新しいターミナルリンクを作成します。

パラメーター説明
startIndex: number

TerminalLinkContext.line のリンクの開始インデックス。

length: number

TerminalLinkContext.line のリンクの長さ。

tooltip?: string

このリンクにカーソルを合わせたときに表示されるツールチップテキスト。

ツールチップが提供されている場合、{0} (ctrl + click) のように、リンクをトリガーする方法に関する指示を含む文字列で表示されます。具体的な指示は、OS、ユーザー設定、およびローカライズによって異なります。

戻り値説明
TerminalLink

プロパティ

TerminalLinkContext.line のリンクの長さ。

TerminalLinkContext.line のリンクの開始インデックス。

このリンクにカーソルを合わせたときに表示されるツールチップテキスト。

ツールチップが提供されている場合、{0} (ctrl + click) のように、リンクをトリガーする方法に関する指示を含む文字列で表示されます。具体的な指示は、OS、ユーザー設定、およびローカライズによって異なります。

TerminalLinkContext

ターミナル内の行に関する情報を提供して、そのリンクを提供します。

プロパティ

これは、ターミナルの折り返されていない行からのテキストです。

リンクが属するターミナル。

TerminalLinkProvider<T>

ターミナル内のリンクの検出と処理を可能にするプロバイダー。

メソッド

アクティブ化されたターミナルリンクを処理します。

パラメーター説明
link: T

処理するリンク。

戻り値説明
ProviderResult<void>

指定されたコンテキストのターミナルリンクを提供します。これは、前の呼び出しが解決する前でも複数回呼び出すことができることに注意してください。非同期使用が重複する可能性がある場合に問題が発生する可能性のあるグローバルオブジェクト (例: RegExp) を共有しないようにしてください。

パラメーター説明
context: TerminalLinkContext

リンクが提供されている対象に関する情報。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

指定された行のターミナルリンクのリスト。

TerminalLocation

ターミナルの場所。

列挙メンバー

ターミナルビュー内

エディター領域内

TerminalOptions

ターミナルが使用する必要があるオプションを記述する値オブジェクト。

プロパティ

ターミナルのアイコン ThemeColor。テーマ全体で最高のコントラストと一貫性を実現するには、terminal.ansi* テーマキーをお勧めします。

ターミナルに使用する現在の作業ディレクトリのパスまたはUri。

エディタープロセスに追加される環境変数を持つオブジェクト。

有効にすると、ターミナルはプロセスを通常通り実行しますが、Terminal.show が呼び出されるまでユーザーには表示されません。これの典型的な使用例は、インタラクティブ性が必要となる可能性があるが、インタラクションが必要な場合にのみユーザーに通知したい場合です。ターミナルは通常どおりすべての拡張機能に公開されることに注意してください。非表示のターミナルは、ワークスペースを次回開いたときに復元されません。

ターミナルのアイコンパスまたは ThemeIcon

再起動および再読み込み時のデフォルトのターミナル永続化をオプトアウトします。これは、terminal.integrated.enablePersistentSessions が有効になっている場合にのみ有効になります。

最初の起動時にターミナルに書き込むメッセージ。これはプロセスに送信されるのではなく、ターミナルに直接書き込まれることに注意してください。これは、テキストスタイル設定などのエスケープシーケンスをサポートしています。

UIでターミナルを表すために使用される人間が読める文字列。

カスタムシェル実行可能ファイルの引数。Windowsでのみ文字列を使用でき、コマンドライン形式でシェル引数を指定できます。

ターミナルで使用されるカスタムシェル実行可能ファイルへのパス。

ターミナルプロセスの環境を TerminalOptions.env で指定されたとおりに正確にするかどうか。これが false (デフォルト) の場合、環境はウィンドウの環境に基づいており、terminal.integrated.env.windows などの構成されたプラットフォーム設定も適用されます。これが true の場合、プロセスまたは構成から何も継承されないため、完全な環境を提供する必要があります。

TerminalProfile

ターミナルプロファイルは、ターミナルがどのように起動されるかを定義します。

コンストラクター

新しいターミナルプロファイルを作成します。

パラメーター説明
options: TerminalOptions | ExtensionTerminalOptions

ターミナルが起動される際に使用するオプション。

戻り値説明
TerminalProfile

プロパティ

ターミナルが起動される際に使用するオプション。

TerminalProfileProvider

UIまたはコマンドを介して起動されたときに、コントリビュートされたターミナルプロファイルを提供します。

メソッド

ターミナルプロファイルを提供します。

パラメーター説明
token: CancellationToken

結果が不要になったことを示すキャンセルトークン。

戻り値説明
ProviderResult<TerminalProfile>

ターミナルプロファイル。

TerminalShellExecution

ターミナルで実行されたコマンド。

プロパティ

実行されたコマンドライン。この値の信頼度は、特定のシェルのシェル統合の実装に依存します。この値は、window.onDidEndTerminalShellExecution が発火した後に、より正確になる可能性があります。

// Log the details of the command line on start and end
window.onDidStartTerminalShellExecution(event => {
  const commandLine = event.execution.commandLine;
  console.log(`Command started\n${summarizeCommandLine(commandLine)}`);
});
window.onDidEndTerminalShellExecution(event => {
  const commandLine = event.execution.commandLine;
  console.log(`Command ended\n${summarizeCommandLine(commandLine)}`);
});
function summarizeCommandLine(commandLine: TerminalShellExecutionCommandLine) {
  return [
    `  Command line: ${command.commandLine.value}`,
    `  Confidence: ${command.commandLine.confidence}`,
    `  Trusted: ${command.commandLine.isTrusted}
  ].join('\n');
}

このコマンドが実行されたときにシェルによって報告されたワーキングディレクトリ。このUriは、別のマシン上のファイルを表す場合があります (例: 別のマシンへの ssh)。これには、ワーキングディレクトリの報告をサポートするシェル統合が必要です。

メソッド

ターミナルに書き込まれる生のデータ (エスケープシーケンスを含む) のストリームを作成します。これは、read が最初に呼び出された後に書き込まれたデータのみを含みます。つまり、TerminalShellIntegration.executeCommand または window.onDidStartTerminalShellExecution 経由でコマンドが実行された直後に read を呼び出して、データを取りこぼさないようにする必要があります。

// Log all data written to the terminal for a command
const command = term.shellIntegration.executeCommand({ commandLine: 'echo "Hello world"' });
const stream = command.read();
for await (const data of stream) {
  console.log(data);
}
パラメーター説明
戻り値説明
AsyncIterable<string>

TerminalShellExecutionCommandLine

ターミナルで実行されたコマンドライン。

プロパティ

コマンドライン値の信頼度。値がどのように取得されたかによって決定されます。これは、シェル統合スクリプトの実装に依存します。

コマンドライン値が信頼できるソースから来たものであり、したがって、「(コマンド) を実行しますか?」という通知など、ユーザーの追加確認なしに安全に実行できるかどうか。この検証は、コマンドを再度実行する場合にのみ必要になる可能性があります。

これは、コマンドラインがシェル統合スクリプトによって明示的に報告され (高信頼度)、検証にノンスが使用された場合にのみ true になります。

コマンドとその引数の両方を含む、実行された完全なコマンドライン。

TerminalShellExecutionCommandLineConfidence

列挙メンバー

コマンドライン値の信頼度は低いです。これは、値がシェル統合スクリプトによって報告されたマーカーを使用してターミナルバッファーから読み取られたことを意味します。さらに、次のいずれかの条件が満たされます。

  • コマンドが最も左端の列から開始されました。これは異常です。または
  • コマンドは複数行であり、行継続文字と右プロンプトのために正確に検出するのがより困難です。
  • コマンドラインマーカーは、シェル統合スクリプトによって報告されませんでした。

コマンドライン値の信頼度は中程度です。これは、値がシェル統合スクリプトによって報告されたマーカーを使用してターミナルバッファーから読み取られたことを意味します。コマンドは単一行であり、最も左端の列 (これは異常です) から開始されません。

コマンドライン値の信頼度は高いです。これは、値がシェル統合スクリプトから明示的に送信されたか、コマンドが TerminalShellIntegration.executeCommand API を介して実行されたことを意味します。

TerminalShellExecutionEndEvent

ターミナルでの実行が終了したことを知らせるイベント。

プロパティ

終了したターミナルシェル実行。

シェルによって報告された終了コード。

これが undefined の場合、いくつかの意味が考えられます。

  • シェルが終了コードを報告しなかった (つまり、シェル統合スクリプトが誤動作している)
  • シェルがコマンドが終了する前にコマンドが開始されたと報告した (例: サブシェルが開かれた)。
  • ユーザーが ctrl+c でコマンドをキャンセルした。
  • ユーザーが入力がないときに Enter キーを押した。

一般的に、これは起こるべきではありません。ユースケースによっては、これを失敗として扱うのが最善かもしれません。

const execution = shellIntegration.executeCommand({
  command: 'echo',
  args: ['Hello world']
});
window.onDidEndTerminalShellExecution(event => {
  if (event.execution === execution) {
    if (event.exitCode === undefined) {
      console.log('Command finished but exit code is unknown');
    } else if (event.exitCode === 0) {
      console.log('Command succeeded');
    } else {
      console.log('Command failed');
    }
  }
});

シェル統合オブジェクト。

シェル統合がアクティブ化されたターミナル。

TerminalShellExecutionStartEvent

ターミナルでの実行が開始されたことを知らせるイベント。

プロパティ

終了したターミナルシェル実行。

シェル統合オブジェクト。

シェル統合がアクティブ化されたターミナル。

TerminalShellIntegration

シェル統合によって強化されたターミナルが所有する機能。

プロパティ

ターミナルの現在のワーキングディレクトリ。このUriは、別のマシン上のファイルを表す場合があります (例: 別のマシンへの ssh)。これには、ワーキングディレクトリの報告をサポートするシェル統合が必要です。

メソッド

コマンドを実行します。必要に応じて ^C を送信して、実行中のコマンドを中断します。

// Execute a command in a terminal immediately after being created
const myTerm = window.createTerminal();
window.onDidChangeTerminalShellIntegration(async ({ terminal, shellIntegration }) => {
  if (terminal === myTerm) {
    const execution = shellIntegration.executeCommand('echo "Hello world"');
    window.onDidEndTerminalShellExecution(event => {
      if (event.execution === execution) {
        console.log(`Command exited with code ${event.exitCode}`);
      }
    });
  }
}));
// Fallback to sendText if there is no shell integration within 3 seconds of launching
setTimeout(() => {
  if (!myTerm.shellIntegration) {
    myTerm.sendText('echo "Hello world"');
    // Without shell integration, we can't know when the command has finished or what the
    // exit code was.
  }
}, 3000);

// Send command to terminal that has been alive for a while
const commandLine = 'echo "Hello world"';
if (term.shellIntegration) {
  const execution = shellIntegration.executeCommand({ commandLine });
  window.onDidEndTerminalShellExecution(event => {
    if (event.execution === execution) {
      console.log(`Command exited with code ${event.exitCode}`);
    }
  });
} else {
  term.sendText(commandLine);
  // Without shell integration, we can't know when the command has finished or what the
  // exit code was.
}
パラメーター説明
commandLine: string

実行するコマンドライン。これは、ターミナルに送信される正確なテキストです。

戻り値説明
TerminalShellExecution

コマンドを実行します。必要に応じて ^C を送信して、実行中のコマンドを中断します。

これは、シェル統合がアクティブ化されている必要があるため、動作が保証されていません。TerminalShellExecution.exitCode が拒否されたかどうかを確認して、成功したかどうかを確認してください。

// Execute a command in a terminal immediately after being created
const myTerm = window.createTerminal();
window.onDidChangeTerminalShellIntegration(async ({ terminal, shellIntegration }) => {
  if (terminal === myTerm) {
    const command = shellIntegration.executeCommand({
      command: 'echo',
      args: ['Hello world']
    });
    const code = await command.exitCode;
    console.log(`Command exited with code ${code}`);
  }
}));
// Fallback to sendText if there is no shell integration within 3 seconds of launching
setTimeout(() => {
  if (!myTerm.shellIntegration) {
    myTerm.sendText('echo "Hello world"');
    // Without shell integration, we can't know when the command has finished or what the
    // exit code was.
  }
}, 3000);

// Send command to terminal that has been alive for a while
const commandLine = 'echo "Hello world"';
if (term.shellIntegration) {
  const command = term.shellIntegration.executeCommand({
    command: 'echo',
    args: ['Hello world']
  });
  const code = await command.exitCode;
  console.log(`Command exited with code ${code}`);
} else {
  term.sendText(commandLine);
  // Without shell integration, we can't know when the command has finished or what the
  // exit code was.
}
パラメーター説明
executable: string

実行するコマンド。

args: string[]

実行可能ファイルを起動するための引数。引数に空白文字が含まれており、単一引用符、二重引用符、またはバッククォート文字が含まれていない場合、引数は単一の引数として解釈されるようにエスケープされます。

このエスケープはセキュリティ対策を意図したものではないことに注意してください。$(...) のような文字列は、文字列内でコードを実行するためにシェルで頻繁に使用できるため、信頼できないデータをこのAPIに渡す場合は注意してください。

戻り値説明
TerminalShellExecution

TerminalShellIntegrationChangeEvent

ターミナルのシェル統合が変更されたことを知らせるイベント。

プロパティ

シェル統合オブジェクト。

シェル統合がアクティブ化されたターミナル。

TerminalSplitLocationOptions

親のTerminalの場所をターミナルに使用します。

プロパティ

このターミナルを分割する親ターミナル。これは、親ターミナルがパネル内にあるか、エディター領域にあるかに関係なく機能します。

TerminalState

Terminalの状態を表します。

プロパティ

Terminalが操作されたかどうか。操作とは、ターミナルがターミナルのモードに応じてプロセスにデータを送信したことを意味します。デフォルトでは、キーが押されたとき、またはコマンドまたは拡張機能がテキストを送信したときに入力が送信されますが、ターミナルのモードに基づいて、次の場合にも発生する可能性があります。

  • ポインタークリックイベント
  • ポインタースクロールイベント
  • ポインター移動イベント
  • ターミナルのフォーカスイン/アウト

データを送信できるイベントの詳細については、https://invisible-island.net/xterm/ctlseqs/ctlseqs.html の「DEC Private Mode Set (DECSET)」を参照してください。

Terminalの検出されたシェルタイプ。シェルが何であるかについて明確な兆候がない場合、またはシェルがまだサポートされていない場合、これは undefined になります。この値は、サブシェルのシェルタイプ (たとえば、zsh 内で bash を実行するなど) に変更されるはずです。

可能な値は現在、'bash'、'cmd'、'csh'、'fish'、'gitbash'、'julia'、'ksh'、'node'、'nu'、'pwsh'、'python'、'sh'、'wsl'、'zsh' のいずれかとして定義されていることに注意してください。

TestController

テストを検出および実行するためのエントリポイント。TestController.items (エディターUIのポップアップに使用) と、テストの実行を可能にする実行プロファイルに関連付けられています。

プロパティ

tests.createTestController で渡されたコントローラーのID。これはグローバルに一意である必要があります。

「トップレベル」のTestItemインスタンスのコレクション。これらは、独自のchildrenを持ち、「テストツリー」を形成できます。

拡張機能は、テストを追加するタイミングを制御します。たとえば、ファイル内のテストの装飾を表示するために、拡張機能は workspace.onDidOpenTextDocument が発火したときにファイルのテストを追加する必要があります。

ただし、エディターは resolveHandler を使用して子を明示的に要求する場合があります。詳細については、そのメソッドのドキュメントを参照してください。

テストコントローラーの人間が読めるラベル。

このメソッドが存在する場合、UIに更新ボタンが表示され、クリックされるとこのメソッドが呼び出されます。呼び出されると、拡張機能はワークスペースをスキャンして、新規、変更、または削除されたテストを探す必要があります。

拡張機能は、たとえば FileSystemWatcher を使用して、リアルタイムでテストを更新し、このメソッドをフォールバックとして使用することをお勧めします。

パラメーター説明
token: CancellationToken
戻り値説明
void | Thenable<void>

テストが更新されたときに解決される Thenable。

TestItem.canResolveChildrentrue の場合、エディターがテスト項目の子を要求するために呼び出すことができる、拡張機能によって提供される関数。呼び出されると、項目は子を検出し、子が検出されると TestController.createTestItem を呼び出す必要があります。

一般的に、拡張機能はテスト項目のライフサイクルを管理しますが、特定の場合には、エディターが特定の項目の子をロードするように要求する場合があります。たとえば、ユーザーがエディターをリロードした後でテストを再実行するように要求した場合、エディターは以前に実行されたテストを解決するためにこのメソッドを呼び出す必要がある場合があります。

エクスプローラーの項目は、関数が戻るか、戻り値の thenable が解決されるまで、自動的に「ビジー」としてマークされます。

パラメーター説明
item: TestItem

子を要求されている未解決のテスト項目、またはコントローラーの最初の items を解決する場合は undefined

戻り値説明
void | Thenable<void>

メソッド

テストの実行に使用されるプロファイルを作成します。拡張機能は、テストを実行するために少なくとも1つのプロファイルを作成する必要があります。

パラメーター説明
label: string

このプロファイルの人間が読めるラベル。

kind: TestRunProfileKind

このプロファイルが管理する実行の種類を構成します。

runHandler: (request: TestRunRequest, token: CancellationToken) => void | Thenable<void>

テスト実行を開始するために呼び出される関数。

isDefault?: boolean

これがその種類のデフォルトのアクションであるかどうか。

tag?: TestTag

プロファイルテストタグ。

supportsContinuousRun?: boolean

プロファイルが継続的な実行をサポートするかどうか。

戻り値説明
TestRunProfile

TestRunProfile のインスタンス。これは自動的にこのコントローラーに関連付けられます。

新しい管理対象の TestItem インスタンスを作成します。既存の項目の TestItem.children または TestController.items に追加できます。

パラメーター説明
id: string

TestItem の識別子。テスト項目のIDは、追加される TestItemCollection 内で一意である必要があります。

label: string

テスト項目の人間が読めるラベル。

uri?: Uri

この TestItem が関連付けられている URI。ファイルまたはディレクトリの場合があります。

戻り値説明
TestItem

TestRun を作成します。これは、テストを実行するリクエストが行われたときに TestRunProfile によって呼び出される必要があり、テスト実行が外部で検出された場合にも呼び出すことができます。作成されると、リクエストに含まれるテストはキューに入れられた状態に移行されます。

同じ request インスタンスを使用して作成されたすべての実行はグループ化されます。これは、たとえば、単一のテストスイートが複数のプラットフォームで実行されている場合に役立ちます。

パラメーター説明
request: TestRunRequest

テスト実行リクエスト。include 内のテストのみを変更でき、exclude 内のテストは無視されます。

name?: string

実行の人間が読める名前。これは、テスト実行で複数の結果セットを区別するために使用できます。たとえば、テストが複数のプラットフォームで実行されている場合に役立ちます。

persist?: boolean

実行によって作成された結果をエディターに永続化するかどうか。結果がカバレッジ情報ファイルなど、外部に既に保存されているファイルから来ている場合は、false になる場合があります。

戻り値説明
TestRun

TestRun のインスタンス。これは、このメソッドが呼び出された瞬間から TestRun.end が呼び出されるまで「実行中」と見なされます。

テストコントローラーを登録解除し、関連付けられたテストと永続化されていない結果を破棄します。

パラメーター説明
戻り値説明
void

項目の結果を古いものとしてマークします。これは通常、コードまたは構成が変更され、以前の結果が関連性がなくなったと見なされる場合に呼び出されます。結果を古いものとしてマークするために使用される同じロジックを、継続的なテスト実行を駆動するために使用できます。

項目がこのメソッドに渡されると、項目とそのすべての子のテスト結果は古いものとしてマークされます。項目が渡されない場合、TestController が所有するすべてのテストは古いものとしてマークされます。

このメソッドが呼び出される前に開始されたテスト実行 (まだ進行中の実行を含む) は、古いものとしてマークされ、エディターのUIで優先順位が下げられます。

パラメーター説明
items?: TestItem | readonly TestItem[]

古いものとしてマークする項目。未定義の場合、コントローラーのすべての項目が古いものとしてマークされます。

戻り値説明
void

TestCoverageCount

カバレッジされたリソースに関する情報を含むクラス。ファイル内の行、ブランチ、および宣言に対してカウントを与えることができます。

コンストラクター

パラメーター説明
covered: number
total: number
戻り値説明
TestCoverageCount

プロパティ

ファイル内でカバレッジされた項目の数。

ファイル内でカバレッジされた項目の合計数。

TestItem

「テストエクスプローラー」ビューに表示される項目。

TestItem は、テストスイートまたはテスト自体を表すことができます。どちらも同様の機能を備えているためです。

プロパティ

テストエクスプローラービューで項目を「ビジー」として表示するかどうかを制御します。これは、子を検出中にステータスを表示するのに役立ちます。

デフォルトは false です。

このテスト項目が、解決処理によって子項目を発見できるかどうかを示します。

trueの場合、この項目はテストエクスプローラービューで展開可能として表示され、項目を展開すると、TestController.resolveHandler がその項目とともに呼び出されます。

デフォルトは false です。

このテスト項目の子項目です。テストスイートの場合、個々のテストケースまたはネストされたスイートが含まれることがあります。

ラベルの横に表示されるオプションの説明です。

テストのロード中に発生したオプションのエラーです。

これはテスト結果ではなく、構文エラーなどのテスト検出のエラーを表すためにのみ使用されるべきであることに注意してください。

TestItem の識別子です。これは、ドキュメント内のテスト結果とテスト、およびワークスペース(テストエクスプローラー)内のテストを関連付けるために使用されます。これは TestItem のライフタイムの間変更できず、親の直下の子の間で一意である必要があります。

テストケースを説明する表示名です。

この項目の親です。これは自動的に設定され、TestController.items のトップレベル項目、および別の項目の children にまだ含まれていない項目に対しては未定義です。

uri 内のテスト項目の位置です。

これは、uri がファイルを指している場合にのみ意味があります。

この項目を他の項目と比較する際に使用される文字列です。falsy の場合、label が使用されます。

このテスト項目に関連付けられたタグです。tags と組み合わせて使用​​したり、単に組織的な機能として使用したりできます。

この TestItem が関連付けられている URI です。ファイルまたはディレクトリである場合があります。

TestItemCollection

TestItem.children および TestController.items に存在するテスト項目のコレクション。

プロパティ

コレクション内の項目の数を取得します。

メソッド

テスト項目を子項目に追加します。同じ ID の項目がすでに存在する場合、それは置き換えられます。

パラメーター説明
item: TestItem

追加する項目。

戻り値説明
void

コレクションから単一のテスト項目を削除します。

パラメーター説明
itemId: string

削除する項目 ID。

戻り値説明
void

このコレクション内の各エントリを反復処理します。

パラメーター説明
callback: (item: TestItem, collection: TestItemCollection) => unknown

各エントリに対して実行する関数。

thisArg?: any

ハンドラー関数を呼び出すときに使用される this コンテキスト。

戻り値説明
void

子項目内に、ID でテスト項目を効率的に取得します(存在する場合)。

パラメーター説明
itemId: string

取得する項目 ID。

戻り値説明
TestItem

見つかった項目。存在しない場合は未定義。

コレクションによって格納されている項目を置き換えます。

パラメーター説明
items: readonly TestItem[]

格納する項目。

戻り値説明
void

TestMessage

テスト状態に関連付けられたメッセージです。特定ソース範囲にリンクできます。たとえば、アサーションの失敗に役立ちます。

静的

エディターで差分として表示される新しい TestMessage を作成します。

パラメーター説明
message: string | MarkdownString

ユーザーに表示するメッセージ。

expected: string

期待される出力。

actual: string

実際の出力。

戻り値説明
TestMessage

コンストラクター

新しい TestMessage インスタンスを作成します。

パラメーター説明
message: string | MarkdownString

ユーザーに表示するメッセージ。

戻り値説明
TestMessage

プロパティ

実際のテスト出力。expectedOutput とともに指定された場合、差分ビューが表示されます。

テスト項目のコンテキスト値。これは、テストピークビューにメッセージ固有のアクションを提供するために使用できます。ここで設定された値は、次の menus 貢献ポイントの testMessage プロパティにあります。

  • testing/message/context - 結果ツリー内のメッセージのコンテキストメニュー
  • testing/message/content - メッセージが表示されるエディターコンテンツをオーバーレイする目立つボタン。

例:

"contributes": {
  "menus": {
    "testing/message/content": [
      {
        "command": "extension.deleteCommentThread",
        "when": "testMessage == canApplyRichDiff"
      }
    ]
  }
}

コマンドは、次のオブジェクトとともに呼び出されます。

  • test: メッセージが関連付けられている TestItemTestController.items コレクションにまだ存在する場合。
  • message: TestMessage インスタンス。

期待されるテスト出力。actualOutput とともに指定された場合、差分ビューが表示されます。

関連付けられたファイルロケーション。

表示する人間が読めるメッセージテキスト。

メッセージまたは失敗に関連付けられたスタックトレース。

TestMessageStackFrame

TestMessage.stackTrace に見られるスタックフレーム。

コンストラクター

パラメーター説明
label: string

スタックフレームの名前

uri?: Uri
position?: Position

ファイル内のスタックフレームの位置

戻り値説明
TestMessageStackFrame

プロパティ

スタックフレームの名前。通常はメソッド名または関数名です。

ファイル内のスタックフレームの位置。

このスタックフレームの場所。呼び出しフレームの場所にエディターからアクセスできる場合は、URI として提供する必要があります。

TestRun

TestRun は、進行中または完了したテスト実行を表し、実行中の個々のテストの状態を報告する方法を提供します。

イベント

エディターがテスト実行に関連付けられたデータに関心を示さなくなったときに発生するイベント。

プロパティ

テスト実行がエディターによる再読み込み後も永続化されるかどうか。

実行の人間が読める名前。これは、テスト実行で複数の結果セットを区別するために使用できます。たとえば、テストが複数のプラットフォームで実行されている場合に役立ちます。

UI からテスト実行がキャンセルされたときにトリガーされるキャンセルトークン。

メソッド

実行中のファイルのカバレッジを追加します。

パラメーター説明
fileCoverage: FileCoverage
戻り値説明
void

テストランナーからの生の出力を追加します。ユーザーのリクエストに応じて、出力はターミナルに表示されます。色やテキストスタイルなどの ANSI エスケープシーケンスがサポートされています。改行は、LF (\n) ではなく CRLF (\r\n) として指定する必要があります。

パラメーター説明
output: string

追加する出力テキスト。

location?: Location

出力が指定された場所でログに記録されたことを示します。

test?: TestItem

出力を関連付けるテスト項目。

戻り値説明
void

テスト実行の終了を通知します。状態が更新されていない実行に含まれるテストは、状態がリセットされます。

パラメーター説明
戻り値説明
void

テストが後で実行するためにキューに入れられたことを示します。

パラメーター説明
test: TestItem

更新するテスト項目。

戻り値説明
void

テストがエラーになったことを示します。失敗を説明するために、1 つ以上の TestMessage を渡す必要があります。これは、たとえばコンパイルエラーからの、まったく実行できなかったテストを示す点で「失敗」状態とは異なります。

パラメーター説明
test: TestItem

更新するテスト項目。

message: TestMessage | readonly TestMessage[]

テストの失敗に関連付けられたメッセージ。

duration?: number

テストの実行にかかった時間(ミリ秒単位)。

戻り値説明
void

テストが失敗したことを示します。失敗を説明するために、1 つ以上の TestMessage を渡す必要があります。

パラメーター説明
test: TestItem

更新するテスト項目。

message: TestMessage | readonly TestMessage[]

テストの失敗に関連付けられたメッセージ。

duration?: number

テストの実行にかかった時間(ミリ秒単位)。

戻り値説明
void

テストが成功したことを示します。

パラメーター説明
test: TestItem

更新するテスト項目。

duration?: number

テストの実行にかかった時間(ミリ秒単位)。

戻り値説明
void

テストがスキップされたことを示します。

パラメーター説明
test: TestItem

更新するテスト項目。

戻り値説明
void

テストの実行が開始されたことを示します。

パラメーター説明
test: TestItem

更新するテスト項目。

戻り値説明
void

TestRunProfile

TestRunProfile は、TestController でテストを実行する 1 つの方法を記述します。

イベント

ユーザーがこれがデフォルトプロファイルであるかどうかを変更したときに発生します。イベントには isDefault の新しい値が含まれています。

プロパティ

このメソッドが存在する場合、UI に構成ギアが表示され、クリックするとこのメソッドが呼び出されます。呼び出されたら、クイックピックを表示したり、構成ファイルを開いたりするなど、他のエディターアクションを実行できます。

パラメーター説明
戻り値説明
void

このプロファイルが、その種類がアクションされたときに実行されるデフォルトのアクションであるかどうかを制御します。たとえば、ユーザーが一般的な「すべて実行」ボタンをクリックすると、TestRunProfileKind.Run のデフォルトプロファイルが実行されますが、ユーザーはこれを構成できます。

ユーザーがデフォルトプロファイルで行った変更は、onDidChangeDefault イベント後にこのプロパティに反映されます。

このプロファイルが制御する実行の種類を構成します。種類に対するプロファイルがない場合、UI では使用できません。

UI でユーザーに表示されるラベル。

ユーザーが特定の実行方法でテストを再実行するように要求した場合、ラベルにはいくつかの意味があることに注意してください。たとえば、テストが正常に実行され、ユーザーがデバッグモードで再実行するように要求した場合、エディターは Debug 種類の同じラベルの構成を使用しようとします。そのような構成がない場合、デフォルトが使用されます。

ファイルの詳細なステートメントおよび関数レベルのカバレッジを提供する、拡張機能によって提供される関数。エディターは、ファイルがエディターで開かれたり、テストカバレッジビューで展開されたりするなど、ファイルの詳細が必要な場合にこれを呼び出します。

この関数に渡される FileCoverage オブジェクトは、このプロファイルに関連付けられた TestRun.addCoverage 呼び出しで発行されたインスタンスと同じです。

パラメーター説明
testRun: TestRun
fileCoverage: FileCoverage
token: CancellationToken
戻り値説明
Thenable<FileCoverageDetail[]>

ファイル内の単一のテストの詳細なステートメントおよび関数レベルのカバレッジを提供する、拡張機能によって提供される関数。これは、TestRunProfile.loadDetailedCoverage のテストごとの兄弟であり、FileCoverage.includesTests でテスト項目が提供されている場合にのみ、そのようなデータが報告されるファイルに対してのみ呼び出されます。

多くの場合、ユーザーがファイルを開くと最初に TestRunProfile.loadDetailedCoverage が呼び出され、次に特定のテストごとのカバレッジ情報をドリルダウンすると、このメソッドが呼び出されます。次に、このメソッドは、実行中に特定のテストによって実行されたステートメントと宣言のカバレッジデータのみを返す必要があります。

この関数に渡される FileCoverage オブジェクトは、このプロファイルに関連付けられた TestRun.addCoverage 呼び出しで発行されたインスタンスと同じです。

パラメーター説明
testRun: TestRun

カバレッジデータを生成したテスト実行。

fileCoverage: FileCoverage

詳細なカバレッジをロードするファイルカバレッジオブジェクト。

fromTestItem: TestItem

カバレッジ情報をリクエストするテスト項目。

token: CancellationToken

操作をキャンセルする必要があることを示すキャンセルトークン。

戻り値説明
Thenable<FileCoverageDetail[]>

テスト実行を開始するために呼び出されるハンドラー。呼び出された場合、関数は少なくとも 1 回 TestController.createTestRun を呼び出す必要があり、リクエストに関連付けられたすべてのテスト実行は、関数が戻るか、返された Promise が解決される前に作成される必要があります。

supportsContinuousRun が設定されている場合、TestRunRequest.continuoustrue になる可能性があります。この場合、プロファイルはソースコードの変更を監視し、token でキャンセルがリクエストされるまで、TestController.createTestRun を呼び出すことによって新しいテスト実行を作成する必要があります。

パラメーター説明
request: TestRunRequest

テスト実行のリクエスト情報。

token: CancellationToken
戻り値説明
void | Thenable<void>

このプロファイルがリクエストの継続的な実行をサポートするかどうか。サポートする場合、TestRunRequest.continuoustrue に設定できます。デフォルトは false です。

プロファイルに関連付けられたタグ。これが設定されている場合、同じタグが TestItem.tags 配列に含まれる TestItem インスタンスのみがこのプロファイルで実行する資格があります。

メソッド

実行プロファイルを削除します。

パラメーター説明
戻り値説明
void

TestRunProfileKind

TestRunProfile が制御する実行の種類。

列挙メンバー

Run テストプロファイルの種類。

Debug テストプロファイルの種類。

Coverage テストプロファイルの種類。

TestRunRequest

TestRunRequest は TestRun の前身であり、TestController.createTestRun にリクエストを渡すことによって作成されます。TestRunRequest には、実行する必要のあるテスト、実行しない必要があるテスト、およびそれらの実行方法(profile 経由)に関する情報が含まれています。

一般に、TestRunRequest はエディターによって作成され、TestRunProfile.runHandler に渡されますが、runHandler の外部でテストリクエストと実行を作成することもできます。

コンストラクター

パラメーター説明
include?: readonly TestItem[]

実行する特定のテストの配列。すべてのテストを実行する場合は未定義。

exclude?: readonly TestItem[]

実行から除外するテストの配列。

profile?: TestRunProfile

このリクエストに使用される実行プロファイル。

continuous?: boolean

ソースが変更されたときにテストを継続的に実行するかどうか。

preserveFocus?: boolean

実行が開始されたときにユーザーのフォーカスを維持するかどうか

戻り値説明
TestRunRequest

プロパティ

プロファイルがソースコードの変更に応じて継続的に実行されるかどうか。TestRunProfile.supportsContinuousRun を設定するプロファイルにのみ関連します。

ユーザーがこの実行に含まれるテストから除外するようにマークしたテストの配列。除外は包含の後に適用される必要があります。

除外がリクエストされなかった場合は省略される場合があります。テストコントローラーは、除外されたテストまたは除外されたテストの子を実行しないでください。

実行する特定のテストのフィルター。指定された場合、拡張機能は、TestRunRequest.exclude に表示されるテストを除外して、含まれるすべてのテストとそのすべての子を実行する必要があります。このプロパティが未定義の場合、拡張機能はすべてのテストを単に実行する必要があります。

テストを実行するプロセスでは、まだ解決されていないテスト項目の子を解決する必要があります。

テスト結果ビューのフォーカス方法を制御します。true の場合、エディターはユーザーのフォーカスを維持します。false の場合、エディターはテスト結果ビューにフォーカスを移動することを優先しますが、これはユーザーが構成できる場合があります。

このリクエストに使用されるプロファイル。これは、エディター UI から発行されたリクエストに対して常に定義されますが、拡張機能はプロファイルに関連付けられていないリクエストをプログラムで作成する場合があります。

TestTag

タグは、TestItem および TestRunProfile に関連付けることができます。タグ付きのプロファイルは、TestItem.tags 配列にそのタグを含むテストのみを実行できます。

コンストラクター

新しい TestTag インスタンスを作成します。

パラメーター説明
id: string

テストタグの ID。

戻り値説明
TestTag

プロパティ

テストタグの ID。同じ ID を持つ TestTag インスタンスは同一と見なされます。

TextDocument

ソースファイルなどのテキストドキュメントを表します。テキストドキュメントには lines があり、ファイルなどの基になるリソースに関する知識があります。

プロパティ

このドキュメントで主に使用されている 改行コード シーケンス。

関連付けられたリソースのファイルシステムパス。TextDocument.uri.fsPath の省略記法。uri スキームに依存しません。

ドキュメントが閉じられている場合は true。閉じられたドキュメントは同期されなくなり、同じリソースが再度開かれたときに再利用されません。

未保存の変更がある場合はtrue

これは、まだ保存されたことのない名前のないファイルを表すドキュメントですか。注意 これは、ドキュメントがディスクに保存されることを意味するものではありません。Uri.scheme を使用して、ドキュメントが saved される場所(fileftp など)を把握してください。

このドキュメントに関連付けられた言語の識別子。

このドキュメントの行数。

このドキュメントに関連付けられた URI。

注意: ほとんどのドキュメントは file スキームを使用しており、これはディスク上のファイルを意味します。しかし、すべてのドキュメントがディスクに保存されているわけではないため、基になるファイルやディスク上の兄弟ファイルにアクセスする前に、scheme を確認する必要があります。

以下も参照してください

このドキュメントのバージョン番号(アンドゥ/リドゥを含む、各変更後に厳密に増加します)。

メソッド

このドキュメントのテキストを取得します。範囲を指定することで、部分文字列を取得できます。範囲は調整されます。

パラメーター説明
range?: Range

範囲に含まれるテキストのみを含めます。

戻り値説明
string

指定された範囲内のテキスト、またはテキスト全体。

指定された位置の単語範囲を取得します。デフォルトでは、単語はスペース、-、_ などの一般的な区切り文字で定義されます。さらに、言語ごとにカスタムの[単語定義]を定義できます。カスタム正規表現を提供することも可能です。

  • 注 1: カスタム正規表現は空文字列に一致してはならず、一致した場合、無視されます。
  • 注 2: カスタム正規表現は複数行の文字列とのマッチングに失敗し、速度の観点から正規表現はスペースを含む単語に一致すべきではありません。より複雑で単語的でないシナリオには、TextLine.text を使用してください。

位置は調整されます。

パラメーター説明
position: Position

ポジション。

regex?: RegExp

単語を定義するオプションの正規表現。

戻り値説明
Range

単語にまたがる範囲、または undefined

行番号で示されるテキスト行を返します。返されるオブジェクトはライブではなく、ドキュメントへの変更は反映されないことに注意してください。

パラメーター説明
line: number

[0, lineCount) の範囲の行番号。

戻り値説明
TextLine

位置で示されるテキスト行を返します。返されるオブジェクトはライブではなく、ドキュメントへの変更は反映されないことに注意してください。

位置は調整されます。

参照 TextDocument.lineAt

パラメーター説明
position: Position

ポジション。

戻り値説明
TextLine

位置をゼロベースのオフセットに変換します。

位置は調整されます。

パラメーター説明
position: Position

ポジション。

戻り値説明
number

UTF-16 コードユニットでの有効なゼロベースのオフセット。

ゼロベースのオフセットを位置に変換します。

パラメーター説明
offset: number

ドキュメント内のゼロベースのオフセット。このオフセットは UTF-16 コードユニットです。

戻り値説明
Position

有効な Position

基になるファイルを保存します。

パラメーター説明
戻り値説明
Thenable<boolean>

ファイルが保存されたときに true に解決される Promise。保存に失敗した場合、false を返します。

位置がこのドキュメントの範囲内に含まれていることを保証します。

パラメーター説明
position: Position

ポジション。

戻り値説明
Position

指定された位置、または新しく調整された位置。

範囲がこのドキュメントに完全に含まれていることを保証します。

パラメーター説明
range: Range

範囲。

戻り値説明
Range

指定された範囲、または新しく調整された範囲。

TextDocumentChangeEvent

トランザクション的なドキュメントの変更を記述するイベント。

プロパティ

コンテンツ変更の配列。

影響を受けたドキュメント。

ドキュメントが変更された理由。理由が不明な場合は undefined です。

TextDocumentChangeReason

テキストドキュメントが変更された理由。

列挙メンバー

テキストの変更がアンドゥ操作によって引き起こされた。

テキストの変更がリドゥ操作によって引き起こされた。

TextDocumentContentChangeEvent

ドキュメントのテキストにおける個々の変更を記述するイベント。

プロパティ

置換された範囲。

置換された範囲の長さ。

置換された範囲のオフセット。

範囲の新しいテキスト。

TextDocumentContentProvider

テキストドキュメントコンテンツプロバイダーを使用すると、dll からのソースや md から生成された html など、読み取り専用ドキュメントをエディターに追加できます。

コンテンツプロバイダーは、uri スキームに対して登録されます。そのスキームを持つ uri がロードされると、コンテンツプロバイダーに問い合わせが行われます。

イベント

リソースが変更されたことを通知するイベント。

メソッド

指定された uri のテキストコンテンツを提供します。

エディターは、返された文字列コンテンツを使用して読み取り専用のドキュメントを作成します。割り当てられたリソースは、対応するドキュメントが閉じられたときに解放する必要があります。

注意: 作成されたドキュメントの内容は、行末シーケンスの正規化により、提供されたテキストと同一ではない場合があります。

パラメーター説明
uri: Uri

このプロバイダーが登録されたスキームに一致するスキームを持つ uri。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<string>

文字列、またはそのような文字列に解決される Thenable。

TextDocumentSaveReason

テキストドキュメントが保存される理由を表します。

列挙メンバー

ユーザーが保存を押したり、デバッグを開始したり、API 呼び出しを行ったりするなど、手動でトリガーされた場合。

遅延後の自動保存。

エディターがフォーカスを失ったとき。

TextDocumentShowOptions

エディタードキュメントを表示する動作を設定するためのオプションを表します。

プロパティ

true の場合、エディターがフォーカスを受け取るのを停止するオプションのフラグ。

エディタータブをプレビューとして表示するかどうかを制御するオプションのフラグ。プレビュータブは、明示的に、または編集によって維持されるように設定されるまで、置換および再利用されます。

注意: ユーザーが設定でプレビューエディターを無効にしている場合、このフラグは無視されます。

エディター内のドキュメントに適用するオプションの選択範囲。

エディターを表示するオプションのビュー列。デフォルトは active です。存在しない列は、最大 ViewColumn.Nine まで必要に応じて作成されます。ViewColumn.Beside を使用すると、現在アクティブなエディターの横にエディターを開きます。

TextDocumentWillSaveEvent

ドキュメントが保存されるときに発生するイベント。

ドキュメントが保存される前に変更を加えるには、waitUntil 関数を、テキスト編集の配列に解決される Thenable とともに呼び出します。

プロパティ

保存されるドキュメント。

保存がトリガーされた理由。

メソッド

イベントループを一時停止し、保存前編集を適用することを許可します。この関数への後続の呼び出しによる編集は、順番に適用されます。ドキュメントの同時変更が発生した場合、編集は無視されます。

注: この関数は、イベントディスパッチ中のみ呼び出すことができ、非同期的に呼び出すことはできません。

workspace.onWillSaveTextDocument(event => {
  // async, will *throw* an error
  setTimeout(() => event.waitUntil(promise));

  // sync, OK
  event.waitUntil(promise);
});
パラメーター説明
thenable: Thenable<readonly TextEdit[]>

保存前編集に解決される Thenable。

戻り値説明
void

提供されたThenableが解決されるまでイベントループを一時停止できるようにします。

注: この関数は、イベントディスパッチ中のみ呼び出すことができます。

パラメーター説明
thenable: Thenable<any>

保存を遅延させる Thenable。

戻り値説明
void

TextEdit

テキスト編集は、ドキュメントに適用されるべき編集を表します。

静的

削除編集を作成するユーティリティ。

パラメーター説明
range: Range

範囲。

戻り値説明
TextEdit

新しいテキスト編集オブジェクト。

挿入編集を作成するユーティリティ。

パラメーター説明
position: Position

positionは空の範囲になります。

newText: string

文字列。

戻り値説明
TextEdit

新しいテキスト編集オブジェクト。

置換編集を作成するユーティリティ。

パラメーター説明
range: Range

範囲。

newText: string

文字列。

戻り値説明
TextEdit

新しいテキスト編集オブジェクト。

eol 編集を作成するユーティリティ。

パラメーター説明
eol: EndOfLine

eol シーケンス

戻り値説明
TextEdit

新しいテキスト編集オブジェクト。

コンストラクター

新しい TextEdit を作成します。

パラメーター説明
range: Range

範囲。

newText: string

文字列。

戻り値説明
TextEdit

プロパティ

ドキュメントで使用される eol シーケンス。

注意: eol シーケンスはドキュメント全体に適用されます。

この編集で挿入される文字列。

この編集が適用される範囲。

TextEditor

ドキュメントにアタッチされたエディターを表します。

プロパティ

このテキストエディターに関連付けられたドキュメント。ドキュメントは、このテキストエディターの存続期間中ずっと同じです。

テキストエディターのオプション。

このテキストエディターのプライマリ選択範囲。TextEditor.selections[0] のショートハンドです。

このテキストエディターの選択範囲。プライマリ選択範囲は常にインデックス 0 にあります。

このエディターが表示される列。これがメインエディターの 1 つでない場合(例:埋め込みエディター)、またはエディター列が 3 より大きい場合は undefined になります。

エディターの現在の表示範囲(垂直方向)。これは垂直スクロールのみを考慮し、水平スクロールは考慮しません。

メソッド

このテキストエディターに関連付けられたドキュメントに対して編集を実行します。

指定されたコールバック関数は、編集を行うために使用する必要があるエディットビルダーとともに呼び出されます。エディットビルダーは、コールバックの実行中にのみ有効であることに注意してください。

パラメーター説明
callback: (editBuilder: TextEditorEdit) => void

エディットビルダーを使用して編集を作成できる関数。

options?: {undoStopAfter: boolean, undoStopBefore: boolean}

この編集に関するアンドゥ/リドゥの動作。デフォルトでは、アンドゥストップはこの編集の前後に作成されます。

戻り値説明
Thenable<boolean>

編集が適用可能かどうかを示す値を解決する Promise。

テキストエディターを非表示にします。

  • 非推奨 - 代わりにコマンド workbench.action.closeActiveEditor を使用してください。このメソッドは予期しない動作を示し、次回のメジャーアップデートで削除される予定です。
パラメーター説明
戻り値説明
void

スニペットを挿入し、エディターをスニペットモードにします。「スニペットモード」とは、ユーザーがスニペットを完了または受け入れることができるように、エディターがプレースホルダーと追加のカーソルを追加することを意味します。

パラメーター説明
snippet: SnippetString

この編集で挿入するスニペット。

location?: Range | Position | readonly Range[] | readonly Position[]

スニペットを挿入する位置または範囲。デフォルトは、現在のエディターの選択範囲または複数の選択範囲です。

options?: {keepWhitespace: boolean, undoStopAfter: boolean, undoStopBefore: boolean}

この編集に関するアンドゥ/リドゥの動作。デフォルトでは、アンドゥストップはこの編集の前後に作成されます。

戻り値説明
Thenable<boolean>

スニペットを挿入できたかどうかを示す値を解決する Promise。Promise は、スニペットが完全に記入または承認されたことを通知するものではないことに注意してください。

指定された範囲を表示するために、revealTypeで示されるようにスクロールします。

パラメーター説明
range: Range

範囲。

revealType?: TextEditorRevealType

rangeを表示するためのスクロール戦略。

戻り値説明
void

テキストエディターに装飾のセットを追加します。指定された装飾タイプで装飾のセットが既に存在する場合、それらは置換されます。rangesOrOptions が空の場合、指定された装飾タイプの既存の装飾は削除されます。

参照 createTextEditorDecorationType

パラメーター説明
decorationType: TextEditorDecorationType

装飾タイプ。

rangesOrOptions: readonly Range[] | readonly DecorationOptions[]

範囲またはより詳細なオプションのいずれか。

戻り値説明
void

テキストエディターを表示します。

パラメーター説明
column?: ViewColumn

このエディターを表示する。このメソッドは予期しない動作を示し、次回のメジャーアップデートで削除される予定です。

戻り値説明
void

TextEditorCursorStyle

カーソルのレンダリングスタイル。

列挙メンバー

カーソルを垂直の太線としてレンダリングします。

カーソルを塗りつぶされたブロックとしてレンダリングします。

カーソルを水平の太線としてレンダリングします。

カーソルを垂直の細線としてレンダリングします。

カーソルをアウトライン化されたブロックとしてレンダリングします。

カーソルを水平の細線としてレンダリングします。

TextEditorDecorationType

スタイリングオプションを共有する装飾のセットへのハンドルをテキストエディター内で表します。

TextEditorDecorationType のインスタンスを取得するには、createTextEditorDecorationType を使用します。

プロパティ

ハンドルの内部表現。

メソッド

この装飾タイプと、それを使用しているすべてのテキストエディター上のすべての装飾を削除します。

パラメーター説明
戻り値説明
void

TextEditorEdit

TextEditor 上で 1 つのトランザクションで適用される複合編集。これは、編集の説明と、編集が有効かどうか(つまり、重複する領域がない、ドキュメントがその間に変更されていないなど)を保持し、テキストエディターに関連付けられたドキュメントに適用できます。

メソッド

特定のテキスト領域を削除します。

パラメーター説明
location: Range | Selection

この操作で削除する範囲。

戻り値説明
void

テキストを特定の位置に挿入します。value\r\n または \n を使用できます。これらは現在のドキュメントに正規化されます。同等のテキスト編集は replace で行うことができますが、insert は異なる結果の選択範囲を生成します(移動されます)。

パラメーター説明
location: Position

新しいテキストを挿入する位置。

value: string

この操作で挿入する新しいテキスト。

戻り値説明
void

特定テキスト領域を新しい値で置換します。value 内で \r\n または \n を使用できます。これらは現在の ドキュメント に正規化されます。

パラメーター説明
location: Range | Position | Selection

この操作で削除する範囲。

value: string

この操作が location を削除後に挿入する新しいテキスト。

戻り値説明
void

改行シーケンスを設定します。

パラメーター説明
endOfLine: EndOfLine

ドキュメント の新しい改行コード。

戻り値説明
void

TextEditorLineNumbersStyle

行番号のレンダリングスタイル。

列挙メンバー

行番号をレンダリングしません。

行番号をレンダリングします。

プライマリカーソルの位置を基準とした相対的な値で行番号をレンダリングします。

10行ごとの行番号をレンダリングします。

TextEditorOptions

プロパティ

このエディターでのカーソルのレンダリングスタイル。テキストエディターのオプションを取得する場合、このプロパティは常に存在します。テキストエディターのオプションを設定する場合、このプロパティはオプションです。

insertSpaces が true の場合に挿入するスペースの数。

テキストエディターのオプションを取得する場合、このプロパティは常に数値(解決済み)になります。テキストエディターのオプションを設定する場合、このプロパティはオプションであり、数値または "tabSize" にすることができます。

Tab キーを押したときに n 個のスペースを挿入します。テキストエディターのオプションを取得する場合、このプロパティは常にブール値(解決済み)になります。テキストエディターのオプションを設定する場合、このプロパティはオプションであり、ブール値または "auto" にすることができます。

現在の行番号に対する相対的な行番号をレンダリングします。テキストエディターのオプションを取得する場合、このプロパティは常に存在します。テキストエディターのオプションを設定する場合、このプロパティはオプションです。

タブが占めるスペースのサイズ。これは2つの目的で使用されます。

  • タブ文字のレンダリング幅;
  • insertSpaces が true で、indentSize"tabSize" に設定されている場合に挿入するスペースの数。

テキストエディターのオプションを取得する場合、このプロパティは常に数値(解決済み)になります。テキストエディターのオプションを設定する場合、このプロパティはオプションであり、数値または "auto" にすることができます。

TextEditorOptionsChangeEvent

テキストエディターのオプション の変更を記述するイベントを表します。

プロパティ

オプションが変更された テキストエディター

TextEditorRevealType

テキストエディターでのさまざまな 表示 戦略を表します。

列挙メンバー

範囲は、可能な限り少ないスクロールで表示されます。

範囲は常にビューポートの中央に表示されます。

範囲がビューポートの外側にある場合は、ビューポートの中央に表示されます。それ以外の場合は、可能な限り少ないスクロールで表示されます。

範囲は常にビューポートの上部に表示されます。

TextEditorSelectionChangeEvent

テキストエディターの選択範囲 の変更を記述するイベントを表します。

プロパティ

このイベントをトリガーした 変更の種類undefined の場合があります。

選択範囲が変更された テキストエディター

TextEditorSelectionChangeKind

選択範囲変更イベント を引き起こす可能性のあるソースを表します。

列挙メンバー

エディターでのタイピングにより選択範囲が変更されました。

エディター内でのクリックにより選択範囲が変更されました。

コマンドが実行されたため、選択範囲が変更されました。

TextEditorViewColumnChangeEvent

テキストエディターの表示列 の変更を記述するイベントを表します。

プロパティ

表示列が変更された テキストエディター

TextEditorVisibleRangesChangeEvent

テキストエディターの可視範囲 の変更を記述するイベントを表します。

プロパティ

可視範囲が変更された テキストエディター

TextLine

ソースコードの行など、テキストの行を表します。

TextLine オブジェクトは immutable(不変) です。ドキュメント が変更された場合、以前に取得した行は最新の状態を表しません。

プロパティ

/\s/ で定義される空白文字ではない最初の文字のオフセット。注意:行がすべて空白の場合、行の長さが返されます。

この行が空白のみであるかどうか。TextLine.firstNonWhitespaceCharacterIndex === TextLine.text.length の省略形。

ゼロベースの行番号。

この行がカバーする範囲(行区切り文字を除く)。

この行がカバーする範囲(行区切り文字を含む)。

この行のテキスト(行区切り文字を除く)。

ThemableDecorationAttachmentRenderOptions

テキスト装飾のコンテンツの および のテーマ固有のレンダリングスタイルを表します。

プロパティ

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

アタッチメントにレンダリングされる画像の 絶対パス または URI。アイコンまたはテキストのいずれかを表示できますが、両方を表示することはできません。

アタッチメントに表示されるテキストコンテンツを定義します。アイコンまたはテキストのいずれかを表示できますが、両方を表示することはできません。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

装飾アタッチメントに適用される CSS スタイリングプロパティ。

ThemableDecorationInstanceRenderOptions

装飾インスタンスのテーマ対応レンダリングオプションを表します。

プロパティ

装飾されたテキストの後に挿入される添付ファイルのレンダリングオプションを定義します。

装飾されたテキストの前に挿入される添付ファイルのレンダリングオプションを定義します。

ThemableDecorationRenderOptions

テキストエディター装飾 のテーマ固有のレンダリングスタイルを表します。

プロパティ

装飾されたテキストの後に挿入される添付ファイルのレンダリングオプションを定義します。

デコレーションの背景色。他のデコレーションとうまく調和するように、rgba()を使用し、透明な背景色を定義します。または、カラーレジストリからの色を参照できます。

装飾されたテキストの前に挿入される添付ファイルのレンダリングオプションを定義します。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のボーダープロパティの1つ以上を設定するには、「border」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

ガターにレンダリングされる画像の絶対パスまたはURI。

ガターアイコンのサイズを指定します。使用可能な値は、「auto」、「contain」、「cover」、および任意のパーセント値です。詳細については、https://msdn.microsoft.com/en-us/library/jj127316(v=vs.85).aspxを参照してください。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。個々のoutlineプロパティの1つ以上を設定するには、「outline」を使用することをお勧めします。

概要ルーラーでのデコレーションの色。他のデコレーションとうまく調和するように、rgba()を使用し、透明な色を定義します。

デコレーションで囲まれたテキストに適用されるCSSスタイリングプロパティ。

ThemeColor

https://vscode.dokyumento.jp/api/references/theme-color で定義されているワークベンチカラーのいずれかへの参照。テーマカラーを使用すると、テーマの作成者とユーザーが色を変更できるため、カスタムカラーよりも推奨されます。

コンストラクター

テーマカラーへの参照を作成します。

パラメーター説明
id: string

色のID。https://vscode.dokyumento.jp/api/references/theme-color に使用可能な色がリストされています。

戻り値説明
ThemeColor

プロパティ

この色のID。

ThemeIcon

名前付きアイコンへの参照。現在、FileFolder、および ThemeIcon ID がサポートされています。テーマアイコンを使用すると、製品テーマの作成者がアイコンを変更できるため、カスタムアイコンよりも推奨されます。

:テーマアイコンは、ラベルと説明内にもレンダリングできます。テーマアイコンをサポートする場所では、これを明記し、$(<name>) 構文を使用します。たとえば、quickPick.label = "Hello World $(globe)" などです。

静的

ファイルを表すアイコンへの参照。アイコンは、現在のファイルアイコンテーマから取得されるか、プレースホルダーアイコンが使用されます。

フォルダーを表すアイコンへの参照。アイコンは、現在のファイルアイコンテーマから取得されるか、プレースホルダーアイコンが使用されます。

コンストラクター

テーマアイコンへの参照を作成します。

パラメーター説明
id: string

アイコンのID。https://vscode.dokyumento.jp/api/references/icons-in-labels#icon-listing に使用可能なアイコンがリストされています。

color?: ThemeColor

アイコンのオプションの ThemeColor。色は現在 TreeItem でのみ使用されています。

戻り値説明
ThemeIcon

プロパティ

アイコンのオプションの ThemeColor。色は現在 TreeItem でのみ使用されています。

アイコンのID。https://vscode.dokyumento.jp/api/references/icons-in-labels#icon-listing に使用可能なアイコンがリストされています。

TreeCheckboxChangeEvent<T>

ツリーアイテムのチェックボックスの状態の変更を記述するイベント。

プロパティ

チェックまたはチェック解除された項目。

TreeDataProvider<T>

ツリーデータを提供するデータプロバイダー

イベント

要素またはルートが変更されたことを通知するオプションのイベント。これにより、ビューは変更された要素/ルートとその子を再帰的に更新します(表示されている場合)。ルートが変更されたことを通知するには、引数を渡さないか、undefined または null を渡します。

メソッド

element の子を取得します。要素が渡されない場合はルートの子を取得します。

パラメーター説明
element?: T

プロバイダーが子を取得する要素。 undefined の場合があります。

戻り値説明
ProviderResult<T[]>

element の子。要素が渡されない場合はルートの子。

element の親を返すオプションのメソッド。 element がルートの子である場合は、null または undefined を返します。

注: reveal API にアクセスするには、このメソッドを実装する必要があります。

パラメーター説明
element: T

親を返す必要がある要素。

戻り値説明
ProviderResult<T>

element の親。

elementTreeItem 表現を取得します

パラメーター説明
element: T

TreeItem 表現が要求される要素。

戻り値説明
TreeItem | Thenable<TreeItem>

要素の TreeItem 表現。

TreeItem プロパティが未定義の場合にホバー時に呼び出されます。TreeItem プロパティが未定義の場合にツリーアイテムのクリック/オープン時に呼び出されます。 resolveTreeItem で解決できるのは、未定義だったプロパティのみです。機能は、後で選択時やオープン時に他の不足しているプロパティを解決するために呼び出されるように拡張される可能性があります。

TreeItem ごとに 1 回だけ呼び出されます。

onDidChangeTreeData は resolveTreeItem 内からトリガーしないでください。

:この関数は、ツリーアイテムがすでに UI に表示されている場合に呼び出されます。そのため、プレゼンテーション(ラベル、説明など)を変更するプロパティは変更できません。

パラメーター説明
item: TreeItem

item の未定義のプロパティを設定してから、item を返す必要があります。

element: T

TreeItem に関連付けられたオブジェクト。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TreeItem>

解決されたツリーアイテム、またはそのようなアイテムに解決される Thenable。

与えられた item を返すことは問題ありません。結果が返されない場合、与えられた item が使用されます。

TreeDragAndDropController<T>

TreeView でのドラッグアンドドロップのサポートを提供します。

プロパティ

この TreeDragAndDropControllerhandleDrag メソッドがツリーデータ転送に追加できる可能性のある MIME タイプ。

これは、適切に定義された既存の MIME タイプや、拡張機能によって定義された MIME タイプである可能性があります。

ツリーの推奨 MIME タイプ (application/vnd.code.tree.<treeidlowercase>) は自動的に追加されます。

この DragAndDropControllerhandleDrop メソッドがサポートする MIME タイプ。

これは、適切に定義された既存の MIME タイプや、拡張機能によって定義された MIME タイプである可能性があります。

ツリーからのドロップをサポートするには、そのツリーの MIME タイプを追加する必要があります。

これには、同じツリー内からのドロップも含まれます。

ツリーの MIME タイプは、application/vnd.code.tree.<treeidlowercase> の形式にすることが推奨されます。

ファイルの実際の MIME タイプに関係なく、ドロップされたすべてのタイプの files をサポートするには、特別な files MIME タイプを使用してください。

ドラッグされたアイテムの MIME タイプを学習するには

  1. DragAndDropController をセットアップします
  2. 「開発者: ログ レベルの設定...」コマンドを使用して、レベルを「Debug」に設定します
  3. 開発者ツールを開き、不明な MIME タイプを持つアイテムをツリーの上にドラッグします。

    MIME タイプは開発者コンソールに記録されます

拡張機能に送信できない MIME タイプは省略されることに注意してください。

メソッド

ユーザーがこの DragAndDropController からアイテムのドラッグを開始すると、handleDrag が呼び出されます。

拡張機能は handleDrag を使用して、DataTransferItem アイテムをドラッグアンドドロップに追加できます。

アイテムが同じツリー内の別のツリーアイテムにドロップされると、DataTransferItem オブジェクトは保持されます。

ツリーオブジェクトをデータ転送に追加するには、ツリーの推奨 MIME タイプ (application/vnd.code.tree.<treeidlowercase>) を使用してください。

これを最大限に活用する方法については、DataTransferItem のドキュメントを参照してください。

エディターにドラッグできるデータ転送アイテムを追加するには、アプリケーション固有の MIME タイプ "text/uri-list" を使用します。

"text/uri-list" のデータは、toString() 化された Uri を \r\n で区切った文字列である必要があります。

ファイル内のカーソル位置を指定するには、Uri のフラグメントを L3,5 に設定します。ここで、3 は行番号、5 は列番号です。

パラメーター説明
source: readonly T[]

ドラッグアンドドロップ操作のソースアイテム。

dataTransfer: DataTransfer

このドラッグに関連付けられたデータ転送。

token: CancellationToken

ドラッグがキャンセルされたことを示すキャンセル トークン。

戻り値説明
void | Thenable<void>

ドラッグアンドドロップ操作の結果、この DragAndDropController が属するツリーにドロップが発生した場合に呼び出されます。

拡張機能は、更新する必要がある要素に対して onDidChangeTreeData を発生させる必要があります。

パラメーター説明
target: T

ドロップが発生しているターゲット ツリー要素。

未定義の場合、ターゲットはルートです。

dataTransfer: DataTransfer

ドラッグのソースのデータ転送アイテム。

token: CancellationToken

ドロップがキャンセルされたことを示すキャンセル トークン。

戻り値説明
void | Thenable<void>

TreeItem

ツリーアイテムは、ツリーの UI 要素です。

ツリーアイテムは、データプロバイダーによって作成されます。

コンストラクター

パラメーター説明
label: string | TreeItemLabel

このアイテムを説明する人間が読める文字列

collapsibleState?: TreeItemCollapsibleState

ツリーアイテムの TreeItemCollapsibleState

デフォルトは TreeItemCollapsibleState.None です

戻り値説明
TreeItem

パラメーター説明
resourceUri: Uri

このアイテムを表すリソースの Uri

collapsibleState?: TreeItemCollapsibleState

ツリーアイテムの TreeItemCollapsibleState

デフォルトは TreeItemCollapsibleState.None です

戻り値説明
TreeItem

プロパティ

スクリーンリーダーがこのツリーアイテムと対話するときに使用されるアクセシビリティ情報。

一般的に、TreeItem は accessibilityInformation の role を設定する必要はありません。

ただし、TreeItem がツリーのような方法で表示されない場合、role を設定することが理にかなっている場合があります。

ツリーアイテムの TreeItemCheckboxState

checkboxState が変更された場合は、onDidChangeTreeData を発生させる必要があります。

ツリーアイテムの TreeItemCollapsibleState

ツリーアイテムが選択されたときに実行される Command

ツリーアイテムがエディターで何かを開く場合は、コマンド ID として vscode.open または vscode.diff を使用してください。

これらのコマンドを使用すると、結果のエディターが他の組み込みツリーがエディターを開く方法と一貫性のある外観になることが保証されます。

ツリーアイテムのコンテキスト値。

これは、ツリー内のアイテム固有のアクションを提供するために使用できます。

たとえば、ツリーアイテムにはコンテキスト値として folder が与えられます。

menus 拡張機能ポイントを使用して view/item/context にアクションを提供する場合、when 式のキー viewItem にコンテキスト値を viewItem == folder のように指定できます。

"contributes": {
  "menus": {
    "view/item/context": [
      {
        "command": "extension.deleteFolder",
        "when": "viewItem == folder"
      }
    ]
  }
}

これにより、contextValuefolder のアイテムに対してのみアクション extension.deleteFolder が表示されます。

目立たないようにレンダリングされる人間が読める文字列。

true の場合、resourceUri から派生し、falsy の場合、表示されません。

ツリーアイテムのアイコンパスまたは ThemeIcon

falsy の場合、アイテムが折りたたみ可能な場合は フォルダーのテーマアイコン、それ以外の場合は ファイルのテーマアイコン が割り当てられます。

ThemeIcon ファイルまたはフォルダーが指定されている場合、resourceUri (提供されている場合) を使用して、指定されたテーマアイコンの現在のファイルアイコンテーマからアイコンが派生します。

ツリー全体で一意である必要があるツリーアイテムのオプションの ID。

ID は、ツリーアイテムの選択状態と展開状態を保持するために使用されます。

提供されていない場合、ID はツリーアイテムのラベルを使用して生成されます。

注意 ラベルが変更されると、ID が変更され、選択状態と展開状態を安定して維持できなくなることに注意してください。

このアイテムを説明する人間が読める文字列。

falsy の場合、resourceUri から派生します。

このアイテムを表すリソースの Uri

提供されていない場合、ラベルを導出するために使用されます。

iconPathThemeIcon 値がある場合、現在のファイルアイコンテーマからアイコンを導出するために使用されます。

この項目にカーソルを合わせたときのツールチップテキスト。

TreeItemCheckboxState

ツリーアイテムのチェックボックスの状態

列挙メンバー

アイテムがオフになっていることを決定します

アイテムがチェックされていることを決定します

TreeItemCollapsibleState

ツリーアイテムの折りたたみ可能な状態

列挙メンバー

アイテムを折りたたむことも展開することもできないことを決定します。

子供がいないことを意味します。

アイテムが折りたたまれていることを決定します

アイテムが展開されていることを決定します

TreeItemLabel

ツリーアイテムを説明するラベル

プロパティ

強調表示するラベルの範囲。

範囲は、最初が包括的な開始インデックス、2 番目が排他的な終了インデックスである 2 つの数値のタプルとして定義されます

ツリーアイテムを説明する人間が読める文字列。

TreeView<T>

ツリービューを表します

イベント

要素またはルートがチェックまたはチェック解除されたことを通知するイベント。

選択が変更されたときに発生するイベント

表示が変更されたときに発生するイベント

要素が折りたたまれたときに発生するイベント

要素が展開されたときに発生するイベント

プロパティ

この TreeView に表示するバッジ。

バッジを削除するには、未定義に設定します。

ビューのタイトルで目立たないようにレンダリングされるオプションの人間に読める説明。

タイトルの説明を null、未定義、または空文字列に設定すると、ビューから説明が削除されます。

ビューにレンダリングされるオプションの人間に読めるメッセージ。

メッセージを null、未定義、または空文字列に設定すると、ビューからメッセージが削除されます。

現在選択されている要素。

ツリービューのタイトルは、最初は拡張機能 package.json から取得されます。

title プロパティへの変更は、ビューのタイトルで UI に適切に反映されます。

ツリービューが表示されている場合は true、それ以外の場合は false

メソッド

このオブジェクトを破棄します。

パラメーター説明
戻り値説明
any

ツリービューに指定された要素を表示します。

ツリービューが表示されていない場合は、ツリービューが表示され、要素が表示されます。

デフォルトでは、表示された要素が選択されます。

選択しないようにするには、オプション selectfalse に設定します。

フォーカスするには、オプション focustrue に設定します。

表示された要素を展開するには、オプション expandtrue に設定します。

再帰的に展開するには、expand を展開するレベル数に設定します。

パラメーター説明
element: T
options?: {expand: number | boolean, focus: boolean, select: boolean}
戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

TreeViewExpansionEvent<T>

TreeView の要素が展開または折りたたまれたときに発生するイベント

プロパティ

展開または折りたたまれた要素。

TreeViewOptions<T>

TreeView を作成するためのオプション

プロパティ

ツリーが複数選択をサポートするかどうか。

ツリーが複数選択をサポートし、ツリーからコマンドが実行される場合、コマンドの最初の引数はコマンドが実行されたツリーアイテムであり、2 番目の引数は選択されたすべてのツリーアイテムを含む配列です。

ツリービューでドラッグアンドドロップを実装するためのオプションのインターフェース。

デフォルトでは、ツリーアイテムの子がすでにフェッチされている場合、子チェックボックスは親ツリーアイテムのチェック状態に基づいて自動的に管理されます。

ツリーアイテムがデフォルトで折りたたまれている場合 (つまり、子がまだフェッチされていない場合)、子チェックボックスは更新されません。

この動作をオーバーライドして、拡張機能で子と親のチェックボックスの状態を管理するには、これを true に設定します。

TreeViewOptions.manageCheckboxStateManually が false の場合の例 (デフォルトの動作)

  1. ツリーアイテムがチェックされ、その子がフェッチされます。

    子はチェックされます。

  2. ツリーアイテムの親がチェックされます。

    ツリーアイテムとそのすべての兄弟がチェックされます。

    • 子 1
    • 子 2 ユーザーが親をチェックすると、ツリーは次のようになります
    • 子 1
    • 子 2
  1. ツリーアイテムとそのすべての兄弟がチェックされます。

    親がチェックされます。

    • 子 1
    • 子 2 ユーザーが子 1 と子 2 をチェックすると、ツリーは次のようになります
    • 子 1
    • 子 2
  1. ツリーアイテムがチェック解除されます。

    親がチェック解除されます。

    • 子 1
    • 子 2 ユーザーが子 1 をチェック解除すると、ツリーは次のようになります
    • 子 1
    • 子 2

すべて折りたたむアクションを表示するかどうか。

ツリーデータを提供するデータプロバイダー。

TreeViewSelectionChangeEvent<T>

ツリービューの選択に変更があった場合に発生するイベント

プロパティ

選択された要素。

TreeViewVisibilityChangeEvent

ツリービューの表示に変更があった場合に発生するイベント

プロパティ

ツリービューが表示されている場合は true、それ以外の場合は false

TypeDefinitionProvider

型定義プロバイダーは、拡張機能と型定義へ移動機能の間のコントラクトを定義します。

メソッド

指定された位置とドキュメントにあるシンボルの型定義を提供します。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<Definition | LocationLink[]>

定義、または定義に解決されるThenable。結果がないことは、undefinedまたはnullを返すことで通知できます。

TypeHierarchyItem

クラスやインターフェースなどの型階層のアイテムを表します。

コンストラクター

新しい型階層アイテムを作成します。

パラメーター説明
kind: SymbolKind

アイテムの種類。

name: string

アイテムの名前。

detail: string

アイテムの詳細。

uri: Uri

アイテムの Uri。

range: Range

アイテムの全体の範囲。

selectionRange: Range

アイテムの選択範囲。

戻り値説明
TypeHierarchyItem

プロパティ

この項目の詳細。たとえば、関数の署名など。

この項目の種類。

この項目の名前。

このシンボルを囲む範囲。先頭/末尾の空白は含まれませんが、コメントやコードなど、その他すべてが含まれます。

このシンボルが選択されたときに選択および表示される範囲。

range プロパティに含まれている必要があります。

この項目のタグ。

この項目のリソース識別子。

TypeHierarchyProvider

型階層プロバイダーインターフェースは、拡張機能と型階層機能の間のコントラクトを記述します。

メソッド

指定されたドキュメントと位置によって示されるアイテムを返すことにより、型階層をブートストラップします。

このアイテムは、型グラフへのエントリとして使用されます。

指定された場所にアイテムがない場合、プロバイダーは undefined または null を返す必要があります。

パラメーター説明
document: TextDocument

コマンドが呼び出されたドキュメント。

position: Position

コマンドが呼び出された位置。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TypeHierarchyItem | TypeHierarchyItem[]>

1 つまたは複数の型階層アイテム、またはそのようなアイテムに解決される Thenable。

結果がないことは、undefinednull、または空の配列を返すことによって通知できます。

アイテムのすべてのサブタイプを提供します。

たとえば、指定されたアイテムから派生/継承されたすべてのタイプなどです。

グラフ用語では、これは型グラフ内の有向エッジと注釈付きエッジを記述します。

たとえば、指定されたアイテムは開始ノードであり、結果は到達可能なノードです。

パラメーター説明
item: TypeHierarchyItem

サブタイプを計算する必要がある階層アイテム。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TypeHierarchyItem[]>

直接のサブタイプのセット、またはそのようなサブタイプに解決される Thenable。

結果がないことは、undefined または null を返すことによって通知できます。

アイテムのすべてのスーパータイプを提供します。

たとえば、タイプが派生/継承されているすべてのタイプなどです。

グラフ用語では、これは型グラフ内の有向エッジと注釈付きエッジを記述します。

たとえば、指定されたアイテムは開始ノードであり、結果は到達可能なノードです。

パラメーター説明
item: TypeHierarchyItem

スーパータイプを計算する必要がある階層アイテム。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<TypeHierarchyItem[]>

直接のスーパータイプのセット、またはそのようなスーパータイプに解決される Thenable。

結果がないことは、undefined または null を返すことによって通知できます。

UIKind

拡張機能を使用できる UI の可能な種類。

列挙メンバー

拡張機能はデスクトップアプリケーションからアクセスされます。

拡張機能は Web ブラウザーからアクセスされます。

Uri

ディスク上のファイルまたは別のリソース (タイトルなしのリソースなど) を表すユニバーサルリソース識別子。

静的

ファイルシステムパスから URI を作成します。

schemefile になります。

Uri.parseUri.file違いは、後者が引数を文字列化された URI ではなくパスとして扱うことです。

たとえば、Uri.file(path)Uri.parse('file://' + path)同じではありません

これは、パスに解釈される文字 (# および ?) が含まれている可能性があるためです。

次のサンプルを参照してください

const good = URI.file('/coding/c#/project1');
good.scheme === 'file';
good.path === '/coding/c#/project1';
good.fragment === '';

const bad = URI.parse('file://' + '/coding/c#/project1');
bad.scheme === 'file';
bad.path === '/coding/c'; // path is now broken
bad.fragment === '/project1';
パラメーター説明
path: string

ファイルシステムまたは UNC パス。

戻り値説明
Uri

新しい Uri インスタンス。

コンポーネントパーツから URI を作成します

参照 Uri.toString

パラメーター説明
components: {authority: string, fragment: string, path: string, query: string, scheme: string}

Uri のコンポーネントパーツ。

戻り値説明
Uri

新しい Uri インスタンス。

パスが、ベース URI のパスと指定されたパスセグメントを結合した結果である新しい URI を作成します。

  • 注 1: joinPath はパスコンポーネントのみに影響し、他のすべてのコンポーネント (スキーム、オーソリティ、クエリ、フラグメント) はそのまま残ります。
  • 注 2: ベース URI にはパスが必要です。

    そうでない場合はエラーがスローされます。

パスセグメントは、次の方法で正規化されます

  • パス区切り文字 (/ または \) のシーケンスは、単一の区切り文字に置き換えられます
  • Windows 上の file-uri の場合、円記号文字 (``) はパス区切り文字と見なされます
  • ..-セグメントは親セグメントを示し、. は現在のセグメントを示します
  • パスには常に残るルートがあります。

    たとえば、Windows ではドライブ文字がルートであるため、これは true です。

    joinPath(Uri.file('file:///c:/root'), '../../other').fsPath === 'c:/other'

パラメーター説明
base: Uri

Uri。

パスが必要です。

...pathSegments: string[]

1 つ以上のパスフラグメント

戻り値説明
Uri

パスが指定されたフラグメントと結合された新しい URI

文字列から URI を作成します。

例: http://www.example.com/some/pathfile:///usr/home、または scheme:with/path

注記: 一時期、scheme のない URI が許可されていました。しかし、すべての URI は scheme を持つべきであるため、それは正しくありません。既存のコードの破損を避けるため、オプションの strict 引数が追加されました。Uri.parse('my:uri', true) のように、これを使用することを強く推奨します。

参照 Uri.toString

パラメーター説明
value: string

Uri の文字列値。

strict?: boolean

value が空の場合、または scheme を解析できない場合にエラーをスローします。

戻り値説明
Uri

新しい Uri インスタンス。

コンストラクター

新しい Uri オブジェクトを作成するには、file および parse ファクトリ関数を使用してください。

パラメーター説明
scheme: string
authority: string
path: string
query: string
fragment: string
戻り値説明
Uri

プロパティ

Authority は、http://www.example.com/some/path?query#fragmentwww.example.com 部分です。最初の二重スラッシュと次のスラッシュの間の部分です。

Fragment は、http://www.example.com/some/path?query#fragmentfragment 部分です。

この Uri に対応するファイルシステムパスを表す文字列。

UNC パスを処理し、Windows ドライブ文字を小文字に正規化します。また、プラットフォーム固有のパス区切り文字を使用します。

  • 無効な文字やセマンティクスについてパスを検証しません
  • この Uri の scheme を考慮しません
  • 結果の文字列は、表示目的ではなく、readFile など、ディスク操作に使用する必要があります。

path プロパティとの違いは、プラットフォーム固有のパス区切り文字の使用と UNC パスの処理です。以下の例で違いを概説します。

const u = URI.parse('file://server/c$/folder/file.txt');
u.authority === 'server';
u.path === '/c$/folder/file.txt';
u.fsPath === '\\serverc$\folder\file.txt';

Path は、http://www.example.com/some/path?query#fragment/some/path 部分です。

Query は、http://www.example.com/some/path?query#fragmentquery 部分です。

Scheme は、http://www.example.com/some/path?query#fragmenthttp 部分です。最初のコロンより前の部分です。

メソッド

この Uri の JSON 表現を返します。

パラメーター説明
戻り値説明
any

オブジェクト。

この Uri の文字列表現を返します。URI の表現と正規化は、scheme によって異なります。

  • 結果の文字列は、Uri.parse で安全に使用できます。
  • 結果の文字列は、表示目的で使用する必要がありません。

注記: 実装は積極的にエンコードするため、予期しない結果になることが多いですが、不正な結果ではありません。たとえば、コロンは %3A にエンコードされますが、file-uri では予期しない場合があります。また、& および = も http-uris では予期しないかもしれませんが、エンコードされます。安定上の理由から、これはもう変更できません。過度なエンコードに苦しんでいる場合は、skipEncoding 引数を使用する必要があります:uri.toString(true)

パラメーター説明
skipEncoding?: boolean

結果をパーセントエンコードしないようにします。デフォルトは false です。パスに出現する # および ? 文字は常にエンコードされることに注意してください。

戻り値説明
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');
パラメーター説明
change: {authority: string, fragment: string, path: string, query: string, scheme: string}

この Uri への変更を記述するオブジェクト。コンポーネントを未設定にするには、null または空文字列を使用します。

戻り値説明
Uri

指定された変更を反映する新しい Uri。変更が何も変更しない場合は、this Uri を返します。

UriHandler

URI ハンドラーは、システム全体の URI を処理する役割を担います。

参照: window.registerUriHandler

メソッド

提供されたシステム全体の Uri を処理します。

参照: window.registerUriHandler

パラメーター説明
uri: Uri
戻り値説明
ProviderResult<void>

ViewBadge

ビューの値を表示するバッジ

プロパティ

バッジのツールチップに表示するラベル。

バッジに表示する値。

ViewColumn

ウィンドウ内のエディターの位置を示します。エディターはグリッド状に配置でき、各列は、エディターの表示順に数えることで、そのグリッド内の 1 つのエディター位置を表します。

列挙メンバー

アクティブな列の横の列を表すシンボリックなエディター列。この値はエディターを開くときに使用できますが、エディターの解決済み viewColumn 値は常に OneTwoThree,... または undefined になり、Beside になることはありません。

現在アクティブな列を表すシンボリックなエディター列。この値はエディターを開くときに使用できますが、エディターの解決済み viewColumn 値は常に OneTwoThree,... または undefined になり、Active になることはありません。

最初のエディター列。

2 番目のエディター列。

3 番目のエディター列。

4 番目のエディター列。

5 番目のエディター列。

6 番目のエディター列。

7 番目のエディター列。

8 番目のエディター列。

9 番目のエディター列。

Webview

iframe と同様に、HTML コンテンツを表示します。

イベント

webview コンテンツがメッセージをポストしたときに発生します。

Webview コンテンツは、文字列または JSON シリアライズ可能なオブジェクトを拡張機能にポストバックできます。メッセージを受信する拡張機能はブラウザ環境で実行されないため、BlobFileImageData、およびその他の DOM 固有のオブジェクトをポストすることはできません。

プロパティ

webview リソースのコンテンツセキュリティポリシーソース。

これは、コンテンツセキュリティポリシー規則で使用する必要があるオリジンです。

`img-src https: ${webview.cspSource} ...;`;

webview の HTML コンテンツ。

これは、完全で有効な HTML ドキュメントである必要があります。このプロパティを変更すると、webview がリロードされます。

Webview は通常の拡張機能プロセスからサンドボックス化されているため、webview とのすべての通信はメッセージパッシングを使用する必要があります。拡張機能から webview にメッセージを送信するには、postMessage を使用します。webview から拡張機能にメッセージを送信するには、webview 内で acquireVsCodeApi 関数を使用してエディターの API のハンドルを取得し、.postMessage() を呼び出します。

<script>
    const vscode = acquireVsCodeApi(); // acquireVsCodeApi can only be invoked once
    vscode.postMessage({ message: 'hello!' });
</script>

ワークスペースからリソースを webview 内にロードするには、asWebviewUri メソッドを使用し、リソースのディレクトリが WebviewOptions.localResourceRoots にリストされていることを確認してください。

webview はサンドボックス化されていますが、スクリプトの実行と任意のコンテンツのロードを許可していることに注意してください。したがって、拡張機能は、webview を使用する際に、すべての標準的なウェブセキュリティのベストプラクティスに従う必要があります。これには、信頼できないすべての入力(ワークスペースからのコンテンツを含む)を適切にサニタイズし、コンテンツセキュリティポリシーを設定することが含まれます。

webview のコンテンツ設定。

メソッド

ローカルファイルシステムの URI を webview 内で使用できる URI に変換します。

Webview は、file: URI を使用してワークスペースまたはローカルファイルシステムからリソースを直接ロードすることはできません。asWebviewUri 関数は、ローカルの file: URI を受け取り、webview 内で同じリソースをロードするために使用できる URI に変換します。

webview.html = `<img src="${webview.asWebviewUri(
  vscode.Uri.file('/Users/codey/workspace/cat.gif')
)}">`;
パラメーター説明
localResource: Uri
戻り値説明
Uri

webview コンテンツにメッセージをポストします。

メッセージは、webview がライブである場合(表示されているか、retainContextWhenHidden でバックグラウンドにあるかのいずれか)にのみ配信されます。

パラメーター説明
message: any

メッセージの本文。これは、文字列またはその他の JSON シリアライズ可能なオブジェクトである必要があります。

古いバージョンの VS Code では、ArrayBuffermessage に含まれている場合、適切にシリアライズされず、webview で受信されません。同様に、Uint8Array などの TypedArray は非常に非効率的にシリアライズされ、webview 内で型付き配列として再作成されません。

ただし、拡張機能が package.jsonengines フィールドで VS Code 1.57 以降をターゲットにしている場合、message に表示される ArrayBuffer 値はより効率的に webview に転送され、webview 内で正しく再作成されます。

戻り値説明
Thenable<boolean>

メッセージが webview にポストされたとき、またはメッセージが配信不能だったためにドロップされたときに解決される Promise。

メッセージが webview にポストされた場合は true を返します。メッセージは、ライブの webview(つまり、表示されている webview、または retainContextWhenHidden を設定した非表示の webview)にのみポストできます。

true の応答は、メッセージが実際に webview によって受信されたことを意味するわけではありません。たとえば、webview 内にメッセージリスナーがフックアップされていないか、メッセージがポストされた後で受信される前に webview が破棄された可能性があります。

メッセージが実際に受信されたことを確認したい場合は、webview に確認メッセージを拡張機能にポストバックさせることを試みることができます。

WebviewOptions

webview のコンテンツ設定。

プロパティ

webview コンテンツでコマンド URI を有効にするかどうかを制御します。

デフォルトは false です(コマンド URI は無効になっています)。

配列を渡すと、配列内のコマンドのみが許可されます。

webview コンテンツでフォームを有効にするかどうかを制御します。

スクリプトが有効になっている場合はデフォルトで true になります。それ以外の場合はデフォルトで false になります。このプロパティを明示的に true または false に設定すると、デフォルトがオーバーライドされます。

webview コンテンツでスクリプトを有効にするかどうかを制御します。

デフォルトは false です(スクリプトは無効)。

asWebviewUri からの URI を使用して、webview がローカル(ファイルシステム)リソースをロードできるルートパス

デフォルトは、現在のワークスペースのルートフォルダーと拡張機能のインストールディレクトリです。

ローカルリソースへのアクセスを許可しない場合は、空の配列を渡します。

webview 内で使用される localhost ポートのマッピング。

ポートマッピングを使用すると、webview は localhost ポートがどのように解決されるかを透過的に定義できます。これは、webview 内で静的な localhost ポートを使用できるようにするために使用でき、サービスが実行されているランダムポートに解決されます。

webview が localhost コンテンツにアクセスする場合、webviewPort ポートと extensionHostPort ポートが同じ場合でも、ポートマッピングを指定することをお勧めします。

注記: ポートマッピングは、http または https URL でのみ機能します。Websocket URL(例:ws://localhost:3000)を別のポートにマッピングすることはできません。

WebviewPanel

webview を含むパネル。

イベント

パネルのビューの状態が変化したときに発生します。

パネルが破棄されたときに発生します。

これは、ユーザーがパネルを閉じたか、.dispose() が呼び出されたために発生する可能性があります。

破棄された後にパネルを使用しようとすると、例外がスローされます。

プロパティ

パネルがアクティブ(ユーザーによってフォーカスされている)かどうか。

UI に表示されるパネルのアイコン。

webview パネルのコンテンツ設定。

UI に表示されるパネルのタイトル。

パネルのエディター位置。このプロパティは、webview がエディタービュー列のいずれかにある場合にのみ設定されます。

'markdown.preview' など、webview パネルのタイプを識別します。

パネルが表示されているかどうか。

Webview はパネルに属します。

メソッド

webview パネルを破棄します。

これにより、パネルが表示されている場合は閉じられ、webview が所有するリソースが破棄されます。Webview パネルは、ユーザーが webview パネルを閉じたときにも破棄されます。どちらの場合も、onDispose イベントが発生します。

パラメーター説明
戻り値説明
any

指定された列に webview パネルを表示します。

webview パネルは、一度に 1 つの列にのみ表示できます。すでに表示されている場合、このメソッドはそれを新しい列に移動します。

パラメーター説明
viewColumn?: ViewColumn

パネルを表示するビュー列。未定義の場合は、現在の viewColumn に表示します。

preserveFocus?: boolean

true の場合、webview はフォーカスを受け取りません。

戻り値説明
void

WebviewPanelOnDidChangeViewStateEvent

webview パネルのビューの状態が変化したときに発生するイベント。

プロパティ

ビューの状態が変化した Webview パネル。

WebviewPanelOptions

webview パネルのコンテンツ設定。

プロパティ

パネルで検索ウィジェットを有効にするかどうかを制御します。

デフォルトは false です。

webview パネルのコンテンツ(iframe)が、パネルが非表示になっても保持されるかどうかを制御します。

通常、webview パネルの HTML コンテキストは、パネルが表示されるときに作成され、非表示になると破棄されます。複雑な状態または UI を持つ拡張機能は、retainContextWhenHidden を設定して、エディターが webview コンテキストを保持するようにすることができます。これにより、webview がバックグラウンドタブに移動した場合でも保持されます。retainContextWhenHidden を使用する webview が非表示になると、そのスクリプトやその他の動的コンテンツは中断されます。パネルが再び表示されると、コンテキストは元の状態とまったく同じ状態で自動的に復元されます。retainContextWhenHidden が有効になっている場合でも、非表示の webview にメッセージを送信することはできません。

retainContextWhenHidden はメモリオーバーヘッドが大きいため、パネルのコンテキストをすばやく保存および復元できない場合にのみ使用する必要があります。

WebviewPanelSerializer<T>

VS Code がシャットダウンしたときに永続化された webview パネルを復元します。

webview の永続化には 2 つのタイプがあります。

  • セッション内での永続化。
  • セッションをまたがる永続化(エディターの再起動をまたがる)。

WebviewPanelSerializer は、2 番目のケース(セッションをまたがる webview の永続化)にのみ必要です。

セッション内での永続化により、webview は非表示になったときに状態を保存し、再び表示されたときにこの状態からコンテンツを復元できます。これは、完全に webview コンテンツ自体によって駆動されます。永続化された状態を保存するには、任意の JSON シリアライズ可能なオブジェクトで acquireVsCodeApi().setState() を呼び出します。状態を再び復元するには、getState() を呼び出します。

// Within the webview
const vscode = acquireVsCodeApi();

// Get existing state
const oldState = vscode.getState() || { value: 0 };

// Update state
setState({ value: oldState.value + 1 });

WebviewPanelSerializer は、エディターの再起動をまたいでこの永続化を拡張します。エディターがシャットダウンされると、シリアライザーを持つすべての webview の setState から状態が保存されます。webview が再起動後に最初に表示されると、この状態が deserializeWebviewPanel に渡されます。拡張機能は、この状態から古い WebviewPanel を復元できます。

メソッド

シリアライズされた state から webview パネルを復元します。

シリアライズされた webview が最初に表示されるときに呼び出されます。

パラメーター説明
webviewPanel: WebviewPanel

復元する Webview パネル。シリアライザーはこのパネルの所有権を取得する必要があります。シリアライザーは、webview の .html を復元し、すべての webview イベントをフックアップする必要があります。

state: T

webview コンテンツからの永続化された状態。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

webview が完全に復元されたことを示す Thenable。

WebviewPortMapping

webview 内の localhost に使用されるポートマッピングを定義します。

プロパティ

宛先ポート。webviewPort はこのポートに解決されます。

webview 内でリマップする localhost ポート。

WebviewView

webview ベースのビュー。

イベント

ビューの可視性が変化したときに発生するイベント。

可視性の変化をトリガーするアクション

  • ビューが折りたたまれたり展開されたりした場合。
  • ユーザーがサイドバーまたはパネルで別のビューグループに切り替えた場合。

コンテキストメニューを使用してビューを非表示にすると、ビューが破棄され、onDidDispose が発生することに注意してください。

ビューが破棄されたときに発生するイベント。

ビューは、ユーザーによって明示的に非表示にされたときに破棄されます(これは、ユーザーがビューを右クリックして webview ビューのチェックを外した場合に発生します)。

破棄された後にビューを使用しようとすると、例外がスローされます。

プロパティ

この webview ビューに表示するバッジ。バッジを削除するには、未定義に設定します。

タイトルに目立たないように表示される人間が読める文字列。

UI に表示されるビュータイトル。

ビュータイトルは、最初は拡張機能の package.json contribution から取得されます。

'hexEditor.dataView' など、webview ビューのタイプを識別します。

webview が現在表示されているかどうかを追跡します。

ビューは、画面上にあり、展開されている場合に表示されます。

ビューの基になる webview。

メソッド

UI にビューを表示します。

ビューが折りたたまれている場合、これは展開します。

パラメーター説明
preserveFocus?: boolean

true の場合、ビューはフォーカスを受け取りません。

戻り値説明
void

WebviewViewProvider

WebviewView 要素を作成するためのプロバイダー。

メソッド

webview view を解決します。

resolveWebviewView は、ビューが最初に表示されるときに呼び出されます。これは、ビューが最初にロードされたとき、またはユーザーがビューを非表示にしてから再度表示したときに発生する可能性があります。

パラメーター説明
webviewView: WebviewView

復元する webview view。プロバイダーはこのビューの所有権を取得する必要があります。プロバイダーは、webview の .html を設定し、関心のあるすべての webview イベントをフックする必要があります。

context: WebviewViewResolveContext<unknown>

解決されるビューに関する追加のメタデータ。

token: CancellationToken

提供されるビューが不要になったことを示すキャンセル トークン。

戻り値説明
void | Thenable<void>

ビューが完全に解決されたことを示すオプションの Thenable。

WebviewViewResolveContext<T>

解決される webview view に関する追加情報。

プロパティ

webview コンテンツからの永続化された状態。

リソースを節約するために、エディターは通常、表示されていない webview ドキュメント (iframe コンテンツ) を割り当て解除します。たとえば、ユーザーがビューを折りたたむか、サイドバーで別のトップレベルのアクティビティに切り替えると、WebviewView 自体は維持されますが、webview の基になるドキュメントは割り当て解除されます。ビューが再び表示されると再作成されます。

WebviewOptionsretainContextWhenHidden を設定すると、この動作を防ぐことができます。ただし、これによりリソース使用量が増加するため、可能な限り避ける必要があります。代わりに、永続化された状態を使用して webview の状態を保存し、必要に応じて迅速に再作成できるようにすることができます。

永続化された状態を保存するには、webview 内から acquireVsCodeApi().setState() を任意の JSON シリアライズ可能なオブジェクトとともに呼び出します。状態を再度復元するには、getState() を呼び出します。例:

// Within the webview
const vscode = acquireVsCodeApi();

// Get existing state
const oldState = vscode.getState() || { value: 0 };

// Update state
setState({ value: oldState.value + 1 });

エディターは、webview が非表示になっているとき、およびエディターの再起動をまたいで、永続化された状態が正しく保存されるようにします。

WindowState

ウィンドウの状態を表します。

プロパティ

ウィンドウが最近操作されたかどうか。これは、アクティビティが発生するとすぐに、またはユーザーがしばらく操作しなかった後に変更されます。

現在のウィンドウがフォーカスされているかどうか。

WorkspaceConfiguration

構成を表します。これは、以下のマージされたビューです。

  • デフォルト設定
  • グローバル (ユーザー) 設定
  • ワークスペース設定
  • ワークスペース フォルダー設定 - 要求されたリソースが属する ワークスペース フォルダー のいずれかから。
  • 言語設定 - 要求された言語で定義された設定。

有効 な値 (get によって返される) は、次の順序で値をオーバーライドまたはマージすることによって計算されます。

  1. defaultValue (package.json で定義されている場合。それ以外の場合は値の型から派生)
  2. globalValue (定義されている場合)
  3. workspaceValue (定義されている場合)
  4. workspaceFolderValue (定義されている場合)
  5. defaultLanguageValue (定義されている場合)
  6. globalLanguageValue (定義されている場合)
  7. workspaceLanguageValue (定義されている場合)
  8. workspaceFolderLanguageValue (定義されている場合)

注: object 値型のみがマージされ、他のすべての値型はオーバーライドされます。

例 1: オーバーライド

defaultValue = 'on';
globalValue = 'relative';
workspaceFolderValue = 'off';
value = 'off';

例 2: 言語値

defaultValue = 'on';
globalValue = 'relative';
workspaceFolderValue = 'off';
globalLanguageValue = 'on';
value = 'on';

例 3: オブジェクト値

defaultValue = { a: 1, b: 2 };
globalValue = { b: 3, c: 4 };
value = { a: 1, b: 3, c: 4 };

注: ワークスペースおよびワークスペース フォルダーの構成には、launch および tasks 設定が含まれています。それらのベース名は、セクション識別子の一部になります。次のスニペットは、launch.json からすべての構成を取得する方法を示しています。

// launch.json configuration
const config = workspace.getConfiguration(
  'launch',
  vscode.workspace.workspaceFolders[0].uri
);

// retrieve values
const values = config.get('configurations');

詳細については、設定 を参照してください。

メソッド

この構成から値を返します。

パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

戻り値説明
T

section は、undefined を示します。

この構成から値を返します。

パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

defaultValue: T

値が見つからなかった場合、undefined の場合に返される値。

戻り値説明
T

section は、デフォルトまたはデフォルトを示します。

この構成に特定の値があるかどうかを確認します。

パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

戻り値説明
boolean

セクションが undefined に解決されない場合は true

構成設定に関するすべての情報を取得します。構成値は多くの場合、デフォルト 値、グローバルまたはインストール全体の値、ワークスペース固有の値、フォルダー固有の値、および言語固有の値 (WorkspaceConfiguration が言語にスコープされている場合) で構成されます。

また、特定の構成設定が定義されているすべての言語 ID も提供します。

注: 構成名は、構成ツリーのリーフ (editor.fontSizeeditor) を示す必要があります。そうしないと、結果は返されません。

パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

戻り値説明
{defaultLanguageValue: T, defaultValue: T, globalLanguageValue: T, globalValue: T, key: string, languageIds: string[], workspaceFolderLanguageValue: T, workspaceFolderValue: T, workspaceLanguageValue: T, workspaceValue: T}

構成設定に関する情報または undefined

構成値を更新します。更新された構成値は永続化されます。

値は、次の中で変更できます。

注: 構成値を削除するには、次のように undefined を使用します: config.update('somekey', undefined)

  • throws - 更新中のエラー
    • 登録されていない構成。
    • ワークスペース フォルダーへのウィンドウ構成
    • ワークスペースが開かれていない場合のワークスペースまたはワークスペース フォルダーへの構成。
    • ワークスペース フォルダー設定がない場合のワークスペース フォルダーへの構成。
    • WorkspaceConfiguration がリソースにスコープされていない場合のワークスペース フォルダーへの構成。
パラメーター説明
section: string

構成名。ドット区切りの名前をサポートします。

value: any

新しい値。

configurationTarget?: boolean | ConfigurationTarget

構成ターゲット またはブール値。 - true の場合、グローバル設定 を更新します。 - false の場合、ワークスペース設定 を更新します。 - undefined または null の場合、構成がリソース固有の場合は ワークスペース フォルダー設定 に更新し、それ以外の場合は ワークスペース設定 に更新します。

overrideInLanguage?: boolean

要求された languageId のスコープ内で値を更新するかどうか。 - true の場合、要求された languageId の下で値を更新します。 - undefined の場合、構成が言語に対して定義されている場合にのみ、要求された languageId の下で値を更新します。

戻り値説明
停止する デバッグセッション。省略すると、すべてのセッションが停止されます。

WorkspaceEdit

ワークスペース編集は、複数のリソースおよびドキュメントに対するテキストおよびファイルの変更のコレクションです。

applyEdit 関数を使用して、ワークスペース編集を適用します。

コンストラクター

パラメーター説明
戻り値説明
WorkspaceEdit

プロパティ

テキストまたはリソースの変更の影響を受けるリソースの数。

メソッド

通常のファイルを作成します。

パラメーター説明
uri: Uri

新しいファイルの URI。

options?: {contents: Uint8Array | DataTransferFile, ignoreIfExists: boolean, overwrite: boolean}

既存のファイルを上書きするか、無視するかを定義します。overwriteignoreIfExists の両方が設定されている場合、overwrite が優先されます。両方が設定されておらず、ファイルが既に存在する場合、編集は正常に適用できません。content プロパティを使用すると、ファイルが作成されるときの初期コンテンツを設定できます。

metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

指定された範囲のテキストを削除します。

パラメーター説明
uri: Uri

リソース識別子。

range: Range

範囲。

metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

ファイルまたはフォルダーを削除します。

パラメーター説明
uri: Uri

削除するファイルの URI。

options?: {ignoreIfNotExists: boolean, recursive: boolean}
metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

リソース別にグループ化されたすべてのテキスト編集を取得します。

パラメーター説明
戻り値説明
Array<[Uri, TextEdit[]]>

[Uri, TextEdit[]] タプルのシャローコピー。

リソースのテキスト編集を取得します。

パラメーター説明
uri: Uri

リソース識別子。

戻り値説明
TextEdit[]

テキスト編集の配列。

リソースのテキスト編集が存在するかどうかを確認します。

パラメーター説明
uri: Uri

リソース識別子。

戻り値説明
boolean

指定されたリソースがこの編集によって影響を受ける場合は true

指定されたテキストを指定された位置に挿入します。

パラメーター説明
uri: Uri

リソース識別子。

position: Position

ポジション。

newText: string

文字列。

metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

ファイルまたはフォルダーの名前を変更します。

パラメーター説明
oldUri: Uri

既存のファイル。

newUri: Uri

新しい場所。

options?: {ignoreIfExists: boolean, overwrite: boolean}

既存のファイルを上書きするか、無視するかを定義します。overwrite と ignoreIfExists の両方が設定されている場合、overwrite が優先されます。

metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

指定されたリソースの指定された範囲を、指定されたテキストで置換します。

パラメーター説明
uri: Uri

リソース識別子。

range: Range

範囲。

newText: string

文字列。

metadata?: WorkspaceEditEntryMetadata

エントリのオプションのメタデータ。

戻り値説明
void

リソースのテキスト編集またはスニペット編集を設定 (および置換) します。

パラメーター説明
uri: Uri

リソース識別子。

edits: ReadonlyArray<TextEdit | SnippetTextEdit>

編集の配列。

戻り値説明
void

リソースのメタデータを含むテキスト編集またはスニペット編集を設定 (および置換) します。

パラメーター説明
uri: Uri

リソース識別子。

edits: ReadonlyArray<[TextEdit | SnippetTextEdit, WorkspaceEditEntryMetadata]>

編集の配列。

戻り値説明
void

リソースのノートブック編集を設定 (および置換) します。

パラメーター説明
uri: Uri

リソース識別子。

edits: readonly NotebookEdit[]

編集の配列。

戻り値説明
void

リソースのメタデータを含むノートブック編集を設定 (および置換) します。

パラメーター説明
uri: Uri

リソース識別子。

edits: ReadonlyArray<[NotebookEdit, WorkspaceEditEntryMetadata]>

編集の配列。

戻り値説明
void

WorkspaceEditEntryMetadata

ワークスペース編集のエントリの追加データ。エントリにラベルを付け、ユーザーによる確認が必要なエントリをマークすることをサポートします。エディターは、同じラベルを持つ編集をツリーノードにグループ化します。たとえば、「文字列の変更」というラベルの付いたすべての編集はツリーノードになります。

プロパティ

同じ行に目立たないようにレンダリングされる、人間が読める文字列。

編集のアイコンパスまたは ThemeIcon

目立つようにレンダリングされる、人間が読める文字列。

ユーザーの確認が必要であることを示すフラグ。

WorkspaceEditMetadata

ワークスペース編集に関する追加データ。

プロパティ

この編集がリファクタリングであることをエディターに通知します。

WorkspaceFolder

ワークスペース フォルダーは、エディターによって開かれた可能性のある多数のルートの 1 つです。すべてのワークスペース フォルダーは同等であり、アクティブまたはプライマリ ワークスペース フォルダーの概念はありません。

プロパティ

このワークスペース フォルダーの序数。

このワークスペース フォルダーの名前。デフォルトでは、uri パス のベース名。

このワークスペース フォルダーに関連付けられた URI。

注: Uri 型は、エディターの将来のリリースで、ローカル ディスクに保存されていないワークスペース フォルダー (例: ftp://server/workspaces/foo) をサポートできるように意図的に選択されました。

WorkspaceFolderPickOptions

ワークスペース フォルダー ピック UI の動作を構成するためのオプション。

プロパティ

フォーカスがエディターの別の部分または別のウィンドウに移動しても、ピッカーを開いたままにする場合は true に設定します。この設定は iPad では無視され、常に false になります。

ユーザーが何を選択すべきかをガイドするために、入力ボックスにプレースホルダーとして表示するオプションの文字列。

WorkspaceFoldersChangeEvent

ワークスペース フォルダー のセットへの変更を記述するイベント。

プロパティ

追加されたワークスペース フォルダー。

削除されたワークスペース フォルダー。

WorkspaceSymbolProvider<T>

ワークスペース シンボル プロバイダー インターフェイスは、拡張機能と シンボル検索 機能間のコントラクトを定義します。

メソッド

指定されたクエリ文字列に一致するシンボルのプロジェクト全体の検索。

query パラメーターは、エディターが独自の強調表示とスコアリングを結果に適用するため、緩やかな方法で解釈する必要があります。良い経験則は、大文字と小文字を区別せずに一致させ、query の文字が候補シンボル内でその順序で出現することを確認することです。プレフィックス、サブストリング、または同様の厳密なマッチングは使用しないでください。

パフォーマンスを向上させるために、実装者は resolveWorkspaceSymbol を実装し、range が定義されていない部分的な location オブジェクトを持つシンボルを提供できます。エディターは、ワークスペース シンボルを開くときなど、選択されたシンボルに対してのみ resolveWorkspaceSymbol を呼び出します。

パラメーター説明
query: string

クエリ文字列。空の文字列の場合もあります。その場合、すべてのシンボルを返す必要があります。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T[]>

ドキュメントハイライトの配列、またはそのような配列に解決される Thenable。結果がない場合は、undefinednull、または空の配列を返すことで通知できます。

シンボルが UI で選択されるたびに、location を入力します。プロバイダーは、このメソッドを実装し、provideWorkspaceSymbols から不完全なシンボルを返すことができます。これは、多くの場合、パフォーマンスの向上に役立ちます。

パラメーター説明
symbol: T

解決されるシンボル。以前の provideWorkspaceSymbols の呼び出しから返されたオブジェクトのインスタンスであることが保証されています。

token: CancellationToken

キャンセルトークン。

戻り値説明
ProviderResult<T>

解決されたシンボル、またはそれを解決する Thenable。結果が返されない場合、指定された symbol が使用されます。

API パターン

これらは、VS Code API で使用する一般的なパターンのいくつかです。

Promises (プロミス)

VS Code API は、非同期操作を promises (プロミス) で表します。拡張機能からは、ES6、WinJS、A+ など、任意の タイプのプロミスを返すことができます。

特定のプロミス ライブラリに依存しないことは、API で Thenable 型によって表現されています。Thenable は、then メソッドである共通の分母を表します。

ほとんどの場合、プロミスの使用はオプションであり、VS Code が拡張機能を呼び出すと、結果の型結果の型Thenable の両方を処理できます。プロミスの使用がオプションの場合、API は or 型を返すことによってこれを示します。

provideNumber(): number | Thenable<number>

Cancellation Tokens (キャンセル トークン)

多くの場合、操作は、操作が完了する前に変化する揮発性状態に対して開始されます。たとえば、IntelliSense の計算が開始され、ユーザーがタイプ入力を続けると、その操作の結果は古くなります。

そのような動作にさらされる API には、キャンセルを確認できる (isCancellationRequested) またはキャンセルが発生したときに通知を受け取ることができる (onCancellationRequested) CancellationToken が渡されます。キャンセル トークンは通常、関数呼び出しの最後のパラメーターであり、オプションです。

Disposables (ディスポーザブル)

VS Code API は、VS Code から取得したリソースに対して dispose パターン を使用します。これは、イベント リスニング、コマンド、UI との対話、およびさまざまな言語コントリビューションに適用されます。

たとえば、setStatusBarMessage(value: string) 関数は、dispose を呼び出すとメッセージを再度削除する Disposable を返します。

イベント

VS Code API のイベントは、サブスクライブするためのリスナー関数で呼び出す関数として公開されます。サブスクライブの呼び出しは、dispose 時にイベント リスナーを削除する Disposable を返します。

var listener = function(event) {
  console.log('It happened', event);
};

// start listening
var subscription = fsWatcher.onDidDelete(listener);

// do more stuff

subscription.dispose(); // stop listening

イベントの名前は、on[Will|Did]VerbNoun? パターンに従います。名前は、イベントがこれから発生するのか (onWill) 、または既に発生したのか (onDid)、何が起こったのか (verb)、およびコンテキストから明らかな場合を除き、コンテキスト (noun) を示します。

VS Code API の例は window.onDidChangeActiveTextEditor です。これは、アクティブなテキスト エディター (noun) が (onDid) 変更された (verb) ときに発生するイベントです。

Strict null (厳密な null チェック)

VS Code API は、厳密な null チェック をサポートするために、必要に応じて undefined および null TypeScript 型を使用します。