2023年10月 (バージョン 1.84)
アップデート 1.84.1: このアップデートでは、これらのissueに対処しています。
アップデート 1.84.2: このアップデートでは、これらのissueに対処しています。
ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
Visual Studio Code 2023年10月リリースへようこそ。このバージョンには多くのアップデートが含まれており、きっと気に入っていただけると思います。主なハイライトは次のとおりです。
- オーディオキューの追加 - クリア、保存、フォーマット操作を示す新しいオーディオキュー。
- アクティビティバーの位置 - コンパクト表示のためにアクティビティバーを上部に移動。
- エディタータブの非表示 - エディタータブを複数、単一、または非表示に設定可能。
- エディターグループの最大化 - アクティブなエディターグループを素早く展開。
- Pythonの改善 - ターミナルでのコード実行の改善、仮想環境の作成の容易化。
- FastAPIチュートリアル - VS CodeでPython FastAPIアプリを開発する方法を学ぶ。
- Java用Gradle - Java Gradleプロジェクトのサポートを改善。
- プレビュー: GitHub Copilot - チャット「エージェント」、コミットメッセージの生成、ターミナルサポート。
これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.comの更新情報をご覧ください。
Insiders: 最新機能をいち早く試したいですか?Insidersビルドをダウンロードして、最新のアップデートをすぐにお試しください。
アクセシビリティ
クリア、フォーマット、保存のオプトインオーディオキュー
audioCues.clear
が有効になっている場合、ターミナル、通知、またはチャットの応答がクリアされたことをサウンドで示します。
ファイルとノートブックでは、audioCues.save
とaudioCues.format
をユーザー操作時または各イベント時に常に再生するように設定できます。無効になっている場合、代わりにARIAアラートが使用され、accessibility.alert.format
とaccessibility.alert.save
でカスタマイズできます。
Windows 拡大鏡の同期
Windows 拡大鏡がVS Codeでカーソルを正しく追跡するようになりました。
アクセシブルビューの改善
デフォルトでは、ユーザーのカーソルはターミナルのアクセシブルビューの下部に配置されます。代わりに位置を保持するには、terminal.integrated.accessibleViewPreserveCursorPosition
をtrue
に設定します。
アクセシブルビューはaccessibility.hideAccessibleView
で非表示にできます。これは、視覚障碍のないユーザーの聴衆に画面を共有する場合に便利です。
ユーザーが入力を開始して以前の要素にフォーカスを移すと、アクセシブルビューが閉じるようになり、よりスムーズなワークフローが実現します。
ウィンドウタイトルのフォーカスされたビュー内のテキストエディター
前回のイテレーションでは、window.title
に${focusedView}
変数を追加しました。今回、Text Editor
にフォーカスがある場合も示すようになりました。
ワークベンチ
アクティビティバーの位置をカスタマイズ
次のビデオに示すように、アクティビティバーをサイドバーの上部に移動できるようになりました。
アクティビティバーを上部に配置すると、アカウントボタンと管理ボタンがタイトルバーの右端に移動します。
注: これは、カスタムタイトルバーが有効になっている場合 ("window.titleBarStyle": "custom"
) のみサポートされます。
エディタータブを非表示にする
ユーザーは、workbench.editor.showTabs
をnone
に設定することで、エディタータブを非表示にできるようになりました。その他のshowTabs
オプションは、multiple
(デフォルト) とsingle
で、アクティブなエディターに対して単一のエディタータブを表示します。
エディターグループの最大化
新しいコマンド表示: エディターグループの最大化/復元を切り替える (⌘K ⌘M (Windows, Linux Ctrl+K Ctrl+M)) が追加され、エディターグループを最大化できるようになりました。これにより、他のすべてのグループが非表示になり、タブバーにボタンが追加され、ユーザーは以前のレイアウトを復元できます。設定workbench.editor.doubleClickTabToToggleEditorGroupSizes
がmaximize
に設定されている場合、ユーザーはエディタータブをダブルクリックしてエディターグループを最大化および最大化解除できます。
設定エディターでの類似設定の検索
コマンドパレットと同様に、設定エディターも類似設定検索を実行して、特定のクエリに対してより関連性の高い結果を収集するようになりました。
実装は現在初期段階であり、次のイテレーションで改善が期待できます。
プロトコルリンクを開く際の確認
ファイルまたはワークスペースのプロトコルリンクがVS Codeで開かれると、ダイアログで確認を求めるようになりました。
プロトコルリンクは、ローカルファイル (例: vscode://file/path/to/file
) またはリモートファイル (例: vscode://vscode-remote/ssh-remote+[USER@]HOST[:PORT]/path/to/file
) を指すことができます。それぞれの場合に、この動作を無効にするための新しい設定があります。
security.promptForLocalFileProtocolHandling
- ローカルプロトコルリンク用security.promptForRemoteFileProtocolHandling
- リモートプロトコルリンク用
エディター
最も近いクイックフィックスのキーボードショートカット
行内で最も近いクイックフィックスを⌘. (Windows, Linux Ctrl+.) (コマンドID editor.action.quickFix
) からアクティブにする新しい設定が追加されました。カーソルがその行のどこにあってもかまいません。以前はプレビュー機能であった、コードアクションウィジェット: 付近のクイックフィックスを含める (editor.codeActionWidget.includeNearbyQuickFixes
) がデフォルトで有効になりました。
このコマンドは、クイックフィックスでリファクタリングまたは修正されるソースコードを強調表示します。通常のコードアクションと修正以外のリファクタリングは、カーソル位置で引き続きアクティブにできます。
複数ドキュメントの強調表示
設定エディター: 複数ドキュメントの出現箇所 (editor.multiDocumentOccurrencesHighlight
) を介して、複数ドキュメントにわたるコード強調表示の初期サポートが追加されました。この初期実装ではテキストの出現箇所のみが特徴で、セマンティック強調表示のサポートは将来提供される予定です。
ソース管理
--force-if-includesを使用した強制プッシュ
今回のマイルストーンでは、--force-if-includes
オプションがサポートされるようになりました。これは、Git 2.30で追加された--force-with-lease
の補助オプションです。新しいオプションは、強制プッシュされるコミットが、リモート参照の先端にあるコミットを調べた後に作成されたことを保証し、自動フェッチが有効になっている場合にコミットを失う可能性を減らします。git.useForcePushIfIncludes
設定を無効にすることで、--force-if-includes
の使用を無効にできます。
ノートブック
実行時のスクロールの改善
Shift+Enter
でノートブックを実行するときに次のセルが表示される方法が改善され、出力に集中しやすくなりました。これにより、既に出力があるセルを再実行する際のセルの移動量も減少します。
IPythonスタックトレースのレンダリング
IPythonからの例外スタックトレースが、エラーに移動するのに役立つクリック可能なリンクをレンダリングするようになりました。これは、Jupyter拡張機能が最初にスタックトレースを変更しない場合にのみ適用されます: "jupyter.formatStackTraces": false
。
デバッグ
JavaScriptデバッガー
イベントリスナーブレークポイントビューの改善
イベントリスナーブレークポイントビューがより使いやすくなり、チェックボックス付きのツリーとして表示されるようになりました。
ソースマップの名前変更の処理を改善
コードがバンドラーでコンパイルされると、変数の名前が変更される可能性があります。これは特にすべてのバンドラーのインポートと、esbuildの一部のローカル識別子で一般的です。デバッガーは、各名前変更が適用されるスコープを認識するようになり、ユーザーがこれまで遭遇してきた多くの問題が修正されました。
これには、デバッガーがコンパイルされたモジュールの構文木を解析する必要があります。これはバックグラウンドスレッドで、名前変更が検出された場合にのみ実行されますが、launch.json
で"sourceMapRenames": false
を設定して動作を無効にすることで、パフォーマンスへの影響を回避できます。
リモート開発
Remote Development extensionsを使用すると、Dev Container、SSH経由のリモートマシン、Remote Tunnels、またはWindows Subsystem for Linux (WSL) をフル機能の開発環境として使用できます。
ハイライトは次のとおりです。
- Microsoftアカウントを使用してトンネルにログインできるようになりました。
- SSHおよびトンネル経由でのDev Containerへの接続がWindowsでサポートされるようになりました。
これらの機能の詳細については、Remote Development release notesを参照してください。
拡張機能への貢献
GitHub Copilot
ストリーミングインラインチャット
GitHub Copilot Chat拡張機能のインラインチャットは、テキストの編集を段階的に行い、応答を受信している速度で「入力」できるようになりました。これは、チャット応答全体を受信してからエディターに適用する以前の動作よりも自然なエクスペリエンスです。
すべての編集が挿入であるとは限らず、置換の場合、Copilotは開始位置を特定するのが難しい場合があります。そのような場合、ストリーミングはまだ期待どおりに機能しない可能性があります。この分野の改善にご期待ください。
チャットエージェント
今回のイテレーションでは、Copilot Chatと対話する新しい方法であるエージェントを構築しました。エージェントは、専門分野を持ち、あなたを助けることができる専門家のようなもので、@
記号でメンションすることでチャットで話しかけることができます。現在、2つのエージェントがあります。
@workspace
は、ワークスペース内のコードに関するコンテキストを持ち、関連するファイルやクラスを見つけるなど、ナビゲートするのに役立ちます。@vscode
は、VS Codeエディター自体のコマンドと機能について知っており、それらを使用するのに役立ちます。
各エージェントは、いくつかのスラッシュコマンドもサポートしており、以前に使用していたスラッシュコマンドは、エージェントで使用する必要があります。たとえば、/explain
は@workspace /explain
になりました。ただし、ショートカットとして、/
と入力するだけで、自動的に完全なエージェントとコマンドに展開される補完のリストが表示されます。
@workspace
@workspace
エージェントは、メタプロンプトを使用して、質問に答えるのに役立つワークスペースから収集する情報を決定します。メタプロンプトで使用される1つのアプローチは、質問内の曖昧な単語/フレーズを解決するために、会話履歴を振り返ることです。たとえば、@workspace 何をしますか?
と質問した場合、メタプロンプトは履歴を考慮して、it
が実際に何であるか、および質問に答えるために収集する情報を把握するようになりました。メタプロンプトは、より多くの同義語を含む幅広い用語セットを使用して、潜在的に関連性の高い用語のリストを生成します。
@workspace
応答のファイルパスとシンボルは、クリック可能なリンクです。これにより、Copilotが参照しているコードに簡単に移動できます。
@workspace
エージェントは、ワークスペースからインデックスを作成するファイルを決定する際に、.gitignore
と.copilotignore
を尊重します。
エージェントがスラッシュコマンドを置き換える
新しいエージェントは、スラッシュ修飾子を追加して、/createWorkspace
や/createNotebook
などのスラッシュコマンドの機能を置き換えます。
/createWorkspace
-->@workspace /new
/createNotebook
-->@workspace /newNotebook
/explain
-->@workspace /explain
/fix
-->@workspace /fix
/test
-->@workspace /test
/vscode
-->@vscode /api
新しいエージェントをお試しください。/help
と入力すると、さらにヒントが表示されます!
コミットメッセージの生成
Copilot Chatは、ソース管理の入力ボックスにある新しい「スパークル」アクションを使用して、保留中の変更に基づいてコミットメッセージを生成できるようになりました。
インポートのグループ化
生成されたインポートは常に、ファイルの先頭または既存のインポートブロックの下に配置されるようになりました。これは、最も一般的なプログラミング言語でサポートされています。
/explainコンテキストの改善
アクティブなエディターでコード選択を説明するようにCopilot Chatに依頼するには、@workspace /explain
コマンドを使用するか、コンテキストメニューのCopilotで説明アクションを使用します。Copilot Chatには、関数やクラスなどの参照シンボルの実装が含まれるようになり、より正確で役立つ説明が得られます。これは、TypeScript/JavaScript、Python、Java、C#、C++、Go、またはRubyのいずれかの言語サービスを提供する拡張機能がインストールされている場合に、ファイル間で最適に機能します。
永続的なチャットビューの状態
以前は、Copilot Chatビューは最初は非表示で、後で表示されていました。Copilot Chatビューは、ウィンドウの再読み込み後もアクティブな状態を維持するようになり、手動で再度開く必要がなくなりました。さらに、チャットビューは、GitHubへのサインインとGitHub Copilotの無料トライアルのアクティベーションのプロセスをガイドするようになりました。
構成された表示言語を使用したチャット
デフォルトでは、Copilot Chatは、VS Codeで構成された表示言語を使用して最初に応答するようになりました。この自動動作をオーバーライドするには、github.copilot.chat.localeOverride
を構成します。
ウェルカムメッセージの冗長性を軽減
github.copilot.chat.welcomeMessage
を構成することで、Copilot Chatが会話を最初に開始するときに詳細なウェルカムメッセージで挨拶するかどうかを制御できるようになりました。オプションは、first
(デフォルト)、always
、およびnever
です。
ターミナルのクイックフィックス
ターミナルで失敗したコマンドが実行されると、Copilotは発生した内容を説明するクイックフィックスを提供するようになりました。
これは、現在のターミナルプロンプトの横にあるスパークルアイコン (⌘. (Windows, Linux Ctrl+.)) を介してトリガーできます。
ターミナルコマンドの提案
Copilotは、ターミナルにフォーカスがある場合に⌘I (Windows, Linux Ctrl+I)キーバインドを介してCLIコマンドの提案を提供できるようになりました。これにより、@workspace /terminal
が事前に入力されたクイックチャットが表示されます。
この/terminal
スラッシュコマンドは、現在のシェルを使用してシェルコマンドを提案するように最適化されています。提案の品質とUXは、次のリリースでさらに改善される予定です。
ターミナルで実行アクションの表示を改善
コードブロックにシェル言語タイプがある場合、コードブロックをホバーするとターミナルで実行アクションが表示されるようになりました。
インラインチャットがターミナルコマンドで応答可能
インラインチャットは、ターミナルで実行されるコマンドで応答できるようになりました。
Python
ターミナルでの行実行の改善
Python拡張機能は、実行するコードが選択されていない場合に、Python REPL (Shift+Enter
) に行を送信する動作を改善しました。以前は、カーソルをPythonコードの行に置き、Shift+Enter
を押すと、Python拡張機能は、たとえば複数行コマンドの一部であるために失敗する場合でも、正確な行コンテンツをREPLに送信していました。
新しい実験的なスマート送信機能を使用すると、Python拡張機能は、カーソル位置を囲む実行可能なコードの最小ブロックをREPLに送信して実行します。これにより、コードの完全で実行可能なセクションのみがREPLに送信されるようになります。カーソルも自動的に次の実行可能な行に移動し、複数のチャンクを反復的に実行する際にスムーズなエクスペリエンスを提供します。
お試しいただくには、次のユーザー設定を追加してください: "python.experiments.optInto": ["pythonREPLSmartSend"]
。この機能は現在実験段階ですが、将来的にはデフォルトの動作になる予定です。この機能をさらに改善する方法に関するフィードバックや提案がありましたら、お知らせください!
テーマ: Catppuccin Macchiato (プレビューはvscode.devで)
Pythonリンティング拡張機能の改善
サポートされているリンティング拡張機能をいくつか改善し、お気に入りのPythonツールでより構成可能で柔軟なエクスペリエンスを実現できるようにしました。
Pylint、Mypy、およびFlake8拡張機能は、リンティングから除外したいファイルのglobパターンを指定できる設定を提供するようになりました。これは、多くのサブプロジェクトを含む大規模なコードベースで作業しており、特定のフォルダーをリンティングから除外したい場合に役立ちます。これらの設定は、"pylint.ignorePatterns"
、"mypy-type-checker.ignorePatterns"
、および"flake8.ignorePatterns"
です。
これらの拡張機能は、リンターの作業ディレクトリを指定できるcwd
設定もサポートしています。この設定は、変数${fileDirname}
をサポートするように更新されたため、作業ディレクトリをエディターで開いているファイルの親フォルダーに動的に設定できます。これは、モノレポで作業しており、リンターの作業ディレクトリを開くファイルに応じてサブプロジェクトごとに動的に更新したい場合に役立ちます。これらの設定は、"pylint.cwd"
、"mypy-type-checker.cwd"
、および"flake8.cwd"
です。
"mypy-type-checker.preferDaemon"
設定のデフォルト値が変更されました (Mypy拡張機能にのみ適用可能)。以前はtrue
に設定されていたため、Mypyデーモンがデフォルトで使用されていました。フィードバックを受け取った後、デフォルト値をfalse
に変更しました。どちらの値が最適か疑問に思われる場合は、パフォーマンス上の理由から、Mypyレポートスコープをワークスペース全体 ("mypy-type-checker.reportingScope": "workspace"
) に設定している場合は、Mypyデーモンを使用することをお勧めします。それ以外の場合、レポートスコープが現在のファイルに設定されている場合は、拡張機能に同梱されているMypy実行可能ファイルを使用することをお勧めします。
非推奨となった組み込みのリンティングおよびフォーマット機能
VS Codeのリンティングおよびフォーマット拡張機能に対して行われたすべての作業と改善により、Python拡張機能に同梱されている組み込みのリンティングおよびフォーマット機能は非推奨となりました。これには、すべてのリンティングおよびフォーマットコマンドと設定 (python.linting.*
およびpython.formatting.*
) が含まれます。これらの非推奨設定をまだ使用している場合は削除し、代わりにサポートされているリンティングおよびフォーマット拡張機能を使用することをお勧めします。
サポートされている拡張機能がないリンターを使用している場合は、コミュニティが貢献したRuff拡張機能を確認してください。RuffはRustで記述されたPythonリンターであり、pyflakes、pycodestyle、pydocstyleなどのさまざまなリンターをサポートしています。最近、VS CodeでRuffをフォーマッターとして使用するためのサポートが追加されました ("[python]": { "editor.defaultFormatter": "charliermarsh.ruff" }
)。
お気に入りのPythonツール用の独自のリンターまたはフォーマッターVS Code拡張機能を作成することもできます。すぐに始めるには、Python Tools Extension Templateを確認してください。
環境作成通知
仮想環境は、インストールする必要がある依存関係を持つPythonプロジェクトを操作するための推奨される方法です。仮想環境は、分離と再現性を提供し、Pythonプロジェクトで非常に人気があります。
このため、Python拡張機能は、ワークスペースで仮想環境が選択されていない場合に、依存関係がリストされたPythonファイルまたはプロジェクトを実行またはデバッグしようとすると、通知を表示するようになりました。この通知は、Python: 環境を作成コマンドを介して新しい仮想環境をすばやく作成する方法を提供します。
ワークスペースに仮想環境が既にある場合は、それを選択するか、削除して再作成するオプションがあります。
この通知は、python.python.createEnvironment.trigger
をoff
に設定することで無効にできます。
仮想環境の非アクティブ化ヘルパー
数か月前に、環境変数を使用したターミナルアクティベーションの新しい実験的機能を発表しました。これは、明示的なアクティベーションコマンドを必要とせずに、ターミナルで選択した環境を自動的にアクティブ化することにより、開発ワークフローを強化するものです。ただし、明示的なアクティベーションスクリプトが機能していないため、この実験が有効になっている場合、deactivate
コマンドは機能しなくなりました。
Python拡張機能は、deactivate
コマンドを実行しようとすると、それを検出し、シェル用のスクリプトを追加する方法をガイドするヘルパー通知を表示するようになりました。これにより、環境が環境変数を介してアクティブ化されたときにコマンドが再び機能するようになります。また、必要なスクリプトを追加するためにシェルプロファイルファイルを開くためのボタンも提供します。
シェルに必要なスクリプトを追加する方法の詳細なドキュメントは、vscode-python wikiで確認できます。
実験に参加しておらず、この機能を試してみたい場合は、次のユーザー設定を追加してください: "python.experiments.optInto": ["pythonTerminalEnvVarActivation"]
。
テスト出力の改善
pythonTestAdapter
実験が有効になっている場合、Python拡張機能でテスト出力を表示および操作する方法を大幅に改善しました。数か月前に発表しました。以前は、テスト検出と実行からの出力は、Pythonテストログ出力チャネルとテスト結果パネルに一貫性なく分散しており、一部の情報は両方で重複していました。エクスペリエンスを統合するために、テスト実行に関連する出力はテスト結果パネルに表示され、テスト検出はPython出力チャネルに表示されます。詳細については、関連するvscode-python wikiをお読みください。
この新しいアプローチは、Pytestを使用しており、settings.json
で"python.testing.pytestArgs": ["--color=yes"]
を設定している場合、出力のカラー化もサポートしています。カラー化は、テスト結果パネルでのテスト実行にのみ機能し、検出またはPythonテストログパネルでの出力には機能しません。
テスト検出でエラーが発生した場合に、テストエクスプローラービューからテストログを簡単に開くための新しいボタン出力の表示もあります。
Pythonデバッガー拡張機能のプラットフォーム固有バージョン
Pythonデバッガー拡張機能は、プラットフォーム固有バージョンを同梱するようになり、アップデートごとに必要なプラットフォーム固有ファイルのみがインストールされるようになりました。これにより、拡張機能のサイズが縮小され、起動時間の短縮に役立ちます。
Tensorboard拡張機能
Tensorboard機能は、Python拡張機能からスタンドアロンのTensorboard拡張機能に移動しました。
この新しい拡張機能に関する問題がある場合、またはフィードバックを提供したい場合は、Tensorboard拡張機能GitHubリポジトリで問題を報告できます。
Jupyter
先行/依存セルの実行
Jupyter拡張機能を使用すると、セル実行ボタンの横にあるドロップダウンメニューから、ターゲットセルのすべての先行セルまたは依存セルを実行できるようになりました。これはまだプレビュー機能であり、jupyter.executionAnalysis.enabled
設定とnotebook.consolidatedRunButton
設定で有効にできます。
この機能は現在、Pylance拡張機能によって提供されているため、この機能を使用するには、Pylanceの最新のプレリリースバージョンをインストールする必要があります。
VS Code Speech
VS Codeに音声サポートをもたらす新しい拡張機能を紹介します!新しいVS Code Speech拡張機能は、GitHub Copilot Chatに統合され、チャット入力用の音声テキスト変換サービスを有効にします。
インストールすると、マイクアイコンが表示され、選択すると、音声の転写結果に基づいてチャット入力をテキストで埋め始めます。転写はローカルマシンで計算され、インターネットへの接続は必要ありません。
GitHub Pull Requests and Issues
GitHub Pull Requests and Issues拡張機能でさらに進展がありました。これにより、プルリクエストとissueの作業、作成、管理を行うことができます。
- プロジェクトが表示され、プルリクエストの説明WebViewから追加できます。
- PR作成ビューからPRのタイトルと説明を生成するためにGitHub Copilotと統合されました。
- GitHub CLI (
gh pr checkout
) でチェックアウトされたPRが拡張機能によって認識されます。
その他のハイライトについては、拡張機能の0.76.0の変更ログを確認してください。
プレビュー機能
フローティングエディターウィンドウ
ワークベンチウィンドウからエディターを独自のウィンドウにプルする方法の調査を続け、VS Code Insidersコミュニティにこのエキサイティングな新機能を試してフィードバックを提供していただきたいと考えています。
VS Code Insidersをインストールし、新しい表示: アクティブなエディターを新しいウィンドウに移動コマンドをエディターで実行して、フローティングウィンドウで開いてください。
まだ多くのissueを解決し、不足している機能を提供する必要がありますが、近い将来、この機能をStableで有効にできると楽観視しています。
テストにご協力いただきありがとうございます!
言語サーバーのWASM-WASIサポート
WASM/WASIの言語サーバーのサポートが、実験的なwasm-wasi-core拡張機能に追加されました。
Rustで記述され、vscode-wasm repoのWASMにコンパイルされたシンプルな言語サーバーを示す拡張機能もあります。この拡張機能は、language server crateに依存しており、これはRust analyzer teamによってメンテナンスされています。
拡張機能の作成
テストランナーの改善
VS Codeのコマンドラインランナーと拡張機能が追加され、拡張機能のテストを簡単に実行できるようになりました。新しいアプローチを使用する拡張機能は、VS CodeのテストUIで実行できます。一部移行が必要ですが、通常は数分しかかかりません。詳細については、VS CodeのTesting Extensionsドキュメントをお読みください。
TestMessage.contextValue APIの最終決定
ユーザーがメッセージに対してアクションを実行するときに表示されるTestMessage
にcontextValue
を提供できます。さらに、2つの新しいメニューコントリビューションポイント、testing/message/context
とtesting/message/content
が利用可能になりました。前者はテスト結果ツリービューのメッセージに表示され、後者はエディターのメッセージ上に表示されます。たとえば、これはスナップショットテストでフィクスチャを更新するアクションを提供するために使用できます。
contextValue
の詳細については、issue #190277をお読みください。
codiconの更新
次の新しいアイコンがcodiconライブラリに追加されました。
copilot
git-fetch
mic
mic-filled
thumbsup-filled
thumbsdown-filled
coffee
game
snake
vr
chip
music
piano
新しいテーマカラー
textPreformat.background
: 整形済みテキストセグメントの背景色
名前ごとのルートフォルダーアイコン
ファイルアイコンテーマの作成者は、新しいプロパティ rootFolderNames
および rootFolderNamesExpanded
を使用して、ルートフォルダーに名前固有のアイコンを定義できるようになりました。詳細については、ファイルアイコンテーマのガイドをご覧ください。
提案されたAPI
すべてのマイルストーンには、新しい提案されたAPIが含まれており、拡張機能の作成者はそれらを試すことができます。 いつものように、フィードバックをお待ちしています。提案されたAPIを試す手順は次のとおりです。
- 試したい提案を見つけて、その名前を
package.json#enabledApiProposals
に追加します。 - 最新の @vscode/dts を使用し、
npx @vscode/dts dev
を実行します。対応するd.ts
ファイルがワークスペースにダウンロードされます。 - これで、提案されたAPIに対してプログラミングできます。
提案されたAPIを使用する拡張機能を公開することはできません。次のリリースで破壊的な変更が発生する可能性があり、既存の拡張機能を破壊することは決して望ましくありません。
Issue Reporter を介して拡張機能に送信されるデータの設定のサポート
新しい提案されたAPIにより、拡張機能の作成者はIssue Reporterを介して追加のデータを送信できます。
export interface IssueUriRequestHandler {
// Handle the request by the issue reporter for the Uri you want to direct the user to.
handleIssueUrlRequest(): ProviderResult<Uri>;
}
export interface IssueDataProvider {
// Provide the data to be used in the issue reporter.
provideIssueData(token: CancellationToken): ProviderResult<string>;
// Provide the template to be used in the description of issue reporter.
provideIssueTemplate(token: CancellationToken): ProviderResult<string>;
}
export namespace env {
export function registerIssueUriRequestHandler(
handler: IssueUriRequestHandler
): Disposable;
export function registerIssueDataProvider(provider: IssueDataProvider): Disposable;
}
handleIssueUrlRequest
を介して URI
を提供して、拡張機能の問題をGitHubで外部的に提起したり、provideIssueData
および provideIssueTemplate
用のテンプレート string
と拡張機能データ string
を提供して、Issue Reporterを介して追加の拡張機能データをGitHubに送信したりできます。
この提案の詳細については、issue #196863 を参照してください。
カスタム除外ルールを持つファイルウォッチャー
このマイルストーンでは、除外ルールを完全に制御できるファイルシステムウォッチャーを作成するための提案されたAPIを追加しました。
export interface FileSystemWatcherOptions {
/**
* An optional set of glob patterns to exclude from watching.
* Glob patterns are always matched relative to the watched folder.
*/
readonly excludes?: string[];
}
export function createFileSystemWatcher(
pattern: RelativePattern,
options?: FileSystemWatcherOptions
): FileSystemWatcher;
この新しいAPIは、再帰的ウォッチャーまたは非再帰的ウォッチャーであるか、ワークスペースの内側または外側を監視するかに関係なく、ファイルウォッチャーを完全に制御できます。ユーザーまたはデフォルトで構成されたファイル監視の除外ルールは適用されないため、サブスクライブしたイベントのみを受信できます。
エンジニアリング
Windows 32ビットのサポート終了
Windows 32ビット版のVS Codeのサポートは終了しました。 まだ32ビット版のVS Codeを使用している場合は、64ビット版にアップデートする必要があります。
拡張機能とドキュメント
Java 用 Gradle
VS CodeでのJava開発が、改善された Gradle for Java 拡張機能によってさらに簡単になりました。プレリリースバージョンでは、Build Server Protocol(BSP)を採用したことで、Gradleプロジェクトのビルドのサポートが向上しています。VS Codeで使用されている他のプロトコル(たとえば、Language Server Protocol(LSP))と同様に、BSPは開発環境とGradleなどのビルドツール間の抽象化レイヤーを提供します。
新しいGradleサポートを試すには、Extension Pack for Java と Gradle for Java 拡張機能のプレリリースバージョンの両方をインストールしてください。GradleとBSPの詳細については、Java拡張機能チームの最近のブログ記事をご覧ください。
FastAPI チュートリアル
FastAPI は、Python APIを構築するためのモダンで高速なWebフレームワークであり、そのシンプルさとパフォーマンスのおかげでますます人気が高まっています。
新しいFastAPIチュートリアルを通じて、VS CodeとPython拡張機能を最大限に活用してFastAPIアプリケーションを作成およびデバッグする方法を学ぶことができます!
カスタムレイアウトユーザーガイド
ワークベンチとエディターのレイアウトカスタマイズについて説明する新しいカスタムレイアウトの記事があります。ここでは、ビュー、パネル、エディターなどのVS Codeの主要なUI要素を、好みのワークフローに合わせて変更する方法を学びます。
トピックには以下が含まれます
- プライマリーおよびセカンダリーサイドバー
- パネルの位置と配置
- ピン留めされたエディタータブ
- エディターグループのレイアウト
- その他
注目すべき修正
- 194812
workbench.settings.settingsSearchTocBehavior
がhide
に設定されている場合でも、検索中に ToC が表示される - 195722 ネットワークの問題が発生した場合の空白の設定エディター
ありがとうございます
最後になりましたが、VS Codeの貢献者の皆様に心から感謝申し上げます。
Issue tracking
Issue trackingへの貢献
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @starball5 (starball)
- @ArturoDent (ArturoDent)
プルリクエスト
vscode
への貢献
- @amaust (Andrew Maust): Fixes Aria Label Showing [Object object] PR #195929
- @Cazka: Fix typo for incrementalNaming setting PR #194900
- @Charles-Gagnon (Charles Gagnon): Fix arrow nav on dropdown action buttons focusing hidden dropdown PR #167662
- @christian-bromann (Christian Bromann): Only render notebook container if visible PR #188226
- @Connormiha (Mikhail): fix: simplified map+flat PR #193949
- @futurist (James Yang): fix: dom.test.ts typo PR #195249
- @gjsjohnmurray (John Murray)
- Correct the CLI helptext for
--profile
PR #193766 - Allow hiding of launcher on Run and Debug title bar when debugging PR #193812
- Preselect correct row in Extension Log Level quickpick (fix #194515) PR #194517
- Show Reload Required buttons simultaneously after updateAllExtensions (#_163627) PR #195421
- Show trust editor tab icon correctly for
"window.density.editorTabHeight": "compact"
(fix #196209) PR #196212 - Centre numbers vertically in top activity bar badges (fix #196691) PR #196696
- Correct the #196696 fix which caused oval badges PR #196715
- Upsize progress badge on top activity bar to match #196696 change PR #196724
- Correct the CLI helptext for
- @harbin1053020115 (ermin.zem)
- fix: fix editor progress position when enabled pinnedTabsOnSeparateRow PR #195314
- feat: support iconThemes definitions for root folders PR #195319
- @hsfzxjy (hsfzxjy): Fix faster __vsc_escape_value PR #194459
- @jeanp413 (Jean Pierre): Fixes websocket doesn't handle ping frames correctly PR #194436
- @jiawei-hong (Wei): styles: only needs to be set border-right-width is none if it is not … PR #195078
- @jruales (Joaquín Ruales): Skip regex.replace() cost when there's nothing to replace PR #194854
- @Jvr2022 (Jvr)
- cleanup unused files in .github PR #189066
- Fix grammar PR #194970
- @k-yle (Kyℓe Hensel): fix syntax highlighting for .git-blame-ignore-revs PR #194584
- @MichaelChirico (Michael Chirico): Update org in reference repo PR #194415
- @MrYuto (Yuto Liyosa)
- Make
OpenDisassemblyViewAction
anAction2
PR #195623 - Resolve absolute file target links in tsconfig (#_195514) PR #195759
- Make
- @sandeep-sen (Sandeep Sen): Adding mgmt libraries for Go + changing matcher logic for Go PR #191036
- @SimonSiefke (Simon Siefke): fix: memory leak in menu PR #196302
- @tats-u (Tatsunori Uchino): Add support for
--force-if-includes
to force push more safely PR #187932 - @tisilent (xiejialong)
- Disable transform optimization SettingsTree PR #179095
- Terminal: fix rename and injection PR #194621
- fix #191201 PR #194965
- @vuittont60: fix typos PR #195562
- @whscullin (Will Scullin): Make sure link fragment is preserved PR #193743
- @yiliang114 (易良)
- feat: Add the logo of the built-in extension PR #192999
- fix: to #157015 fix view label command localized PR #193544
- fix: Close #195980, Fix contribute points default display for extensions PR #195984
vscode-js-debug
への貢献
- @OnesAndZer0s (OnesAndZer0s): feat: Instrumentation Breakpoints の整理 PR #1853
language-server-protocol
への貢献
- @manandre (Emmanuel André): NotebookDocumentSync の例を修正 PR #1831