2019年10月 (バージョン 1.40)
更新 1.40.1: この更新はこれらのイシューに対応しています。
更新 1.40.2: この更新はこれらのイシューに対応しています。
ダウンロード: Windows: x64 | Mac: Intel | Linux: deb rpm tarball snap
Visual Studio Codeの2019年10月リリースへようこそ。10月のイテレーション計画でお知らせしたとおり、私たちはイシューグルーミングガイドに記載されているように、GitHubのイシューとプルリクエストの整理に注力しました。すべてのVS Codeリポジトリにおいて、私たちは4622件のイシューをクローズしました(トリアージまたは修正)。これは、2018年9月の前回の整理イテレーションでクローズした3918件よりも多い数です。私たちがイシューをクローズしている間にも、あなたは2195件の新しいイシューを作成しました。その結果、イシューは2427件純減しました。メインのvscodeリポジトリには現在2162件の未解決の機能リクエストと725件の未解決のバグがあります。さらに、私たちは287件のプルリクエストをクローズしました。この取り組みの一環として、私たちはプロセスを調整し、イシュートリアージワークフローを更新しました。
昨年と同様に、Benjamin Lannonによるライブトラッカーを使用して進捗を追跡しました。

この整理マイルストーン中に、私たちはいくつかの機能リクエストとコミュニティからのプルリクエストにも対応しました。新しい機能と設定については、引き続きお読みください。
Workbench
アクティビティバーのインジケーター
アクティビティバーのアクティブな項目をより際立たせ、読みやすさを向上させるために、新しいインジケーターを導入しました。また、非アクティブな前景色を調整して、アクティブな要素とのコントラストを強めました。

アクティブなインジケーターは、新しいカラートークンactivityBar.activeBorderで制御できます。アクティブな要素にオプションの背景色activityBar.activeBackgroundも導入しました。設定すると、次のようになります。

テーマ設定可能なウィンドウの枠線
VS Code ウィンドウの周囲に枠線を提供するために、window.activeBorder と window.inactiveBorder の2つの新しいテーマカラーを導入しました。window.activeBorder はアクティブな (フォーカスされた) ウィンドウに適用され、window.inactiveBorder は非アクティブな (フォーカスされていない) ウィンドウに適用されます。これらの新しい色はどの色からも継承されないため、テーマまたは workbench.colorCustomizations 設定で提供する必要があります。1つの色のみが指定された場合、その色の枠線がアクティブおよび非アクティブの両方のウィンドウに適用されます。

リストとツリーのキーボードスクロール
キーボードを使ってリストとツリーをスクロールするには、⌘↑ (Windows、Linux Ctrl+Up) と ⌘↓ (Windows、Linux Ctrl+Down) を押すことができるようになりました。
Zenモードでの通知の削減
Zenモード使用中は、エラーを知らせる通知を除いて、通知トーストが表示されなくなりました。この動作は、新しい設定zenMode.silentNotificationsで制御できます。ステータスバーの右下にある通知アイコンをクリックすることで、いつでもすべての通知にアクセスできます。
アウトラインとブレッドクラムのタイプフィルター
アウトラインビューとブレッドクラムナビゲーションに表示されるシンボルを構成するための新しい設定が追加されました。設定はoutline.show{symbol type}とbreadcrumbs.show{symbol type}です。例えば、outline.showVariables、outline.showFunctionsなどです。

上記のスクリーンショットは、ローカル変数を表示しないように構成されたアウトラインビューを示しており、変数hiddenが表示されていないことがわかります。
シンボルの型を割り当てるのは言語拡張機能の役割であることに注意してください。アウトラインビューでシンボルラベルにカーソルを合わせると、使用されているシンボルタイプ(括弧内に表示されます)を確認できます。
エディター分割時のサイズ変更の動作を制御
新しい設定 workbench.editor.splitSizing は、エディターを分割する際のレイアウトを制御します。デフォルトでは、以下に示すように、すべてのエディターにサイズが均等に分配されます。

この設定をsplitに変更すると、現在のエディターが半分に分割され、他のエディターのサイズには影響しません。

