2020年11月 (バージョン 1.52)
Update 1.52.1: このアップデートでは、これらの問題に対処しています。
ダウンロード: Windows: x64 Arm64 | Mac: Intel | Linux: deb rpm tarball Arm snap
Visual Studio Code 2020年11月リリースへようこそ。11月のイテレーション計画でお知らせしたように、私たちはissue grooming guideに記載されているように、GitHub issueとpull requestの整理に2週間引き続き取り組みました。すべてのVS Codeリポジトリ全体で、5242件のissueをクローズ(トリアージまたは修正)しました。これは、前回の整理イテレーションである2019年10月の4622件よりも多くなっています。issueをクローズする一方で、2937件の新しいissueが作成されました。メインのvscodeリポジトリには現在、2146件の未解決の機能リクエストと884件の未解決のバグがあります。さらに、144件のpull requestをクローズしました。
例年と同様に、Benjamin Lannon氏のライブトラッカーを使用して進捗状況を追跡しました。
ハウスキーピングに注力した後、いくつかの機能リクエストとコミュニティからのpull requestにも対応しました。その結果、多くの新機能と設定が追加されました。主なハイライトは次のとおりです。
- diffエディターでのワードラップ - インラインビューとサイドバイサイドビューの両方でワードラップがサポートされるようになりました。
- 新しい拡張機能の二分法機能 - 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)を押したままにすることで、ドラッグアンドドロップ操作中にこれを条件付きで切り替える方法もあります。
エクスプローラーでのファイル操作を元に戻す
ファイルエクスプローラーは、すべてのファイル操作(削除、名前変更、コピー、移動、新規ファイル、新規フォルダー)に対して、元に戻す(Undo)とやり直し(Redo)をサポートするようになりました。ファイルエクスプローラーにフォーカスがあることを確認し、元に戻すまたはやり直しコマンドをトリガーすると、最後のファイル操作がそれぞれ元に戻るか、やり直されます。エディターとファイルエクスプローラーには個別の元に戻すスタックがあり、フォーカスに基づいてどちらを元に戻すかを選択することに注意してください。
エクスプローラーでの長時間実行操作の進捗状況
長時間実行されるファイル操作(500ミリ秒以上)の進捗状況をファイルエクスプローラーとステータスバーに表示するようになりました。長時間実行される操作をキャンセルするための初期サポートもあります。これは、大きなフォルダーをコピーしたり、リモートロケーションからリソースをダウンロードしたりする場合に役立ちます。
開いているエディターのソート
OPEN EDITORSリストのソート順を制御するための新しい設定`explorer.openEditors.sortOrder`が追加されました。
値は次のとおりです。
- `editorOrder` - エディターはエディタータブが表示される順にリストされます(デフォルト)。
- `alphabetical` - エディターは各エディターグループ内でアルファベット順にリストされます。
`alphabetical`ソートは、開いているエディタービューにのみ影響を与えます。タブを「移動」することはありません。
これは、多数のファイルを開いていて、関連付けられているファイル(例えば、hello.component.jsとhello.component.html)を照合したい場合に役立ちます。
アクセシブルな進捗状況コントロール
ワークベンチの進捗状況表示がよりアクセシブルになりました。VS Codeは、スクリーンリーダーがVS Codeでのすべての長時間実行操作の進捗状況を報告できるように、適切なARIAロールを設定します。ほとんどのスクリーンリーダーはデフォルトで、進捗状況が10秒以上継続する場合にのみアナウンスします。
ソース管理の変更で親フォルダーパスを表示
ソース管理ビューから開いた差分エディターは、ファイルパスを表示するようになりました(タブが無効になっている場合)。以前はファイル名のみが表示されていましたが、ファイルの前後のファイルが同じフォルダー内にある場合は、親フォルダーが表示されるようになりました。
新しいプロキシログインダイアログがデフォルトで有効に
新しいプロキシログインダイアログがデフォルトで有効になりました。詳細については、以前のリリースノートをご覧ください。古いダイアログを有効にするには、`window.enableExperimentalProxyLoginDialog`設定を使用できますが、近い将来、このサポートは削除されます。新しいログインダイアログに問題が見つかった場合は、issueを提出してお知らせください。
ターミナル環境処理の改善 (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の2番目のウィンドウを起動できるようになりました。これらは最初の起動からの変数を適切に上書きし、ウィンドウごとの環境変数を効果的に許可します(例えば、これにより、起動前にウィンドウごとに`nvm`などのツールを使用してNode.jsバージョンを変更できます)。
- ターミナルから設定された環境変数は、VS Codeの2番目のウィンドウを起動する前に、その2番目のウィンドウでフォルダーを切り替えても保持されるようになりました。
ワークベンチのオーバーフローの改善
ワークベンチ内にすべてのビューを収めるのに十分なスペースがない場合、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: Cherry Pick... - 特定のコミットをブランチにcherry-pickします。
- Git: 名前変更 - アクティブなファイルのgit名前変更を実行します。
- Git: タグをプッシュ - すべてのローカルタグをリモートにプッシュします。
- Git: チェックアウト先 (Detached)... - デタッチドモードでチェックアウトを実行します。
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...コマンドを実行するときに、どの参照をどのような順序で表示するかを制御します。
Git: スタッシュする前にファイルを保存するように促す
変更をスタッシュしようとすると、VS Codeは保存されていないファイルを保存するように促すようになりました。
Git: 削除されたファイルのmerge conflictに対するより良い差分
削除されたファイルのmerge conflictは、差分エクスペリエンスが改善され、削除とは反対のブランチ上のファイルの実際の変更が表示されるようになりました。
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デバッガー
変更の完全なリストは、デバッガーのchangelogにあります。
ブレークポイント診断ツール
デバッグを妨げる、またはブレークポイントのバインドを妨げるビルドまたは構成の問題のトラブルシューティングに役立つように設計された新しいツールがあります。これを使用するには、デバッグセッションの実行中に「デバッグ: 現在のセッションの診断情報を作成」コマンドを実行します。今後の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つずつ再度有効にする必要がありました。このプロセスは、拡張機能の二分法と呼ばれる新機能により、簡単になりました。これは、バイナリ検索アルゴリズムを使用して、問題を引き起こしている拡張機能を迅速に特定します。基本的には、拡張機能の半分を無効にし、表示されていた問題を確認するように求めます。問題がなくなった場合、問題のある拡張機能は、現在有効になっている拡張機能のリストではなく、無効になっている拡張機能のリストに含まれている必要があります。このプロセスは、単一の拡張機能のみが残るまで繰り返されます。
コマンドパレットから[ヘルプ: 拡張機能の二分法を開始]コマンドを使用して、拡張機能の二分法を開始できます(⇧⌘P (Windows、Linux Ctrl+Shift+P))。次に、拡張機能を繰り返し無効化および再有効化するプロセスをガイドします。リロードするたびに、問題がまだ存在するかどうかを確認するように求められます。
拡張機能の二分法では、問題が再現されているかどうかを繰り返し確認するように求められます。いつでも[二分法を停止]で中止でき、二分法通知を閉じると、[ヘルプ: 拡張機能の二分法を続行]コマンドで続行できます。
拡張機能の二分法プロセスが完了すると、拡張機能に対するissueを提出するように求められます。ここから拡張機能を無効にしたままにすることもできます。
キーボードショートカットエディター
このマイルストーンでは、キーボードショートカットエディターにいくつかの改善を加えました。
右側の[キーバインディングを構成]ギアボタンを使用して、コマンドパレットからコマンドのキーバインディングを構成できるようになりました。
テーマ: GitHub Light
キーボードショートカットエディターからコマンドに複数のキーバインディングを追加できます。
テーマ: GitHub Light
検索入力から特定のキーボードショートカットエディター列でフィルター処理することもできます。
- `@command:commandId` - コマンドIDでフィルター処理します。例: `@command:workbench.action.showCommands`。
- `@keybinding:keybinding` - キーバインディングでフィルター処理します。例: `@keybinding:f1`。
- `@source:user|default|extension` - ソースでフィルター処理します。
キーボードショートカットエディターで、上矢印キーと下矢印キーを使用して検索履歴をナビゲートできます。
IntelliSense
他のドキュメントからの単語ベースの提案
VS Codeは、シンプルな単語ベースの提案をサポートしています。これらは、言語サービスが利用できない場合、または言語サービスがコメント内に入力する場合など、結果を計算できない場合に役立ちます。このリリースにより、VS Codeは他の開いているファイルから単語を提案するように構成できるようになりました。`editor.wordBasedSuggestionsMode`設定を`allDocuments`で使用して、すべての開いているファイルから単語を提案し、`matchingDocuments`を使用して同じ言語の開いているファイルから単語を提案し(デフォルト)、`currentDocument`を使用して現在のファイルからのみ単語を提案します。
インラインの詳細を非表示にする
VS Codeの提案には、提案の横にある別のフライアウトに表示される詳細があります。詳細ビューを閉じることができ、詳細のプレビューが提案とともにインラインで表示されます。提案とともに詳細をインラインで表示すると、スペースを取りすぎる可能性があるため、新しいブール値設定`editor.suggest.showInlineDetails`を使用して無効にできるようになりました。
TypeScriptの提案でパスを表示
TypeScriptは、importステートメントも追加する補完を提供できます。ただし、同じ名前のシンボルが複数ある場合、適切な補完を選択するのは困難です。このリリースでは、自動インポート補完のパスがラベルとともに表示されるため、これが簡単になります。
CodeLensをカスタマイズ
CodeLens項目のフォントファミリーとサイズを構成できるようになりました。
上のスクリーンキャプチャでは、フォントとサイズは次の2つの設定を使用してカスタマイズされています。
"editor.codeLensFontFamily": "Comic Sans MS",
"editor.codeLensFontSize": 12,
エディター
スペースでインデントするときのスティッキータブストップ
コードをスペースでインデントする場合、`editor.stickyTabStops`という新しい設定があり、VS Codeは先頭のスペースでのカーソル移動をタブと同様に扱います。
単語削除コマンド
既存の単語削除アクションは、現在のカーソル位置から単語の先頭まで(例えば、Windows/LinuxのCtrl+Backspaceキー)、または単語の末尾まで(Windows/LinuxのCtrl+Deleteキー)削除します。カーソル下の単語全体を削除する新しいコマンド「単語削除」が追加されました。
diffエディターでのワードラップ
diffエディターのサイドバイサイドビューとインラインビューの両方が、ワードラップをサポートするようになりました。一般に、diffエディターはワードラップに関連するエディター設定を尊重します。デフォルトでワードラップされるMarkdownファイルの場合、diffエディターもワードラップします。
diffエディターでワードラップを常にオフまたは常にオンにしたい場合は、新しい`diffEditor.wordWrap`設定を使用して、`"on"`または`"off"`に構成できます(デフォルトは`"inherit"`で、diffエディターはエディターのワードラップ設定を継承することを意味します)。
スニペット
拡張機能スニペットを非表示にする
拡張機能によって提供されるスニペットをIntelliSenseから非表示にできるようになりました。この機能は、[スニペットを挿入]を実行するときに、[スニペットを挿入]ピッカーから利用できます。非表示にする拡張機能スニペットを見つけて、右側の目のアイコンを選択します。
非表示のスニペットはIntelliSenseには表示されませんが、[スニペットの挿入]から引き続き使用できます。最後に、設定同期を使用すると、非表示のスニペットの優先設定がデバイス間で同期されます。
プレフィックスなしのスニペット
スニペットを作成するときに、プレフィックスプロパティを省略できるようになりました。プレフィックスのないスニペットはIntelliSenseには表示されませんが、[スニペットの挿入]から使用できます。
統合ターミナル
ターミナル構成のサポート
ターミナルのドロップダウンメニューで[ターミナル設定の構成]を選択することで、ターミナル設定を変更できるようになりました。
キーバインディングの管理
デフォルトでは、キーバインディングは、`terminal.integrated.commandsToSkipShell`設定で指定されているように、ターミナルではなくワークベンチにディスパッチされます。新しい通知は、これらのコマンドの1つに対応するキーバインディングを入力したときにユーザーに通知し、関連する設定を構成するオプションを提供します。
ほとんどのキーバインディングをワークベンチではなくターミナルに送信するには、`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 のファクトリ](https://react.dokyumento.jp/blog/2020/10/20/react-v17-0.html#new-jsx-transform) のサポートなど、多数の新言語機能が導入され、JavaScript および TypeScript の言語ツールが改善されています。これまでと同様に、多くのバグ修正も含まれています。
TypeScript 4.1 の詳細については、TypeScript Blog を参照してください。
JSDoc の @see タグの初期サポート
JSDoc の @see
タグを使用すると、JSDoc コメントで他の関数やクラスを参照できます。以下の例は、別のファイルの WrappedError
クラスを参照する crash
関数を示しています。
// @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 の新しい設定名
一致する閉じタグが変更されたときにタグを編集する On Type Rename 機能は、現在 リンク編集 と呼ばれています。リンク編集を有効にするコマンドは、リンク編集の開始 (⇧⌘F2 (Windows, Linux Ctrl+Shift+F2)) であり、Escape キーでリンク編集モードを無効にします。
それを有効にする設定は次のとおりです。
"editor.linkedEditing": true
拡張機能への貢献
Remote Development
Remote Development 拡張機能 の作業が継続されています。これにより、コンテナー、リモートマシン、または Windows Subsystem for Linux (WSL) をフル機能の開発環境として使用できます。
1.52 の機能ハイライトは次のとおりです。
- Linux リモートでの自動ポートフォワーディング。
- リモート拡張機能をローカルにインストールする新しいコマンド。
- コンテナーでリポジトリを開くときにブランチを選択できるようになりました。
- バックグラウンドで拡張機能をインストールすることにより、サーバーの起動パフォーマンスが向上しました。
新しい拡張機能の機能とバグ修正については、Remote Development リリースノート を参照してください。
Notebooks
VS Code チームは、Notebooks のネイティブサポートと UX およびパフォーマンスの向上に関する 作業を継続しています。
大きなテキスト出力のレンダリングの改善
ネイティブの Notebook エディターは、UI が常に応答性を維持するように、コンテンツが大きすぎる場合に出力を切り捨てるようになりました。テキストエディターで出力の完全な生のコンテンツを開くこともできます。
拡張機能の作成
ファイル装飾 API
FileDecorationProvider
API が最終版となり、どの拡張機能でも使用できるようになりました。この API を使用すると、エクスプローラーに表示される SCM およびエラー装飾など、ファイルに環境情報を追加できます。
リソース変更の取り消し
ファイル作成、ファイル名の変更、ファイルの削除などのエクスプローラー操作は、イベントを発生させます。これにより、たとえば、onWillCreateFiles
、onWillRenameFiles
、または onWillDeleteFiles
などの参加が可能になります。このリリースでは、このようなエクスプローラー操作の取り消しがサポートされ、操作を取り消すときには前述のイベントは発生しないことに注意してください。
新しいテーマカラー
statusBarItem.errorBackground
: ステータスバーのエラー項目の背景色。エラー項目は、エラー状態を示すために他のステータスバーエントリから際立っています。statusBarItem.errorForeground
: ステータスバーのエラー項目の前景色。エラー項目は、エラー状態を示すために他のステータスバーエントリから際立っています。
エラーの背景色
テーマ作成者は、エディターのエラーに新しいテーマカラーを活用できるようになりました。エディターのエラー、警告、および情報は、次の方法でスタイル設定できます。
editorError.background
editorWarning.background
editorInfo.background
Codicons の更新
次の新しいアイコンを codicon ライブラリ に追加しました。
check-all
circle-large-filled
circle-large-outline
pass-filled
pinned-dirty
ビューコンテナーとビューの 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
を使用して tooltip を設定できます。
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 ライブラリのアイコンを使用するすべての拡張機能で機能します。製品アイコンテーマは、次のマイルストーンで公開される予定です。
デバッグ、拡張機能、およびターミナルビュー、設定エディターと Notebook エディターなど、さらに多くのアイコン名が追加されました。
更新された アイコンリスト を確認してください。
提案されたロギング API の削除
ロギング API、LogLevel
、および onDidChangeLogLevel
の提案は、約 1 年前に存在していましたが、現在削除されました。拡張機能は、ロギングにアウトプットチャネル API を使用するか、カスタムロガーを使用する場合は ExtensionContext#logUri
を使用できます。
提案されたテスト API の初期追加
VS Code での テスト を調査しており、API の最初のバージョンが vscode.proposed.d.ts
に存在するようになりました。追加のコンテキストについては、リンクされた issue をお読みになり、入力がある場合は参加してください。API のプロバイダー部分をオブザーバー部分よりも大幅に早く出荷する予定です。
新しいコンテキストキー演算子
<
、<=
、>
、または >=
をコンテキストキー式に使用できるようになりました。以下は、2 つ以上のワークスペースフォルダーが開かれている場合にのみ表示されるコマンドをコントリビューションする例です。
"contributes": {
"menus": {
...
"when": "workspaceFolderCount >= 2"
...
}
}
Language Server Protocol
Language Server Protocol の 3.16 バージョンの機能セットが最終決定され、LSP プロトコルサイト で入手できます。3.16 バージョンの主なハイライトは次のとおりです。
詳細な 変更ログ には、既存のリクエストへのすべての小さな改善も含まれています。
Debug Adapter Protocol
条件付き例外のサポート
このマイルストーンでは、2020 年 9 月の条件付き例外の 提案 が最終決定され、Debug Adapter Protocol (DAP) のバージョン 1.43 の一部になりました。
プロトコルの追加により、例外フィルターとその条件を設定するための新しいオプションの filterOptions
プロパティを使用して、setExceptionBreakpoints
リクエストが拡張されます。デバッグアダプターは、supportsExceptionFilterOptions
機能を通じて、条件付き例外機能をサポートすることをアナウンスできます。
StackTraceResponse.totalFrames のセマンティクスを明確化
Debug Adapter Protocol の supportsDelayedStackTraceLoading
機能の説明は、遅延スタックフレームの読み込みを機能させるためには、アダプターが StackTraceResponse
の totalFrames
フィールドに利用可能なスタックフレームの 正しい 数を入力する必要があることを示唆しているようです。ただし、一部のデバッガーまたはランタイムでは、この値を計算するのが簡単ではなく、遅延スタックフレームの読み込みをサポートするのにコストがかかります。
フレームの総数は UI に表示されないため、totalFrames
の元の(やや欠けている)セマンティクスの説明を明確にしました。デバッグアダプターは totalFrames
に大きな(不正な)値を自由に提供できるようになり、クライアントはリクエストされたフレーム数よりも少ないフレームを受け取る準備をする必要があり、これをスタックの最後に到達したことを示す指標として使用する必要があります。
RunInTerminalRequestArguments.cwd のセマンティクスを明確化
runInTerminal
リクエストの cwd
プロパティ(「現在のワーキングディレクトリ」)は オプションではない ため、「気にしない」ケースを表現するためにプロパティを省略することはできません。たとえば、デバッグアダプターが「cwd」がすでに正しく、「ディレクトリ変更」コマンドをクライアントに生成させる必要がないことを知っている場合、DAP 仕様はこれを実現する方法を説明していません。
この欠点に対処するために、クライアントは cwd
プロパティに空でないパスが含まれている場合にのみ、ディレクトリ変更コマンドを実行することが期待されることを追加することにより、DAP 仕様を明確にしました。
エンジニアリング
Issue Reporter と Process Explorer でサンドボックスとコンテキスト分離を有効化
Electron の サンドボックス と コンテキスト分離 を有効にすることからのフィードバックをさらに得るために、Process Explorer と Issue Reporter ウィンドウで有効にするようにプッシュしました。この構成は、最終的にはメインの 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 |
ドキュメント
Remote Development
VS Code Remote Development について学ぶためのいくつかの新しい方法があります。
- VS Code Remote Development について議論する「Tabs versus Spaces」のビデオをご覧ください。
- または、Docker コンテナーを開発環境として使用する方法 をカバーするステップバイステップの Learn モジュールをお試しください。
GitHub 統合
- Visual Studio Code での GitHub の概要 を使用して、エディターの GitHub 統合を最大限に活用する方法に関する新しい Learn モジュールをご覧ください。
オープンな VS Code の作り方
GitHub Universe での開発者 Alex Ross と Benjamin Pasero のセッション オープンな VS Code の作り方 の録画を視聴して、私たちのチームが VS Code をオープンソースとして構築し、GitHub でコミュニティとどのように協力しているかを学んでください。
Chromebook での VS Code
Chromebook で VS Code を実行できることをご存知ですか?これは学生やプログラミング初心者にとって最適な選択肢であると考えています。JavaScript と Python を使用したコーディングを始めるための手順を含む、Chromebook で VS Code を学習する ブログ記事で、Chrome OS ( Crostini 経由) で VS Code をセットアップする方法を学びましょう。
注目すべき修正
- 39543: 分割された JSON 設定エディターの概要ルーラーで一致した単語を強調表示する。
- 67905: 複数の拡張機能 vsix ファイルを同時にインストールする
- 83187: ある構成の環境変数が別の構成に漏洩する。
- 88703: URI 形式のフィールドのエラーが設定 UI で報告されない
- 97202: ${config
} 変数がマルチルートワークスペースの起動構成で解決に失敗する。 - 98041: Emmet が数式評価で選択範囲を無視する
- 107320: main を含む拡張機能をインストールするときにテーマセレクターが表示されるべきではない。
- 107461: デバッグコンソールの履歴が保持されない
- 109111: デバッグコンソールがユーザー設定を尊重しない。
- 110077: データブレークポイントがブレークポイントビューに表示されない。
- 110426: stdin からの読み取りで
--diff
パラメーターをサポートする - 110738: 拡張機能がカスタムファイルシステムスキームのエディターラベルを設定できるようにする
- 110775: Shift + 右クリックで [完全に削除] オプションがなくなった
- 110854: 開いているエディターでファイルシステムプロバイダーの読み取り専用の変更をサポートする
- 110905: CLI: 拡張機能がすでにインストールされている場合は、強制されない限り Marketplace にアクセスしない
謝辞
最後になりましたが、今月 VS Code に貢献してくれた次の皆様に心から感謝申し上げます。
Issue tracking への貢献
- John Murray (@gjsjohnmurray)
- Simon Chan (@yume-chan)
- Andrii Dieiev (@IllusionMH)
- ArturoDent (@ArturoDent)
- Alexander (@usernamehw)
vscode
への貢献
- Aasim Khan (@aasimkhan30)
- ListWidget の Escape ボタンの動作を修正 PR #110760
- フォーカスを可視化するためにチェックボックスにアウトラインオフセットを追加しました。 PR #110038
- @AE1020: スクロールバーのクリックでページ単位で移動するようにする PR #104923
- @alisonnoyes: Quiet Light テーマの差分構文のハイライト PR #107926
- Andrew Casey (@amcasey): TS サーバーのトレースを公開 PR #110534
- Andrew Branch (@andrewbranch): [typescript-language-features] importModuleSpecifierPreference 値を更新 PR #110536
- @apogeeoak: Markdown プレビューを再度開く際のエラーを防止 (#_107205) PR #111449
- Jonathan Belcher (@belcherj): Firefox のコンポジションロジックを修正 PR #106873
- @BTNDev: スニペット内の javascript を更新 PR #111062
- Borja Zarco (@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
- Nathaniel Palmer (@diminutivesloop): Git コマンドの失敗時に出力を表示する提案 PR #95354
- Dor Mesica (@dormesica): スタッシュをドロップする前に警告を追加しました。 PR #94267
- David Sanders (@dsanders11)
- エラーメッセージを修正 PR #111269
- vscode.RelativePattern の base パラメーターの型に vscode.Uri を追加 PR #111155
- 「リンクをたどる」コマンドのツールチップにラベルを使用 PR #110917
- コマンドの有効化の効果を明確にする PR #110423
- Array.flat() を使用 PR #110189
- Ikko Ashimine (@eltociear): タイプミス 'sequece' を 'sequence' に修正 PR #109643
- Erik Krogh Kristensen (@erik-krogh): markdown ファイルの解析時に壊滅的なバックトラッキングを修正 PR #109964
- Jakub Piskiewicz (@eXotech-code): クローンされたリポジトリを自動的に開く設定を追加しました。 PR #94369
- Fabio Zadrozny (@fabioz): FileSystemWatcher の制限に関するドキュメント (#_60813) PR #110858
- Himanshu Kapoor (@fleon): monaco-editor が Jest で適切に動作するように許可する PR #109833
- Ben Curtis (@Fmstrat): ignoreSubmodules オプションを追加 PR #88772
- John Murray (@gjsjohnmurray)
- #109733 タイトルバーに二重の '(読み取り専用)' サフィックスが表示されるのを防ぐように修正 PR #109736
- #106487 viewsWelcome コントリビューションのボタンの 'enablement' 条項を実装 PR #107705
- Guillaume Lachance (@glachancecmaisonneuve): Windows エクスプローラーのアイコン PR #86283
- Hung-Wei Hung (@hunghw): 変更されたファイルで空のコミットを作成 #107753 PR #107958
- Dhruva Srinivas (@IQUBE-X): Markdown スニペットに定義リストを追加 PR #110026
- Jean Pierre (@jeanp413)
- ナビゲーションバーをすばやくナビゲートしている間に拡張機能エディターのグリッチを修正 PR #110370
- 長い行を印刷するときにスクロール中にターミナルのラグを修正 PR #110213
- マージコンフリクトで削除されたファイルの差分を改善 PR #91245
- ソース管理のツリーの折りたたみ状態を記憶するように修正 PR #89313
- Jessica Petty (@jepetty): 破損した Rich Nav ビルドを修正するためにノードタスクを追加 PR #110762
- Josias (@justjosias): タイプミス hightlight -> highlight PR #108451
- @KapitanOczywisty: 比較時に LineDecoration の順序を無視する PR #108379
- Ken Aoki (@kena0ki): xterm.css を更新 PR #109850
- Wenlu Wang (@Kingwl)
- Oliver Larsson (@LarssonOliver): git.pruneOnFetch 設定を実装 PR #89249
- Jiaxun Wei (@LeuisKen): ExtensionUrlBootstrapHandler で OpenURLOptions をキャッシュ PR #110725
- Jade (@lf-): fontLigatures の明示的な説明 PR #109987
- Logan Rosen (@loganrosen): .ember-cli を json の代わりに jsonc としてマーク PR #110541
- Mohammed Al-Dahleh (@maldahleh): #109255 - 設定 "ファイル: エンコード" ドロップダウンにエンコードの説明を追加 PR #109551
- Mathias Rasmussen (@mathiasvr): git amend メッセージのみを許可 PR #91838
- MD Asif Hasan (@mdasifhasan): Pull および Sync の fetchOnPull 動作を修正 PR #99324
- Seth Fitzsimmons (@mojodna): タイプミス: Uncommited → Uncommitted PR #109119
- Nicholas Rayburn (@nrayburn-tech): launch.json に dirSep 変数を追加 PR #105887
- oli (@olivercoad): 競合する複数文字の自動閉じペアを処理 PR #110094
- @Pikachu920: フィードバック URL への不要な "null" の連結を防止 PR #111325
- Pablo Sebastian Greco (@psgreco)
- armhfp および aarch64 rpm ハードコードされた依存関係のクリーンアップをさらに実施 PR #111253
- armv7hl および aarch64 のハードコードされた rpm 依存関係を修正 PR #111198
- Rotem Bar (@rotem-bar): feat(extensions): 依存関係が有効になっている拡張機能を無効にするときに関連する依存関係を無効にするオプションを追加 PR #104997
- Andreas Ziegler (@rupran): scmViewPane: コミットメッセージ入力フィールドに空白文字をレンダリングしない PR #107913
- Dmitry Sharshakov (@sh7dm): Git: スタッシュする前に保存されていないファイルを保存するかどうかを確認する PR #94358
- Shivang Tripathi (@shivangg): feat: npm.packageManager を自動検出 #102050 PR #102494
- Shunsuke Iwamoto (@shskwmt): #93946 を修正。スクロール時にフォーカスを削除。 PR #94280
- Emanuel Tesař (@Siegrift): tsec を言語サービスプラグインとして有効にする PR #108682
- Jonathan Mannancheril (@SneakyFish5)
- Git: cherryPick コマンドを追加 PR #104614
- git.pushTags 設定を追加 PR #104312
- Scott Davis (@stdavis): feat: Git: Push Tags コマンドを実装 PR #110096
- Suman B K (@sumanbk92): ` を foldEndPairCharacters の一部として含める PR #110108
- Tim (@Timmmm): アトミックタブオプションを追加 PR #107126
- @turara
- OneSnippet#move メソッドを更新して #96545 を修正します。PR #108964
- SearchView に updateTextFromFindWidgetOrSelection メソッドを追加 PR #108401
- CodeActionOnSaveParticipant を更新 PR #108193
- Alexander (@usernamehw)
- 言語に関係なく、単語ベースの候補を含める設定を追加 PR #110494
- #99971 を修正 - 機能貢献でアクティベーションイベントを表示 PR #100010
- Valter Pires (@vfcp): 「Tomorrow Night Blue」テーマの package.nls.json 内の themeLabel を修正 PR #110178
- Jason Wang (@wangjaso): git.api.getRemoteSources で GitHub プロバイダーをデフォルトにするオプションを提供 PR #106368
- Eno Yao (@Wscats)
- キーバインディングブラウザーコンテキストキーをサポート PR #110902
- 大なりおよび小なりをサポート PR #110846
- コードの可読性を最適化 PR #110572
- @xndcn: ミニマップスライダーのオーバーレイ領域を修正 PR #108448
- winwin2011 (@YuJianghao): プログレスビットのオーバーフローバグを修正 PR #110411
- Zuckjet (@Zuckjet): ホバー情報が単語内で途切れないように修正 PR #106885
language-server-protocol
への貢献
- @KamasamaK
- Danny Tuppeny (@DanTup): 仕様の解析を簡素化するための調整 PR# 1156
vscode-languageserver-node
への貢献
- Niccolò Belli (@darkbasic): ShowTextDocumentRequest を実装 PR #490
- Danny Tuppeny (@DanTup): onProgress でミドルウェアのサポートを追加 PR #690
- Julien HENRY (@henryju): クライアント情報として 'vscode' の代わりに appName を使用 PR #697
vscode-eslint
への貢献
vscode-js-debug
への貢献
- Momtchil Momtchev (@mmomtchev): 外部ノード内部のデバッグのサポートを追加 PR #824
vscode-html-languageservice
への貢献
- Jean Pierre (@jeanp413): オートコンプリートのテキスト編集出力 </[object Object]> を修正 PR #93
node-jsonc-parser
への貢献
- Dan Russell (@dangrussell): typings プロパティ値にファイル拡張子を追加 PR #43
vscode-generator-code
への貢献
- Tom Sherman (@tom-sherman): 非推奨の
assert.equal
をstrictEqual
に置き換え PR #229 - Tomáš Hübelbauer (@TomasHubelbauer): CLI 経由で gitInit、pkgManager、webpack を渡せるようにする PR #227
vscode-vsce
への貢献
- Fabian Meumertzheim (@fmeum): *.vsix で package.json が書き込み可能であることを保証 PR #508
- James George (@jamesgeorge007): chore: 古いコードを削除 PR #511
- Matan Gover (@matangover): presense -> presence PR #510