2020年11月 (バージョン 1.52)
更新 1.52.1: このアップデートでは、これらの問題が対処されています。
ダウンロード: Windows: x64 Arm64 | Mac: Intel | Linux: deb rpm tarball Arm snap
Visual Studio Code 2020年11月リリースへようこそ。2020年11月のイテレーション計画で発表した通り、私たちは引き続き2週間、課題の整理ガイドに記載されているように、GitHubの課題とプルリクエストの整理に注力しました。すべてのVS Codeリポジトリで、前回の2019年10月の整理イテレーションで4622件の課題をクローズしたのに比べ、今回は5242件の課題をクローズしました (トリアージまたは修正済み)。私たちが課題をクローズした一方で、皆様は2937件の新しい課題を作成しました。メインのvscodeリポジトリには現在、2146件の未解決の機能リクエストと884件の未解決のバグがあります。さらに、144件のプルリクエストをクローズしました。
毎年恒例ですが、Benjamin Lannon氏のライブトラッカーを使用して進捗を追跡しました。
整理に注力した後、いくつかの機能リクエストとコミュニティからのプルリクエストにも対処しました。これにより、多くの新機能と設定が追加され、主なハイライトは以下の通りです。
- 差分エディターでの単語の折り返し - インラインおよびサイドバイサイドの両方のビューで単語の折り返しをサポートします。
- 新しい拡張機能バイセクト機能 - VS Codeで問題を引き起こしている拡張機能をトラブルシューティングします。
- キーボードショートカットエディターの改善 - コマンドパレットからキーバインディングを作成します。
- エクスプローラーでのファイル操作の取り消し - エクスプローラーでのファイル操作を元に戻したり、やり直したりします。
- 新しいGitコマンドと設定 - 新しい機能でバージョン管理エクスペリエンスを最適化します。
- プレビューエディターの改善 - プレビューエディターを完全にオフにしたり、新しいインタラクションモデルを試したりします。
- スペースでインデントするときのスティッキーなタブストップ - スペースでインデントするときのエクスペリエンスが向上しました。
- 単語ベースの提案の改善 - 他の開いているファイルから単語ベースの提案を表示します。
- ターミナル構成のサポート - ターミナルのドロップダウンメニューからターミナル設定を変更します。
- 新しいリモート開発リソース - 新しいビデオと学習モジュールをご覧ください。
ワークベンチ
プレビューエディターの改善
ユーザーからのフィードバックに基づいて、プレビューエディターの処理方法をいくつか更新しました。
workbench.editor.enablePreviewFromQuickOpen
設定はデフォルトで無効になり、クイックオープンから開いたエディターはプレビューモードで表示されなくなります。
コードナビゲーション(たとえば、定義へ移動)を開始すると、開始したエディターはプレビューモードを終了して開いたままになり、新しいエディターはさらにナビゲーションするまでプレビューモードになります。
すべてのカスタムツリー(拡張機能ビューやGitビューなどで使用されるもの)が、他の組み込みツリー(ファイルエクスプローラーなど)とより一貫して動作するように変更しました。これにより、以下のインタラクションがすべてに適用されます。
- ダブルクリックまたはマウスの中央クリックで、プレビューなしで開きます。
- Enterでプレビューなしモードで開きます(Spaceでプレビューモードで開きます)。
Alt+Click
でアクティブなエディターの横にエディターを開きます。
注: カスタムツリーAPIを使用している拡張機能作成者も、この変更の恩恵を受けられます。新しいプレビューモードの動作を得るには、TreeItem.command
にvscode.open
またはvscode.diff
コマンドを使用してください。
エディターのオーバーフローメニューに新しいメニュー項目エディターを開いたままにするが追加され、プレビューエディターをまとめてすばやくオフにできるようになりました。
前回のセッションウィンドウを復元する
既存の window.restoreWindows
設定の新しい値 preserve
を使用すると、VS Code を再起動したときに、VS Code を閉じる前に開いていたすべてのウィンドウが、特定のフォルダーやファイルを明示的に開くように VS Code が指示された場合でも復元されるように強制できます。一般的な例としては、プラットフォームのファイルエクスプローラーでファイルをダブルクリックして VS Code で開いたり、ターミナルを使用して特定のファイルやフォルダーを開いたりする場合があります。window.restoreWindows: preserve
設定がない場合、VS Code は指示されたファイルやフォルダーのみを開き、他のウィンドウは復元しません。
ドラッグ&ドロップ時のエディターグループ分割を無効にする
新しい設定workbench.editor.splitOnDragAndDrop
は、エディターのドラッグ&ドロップ時にエディターグループが分割されるのを防ぎます。また、Shiftキー(macOS)またはAltキー(Windows、Linux)を押しながらドラッグ&ドロップ操作中に条件付きで切り替える方法もあります。
エクスプローラーでのファイル操作の元に戻す
ファイルエクスプローラーは、すべてのファイル操作(削除、名前変更、コピー、移動、新規ファイル、新規フォルダー)に対して元に戻すとやり直しをサポートするようになりました。ファイルエクスプローラーにフォーカスがあることを確認し、元に戻すまたはやり直しコマンドをトリガーすると、最後のファイル操作がそれぞれ元に戻されたりやり直されたりします。エディターとファイルエクスプローラーには別々の元に戻すスタックがあり、どちらを元に戻すかはフォーカスに基づいて選択されることに注意してください。
エクスプローラーでの長時間実行操作の進捗
ファイルエクスプローラーとステータスバーに、長時間実行されるファイル操作(500ミリ秒を超える)の進捗が表示されるようになりました。また、長時間実行される操作のキャンセルも初期的にサポートされています。これは、大きなフォルダーをコピーしたり、リモートの場所からリソースをダウンロードしたりする際に役立つはずです。
開いているエディターの並べ替え
新しい設定explorer.openEditors.sortOrder
は、開いているエディターリストの並べ替え順序を制御します。
値は次のとおりです。
editorOrder
- エディタータブの表示順と同じ順序でエディターが一覧表示されます(デフォルト)。alphabetical
- 各エディターグループ内でエディターがアルファベット順に一覧表示されます。
alphabetical
ソートは「開いているエディター」ビューにのみ影響し、タブの移動には影響しません。
これは、多数のファイルを開いていて、関連するファイル(たとえば、hello.component.jsとhello.component.html)を一致させたい場合に役立ちます。
アクセシブルな進捗管理
ワークベンチの進捗表示がよりアクセスしやすくなりました。VS Code は適切な ARIA ロールを設定し、スクリーンリーダーが VS Code のすべての長時間実行操作の進捗を報告できるようにしました。ほとんどのスクリーンリーダーは、デフォルトでは10秒以上進行中の場合にのみ進捗をアナウンスします。
ソース管理の変更に親フォルダーパスを表示
ソース管理ビューから開かれた差分エディターは、ファイルパスを表示するようになりました(タブが無効な場合)。以前はファイル名のみが表示されていましたが、前後ファイルが同じフォルダー内にある場合は親フォルダーが表示されるようになりました。
新しいプロキシログインダイアログがデフォルトで有効に
新しいプロキシログインダイアログがデフォルトで有効になりました。詳細については、以前のリリースノートを参照してください。window.enableExperimentalProxyLoginDialog
設定を使用して古いダイアログを有効にできますが、このサポートは近い将来削除されます。新しいログインダイアログに問題が見つかった場合は、課題を報告してお知らせください。
ターミナル環境処理の改善 (Linux、macOS)
Linux または macOS で VS Code をドックまたはランチャー (ターミナルではない) を介して初めて起動すると、VS Code はシェル環境 (.bashrc または .zshrc で定義または変更されたもの) を解決するためのバックグラウンドプロセスを開始します。検出されたすべての環境変数は VS Code によって使用され、ターミナルから起動してもドック/ランチャーから起動しても違いがないようにします。これはデバッグやタスクの実行時に重要です。
残念ながら、このバックグラウンドプロセスが実行されるまでVS Codeは開きません。起動を長時間ブロックしないように、VS Codeは10秒後に開き始めます。この場合、VS Codeはシェル環境を解決できなかったことを通知し、詳細を知るためのリンクを提供します。
同様に、VS Code はシェル環境の解決中に VS Code の起動がブロックされたことを示す警告を3秒後に表示するようになりました。
私たちは、シェル環境をバックグラウンドで解決しながらも、VS Code の起動をブロックしない戦略への変更を積極的に検討していますが、これは将来のリリースでのみ可能となるでしょう。
この分野のその他の注目すべき変更点は以下のとおりです。
- ターミナルから VS Code のセカンドウィンドウを起動する前に環境変数を定義したり変更したりできるようになりました。これにより、最初の起動からの変数が適切に上書きされ、実質的にウィンドウごとの環境変数が可能になります (たとえば、これにより、Node.js のバージョンを `nvm` のようなツールを使ってウィンドウごとに起動前に変更できるようになります)。
- VS Code のセカンドウィンドウを起動する前にターミナルから設定された環境変数は、そのセカンドウィンドウでフォルダを切り替えても保持されるようになりました。
ワークベンチのオーバーフローを改善
ワークベンチにすべてのビューを収めるのに十分なスペースがない場合、VS Code はスクロールバーを表示してコンテンツをパンし、すべてにアクセスできるようにします。これは、サイドバー、エディターグリッドなど、ワークベンチのいくつかの領域に適用されます。
サッシュホバーボーダーカラー
サッシュ(sash.hoverBorder
)の境界線のホバー色をワークベンチ全体でカスタマイズできるようになりました。
ツリー: 展開モード
新しい workbench.tree.expandMode
設定により、ツリー内でフォルダーを展開する方法を、シングルクリックまたはダブルクリックで制御できるようになりました。
macOS Big Sur の更新
Electron 9 の問題により、アップデートのために再起動を選択すると、VS Code は自動的に再起動せず、終了するだけになります。Electron 11 が含まれる次回の VS Code リリースまでは、この現象が発生した場合は手動で VS Code を再起動する必要があります。issue #109728で詳細をご確認ください。
ソース管理
ソース管理ビューの状態を保持する
ソース管理ビューの状態がセッション間で保持されるようになりました。折りたたまれたツリーノードは、VS Code を終了して再起動しても折りたたまれたままになります。
ソース管理のガターアクション
新しい scm.diffDecorationsGutterAction
設定を使用すると、エディターの左側にあるソース管理のガター装飾を選択したときに何が起こるかを制御できます。利用可能な値は次のとおりです。
diff
- クリックでインライン差分ピークビューを開きます(デフォルト)。none
- すべてのアクションを無効にします。
Git: 新しいコマンド
いくつかの新しいGitコマンドがコマンドパレットに追加されました。
- Git: チェリーピック... - 特定のコミットをブランチにチェリーピックします。
- Git: 名前変更 - アクティブなファイルに対してgitの名前変更を実行します。
- Git: タグをプッシュ - ローカルのすべてのタグをリモートにプッシュします。
- Git: (デタッチ)へのチェックアウト... - デタッチモードでチェックアウトを実行します。
Git: 新しい設定
さらに、新しい Git 設定が追加されました。
git.pruneOnFetch
- リモート参照をフェッチするときに、VS Code がgit fetch --prune
を実行するようにします。git.ignoreSubmodules
- サブモジュールリポジトリの変更を VS Code が無視するように設定できるようになりました。これは大規模なモノレポで役立ちます。git.openAfterClone
- gitリポジトリをクローンした後に、現在のウィンドウ、新しいウィンドウ、フォルダが開かれていない場合、およびユーザーにプロンプトを表示する方法でフォルダを開くかどうかを制御します。git.useCommitInputAsStashMessage
- Git: Stashを実行する際に、ソース管理の入力ボックスのコミットメッセージをスタッシュメッセージとしてVS Codeが使用できるようにします。git.followTagsWhenSync
- Git: Sync実行時にタグを追跡します。git.checkoutType
- Git: Checkout...コマンドを実行するときに、表示されるrefの種類と順序を制御します。
Git: スタッシュする前にファイルを保存するかどうか尋ねる
VS Code は、変更をスタッシュしようとするたびに、未保存のファイルを保存するかどうかを尋ねるようになりました。
Git: 削除されたファイルの競合に対するより良い差分
削除されたファイルの競合に対する差分表示が改善され、削除元のブランチでの実際のファイルの変更が表示されるようになりました。
Git: リモート追加時にフェッチ
VS Code は、リモートを追加した直後に git fetch
を実行し、そのリモートからすべての参照をフェッチするようになりました。
Git: デタッチモードでチェックアウト
VS Code からデタッチモードで参照をチェックアウトできるようになりました。
Git: エラー時にコマンド出力表示
Gitコマンドがエラーをスローした場合、新しいコマンド出力表示オプションで完全なエラーメッセージを表示できるようになりました。
Git: git.api.getRemoteSources
コマンドの新しいオプション
git.api.getRemoteSources
Git API コマンドのオプションは、オプションの branch?: boolean
プロパティをサポートするようになりました。これにより、リモートソースプロバイダーのサポートがあれば、Git はユーザーにリモートソースからブランチを選択するように促します。
さらに、このコマンドは providerName?: string
オプションをサポートするようになり、呼び出し元がユーザーによるリモートソースの選択をスキップし、特定のプロバイダーを直接使用できるようになりました。
デバッグ
ブレークポイントビュー: 例外ブレークポイントの条件
VS Code は、ブレークポイントビューから条件の編集コンテキストメニューアクションを使用して、例外ブレークポイントの条件を編集できるようになりました。
今のところ、Mock Debug 拡張機能のみが (偽の) 例外ブレークポイント条件をサポートしていますが、JavaScript デバッガーなど、他のデバッグ拡張機能もすぐに追随する予定です。
例外領域のアクセシビリティ
エディター内の例外情報領域が、よりアクセスしやすくなりました。デバッグ中に例外が発生すると、VS Code は自動的に例外領域にフォーカスを移動し、スクリーンリーダーが例外の詳細とスタックフレームを報告するようにします。
例外領域は、Escape キーまたは例外領域の右上にあるXボタンで閉じることもできるようになりました。
UIの改善
概要ルーラーにデバッグ中の行が表示される
現在デバッグ中の行がエディター右側の概要ルーラーに表示されるようになりました。この装飾には、既存の editor.stackFrameHighlightBackground
色を使用します。これに加え、VS Code は、editor.focusedStackFrameHighlightBackground
色を使用して、現在フォーカスされているデバッグ中の行を概要ルーラーに表示します(フォーカスされているデバッグ中の行は、コールスタックビューで手動で選択された、トップではないスタックフレームの場所です)。
自動デバッグ構成の改善
以前、デバッグ拡張機能が現在のプロジェクトを分析し、デバッグ構成を自動的に提供する機能を導入しました。これらのデバッグ構成は動的に作成されるため、launch.json
構成ファイルには表示されません。今回のマイルストーンでは、VS Code の再起動(およびリロード)後も、最近使用した自動デバッグ構成を保持し、全体的なエクスペリエンスをよりスムーズにしました。再起動後に自動デバッグ構成が無効になった場合、デバッグ開始時にVS Code は同じプロバイダーから新しい自動構成を選択するように求めます。
デバッグホバー: 通常のホバーに切り替えるためのヘルプテキスト/ヒント
デバッグホバーの下部にヘルプテキストが追加され、デバッグ中にAltを押すとエディターの言語ホバーに切り替わる機能がより見つけやすくなりました。ご存知の通り、デバッグ中はデバッグホバーが言語ホバーよりも優先されるため、言語ホバーが表示されません。デバッグホバーから言語ホバーに切り替えるには、Alt修飾キーを押し続けます。Altが押されている間は、デバッグホバーの代わりに言語ホバーが表示されます。これにより、デバッグ中にJavadocの説明のようなホバーを読みやすくなります。
デバッグコンソール: 同一行を折りたたむ
デバッグコンソールは、同一の出力を折りたたみ、その出現回数を表示するようになりました。この機能により、繰り返し表示されるプログラム出力をはるかに把握しやすくなります。
launch.json および tasks.json の新しい変数
以下の新しい変数が導入されました。
${fileWorkspaceFolder}
- アクティブな VS Code エディターで開いているファイルのワークスペースフォルダーパスを解決します。${fileDirnameBasename}
- アクティブな VS Code エディターで開いているファイルのあるフォルダーの名前を解決します。${pathSeparator}
- ファイルパスのコンポーネントを区切るためにオペレーティングシステムが使用する文字を解決します。
serverReadyAction: 名前で他のデバッグ構成を起動
serverReadyAction は、これまでURLに一致するブラウザまたはChromeデバッグを起動できました。今回のリリースでは、名前で他の任意の構成を起動する新しいオプションが追加されました。たとえば、launch.json
で次のように指定できます。
"serverReadyAction": {
"action": "startDebugging",
"pattern": "listening on port ([0-9]+)",
"name": "Launch Browser"
}
これにより、標準の Chrome デバッグ構成に追加のオプションを渡したり、他のデバッガーを serverReadyAction
で使用したりすることができます。
自動アタッチの一時的な無効化
自動アタッチは、ステータスバーの自動アタッチ項目、またはデバッグ: 自動アタッチの切り替えコマンドを使用して一時的に無効にできるようになりました。この方法で自動アタッチを無効にすると、現在のウィンドウにのみ適用され、ターミナルを再起動する必要はありません。同じ方法で再度有効にできます。
JavaScriptデバッガー
変更点の完全なリストは、デバッガーの変更ログに記載されています。
ブレークポイント診断ツール
デバッグを妨げたり、ブレークポイントがバインドされない原因となるビルドまたは設定の問題をトラブルシューティングするために設計された新しいツールが追加されました。これを使用するには、デバッグセッションが実行中にデバッグ: 現在のセッションの診断情報を作成コマンドを実行します。今後のVS Codeバージョンでは、この診断ツールへのヒントが適切な場合に自動的に表示されるようになります。
デフォルトの実行可能ファイルの場所の設定
ユーザー設定 debug.javascript.defaultRuntimeExecutable
があり、Node.js または Chrome バイナリのデフォルトの場所を指定できます。たとえば、{ "pwa-chrome": "dev" }
は、Chrome タイプの設定でデバッグするたびに Chrome の "dev" ビルドを使用します。
この新しいオプションを使用するには、起動設定が node
の代わりに pwa-node
、または Chrome の代わりに pwa-chrome
であることを確認してください。
タスク
npm
組み込みのnpm拡張機能の設定npm.packageManager
の新しいデフォルト値はauto
です。auto
値は、.lock
ファイルと、ワークスペースで依存関係をインストールするために使用されたパッケージマネージャーに基づいて、パッケージマネージャーを自動的に検出します。複数の.lock
ファイルが検出された場合でも、パッケージマネージャーが選択され、競合があったことを示す警告が表示されます。
最近のタスクを削除する
タスクのクイックピックには常に上部に最近のタスクセクションがありました。これは貴重な場所なので、右側の最近使用したタスクを削除ボタンでクイックピックからタスクを削除することで、最近のタスクをより適切に整理できるようになりました。
拡張機能
今回のマイルストーンでは、拡張機能ビューと拡張機能の詳細ページに多くの改善が加えられました。
拡張機能ビューが自動的に更新されるようになりました。たとえば、拡張機能のインストール後、すぐに拡張機能: インストール済みリストに拡張機能が表示されます。また、タイトルバーの更新ボタンを使用して、手動でビューを更新することもできます。
テーマ: GitHub Light
拡張機能の詳細ページに、拡張機能ビューと同様に、拡張機能のすべてのアクションを含むコンテキストメニューが表示されるようになりました。
テーマ: GitHub Light
拡張機能の詳細ページの機能の寄与タブに、拡張機能のアクティベーションイベントが表示されるようになりました。
テーマ: GitHub Light
拡張機能とその依存関係をまとめて無効にできるようになりました。依存関係を持つ拡張機能を無効にしようとすると、すべて無効にするアクション付きの通知が表示されます。
テーマ: GitHub Light
拡張機能ビューの拡張機能のコンテキストメニューにあるワークスペースのおすすめに追加またはワークスペースのおすすめから削除アクションを使用して、ワークスペースのおすすめから拡張機能を追加または削除できます。
テーマ: GitHub Light
設定同期が有効になっている場合、拡張機能のおすすめ通知は、拡張機能ビューと同様に、インストールドロップダウンアクションを表示するようになりました。
extensions.showRecommendationsOnlyOnDemand
設定を非推奨にすることで、拡張機能のおすすめ設定を簡素化しました。拡張機能のおすすめ通知を制御するために extensions.ignoreRecommendations
設定を使用でき、拡張機能ビューの表示アクションを使用して、デフォルトでおすすめを非表示にできます。
トラブルシューティング: 拡張機能の二分法
VS Code の真の力はその拡張機能にあります。テーマ拡張機能は美しい色とアイコンを追加し、言語拡張機能は IntelliSense を提供し、コードナビゲーションを可能にし、デバッガー拡張機能はバグを詳しく調べることができます。問題が拡張機能によって引き起こされているのか、そしてもしそうなら、どの拡張機能によって引き起こされているのかが明らかでない場合があります。これまで、問題のある拡張機能を見つけるには、すべての拡張機能を無効にしてから、1つずつ拡張機能を再度有効にする必要がありました。このプロセスは、新しい機能である拡張機能の二分法によって簡単になりました。この機能は二分探索アルゴリズムを使用して、問題を引き起こしている拡張機能をすばやく特定します。基本的には、拡張機能の半分を無効にし、見ている問題があるかどうかを確認するように求めます。問題がなくなった場合、問題のある拡張機能は無効にされた拡張機能のリストに含まれていたはずであり、現在有効になっている拡張機能のリストには含まれていなかったはずです。このプロセスは、1つの拡張機能が残るまで繰り返されます。
拡張機能の二分法は、コマンドパレットからヘルプ: 拡張機能の二分法を開始コマンド(⇧⌘P (Windows, Linux Ctrl+Shift+P))で開始できます。これにより、拡張機能を繰り返し無効化・再有効化するプロセスをガイドしてくれます。リロードごとに、問題がまだ存在するかどうかを確認するよう求められます。
拡張機能のバイセクトは、問題が再現されているかどうかを繰り返し確認するように求めます。いつでもバイセクトを停止で中止でき、バイセクト通知を無視した場合は、ヘルプ: 拡張機能のバイセクトを続行コマンドで続行できます。
拡張機能の二分法プロセスが終了すると、拡張機能に対して課題を提出するよう求められます。ここから拡張機能を無効にしたままにすることもできます。
キーボード ショートカットエディター
今回のマイルストーンでは、キーボードショートカットエディターにいくつかの改善が加えられました。
右側のキーバインディングの構成ギアボタンを使って、コマンドパレットからコマンドのキーバインディングを設定できるようになりました。
テーマ: GitHub Light
キーボードショートカットエディターから、コマンドに複数のキーバインディングを追加できるようになりました。
テーマ: GitHub Light
検索入力から特定のキーボードショートカットエディターの列でフィルタリングできるようになりました。
@command:commandId
- コマンドIDでフィルタリングします。例:@command:workbench.action.showCommands
。@keybinding:keybinding
- キーバインディングでフィルタリングします。例:@keybinding:f1
。@source:user|default|extension
- ソースでフィルタリングします。
キーボードショートカットエディターで、UpおよびDown矢印を使用して検索履歴をナビゲートできます。
IntelliSense
他のドキュメントからの単語ベースの提案
VS Code は単純な単語ベースの提案をサポートしています。これらは、言語サービスが利用できない場合や、コメント内に入力している場合のように言語サービスが結果を計算できない場合に役立ちます。今回のリリースでは、VS Code は他の開いているファイルから単語を提案するように構成できるようになりました。editor.wordBasedSuggestionsMode
設定を allDocuments
に設定すると、開いているすべてのファイルから単語が提案され、matchingDocuments
に設定すると、同じ言語の開いているファイルから単語が提案され(デフォルト)、currentDocument
に設定すると、現在のファイルからのみ単語が提案されます。
インライン詳細を非表示にする
VS Code の提案には、提案の横にある別のフライアウトに表示される詳細情報があります。詳細ビューは閉じることができ、その場合、詳細のプレビューが提案とともにインラインで表示されます。提案とともに詳細をインラインで表示すると、スペースを占有しすぎる可能性があるため、新しいブール値設定 editor.suggest.showInlineDetails
を使用して無効にできるようになりました。
TypeScript の提案にパスを表示
TypeScript は、インポート文も追加する補完機能を提供できます。しかし、同じ名前のシンボルが複数ある場合、適切な補完を選択するのが困難でした。今回のリリースでは、自動インポート補完のパスがラベルとともに表示されるため、これがより簡単になりました。
CodeLensをカスタマイズする
CodeLens 項目のフォントファミリーとサイズを構成できるようになりました。
上記のスクリーンキャプチャでは、フォントとサイズはこれら2つの設定を使用してカスタマイズされています。
"editor.codeLensFontFamily": "Comic Sans MS",
"editor.codeLensFontSize": 12,
エディター
スペースでインデントするときの粘着性タブストップ
コードのインデントにスペースを使用することを好む場合、新しい設定 editor.stickyTabStops
があります。これにより、VS Code は、先行スペース内のカーソル移動をタブと同様に扱います。
単語削除コマンド
既存の単語削除アクションは、現在のカーソル位置から単語の先頭まで(Windows/LinuxではCtrl+Backspaceなど)、または単語の末尾まで(Windows/LinuxではCtrl+Delete)削除します。カーソル下の単語全体を削除する新しいコマンド単語削除が追加されました。
差分エディターでの単語の折り返し
差分エディターのサイドバイサイドビューとインラインビューの両方が、単語の折り返しをサポートするようになりました。一般的に、差分エディターは単語の折り返しに関連するエディター設定を尊重します。Markdownファイルの場合、デフォルトで単語が折り返されるため、差分エディターもそれらを単語折り返しします。
差分エディターを常に折り返すか、常に折り返さないようにしたい場合は、新しい diffEditor.wordWrap
設定を使用して "on"
または "off"
に構成できます(デフォルトは "inherit"
で、これは差分エディターがエディターの折り返し設定を継承することを意味します)。
スニペット
拡張機能のスニペットを非表示にする
拡張機能によって貢献されたスニペットは、IntelliSense から非表示にできるようになりました。この機能は、スニペットの挿入を実行したときに表示されるスニペットピッカーから利用できます。非表示にしたい拡張機能のスニペットを見つけて、右側にある目のアイコンを選択します。
非表示のスニペットはIntelliSenseには表示されませんが、スニペットの挿入を介して引き続き使用できます。最後に、設定同期を使用すると、非表示のスニペット設定がデバイス間で同期されます。
プレフィックスなしのスニペット
スニペットを作成する際に、prefix プロパティを省略できるようになりました。プレフィックスのないスニペットは IntelliSense には表示されませんが、スニペットを挿入を介して使用できます。
統合ターミナル
ターミナル設定のサポート
ターミナルのドロップダウンメニューでターミナル設定の構成を選択することで、ターミナル設定を変更できるようになりました。
キーバインディング管理
デフォルトでは、キーバインディングは terminal.integrated.commandsToSkipShell
設定で指定されているように、ターミナルではなくワークベンチにディスパッチされます。新しい通知により、これらのコマンドのいずれかに対応するキーバインディングを入力したときにユーザーに通知し、関連する設定を構成するオプションを提供します。
ほとんどのキーバインディングをワークベンチではなくターミナルに送信するには、terminal.integrated.sendKeybindingsToShell
を設定できます。
言語
Markdown インラインのスマート選択
以下のコマンドを使用して、Markdown ドキュメントで選択範囲を拡大・縮小します。
- 拡大: ⌃⇧⌘→ (Windows, Linux Shift+Alt+Right)
- 縮小: ⌃⇧⌘← (Windows, Linux Shift+Alt+Left)
選択範囲は、イタリック、太字、インラインコードブロック、およびリンクに適用されます。
TypeScript 4.1
今回のVS Codeのリリースには、TypeScript 4.1.2が含まれています。このTypeScriptのメジャーアップデートでは、テンプレートリテラル型やReact 17のファクトリのサポートなど、多くの新しい言語機能が追加され、JavaScriptとTypeScriptの言語ツールも改善されています。もちろん、多くのバグ修正も含まれています。
TypeScriptブログでTypeScript 4.1の詳細を読むことができます。
JSDoc @see タグの初期サポート
JSDoc @see
タグを使用すると、JSDoc コメント内で他の関数やクラスを参照できます。以下の例では、crash
関数が別のファイルから WrappedError
クラスを参照している様子を示しています。
// @filename: somewhere.ts
export class WrappedError extends Error { ... }
// @filename: ace.ts
import { WrappedError } from './somewhere'
/**
* @see {WrappedError}
*/
function crash(kind) {
throw new WrappedError(kind);
}
VS Code は、名前変更を実行する際に基本的な @see
参照を含むようになりました。また、@see
タグのコンテンツに対して定義へ移動を実行することもでき、@see
タグは参照リストにも表示されます。
今後のリリースでも @see
タグのサポートを継続的に改善していく予定です。
IntelliSenseの動作と型チェックに関する新しい設定
明示的なtsconfigまたはjsconfigプロジェクトの一部ではないJavaScriptおよびTypeScriptファイルにおけるIntelliSenseと型チェックの動作を制御する2つの新しい設定が追加されました。
-
js/ts.implicitProjectConfig.strictNullChecks
設定は厳密な null チェックを有効にします。デフォルトはfalse
です。TypeScript で作業している場合、多くの一般的なプログラミングミスを捕捉できるため、厳密な null チェックを有効にすることをお勧めします。
厳密な null チェックは JavaScript での作業にも役立ちます。厳密な null チェックが有効になっている場合、ホバーと IntelliSense の情報には、どの型が
undefined
とnull
になり得るかが表示されます。JavaScript で型チェックを有効にすると、VS Code は厳密な null チェックを使用して一般的なプログラミングミスを捕捉することもできます。 -
js/ts.implicitProjectConfig.strictFunctionTypes
設定は、厳密な関数型を有効にします。デフォルトはtrue
です。厳密な関数型は説明がより困難ですが、一般的に IntelliSense を改善し、いくつかのプログラミングミスを捕捉できます。
これらの設定は、ファイルが jsconfig または tsconfig プロジェクトの一部である場合は上書きされることに注意してください。
その他の暗黙的なJS/TSプロジェクト設定の名前変更
JavaScriptおよびTypeScriptのその他の暗黙的なプロジェクト設定が、より正確になるように名前変更されました。
javascript.implicitProjectConfig.checkJs
->js/ts.implicitProjectConfig.checkJs
javascript.implicitProjectConfig.experimentalDecorators
->js/ts.implicitProjectConfig.experimentalDecorators
これらの設定は、jsconfig または tsconfig プロジェクトの一部ではない JavaScript および TypeScript ファイルの両方に適用されるため、名前が変更されました。以前の設定名は、JavaScript ファイルにのみ適用されることを示唆していました。
HTML
新しいフォーマッター設定
HTML 拡張機能は、JSBeautify をフォーマッターとして使用しています。JSBeautify の最新バージョン (1.13) への更新により、いくつかの新しいフォーマッター設定が追加されました。
html.format.wrapAttributesIndentSize
:html.format.wrapAttributes
でforce aligned
とaligned multiple
を使用する場合の配置サイズ、またはデフォルトのインデントサイズを使用する場合はnull
。html.format.templating
: django、erb、handlebars、php のテンプレート言語タグを尊重します。html.format.unformattedContentDelimiter
: この文字列間でテキストコンテンツをまとめて保持します。
最後の設定では、書式設定しない領域をマークするタグを設定できます。
"html.format.unformattedContentDelimiter": "<!-- DoNotFormat -->"
onTypeRenameの新しい設定名
一致する閉じタグが変更されたときにタグを編集する「入力時名前変更」機能は、現在「リンク編集」と呼ばれています。リンク編集を有効にするコマンドは「リンク編集の開始」(⇧⌘F2 (Windows, Linux Ctrl+Shift+F2))で、Escapeでリンク編集モードを無効にします。
それを有効にする設定は現在
"editor.linkedEditing": true
拡張機能への貢献
リモート開発
コンテナ、リモートマシン、またはWindows Subsystem for Linux (WSL) をフル機能の開発環境として使用できるリモート開発拡張機能の作業が継続されています。
1.52の主な機能ハイライトは以下の通りです。
- Linuxリモートでの自動ポート転送。
- リモート拡張機能をローカルにインストールするための新しいコマンド。
- コンテナ内でリポジトリを開く際にブランチを選択できるようになりました。
- バックグラウンドでの拡張機能インストールによるサーバー起動パフォーマンスの改善。
新しい拡張機能の機能やバグ修正については、リモート開発リリースノートで確認できます。
ノートブック
VS Code チームは、ノートブックのネイティブサポートと、その UX およびパフォーマンスの改善に引き続き取り組んでいます。
大容量テキスト出力のレンダリングを改善
ネイティブノートブックエディターは、コンテンツが大きすぎる場合、UIの応答性を常に確保するために出力を切り詰めるようになりました。出力の完全な生コンテンツはテキストエディターで開くことができます。
拡張機能作成
ファイル装飾API
FileDecorationProvider
APIは最終化され、任意の拡張機能で使用できるようになりました。このAPIを使用すると、周囲の情報をファイルに追加でき、エクスプローラーに表示されるSCMおよびエラーの装飾は、このAPIを使用します。
リソースの変更を元に戻す
ファイルの作成、ファイルの名前変更、ファイルの削除などのエクスプローラー操作は、たとえば onWillCreateFiles
、onWillRenameFiles
、または onWillDeleteFiles
のように、参加を可能にするイベントを発生させます。今回のリリースでは、このようなエクスプローラー操作を元に戻すサポートが追加されました。操作を元に戻す際には、上記のイベントは発生しないことに注意してください。
新しいテーマカラー
statusBarItem.errorBackground
: ステータスバーのエラー項目の背景色。エラー項目は、エラー状態を示すために他のステータスバーエントリとは区別されます。statusBarItem.errorForeground
: ステータスバーのエラー項目の前景色。エラー項目は、エラー状態を示すために他のステータスバーエントリとは区別されます。
エラーの背景色
テーマ作成者は、エディターのエラーに新しいテーマ色を利用できるようになりました。エディターのエラー、警告、情報は、次のようにスタイルを設定できます。
editorError.background
editorWarning.background
editorInfo.background
更新された Codicons
当社のcodicon ライブラリに以下の新しいアイコンを追加しました。
チェックオール
サークルラージフィルド
サークルラージアウトライン
パスフィルド
ピン留め済みダーティ
ビューコンテナとビューのcodiconsのサポート
ビューコンテナとビューのアイコンとしてcodiconsを使用できるようになりました。例:
"views": {
"explorer": [
{
"id": "npm",
"name": "NPM Scripts",
"icon": "$(code)",
"visibility": "hidden"
}
]
}
利用可能なアイコンのリストについては、アイコンリストを参照してください。
リンク編集範囲プロバイダー
以前はOnTypeRenameProvider
として知られていたものが、LinkedEditingRangeProvider
として公開APIになりました。
ドキュメント内の特定の位置に対して、LinkedEditingRangeProvider
は同じコンテンツを持つ範囲をリンクします。ある範囲への変更は、他のすべての範囲に適用できます。
これはHTMLで実際に動作しているのを見ることができます。開始タグの名前を編集すると、閉じタグも自動的に更新されます。
FoldingRangeProvider.onDidChangeFoldingRanges
FoldingRangeProvider.onDidChangeFoldingRanges
が公開 API になりました。これは、プロバイダーからの折りたたみ範囲が変更されたことを通知するオプションのイベントです。
クエリフィルター付きでキーボードショートカットエディターを開く
拡張機能は、workbench.action.openGlobalKeybindings
コマンドを使用してキーボードショートカットエディターを開く際に、クエリテキストを渡せるようになりました。
vscode.commands.executeCommand('workbench.action.openGlobalKeybindings', 'query');
fs.isWritableFileSystem
新しい fs.isWritableFileSystem
API を使用すると、特定のファイルシステムが書き込みをサポートしているかどうかを確認できます。たとえば、example:/path/to/file
という URL のドキュメントが書き込み可能なファイルシステム上にあるかどうかを確認するには、次のようになります。
switch (vscode.fs.isWritableFileSystem('example')) {
case true:
// The `example` filesystem supports writing.
// Keep in mind the permissions or other issues may still prevent
// a file from being written.
break;
case false:
// The `example` filesystem does not support writing (it is readonly).
break;
case undefined:
// VS Code does not know about the `example` filesystem
break;
}
カスタムエディターは fs.isWritableFileSystem
を使用して、読み取り専用UIを表示するかどうかを判断できます。
Markdown Tree tooltip API
TreeItem
のtooltip
にMarkdownを使用するためのAPIが最終化されました。TreeItem
を作成する際に、tooltip
をMarkdown文字列に設定できます。または、Markdownの計算に時間がかかる可能性がある場合は、新しいTreeDataProvider.resolveTreeItem
を使用してツールチップを設定できます。
TreeItemハイライトAPI
待望のTreeItemLabel
APIが最終化されました。このAPIは、TreeItem
のlabel
にハイライトを設定するために使用できます。これは、参照ビューで実際に動作しているのを見ることができます。
listDoubleSelection と listMultiSelection
貢献されたツリービューでのコマンド有効化にコンテキスト値 listDoubleSelection
と listMultiSelection
を使用できるようになりました。
ビューのウェルカムコンテンツボタンの有効化
ビューのウェルカムコンテンツセクションの有効化コンテキスト句を設定できるようになりました。
提案された拡張API
各マイルストーンには新しい提案された API があり、拡張機能の作成者はそれらを試すことができます。いつものように、皆様のフィードバックをお待ちしております。提案された API を試すには、次の手順を実行する必要があります。
- 提案APIは頻繁に変更されるため、Insiders版を使用する必要があります。
- 拡張機能の
package.json
ファイルに次の行が必要です:"enableProposedApi": true
。 - 最新バージョンのvscode.proposed.d.tsファイルをプロジェクトのソース場所にコピーします。
提案された API を使用する拡張機能を公開することはできません。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊すことは望ましくありません。
ステータスバーエントリの背景色API
StatusBarItem
に新しいプロパティ backgroundColor
を提案し、ステータスバーエントリの背景色を設定できるようにします。現在、ステータスバーが色鮮やかになりすぎるのを避けるため、statusBarItem.errorBackground
のみがサポートされています。将来的に、より多くの色にこのサポートを拡大する可能性があります。
この新しいAPIのユースケースは、拡張機能がステータスバーにエラー状態を示すことを可能にすることです。例えば、ESLint拡張機能は、この色を使用して、ワークスペースでESLintがまだ有効になっていないことをユーザーに警告するかもしれません。
より多くのテーマ可能なアイコン
プロダクトアイコンテーマの作業が再開されました。プロダクトアイコンテーマは、VS Code をカスタムアイコンセットでスタイル設定できる提案中の機能です。これは、組み込みビューのすべてのアイコンだけでなく、Codicon ライブラリからアイコンを使用するすべての拡張機能でも機能します。プロダクトアイコンテーマは次回のマイルストーンで公開される予定です。
特にデバッグ、拡張機能、ターミナルビュー、設定、ノートブックエディターなど、さらに多くのアイコン名が追加されました。
更新されたアイコンリストをご覧ください。
提案されていたロギングAPIの削除
ロギングAPI、LogLevel
とonDidChangeLogLevel
に関する提案は、約1年前に存在していましたが、現在は削除されました。拡張機能は、ロギングにアウトプットチャネルAPIを使用するか、カスタムロガーを使用する場合はExtensionContext#logUri
を使用できます。
提案されているテストAPIの初期追加
私たちはVS Code でのテストについて調査しており、API の最初のバージョンが vscode.proposed.d.ts
に存在しています。追加のコンテキストについてはリンクされた issue を読み、意見があれば参加してください。API のプロバイダ部分はオブザーバ部分よりもかなり早く出荷されると予想しています。
新しいコンテキストキー演算子
<
、<=
、>
、または>=
がコンテキストキー式で使用できるようになりました。以下は、2つ以上のワークスペースフォルダーが開かれている場合にのみ表示されるコマンドを寄与する例です。
"contributes": {
"menus": {
...
"when": "workspaceFolderCount >= 2"
...
}
}
言語サーバープロトコル
言語サーバープロトコルのバージョン3.16の機能セットが最終決定され、LSPプロトコルサイトで利用できるようになりました。バージョン3.16の主なハイライトは以下の通りです。
詳細な変更ログには、既存の要求に対するすべての軽微な改善も含まれています。
デバッグアダプタープロトコル
条件付き例外のサポート
今回のマイルストーンで、2020年9月の条件付き例外の提案が最終化され、Debug Adapter Protocol (DAP) のバージョン1.43の一部となりました。
プロトコルへの追加により、setExceptionBreakpoints
リクエストに、例外フィルターとその条件を設定するための新しいオプションの filterOptions
プロパティが拡張されました。デバッグアダプターは、supportsExceptionFilterOptions
機能を通じて条件付き例外機能をサポートすることを表明できます。
StackTraceResponse.totalFrames の意味論の明確化
Debug Adapter Protocol の supportsDelayedStackTraceLoading
機能の説明は、遅延スタックフレーム読み込みを機能させるには、アダプターが StackTraceResponse
の totalFrames
フィールドに利用可能なスタックフレームの正しい数を設定する必要があることを示唆しているようです。しかし、一部のデバッガーやランタイムでは、この値を計算するのが容易ではないため、遅延スタックフレーム読み込みをサポートするにはコストがかかります。
フレームの総数はUIに表示されることがないため、totalFrames
の元の(やや不十分な)意味論の説明を明確化しました。デバッグアダプターは、totalFrames
に大きな(不正確な)値を提供しても構わず、クライアントは要求されたよりも少ないフレームを受け取ることを想定し、これをスタックの終わりに達したことを示すものとして使用すべきです。
RunInTerminalRequestArguments.cwd の意味論の明確化
runInTerminal
リクエストの cwd
プロパティ(「現在の作業ディレクトリ」)はオプションではないため、「気にしない」ケースを表現するためにプロパティを省略することはできません。たとえば、デバッグアダプターが「cwd」がすでに正しく、クライアントが「ディレクトリ変更」コマンドを生成する必要がないことを知っている場合、DAP 仕様はこの方法を記述していません。
この欠点に対処するため、DAP仕様を明確化し、cwd
プロパティに空でないパスが含まれている場合にのみ、クライアントがディレクトリ変更コマンドを実行することを期待すると追記しました。
エンジニアリング
問題報告者とプロセスエクスプローラーでサンドボックスとコンテキスト分離が有効に
Electronのサンドボックスとコンテキスト分離を有効にするためのさらなるフィードバックを得るため、プロセスエクスプローラーと問題報告者のウィンドウでこれを有効にすることを推進しました。この設定は最終的にメインのVS Codeウィンドウでもデフォルトになります。
sandbox
が有効contextIsolation
が有効- リソースはカスタムの
vscode-file
スキームから提供されます(file
ではありません)。
NPM依存関係のセキュアなサプライチェーン
ビルドパイプラインのセキュリティと信頼性を向上させるため、ソーススキャンおよびテストサービスを活用することで、NPM依存関係のサプライチェーンを改善しました。
Linux ARM リポジトリ
ARMアーキテクチャ(aarch64
およびarmhf
)向けのVS Codeは、以下のLinuxリポジトリで公開されています。
新しいコマンド
キー | コマンド | コマンドID |
---|---|---|
差分エディターでプライマリサイドにフォーカス | workbench.action.compareEditor.focusPrimarySide |
|
差分エディターでセカンダリサイドにフォーカス | workbench.action.compareEditor.focusSecondarySide |
|
差分エディターで反対側にフォーカス | workbench.action.compareEditor.focusOtherSide |
ドキュメント
リモート開発
VS Codeリモート開発について学ぶためのいくつかの新しい方法があります。
- VS Code リモート開発について議論する「タブとスペース」ビデオをご覧ください。
- または、Docker コンテナを開発環境として使用する方法をカバーするステップバイステップの学習モジュールを試してみてください。
GitHub連携
- Visual Studio Code での GitHub の紹介という新しい学習モジュールで、エディターの GitHub 統合を最大限に活用する方法をご覧ください。
オープンソースでVS Codeをどのように作っているか
開発者Alex RossとBenjamin PaseroがGitHub Universeで開催したセッション「オープンソースでVS Codeをどのように作っているか」の録画をご覧ください。私たちのチームがどのようにVS Codeをオープンソースとして構築し、GitHubのコミュニティと協力しているかについて学べます。
ChromebookでのVS Code
ChromebookでVS Codeを実行できることをご存知でしたか?私たちは、これが学生やプログラミング初心者にとって素晴らしい選択肢だと考えています。JavaScriptとPythonを使用したコーディングの始め方を含む、ChromebookでのVS Codeのセットアップ方法(Crostini経由)については、ブログ記事「ChromebookでVS Codeを使って学習する」をご覧ください。
注目すべき修正点
- 39543: 分割されたjson設定エディタの概要ルーラーで一致する単語をハイライト表示する。
- 67905: 複数の拡張機能vsixファイルを同時にインストールする
- 83187: ある設定の環境変数が別の設定に漏れる。
- 88703: URI形式のフィールドのエラーが設定UIで報告されない
- 97202: ${config
} 変数がマルチルートワークスペース起動構成で解決に失敗する。 - 98041: Emmetが数式評価の選択を無視する
- 107320: メインを含む拡張機能をインストールする際にテーマセレクターが表示されるべきではない。
- 107461: デバッグコンソールの履歴が保持されない
- 109111: デバッグコンソールがユーザー設定を尊重しない。
- 110077: データブレークポイントがブレークポイントビューに表示されない。
- 110426: stdinからの読み取りを伴う
--diff
パラメーターをサポート - 110738: 拡張機能がカスタムファイルシステムスキームのエディターラベルを設定できるようにする
- 110775: Shiftキーを押しながら右クリックすると「永久に削除」オプションがなくなる
- 110854: 開いているエディターでファイルシステムプロバイダーの読み取り専用の変更をサポート
- 110905: CLI: 拡張機能が既にインストールされている場合、強制されない限りマーケットプレイスにアクセスしない
ありがとうございます
最後に、今月 VS Code に貢献してくださった以下の皆様に、心からの感謝を申し上げます。
問題追跡への貢献者
- ジョン・マレー(@gjsjohnmurray)
- サイモン・チャン(@yume-chan)
- アンドリー・ディエフ(@IllusionMH)
- アルトゥーロ・デント(@ArturoDent)
- アレクサンダー(@usernamehw)
vscode
への貢献者
- アアジーム・カーン(@aasimkhan30)
- ListWidgetのEscapeボタンの動作修正 PR #110760
- フォーカスを見えるようにするため、チェックボックスにアウトラインオフセットを追加しました。PR #110038
- @AE1020: スクロールバーのクリックでページ単位で移動 PR #104923
- @alisonnoyes: Quiet Lightテーマのdiff構文強調表示 PR #107926
- アンドリュー・ケイシー (@amcasey): TSサーバーのトレースを公開 PR #110534
- アンドリュー・ブランチ (@andrewbranch): [typescript-language-features] importModuleSpecifierPreference値を更新 PR #110536
- @apogeeoak: Markdownプレビューを再度開いたときのエラーを防止する。(#_107205) PR #111449
- ジョナサン・ベルチャー (@belcherj): Firefoxのコンポジションロジック修正 PR #106873
- @BTNDev: javascript for in スニペットを更新 PR #111062
- ボルハ・サルコ (@bzarco):
folderUri
なしで設定変数を解決するときに失敗しないようにする。 PR #97203 - @chanmaoooo: 'deleteWordEntire' コマンドを追加 PR #109511
- chenjigeng (@chenjigeng): HTMLでjavascriptを書いているときのホバースタイルが正しくないのを修正 PR #111110
- @dataleaky: package.json を更新 PR #111661
- Devansh Jethmalani (@devanshj): feat(quickinput): プロンプトでの codicons サポート PR #102898
- Aadhish Sriram S (@dfireBird): feat: デフォルトのスタッシュメッセージを検出 microsoft#106907 PR #107074
- @digeff: searchView/contextの拡張ポイントを追加 PR #109049
- ナサニエル・パーマー (@diminutivesloop): Gitコマンドの失敗時に出力を表示するように提案 PR #95354
- ドル・メシカ (@dormesica): スタッシュをドロップする前に警告を追加しました。 PR #94267
- デビッド・サンダース(@dsanders11)
- エラーメッセージを修正 PR #111269
- vscode.RelativePatternのベースパラメータの型にvscode.Uriを追加 PR #111155
- 「リンクをたどる」コマンドのツールチップにラベルを使用 PR #110917
- コマンド有効化の影響を明確化 PR #110423
- Array.flat() を使用 PR #110189
- イッコ・アシミネ (@eltociear): スペルミス 'sequece' を 'sequence' に修正 PR #109643
- エリック・クロー・クリステンセン (@erik-krogh): markdownファイルの解析時に壊滅的なバックトラックを修正 PR #109964
- ヤクブ・ピスキエヴィッチ (@eXotech-code): クローンしたリポジトリを自動的に開く設定を追加しました。 PR #94369
- ファビオ・ザドロズニー (@fabioz): FileSystemWatcher の制限に関するドキュメント (#_60813) PR #110858
- ヒマンシュ・カプール (@fleon): monaco-editorがJestで適切に動作するように許可 PR #109833
- ベン・カーティス (@Fmstrat): ignoreSubmodules オプションを追加 PR #88772
- ジョン・マレー(@gjsjohnmurray)
- fix #109733 タイトルバーの'(読み取り専用)'サフィックスの二重表示を防止 PR #109736
- fix #106487 viewsWelcome contributionのボタンに「enablement」句を実装 PR #107705
- ギョーム・ラシャンス (@glachancecmaisonneuve): Windowsエクスプローラーアイコン PR #86283
- ホン・ウェイ・ホン (@hunghw): 変更されたファイルで空のコミットを作成 #107753 PR #107958
- ドルバ・スリニバス (@IQUBE-X): Markdownスニペットに定義リストを追加 PR #110026
- ジャン・ピエール(@jeanp413)
- ナビゲーションバーを素早く移動する際の拡張エディタの不具合を修正 PR #110370
- 長い行を印刷する際にスクロール時のターミナルの遅延を修正 PR #110213
- マージの競合で削除されたファイルに対するより良い差分 PR #91245
- ソース管理がツリーの折りたたみ状態を記憶しない問題を修正 PR #89313
- ジェシカ・ペティ (@jepetty): 壊れたリッチナビのビルドを修正するノードタスクを追加 PR #110762
- ジョシアス (@justjosias): スペルミス hightlight -> highlight PR #108451
- @KapitanOczywisty: 比較時にLineDecorationの順序を無視する PR #108379
- ケン・アオキ (@kena0ki): xterm.css を更新 PR #109850
- ワンルー・ワン (@Kingwl)
- オリバー・ラーソン (@LarssonOliver): git.pruneOnFetch 設定が実装されました PR #89249
- Jiaxun Wei (@LeuisKen): ExtensionUrlBootstrapHandlerでOpenURLOptionsをキャッシュ PR #110725
- Jade (@lf-): fontLigaturesの明示的な説明 PR #109987
- ローガン・ローゼン (@loganrosen): .ember-cliをjsonではなくjsoncとしてマーク PR #110541
- モハメッド・アル・ダーレ (@maldahleh): #109255 - 設定の「ファイル: エンコーディング」ドロップダウンにエンコーディング説明を追加 PR #109551
- マティアス・ラスムセン (@mathiasvr): git amend message のみを許可 PR #91838
- MD アシフ・ハサン (@mdasifhasan): プルと同期のfetchOnPullの動作を修正 PR #99324
- セス・フィッツシモンズ (@mojodna): タイポ: Uncommited → Uncommitted PR #109119
- ニコラス・レイバーン (@nrayburn-tech): launch.json に dirSep 変数を追加 PR #105887
- オリバー (@olivercoad): 競合する複数文字の自動閉じペアを処理 PR #110094
- @Pikachu920: フィードバックURLへの「null」の不要な連結を防止 PR #111325
- パブロ・セバスチャン・グレコ(@psgreco)
- armhfpおよびaarch64 rpmのハードコードされた依存関係のさらなるクリーンアップ PR #111253
- armv7hl および aarch64 のハードコードされた rpm 依存関係を修正 PR #111198
- ローテム・バー (@rotem-bar): feat(extensions): 有効な依存関係を持つ拡張機能を無効にする際に、関連する依存関係を無効にするオプションを追加 PR #104997
- アンドレアス・ツィーグラー (@rupran): scmViewPane: コミットメッセージ入力フィールドに空白をレンダリングしない PR #107913
- ドミトリー・シャシャコフ (@sh7dm): Git: スタッシュする前に未保存ファイルを保存するかどうかを尋ねる PR #94358
- シヴァング・トリパティ (@shivangg): feat: npm.packageManagerの自動検出 #102050 PR #102494
- 岩本俊介 (@shskwmt): #93946を修正。スクロール時にフォーカスを削除する。 PR #94280
- エマニュエル・テサール (@Siegrift): tsecを言語サービスプラグインとして有効にする PR #108682
- ジョナサン・マナンチェリル(@SneakyFish5)
- Git: チェリーピックコマンドを追加 PR #104614
- git.pushTags設定を追加 PR #104312
- スコット・デイビス (@stdavis): feat: Git: Push Tagsコマンドの実装 PR #110096
- スマン B K (@sumanbk92): foldEndPairCharactersに`を含める PR #110108
- ティム (@Timmmm): アトミックタブオプションを追加 PR #107126
- @turara
- OneSnippet#move メソッドを更新し、#96545 を修正しました。PR #108964
- SearchViewにupdateTextFromFindWidgetOrSelectionメソッドを追加 PR #108401
- CodeActionOnSaveParticipant を更新 PR #108193
- アレクサンダー(@usernamehw)
- 言語に関わらず単語ベースの提案を含める設定を追加 PR #110494
- #99971 を修正 - 機能の貢献にアクティベーションイベントを表示 PR #100010
- ヴァルテル・ピレス (@vfcp): "Tomorrow Night Blue" テーマの package.nls.json の themeLabel を修正 PR #110178
- ジェイソン・ワン (@wangjaso): git.api.getRemoteSourcesのgithubプロバイダーをデフォルトにするオプションを提供 PR #106368
- エノ・ヤオ(@Wscats)
- キーバインディングブラウザコンテキストキーのサポート PR #110902
- より大きいとより小さいをサポート PR #110846
- コードの可読性を最適化 PR #110572
- @xndcn: ミニマップスライダーのオーバーレイ領域を修正 PR #108448
- winwin2011 (@YuJianghao): 進捗ビットオーバーフローバグを修正 PR #110411
- Zuckjet (@Zuckjet): ホバー情報は単語内で壊れるべきではない PR #106885
language-server-protocol
への貢献者
- @KamasamaK
- ダニー・タッペニー (@DanTup): 仕様解析を簡素化するための調整 PR# 1156
vscode-languageserver-node
への貢献者
- ニッコロ・ベリ (@darkbasic): ShowTextDocumentRequest を実装 PR #490
- ダニー・タッペニー (@DanTup): onProgressにおけるミドルウェアのサポートを追加 PR #690
- ジュリアン・アンリ (@henryju): クライアント情報として「vscode」ではなくappNameを使用 PR #697
vscode-eslint
への貢献者
vscode-js-debug
への貢献者
- モムチル・モムチェフ (@mmomtchev): 外部Node内部のデバッグサポートを追加 PR #824
vscode-html-languageservice
への貢献
- ジャン・ピエール (@jeanp413): オートコンプリートのテキスト編集出力が </[object Object]> になる問題を修正 PR #93
node-jsonc-parser
への貢献
- ダン・ラッセル (@dangrussell): typingsプロパティ値にファイル拡張子を追加 PR #43
vscode-generator-code
への貢献者
- トム・シャーマン (@tom-sherman): 非推奨の
assert.equal
をstrictEqual
に置き換え PR #229 - トーマス・ヒューベルバウアー (@TomasHubelbauer): CLIを介してgitInit、pkgManager、webpackを渡すことを許可 PR #227
vscode-vsce
へのコントリビューション
- ファビアン・ミューメルツハイム (@fmeum): *.vsixでpackage.jsonが書き込み可能であることを確認 PR #508
- ジェームズ・ジョージ (@jamesgeorge007): chore: 古いコードを削除 PR #511
- マタン・ゴーバー (@matangover): presense -> presence PR #510