GPUアクセラレーションを無効にする
ユーザーから、VS CodeのUIのレンダリングにおけるGPUの使用方法に関連していると思われる問題報告を受けています。これらのユーザーは、追加の--disable-gpuコマンドライン引数でVS Codeを実行すると、はるかに優れたエクスペリエンスを体験できます。この引数で実行すると、GPUハードウェアアクセラレーションが無効になり、ソフトウェアレンダラーにフォールバックします。
より簡単にするために、このフラグを設定として追加できるため、毎回コマンドラインで渡す必要がなくなります。
このフラグを追加するには
- コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) を開きます。
- Preferences: Configure Runtime Argumentsコマンドを実行します。
- このコマンドは、ランタイム引数を設定するための
argv.jsonファイルを開きます。すでにいくつかのデフォルト引数が表示されているかもしれません。 "disable-hardware-acceleration": trueを追加します。- VS Code を再起動します。
注意: 問題が発生している場合を除き、この設定を使用しないでください!
Editor
files.eol言語ごとの設定
files.eol 設定を言語ごとに設定できるようになりました。たとえば、'mylanguage' のすべてのファイルが、すべての新しいファイルにデフォルトの改行シーケンスとして \n を使用するように定義できます。
"[mylanguage]": {
"files.eol": "\n"
}
改行シーケンスは新しいファイルに使用されます。既存のファイルの場合、現在の改行シーケンスは常に保持されます。既存のファイルの改行シーケンスを変更するには、行末シーケンスの変更コマンドを使用します。
files.eol 言語設定を使用すると、'shellscript' のデフォルトの改行シーケンスが \n として定義されるようになりました。
ミニマップのスケーリングとフォントレンダリングの改善
新しい設定editor.minimap.scaleは、ミニマップのサイズをいくつかの定数値のいずれかに構成し、特に高DPIまたは超広角ディスプレイに役立ちます。また、ミニマップのフォントのレンダリングがより滑らかで鮮明になりました。

キーボードからの定義プレビューホバー
定義プレビューホバーウィジェットのアクセシビリティを向上させるための新しいコマンド定義プレビューホバーを表示が追加されました。これは、マウスでシンボルをホバーし、プラットフォームと設定に依存する修飾キーを押すことでトリガーできます。以前は、シンボルにマウスカーソルをホバーするのと同じホバーを表示コマンドのみが提供されていました。定義プレビューホバーを表示を使用すると、詳細なホバー情報をキーボードで表示できるようになりました。

ブラケットマッチングの改善
以前は、VS Code はカーソルがブラケット文字の隣にある場合にのみ一致するブラケットを強調表示していました。現在は、VS Code は常に、閉じているブラケットが存在すればそれを強調表示します。

また、ブラケットに移動とブラケットまで選択アクションも、囲んでいるブラケットを使用するように調整しました。
選択範囲の複製
選択範囲の複製という新しいアクションを追加しました。実行すると、現在の選択範囲が複製され、その結果が選択されます。選択範囲がない場合、現在の行が複製され、すべてシステムクリップボードに書き込まれることはありません。
フォント機能設定
フォント機能に対して、よりきめ細かな制御ができるようになりました。"editor.fontLigatures": trueを設定すると、VS Codeはligaとcaltをオンにします。しかし、一部のフォントには、Fira Codeで使用されているスタイルセットのような、より多くの設定があります。
これらのフォント機能は、例えば次のように明示的に制御できるようになりました。
"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true,
"[javascript]": {
"editor.fontLigatures": "'ss02', 'ss19'",
},
上記のコマンドは、エディターがFira Codeフォントファミリーを使用し、すべての言語でフォントリガチャーをオンにし、JavaScriptファイルで「水平バー」('ss02')と「ドット付きゼロ」('ss19')のフォント機能設定を有効にするように設定します。これにより、>=リガチャーは水平バーでレンダリングされ、JavaScriptの0は内部にドットが表示されてレンダリングされます。

Unicode結合文字のより良い処理
Unicode結合文字の処理に関する改善を行い、そのようなシーケンスをアトミックな文字として扱います(カーソル移動、編集操作、ブロックカーソルレンダリングにおいて)。これは、ブロックカーソルスタイルとビフォー/アフターのアニメーションを使用して最もよく示されます。
以前

以後

関連する変更として、ステータスバーのColセクションにUnicodeポイント数が表示されるようになりました。
カーソルリドゥ
ソフトアンドゥコマンドはカーソルアンドゥに名称変更されました。このアクションは、例えば⌘D (Windows、Linux Ctrl+D)を使って次の一致を選択し、一度行き過ぎた場合に便利です。最後のカーソル状態変更のみをアンドゥします。さらに、カーソルリドゥを追加し、以前アンドゥされたカーソル状態変更をリドゥできるようになりました。
差分エディターの改善
組み込みの差分計算には、以前は5秒のハードコードされたタイムアウトがあり、その後に計算をあきらめて最小ではない差分を返していました。このタイムアウトは"diffEditor.maxComputationTime"を使用して構成できるようになり、タイムアウトを0に設定すると、どれだけ時間がかかっても常に最小の差分が計算されます。さらに、差分エディターは、計算に1秒以上かかるとプログレスバーを表示するようになりました。
差分エディタを使用する際、先頭または末尾の空白のみが異なるファイルを比較し、差分エディタが空白のトリムを無視するように設定されている場合に混乱の元となっていました。これにより、ソース管理ではファイルが変更されたと表示される一方で、差分エディタでは差分が表示されないという結果になっていました。VS Codeは、このケースを検出すると、空白の差分を素早く表示するのに役立つ空白の差分を表示ボタンを表示するようになりました。これは、差分エディタの上部にある末尾の空白の差分を表示/無視コマンドを使用して切り替えることができます。

統合ターミナル
コードはデフォルトでサポートされるようになりました
新しい設定 terminal.integrated.allowChords (デフォルト true) は、コードキーバインドの一部であるキーバインドが、評価のためにターミナルをスキップし、代わりにVS Codeによって処理されることを許可します (terminal.integrated.commandsToSkipShell の許可リストをバイパスします)。
ターミナルでのキーバインディングに関する同じ制限は引き続き適用されることに注意してください。この評価を行う際には、最も優先度の高いコードキーバインディングが考慮されます。
例えば、拡張機能がキーバインディング Ctrl+M A を提供し、keybindings.json ファイルに次のように定義している場合、
[
{ "key": "ctrl+m a", "command": "workbench.action.terminal.toggleTerminal" },
{ "key": "ctrl+m a", "command": "workbench.action.focusLastEditorGroup" }
]
Ctrl+M A は、最終的なキーバインディングであり、ユーザーキーバインディングは拡張機能が提供するキーバインディングよりも優先度が高いため、workbench.action.focusLastEditorGroup コマンドの実行結果となります。
高速スクロールのサポート
ターミナルは、editor.fastScrollSensitivity 設定で定義された乗数に基づいて、マウスホイールと Alt キーを使用して高速にスクロールできるようになりました。
右クリック動作の新しい「ペースト」オプション
rightClickBehavior 設定に、右クリックで常にターミナルにペーストする新しいオプションが追加されました。
"terminal.integrated.rightClickBehavior": "paste"
単語選択のダブルクリックでより多くの区切り文字を使用
ターミナルで単語をダブルクリックして選択する際、文字 ,、:、; が単語区切り文字としてカウントされるようになりました。
シンボリックリンクの CWD は解決されなくなりました
ターミナルの初期作業ディレクトリがシンボリックリンクに設定されている場合、シンボリックリンクはターミナルで保持されるようになりました。
コマンドナビゲーションがスクロール位置から機能するようになりました
コマンドナビゲーションは、ターミナルで実行されたコマンド間を移動したり、選択したりすることを可能にします。これにより、ターミナルのスクロール位置が考慮されるようになり、スクロールして前のコマンドを見つけると、ターミナルはターミナルのビューポートから上にスクロールするようになりました(以前は下からスクロールしていました)。

コマンドナビゲーションは、macOSではデフォルトでCmd+Up/Down、コマンド選択はCmd+Shift+Up/Downにのみバインドされています。
WindowsまたはLinuxでこの機能を使用したい場合のキーバインディングの例をいくつか示します。
{
// Terminal command tracking on Windows and Linux
{ "key": "ctrl+up", "command": "workbench.action.terminal.scrollToPreviousCommand", "when": "terminalFocus" },
{ "key": "ctrl+down", "command": "workbench.action.terminal.scrollToNextCommand", "when": "terminalFocus" },
{ "key": "ctrl+shift+up", "command": "workbench.action.terminal.selectToPreviousCommand", "when": "terminalFocus" },
{ "key": "ctrl+shift+down", "command": "workbench.action.terminal.selectToNextCommand", "when": "terminalFocus" },
}
タスク
タスクのクイックピックリスト
タスク: タスクを構成コマンドは、タスクが1つしか定義されていない場合、常にクイックピックタスクリストをスキップするようになりました。この動作をタスク: タスクを実行やその他のタスククイックピックにも適用するには、task.quickOpen.skip設定をtrueに設定します。
新しい設定 task.quickOpen.history は、タスクのクイックピックに「最近使用した」タスクとして表示されるタスクの数を制御します。最近使用したタスクセクションを無効にするには、task.quickOpen.history を 0 に設定します。
detail プロパティを持つタスクは、一部のタスクリストに表示されるようになりました。タスククイックピックで詳細をオフにするには、task.quickOpen.detail を false に設定します。
フォルダのNPMスクリプトを実行するオプション
設定npm.enableRunFromFolderが有効になっている場合、フォルダが選択されていると、ファイルエクスプローラーのコンテキストメニューにフォルダ内でNPMスクリプトを実行...コマンドが表示されます。このコマンドは、このフォルダに含まれるNPMスクリプトのクイックピックリストを表示し、タスクとして実行するスクリプトを選択できます。
遅いタスクプロバイダの警告
タスクプロバイダの実行が遅い場合、その遅延を回避するための提案を示す警告が表示されるようになりました。この警告は、個々のタスクタイプに対して無効にすることも、task.slowProviderWarningをfalseに設定することで、すべてのタスクに対して無効にすることもできます。

タスクの自動検出を無効にする
関心のあるすべてのタスクが tasks.json ファイルで定義されている場合、タスクを実行する際のパフォーマンスを向上させるために、すべての拡張機能タスクプロバイダーを無効にしたい場合があります。個々の拡張機能がタスクプロバイダーを無効にする設定を提供するのは良い習慣ですが、task.autoDetect を off に設定することで、すべてのタスクプロバイダーを無効にできるようになりました。
問題マッチャーのプロンプト
以前は、問題マッチャーがないタスクは、問題マッチャーのプロンプトをスキップするために tasks.json に空の問題マッチャーを設定する必要がありました。現在では、task.problemMatchers.neverPrompt を使用して、すべてのタスクまたは特定のタスクタイプについて問題マッチャーのプロンプトを無効にできます。問題マッチャーのプロンプトを無効にする新しいオプションも問題マッチャーのプロンプトにあります。

ソース管理
アクティブエディタの変更時にファイルを強調表示
ソース管理ビューは、ツリー/リストビューでアクティブなエディタファイルを自動的に強調表示するようになりました。

Git: 未追跡ファイルの管理を改善
Git: 未追跡の変更設定を使用して、未追跡ファイルを個別に管理できるようになりました。ソース管理ビューで未追跡ファイルを別のグループで表示したい場合は、separateオプションを選択します。未追跡ファイルを常に表示したくない場合は、hiddenを選択します。デフォルトのコミットアクションは、この設定に合わせて調整され、mixed設定値を使用している場合にのみ、未追跡の変更をコミットに含めます。

Git: マージコミットの自動コミットメッセージ
VS Codeは、gitマージコミットの途中にいることを検出すると、自動的にGitのデフォルトコミットメッセージをコミット入力ボックスに設定します。

Git: エクスプローラで開く
ソース管理ビューのGitリポジトリから、ファイルエクスプローラでファイルを表示するためのコンテキストメニューアクションエクスプローラで開くが追加されました。

Git: クローン進行状況
クローン操作で、右下の通知に進行状況が表示されるようになりました。

デバッグ
ブレークポイントを概要ルーラーに表示可能
大きなファイルでブレークポイントを扱う際をより簡単にするために、新しい設定debug.showBreakpointsInOverviewRulerを有効にすることで、エディタの概要ルーラーにブレークポイントを表示できるようになりました。

複合デバッグ構成のプリランチタスク
現在、すべてのデバッグ構成は、preLaunchTask属性を介してデバッグセッションが開始される前に実行されるタスクを指定できます。これは単一のプログラムをデバッグする場合にはうまく機能しますが、複数のプログラムが関与する複合構成を使用する場合には扱いにくくなります。
このマイルストーンで、複合デバッグ構成ごとにpreLaunchTaskをサポートしました。これにより、個々のデバッグセッションが開始される前に、1つのタスクですべてのデバッグターゲットをビルドできます。ビルドエラーが発生した場合、セッションは開始されません。

言語
CSSメディアクエリのシンボル
CSS/SCSS/Less ファイルでは、メディアクエリのシンボルがアウトラインビュー、ブレッドクラムパス、およびファイル内のシンボルに移動リストに表示されるようになりました。

typescript.tsserver.maxTsServerMemory
数千のファイルを含む大規模なTypeScriptプロジェクトを使用している場合、新しいtypescript.tsserver.maxTsServerMemory設定を使用すると、IntelliSenseを動かすTypeScriptサーバーの最大メモリ使用量を増やすことができます。
拡張機能作成
vscode.env.uiKind
拡張機能がどのようなUIで実行されているかを知ることができるように、新しいAPI vscode.env.uiKindが追加されました。ブラウザでVS Codeを実行できるように、可能な値はUIKind.WebとUIKind.Desktopです。
呼び出し階層プロバイダAPI
呼び出し階層プロバイダAPI (CallHierarchyProvider) を完成させました。これは、関数、メソッドなどの呼び出し元と呼び出し先を検索する呼び出し階層をピーク機能をサポートします。
タスク CustomExecution
CustomExecutionタスクタイプAPIが最終化されました。シェルまたはプロセスタスクがタスクに適していない場合、CustomExecutionタスクを使用して拡張機能でコールバックを実行できます。タスクプロバイダ拡張機能ガイドで詳細を確認してください。
デバッグAPI: 「startDebugging」リクエストの「consoleMode」オプション
前回のマイルストーンで、デバッグセッションの階層が単一のデバッグコンソールを共有するか、個別のコンソールを使用するかを制御する新しい提案されたAPIを導入しました。このAPIは現在正式なものとなり、Marketplaceで公開されている拡張機能で使用できます。
アイコンのカラー・トークン
ようやくアイコンの新しいカラー・トークンを導入できることを嬉しく思います。特定の領域に少しずつ追加していきます。以下が最初のバッチです。
シンボル
これらのアイコンは、アウトラインビュー、ブレッドクラムナビゲーション、および候補ウィジェットに表示されます。
symbolIcon.arrayForegroundsymbolIcon.booleanForegroundsymbolIcon.classForegroundsymbolIcon.colorForegroundsymbolIcon.constructorForegroundsymbolIcon.constantForegroundsymbolIcon.enumeratorForegroundsymbolIcon.enumeratorMemberForegroundsymbolIcon.eventForegroundsymbolIcon.fieldForegroundsymbolIcon.fileForegroundsymbolIcon.folderForegroundsymbolIcon.functionForegroundsymbolIcon.interfaceForegroundsymbolIcon.keyForegroundsymbolIcon.keywordForegroundsymbolIcon.methodForegroundsymbolIcon.moduleForegroundsymbolIcon.namespaceForegroundsymbolIcon.nullForegroundsymbolIcon.numberForegroundsymbolIcon.objectForegroundsymbolIcon.operatorForegroundsymbolIcon.packageForegroundsymbolIcon.propertyForegroundsymbolIcon.referenceForegroundsymbolIcon.snippetForegroundsymbolIcon.stringForegroundsymbolIcon.structForegroundsymbolIcon.textForegroundsymbolIcon.typeParameterForegroundsymbolIcon.unitForegroundsymbolIcon.variableForeground
![]()
問題と通知
問題と通知アイコンのデフォルトの色を、エディタの前景色から継承するように設定しました。これにより、これらの色を変更すると、他の領域にも継承されます。
![]()
問題パネルと通知のアイコンの色を明示的に設定することもできます。
problemsErrorIcon.foregroundproblemsWarningIcon.foregroundproblemsInfoIcon.foregroundnotificationsErrorIcon.foregroundnotificationsInfoIcon.foregroundnotificationsWarningIcon.foreground
電球
電球アイコンもテーマ設定可能です。
editorLightBulb.foregroundeditorLightBulbAutoFix.foreground
![]()
vscode.env.asExternalUri
vscode.env.asExternalUri APIを使用すると、拡張機能は、拡張機能が実行されている場所から、クライアントマシン上の同じリソースのURIに、http:やhttps:などの外部URIを解決できます。これは、解決されたURIを外部プログラムを使用して開く代わりに、その結果を拡張機能に返す点を除けば、vscode.env.openExternal APIのコンパニオンです。
import * as vscode from 'vscode';
import * as http from 'http';
const PORT = 3000;
export function activate(context: vscode.ExtensionContext) {
startLocalServer(PORT);
context.subscriptions.push(
vscode.commands.registerCommand('example.command', async () => {
const resolved = vscode.env.asExternalUri(
vscode.Uri.parse(`https://:${PORT}`)
);
vscode.window.showInformationMessage(
`Resolved to: ${resolved} on client and copied to clipboard`
);
vscode.env.clipboard.writeText(resolved.toString());
})
);
}
function startLocalServer(port: number) {
const server = http.createServer((req, res) => {
res.end('Hello world!');
});
server.on('clientError', (err, socket) => {
socket.end('HTTP/1.1 400 Bad Request\r\n\r\n');
});
server.listen(port);
vscode.window.showInformationMessage(`Started local server on port: ${port}`);
}
http: および https: URIの場合、拡張機能がクライアントマシンで実行されている場合、asExternalUri は何もしません。ただし、拡張機能がリモートで実行されている場合、vscode.env.asExternalUri は自動的にローカルマシンからリモート上の target へのポート転送トンネルを確立し、トンネルへのローカルURIを返します。
vscode.env.uriScheme URIでasExternalUriが呼び出されると、ブラウザで開かれた場合(例えばopenExternal経由で)、登録されたURIハンドラがトリガーされるURIを返します。
試験的なカスタムデータ設定とコントリビューションポイントの削除
[html/css].experimental.customData設定とcontributes.[html/css].experimental.customDataコントリビューションポイントは、1.38で非推奨となり、今回削除されました。代わりに、安定版のカスタムデータ設定とコントリビューションポイントを使用できます。カスタムデータ形式の詳細については、microsoft/vscode-custom-dataリポジトリを参照してください。
extensionKindは配列にできる
package.json では、extensionKind プロパティはリモートの場合に拡張機能が実行される場所を示すために "ui" または "workspace" の値を持つことができました。このリリースでは、extensionKind は配列になりました。たとえば、["ui", "workspace"] は、拡張機能が "ui" 側と "workspace" 側の両方で実行できることを示し、そこにインストールされている場合は "ui" 側での実行を優先します。
提案された拡張API
すべてのマイルストーンには新しい提案APIが付属しており、拡張機能の作成者はそれらを試すことができます。いつものように、皆様からのフィードバックをお待ちしております。提案APIを試すには、次の手順を実行する必要があります。
- 提案APIは頻繁に変更されるため、Insiders版を使用する必要があります。
- 拡張機能の
package.jsonファイルに次の行が必要です:"enableProposedApi": true。 - 最新バージョンのvscode.proposed.d.tsファイルをプロジェクトのソース場所にコピーします。
提案APIを使用する拡張機能は公開できないことに注意してください。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊したくありません。
IntelliSense置換モードのサポート
私たちは、提案が既存のテキストを置き換えるべきか、それとも単に挿入されるべきかをユーザーが決定できる機能を開発中です。たとえば、con|st の中に console を受け入れると、console (置換) または consolest (挿入) の結果になる可能性があります。どちらのモードにも利点があり、最終的には現在のコンテキストとユーザーの好みに依存します。この機能が最適に機能するためには、拡張機能が何をすべきかを私たちに伝える必要があります。したがって、CompletionItem#range プロパティに新しいタイプを追加することを提案しており、次のように変更します。
interface CompletionItem {
range?: Range | { insert: Range; replace: Range };
}
範囲は引き続きオプションであるか、単純な範囲ですが、挿入用と置換用の2つの範囲になることもできます。詳細については、Issue #10266 を参照してください。
タスク詳細
タスクプロバイダがUIに表示されるタスクにdetailを追加するために使用できる、Taskの新しいプロパティがあります。tasks.jsonでも詳細プロパティを使用できます。組み込みのnpm拡張機能は、タスク詳細を使用して実行されるnpmスクリプトを表示します。

Custom EditorsへのWebviewPanelOptionsの渡しのサポート
このイテレーションでは、カスタムエディタAPIの提案に関する作業を続けました。提案されたregisterWebviewEditorProvider関数は、カスタムエディタのWebviewでretainContextWhenHiddenやその他の機能を有効にできるoptionsのセットを受け取るようになりました。
export function registerWebviewEditorProvider(
viewType: string,
provider: WebviewEditorProvider,
options?: WebviewPanelOptions
): Disposable;
エンジニアリング
ブラウザで実行中のVS Codeをテストする
開発およびテスト用に、ブラウザで実行できるVS Codeの最小限のセットアップが利用できるようになりました。ブラウザインスタンスにはまだいくつかの機能が不足しており、活発に開発中です。
vscodeリポジトリのローカルフォークで、コマンドラインからyarn webを実行し、https://:8080/にアクセスします。vscodeリポジトリのクローンとビルドの詳細については、セットアップ手順を参照してください。

注: このセットアップを本格的な開発に使用しないでください。この目的は、コミュニティがVS Codeに変更を貢献して、ブラウザでの全体的なエクスペリエンスを向上させることです。
TypeScript 3.7でVS Codeを構築
VS CodeはTypeScript 3.7を使用して構築されるようになりました。これは、コードベースでオプションチェーン (?.)を使用できるようになった (および他の多くの改善をもたらした) という点で、胸躍る更新です。
JavaScript and TypeScript Nightly拡張機能をインストールすることで、今日からVS CodeでTypeScript 3.7の機能を使用できます。
Electron 6.0へのアップデート
このマイルストーンでは、Electron 6 を VS Code にバンドルするための調査を終え、この Electron バージョンが安定版としてリリースされるのは初めてです。これは Electron のメジャーリリースであり、Chromium 76.0.3809.146 と Node.js 12.4.0 を搭載しています (現在の Chromium 69 と Node.js 10.11.0 のバージョンから大幅に進化しました)。
Electron 7への更新の調査を開始しました。近いうちにインサイダーにプッシュしたいと考えています。
注目すべき修正点
- 78634: サイズ変更時にターミナルのコンテンツが消える (powershell/conpty)
- 25854: Markdownプレビューをドラッグして新しいエディターグループを開始できない
- 81824: ウェブビューエディターが履歴から前のエディターを開くコマンドに表示されない
ありがとうございます
最後に、そしてもちろん最も重要なこととして、Visual Studio Codeをさらに良くするために協力してくれた以下の方々に、心からの感謝を申し上げます!
問題追跡への貢献者
受信した問題の管理にご協力いただける場合は、コミュニティ問題追跡ページをご覧ください。
vscodeへの貢献者
- Adam Burgess (@adamburgess): ターミナルの右クリックにペーストオプションを追加 PR #81448
- André Casal (@andrecasal): git.confirmEmptyCommitsの説明を明確化 PR #83257
- アニルード・ラヤバラム(Anirudh Rayabharam)(@anirudhrb)
- Anthony Dresser (@anthonydresser): SQL言語構文を更新 PR #77601
- Brian Malehorn (@bmalehorn): 検索: 未使用の設定を削除 PR #82019
- Callum Mellor-Reed (@callummr): エディタ復元時に正しいSCMリポジトリにフォーカスする PR #79566
- Dave Alongi (@dalongi): product.jsonでイシューレポーターが無効になっている場合、ヘルプ > 問題の報告メニュー項目を非表示にする PR #83561
- Dhairya Nadapara (@dhairyanadapara): 設定に分割ペインオプションを追加 PR #82888
- DiamondYuan (@DiamondYuan): コマンドパレットからのVS Codeアップデートをサポート PR #77515
- Drew Cross (@drew212): イシュー76195のためにgit stash dropを追加 PR #76342
- エドワード・トムソン(Edward Thomson)(@ethomson)
- Alexandr Fadeev (@fadeevab): 次をサポートするための更新されたスキームのMakefileテストケース: var:=$(val:.c=.o) PR #83121
- Andrew Wong (@featherbear): コマンドライン引数の存在チェックを変更 PR #83311
- フレディ・ロビンソン (@frobinsonj)
- @gawicks: マージ競合を解決するときにデフォルトメッセージを承認できるようにする PR #66522
- John Murray (@gjsjohnmurray): フォーマッタ関連のメッセージのハイフンを削除 PR #83538
- @HonkingGoose: EmmetチートシートへのリンクにHTTPSを使用。 PR #82754
- Hung-Wei Hung (@hunghw): #79428を修正 - スニペットに"$WORKSPACE_FOLDER"を追加 PR #79764
- Andrew Liu (@hypercubestart): 30419と80649を修正 - 最近使用したタスクの数を設定できるようにする PR #82757
- Andrii Dieiev (@IllusionMH): 正規表現で単語全体の一致を使用した場合、PCRE2にフォールバック PR #82072
- @Jakobeha: 未追跡ファイルを分離または非表示にする設定オプション (#35480に対処) PR #80083
- Jean Pierre (@jeanp413)
- Jakob Fahr (@jfhr): #82199を修正、ライトテーマのMarkdownプレビューで数字が読みにくい問題 PR #82450
- Liming Jin (@jinliming2): 修正: IPv6形式のHTTPプロキシアドレス入力時のエラー PR #77260
- Jon Bockhorst (@jmbockhorst)
- Jonas Platte (@jplatte): linux/bin/code.sh: whichの代わりにcommand -vを使用 PR #82097
- JavaScript Joe (@jsjoeio): 修正: ExtensionSuggestionsからTypeScriptを削除 PR #82125
- Jesús Alonso Abad (@Kencho): Perl5がPODブロックを折りたたむのをサポート PR #71448
- ニコライ・コンドラチェフ (@kondratyev-nv)
- Kryštof Řeháček (@Krystofee): RANDOM、RANDOM_HEXスニペット変数を追加 PR #82529
- Kumar Harsh (@kumarharsh): fix(workbench): 最近使用したタスクを無効にする設定を追加 PR #61994
- Lio李欧 (@lionello): StartFindWithSelectionActionは検索ウィジェットにフォーカスすべきではない PR #63176
- @MartinBrathen: 修正: 画像プレビューは、フォーカスが外れていても最初のクリックでズームしてはならない PR #82074
- Per Persson (@md2perpe): 欠落している前置詞を追加 PR #82613
- Niklas Mollenhauer (@nikeee): 実行可能ファイルではないファイルから実行可能ビットを削除 PR #82103
- @NotWearingPants
- Nate Rauh (@NRauh): 機能/ピンで他のファイルを閉じる PR #82545
- Oxirt (@oxirt):
Git: fetchコマンドがパスワードプロンプトを表示できるようにする PR #72615 - @simaosilva: editorHoverWidget.foregroundをサポート PR #65170
- Prabhanjan S Koushik (@skprabhanjan)
- saif (@sksaifuddin): Fix #78014 & と ^ に加えて |、<、>をエスケープする機能を追加 PR #82704
- @smilegodly: 設定エディタの検索バーにクリアボタンを追加 PR #82904
- Sohail Rajdev (@sohailrajdev97): gruntタスクランナーでコマンドライン引数をサポートする機能を追加 PR #82819
- Konstantin Solomatov (@solomatov)
- Charles Milette (@sylveon): 選択するタスクが1つしかない場合、クイックピッカーをスキップする PR #47853
- U-ways (@U-ways): 画像プレビューで正しいキャンバスサイズを表示する問題を修正 PR #82027
- Alexander (@usernamehw)
- ジェレミー・ショア (@w9jds)
- Ԝеѕ (@wesinator): JSON言語に.har拡張子を追加 PR #77300
- Xhulio Hasani (@xuhas): deleteTagを追加 PR #74345
- Yusuke Yamada (@yamachu): 提案で多くの文字が上書きされる問題を修正 PR #82349
- Keyon You (@youngyou): 無効なボタンで
spaceキーを押してもクリックイベントをトリガーすべきではない。 PR #81975 - Helen3141 (@helen3141): 含まれるフォルダで個々のnpmスクリプトを実行できるようにする PR #79960
language-server-protocolへの貢献者
- Adedayo Adetoye (aka Dayo) (@adedayo): ServerCapabilitiesのfoldingRangeProviderフィールドの重複を削除 PR 848
vscode-eslintへの貢献者
- Christian Batchelor (@CSBatchelor): README.md のタイポ PR #777
vscode-json-languageserviceへの貢献
- Ben Hutton (@Relequestual): ドラフト2019-09のエラーメッセージを更新 PR #45
vscode-css-languageserviceへの貢献者
- Sergey Zolotarev (@sryze): URI.parse()呼び出しをtry ... catchでラップ PR #180
node-jsonc-parserへの貢献
- KoyamaSohei (@KoyamaSohei): READMEの誤字を修正 PR #25
- Jakub Rożek (@P0lip): parse関数はキーが空文字列のプロパティを含めるべき PR #24
debug-adapter-protocolへの貢献者
- Peter Thomas (@ptrthomas): karateをdap実装として追加 PR #78
vscode-vsceへのコントリビューション
- Ritwick Dey (@ritwickdey): [追加] README.md内の
タグにおける相対ソースが絶対URLに書き換えられない PR #208
- Theo Tzaferis (@tzfrs): README.mdが変更されていない拡張機能をパッケージ化する際のエラーメッセージを改善 PR #392
inno-updaterへの貢献
- Adam Coyne (@bhank): テキストが途切れないようにコントロールの幅を広げる PR #13
localizationへの貢献
Cloud + AI Localization コミュニティには 800 人以上のメンバーが Microsoft Localization Community Platform (MLCP) を使用しており、そのうち約 100 人が Visual Studio Code に積極的に貢献しています。新しい翻訳の提供、翻訳への投票、プロセス改善の提案など、皆様のご貢献に感謝いたします。
貢献者の概要はこちらです。貢献者名リストを含むプロジェクトの詳細については、https://aka.ms/vscodeloc のプロジェクトサイトをご覧ください。
- ボスニア語 (ラテン文字、ボスニア・ヘルツェゴビナ): Adnan Rizvan.
- チェコ語: Michal Franc, Jan Hruby.
- デンマーク語: Lasse Stilvang, Frederik bruun.
- オランダ語: Laurens Kwanten, Lemuel Gomez, Niels ter Haar.
- 英語 (イギリス): Graham Smith, Martin Littlecott, Alexander McLean.
- フランス語: Antoine Griffard, Rodolphe NOEL, Bruno Lewin, Maxime Bouveron, DJ Dakta.
- ドイツ語: Simon Haag, Adrian Bähr, Julian Tomsik.
- ヘブライ語: Ariel Bachar.
- ヒンディー語: Kishan K, Rohit Raj.
- 簡体字中国語: Yizhi Gu, paul cheung, 斌 项, 顺 谭, 一斤瓜子, Charles Lee, Peng Zeng, Charles Dong, 楠 姜, yungkei fan, ztluo, David Huang, 普鲁文, Zhen-Qi Liu, zhichen zhao, Phil Wang.
- 繁体字中国語: Jimmy Hu, 船長, E L, Winnie Lin.
- インドネシア語: Jakka Prihatna, Eriawan Kusumawardhono, Nicko Satria Utama, Christian Elbrianno, Septian Adi.
- イタリア語: Alessandro Alpi, Luigi Bruno.
- 日本語: 小島 悠太、熊本 倫人、戸倉 彩、天明 正一、不破 敬之、牧野 浩一。
- 韓国語: Hongju, Sungjin Jeong.
- ポーランド語: Andrzej Poblocki, Kacper Łakomski.
- ポルトガル語 (ブラジル): Marcelo Fernandes, Marcondes Alexandre, Roberto Fonseca, Alessandro Fragnani, Arthur Renato, Jota Freitas Jr, Caio Felippe Curitiba Marcellos.
- ポルトガル語 (ポルトガル): Pedro Filipe.
- ルーマニア語: Andrei Tudor, Bogdan Mateescu, Stefan Gabos.
- ロシア語: Kazakov Lex, Vadim Svitkin, TJS.
- スペイン語: Aleks M, José María Aguilar, Jerónimo Milea, Ricardo Estrada Rdez, Abdón Rodríguez P..
- スウェーデン語: Sven Axelsson, Patric Högman.
- タミル語: Pradeep Krishnan.
- トルコ語: Ahmetcan Aksu, Cansu Gürler, Mehmet Yönügül, Umut Can Alparslan.
- ウクライナ語: Arthur Murauskas, Oleh Hatsenko, Oleksandr Krasnokutskyi, Did Kokos.
- ベトナム語: huy dk, Việt Anh Nguyễn, Ha Xuan Anh Nguyen, Quoc Han Dinh.