This commit is contained in:
Nick Trogh 2024-01-29 22:18:08 +01:00
Родитель 87c05a5636
Коммит f7301221ae
2 изменённых файлов: 47 добавлений и 48 удалений

Просмотреть файл

@ -34,15 +34,17 @@ With this release, all opened floating window associated with a main window will
<video src="images/1_86/aux-restore.mp4" autoplay loop controls muted title="Auxiliary windows restore after reloading or restarting VS Code."></video>
### Sticky Scroll in trees
### Sticky Scroll in tree views
Building on the success of Sticky Scroll in the editor, we've extended this feature to all tree views, enabling users to more easily navigate project trees. Sticky Scroll for trees can be enabled/disabled with the setting `workbench.tree.enableStickyScroll`. To ensure Sticky Scroll does not take too much space, it can only take up to 40% of the view height. Additionally, users can customize the maximum number of sticky elements by configuring `workbench.tree.stickyScrollMaxItemCount`, which is set to 7 by default. If there are more sticky elements than can be displayed, Sticky Scroll will consolidate the last sticky elements together, provided the tree supports this feature.
Building on the success of Sticky Scroll in the editor, we've extended this feature to all tree views, enabling users to more easily navigate project trees. Sticky Scroll for tree views can be enabled or disabled with the `workbench.tree.enableStickyScroll` setting.
<video src="images/1_86/sticky-scroll-file-explorer.mp4" autoplay loop controls muted title="Sticky Scroll in the File Explorer"></video>
To ensure Sticky Scroll does not take too much space, it is limited to maximum 40% of the view height. Additionally, users can customize the maximum number of sticky elements by configuring `workbench.tree.stickyScrollMaxItemCount`, which is set to 7 by default. If there are more sticky elements than can be displayed, Sticky Scroll will consolidate the last sticky elements together, if the tree view supports this feature.
For an improved tree navigation experience, you can select a sticky element to jump directly to it within the tree, or press the chevron of a parent element to hide all its child elements. Additionally, accessing checkboxes and action items is easier when Sticky Scroll is enabled.
<video src="images/1_86/sticky-scroll-file-explorer.mp4" autoplay loop controls muted title="Sticky Scroll in the File Explorer."></video>
<video src="images/1_86/sticky-scroll-extension-trees.mp4" autoplay loop controls muted title="Sticky Scroll in the GitHub Pull Requests and Issues extension Pull Request tree view"></video>
For an improved tree navigation experience, you can select a sticky element to jump directly to the element within the tree. Alternately, press the chevron of a parent element to hide all its child elements. Additionally, accessing checkboxes and action items is easier when Sticky Scroll is enabled.
<video src="images/1_86/sticky-scroll-extension-trees.mp4" autoplay loop controls muted title="Sticky Scroll in the GitHub Pull Requests and Issues extension Pull Request tree view."></video>
### Use "Hey Code" voice command
@ -153,16 +155,16 @@ Until now, this also implied the `--wait` flag, which means that you would not g
### Support custom title bar with native title bar
We're introducing the `window.customTitleBarVisibility` setting, which allows showing the the custom title bar even when the native title bar is being used. This is especially beneficial for macOS users who prefer native tabs. With this new setting, native title bar users can now access custom title bar functionalities, including:
We're introducing the `window.customTitleBarVisibility` setting, which allows showing the custom title bar even when the native title bar is being used. This is especially beneficial for macOS users that prefer native tabs. With this new setting, native title bar users can now access custom title bar functionalities, such as:
- **Command Center:** Easily access the command center directly from the custom title bar.
- **Layout Controls:** Customize your workspace layout with greater flexibility.
- **Activity Bar Customization:** Move activity bar actions to the top
- **Editor Actions Customization:** Relocate editor actions to the custom title bar.
* **Command Center:** Easily access the command center directly from the custom title bar.
* **Layout Controls:** Customize your workspace layout with greater flexibility.
* **Activity Bar Customization:** Move the Activity Bar actions to the top.
* **Editor Actions Customization:** Relocate editor actions to the custom title bar.
Moreover, for users who prefer an uncluttered view in full-screen mode, the `window.customTitleBarVisibility: "windowed"` option allows you to hide the custom title bar when in full screen. This feature ensures a more focused and distraction-free coding environment, while still providing the option to leverage custom title bar features when not in full-screen mode.
Moreover, for users who prefer an uncluttered view in full-screen mode, the `window.customTitleBarVisibility: "windowed"` option allows you to hide the custom title bar when in full-screen mode. This feature ensures a more focused and distraction-free coding environment, while still providing the option to leverage custom title bar features when you're not in full-screen mode.
![alt text](images/1_86/native-tabs-custom-title-bar.png)
![Screenshot that shows the 'Window: Custom Title Bar Visibility' setting in the Settings editor.](images/1_86/native-tabs-custom-title-bar.png)
### New setting to enforce system color theme
@ -203,23 +205,24 @@ We've moved several hovers in the Quick Pick over to using custom hovers. This a
![Quick Pick hover rendered natively](images/1_86/quick-pick-hovers.png)
## Multi-file Diff Editor
## Multi-file diff editor
With this release, the **multi diff editor** is now enabled for all users. The multi diff editor lets you view changes in multiple files in one scrollable view:
With this release, the multi diff editor is now enabled for all users. The multi diff editor lets you view changes across multiple files in one scrollable view:
<video src="images/1_85/multiFileDiffEditor.mp4" autoplay loop controls muted title="Multiple file diff view"></video>
<video src="images/1_85/multiFileDiffEditor.mp4" autoplay loop controls muted title="Use the multi-file diff view to compare files changes across multiple files."></video>
Currently, the multi diff editor can be used to review local changes, staged changes, incoming/outgoing changes, stashes, and changes from pull requests.
It can be opened by clicking on the various new *View Changes* actions, which can be recognized by the multi file diff icon.
It can be opened by selecting the various new **View Changes** actions, which can be recognized by the multi file diff icon.
When the diff editor is opened from the SCM view, it dynamically updates the view as files become changed or staged.
When the diff editor is opened from the Source Control view, it dynamically updates the view as files become changed or staged.
The multi diff editor is still under development, so expect to see more improvements and bug-fixes in the coming releases.
### Usage With GitHub Pull Requests Extension
### Multi-file diffs in the GitHub Pull Requests extension
When the [GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github) extension is installed, you can set `"githubPullRequests.focusedMode": "multiDiff"` to automatically open the multi file diff editor when opening a pull request.
When setup for `github.dev`, you can press `.` on a pull request on GitHub and `github.dev` opens with the multi diff editor to review the changes.
When the [GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github) extension is installed, you can set `"githubPullRequests.focusedMode": "multiDiff"` to automatically open the multi-file diff editor when opening a pull request.
When you're set up for [github.dev](https://github.dev), you can press `.` on a pull request on GitHub and [github.dev](https://github.dev) opens with the multi-file diff editor to review the changes.
## Editor
@ -297,11 +300,12 @@ We have added an experimental variable view to the Run and Debug view that can b
<video src="images/1_86/notebook-variables-view.mp4" title="Notebook variable tree view in the Run and Debug view." autoplay loop controls muted></video>
### Notebook Sticky Scroll Polish
### Notebook Sticky Scroll
The notebook editor's sticky scroll feature has recieved significant polish, aligning its style with the rest of the workbench and also bringing folding controls to each markdown element.
The notebook editor's Sticky Scroll feature has received significant polishing to align its style with the rest of the workbench, and to add folding controls to each markdown element.
<video src="images/1_86/notebook-sticky-scroll-polish.mp4" title="Using sticky scroll with folding in a notebook." autoplay loop controls muted></video>
<video src="images/1_86/notebook-sticky-scroll-polish.mp4" title="Notebook sticky scroll with folding." autoplay loop controls muted></video>
## Terminal
### Background shown under selection
@ -332,7 +336,7 @@ Additionally, there is a new button in the dialog to paste the string as a singl
File protocol URIs (`file://`) now support line and column number extensions at the end, like most other links. The new `#<line>` format is also supported.
### Terminal Voice Commands
### Terminal voice commands
The new **Terminal: Start Terminal Voice** and **Terminal: Stop Terminal Voice** commands enable speech-to-text sessions in the terminal.
@ -455,12 +459,12 @@ The past release had a new experimental inline chat mode, called `live3`. It pro
#### Light bulb for AI fixes (Sparkle)
To invoke copilot, you can also use the light bulb. Make a selection or set the cursor to a new line, click on the light bulb and select `Modify with Copilor` or `Generate with Copilot`.
If there are no other code actions, the light bulb shows as a sparkle and will directly open inline chat where you can ask copilot what to modify or generate.
To invoke Copilot, you can also use the light bulb indicator in the editor. Make a selection or move the cursor to a new line, select the light bulb, and then select **Modify with Copilot** or **Generate with Copilot**.
If there are no other code actions, the light bulb shows as a sparkle and will directly open inline chat, where you can ask Copilot what to modify or generate.
![Inline chat opened from the sparkle](images/1_86/inline-chat-opened-from-sparkle.gif)
#### `#file` context variable
There are a few context variables that you can already use by typing `#` in the chat input, and we've added `#file` to let you include a specified file in your workspace as context with your chat prompt. Pick `#file` from the suggest control in the input, and then select a file from the Quick Pick that appears.
@ -539,16 +543,17 @@ _Theme: [Catppuccin Mocha](https://marketplace.visualstudio.com/items?itemName=C
### Jupyter
#### Finalized Jupyter Kernel Execution API for extension authors
The Jupyter extension's API for executing code against Jupyter Kernels has been finalized. Extensions can use the API to execute code against kernels.
Examples of API usage can be found in the [Jupyter Kernel Execution Sample](https://github.com/microsoft/vscode-extension-samples/tree/main/jupyter-kernel-execution-sample).
The Jupyter extension's API for executing code against Jupyter kernels has been finalized. Extensions can use the API to execute code against kernels.
The npm package @vscode/jupyter-extension contains all of the TypeScript type definitions.
Examples of API usage can be found in the [Jupyter Kernel Execution Sample](https://github.com/microsoft/vscode-extension-samples/tree/main/jupyter-kernel-execution-sample).
When an extension attempts to access a Jupyter Kernel, the user will be prompted to grant or revoke access to the Kernels.
Access to Jupyter Kernels is granted by the user per extension. Meaning the user can grant access to extension `A` and revoke access to extension `B`.
The npm package [`@vscode/jupyter-extension`](https://www.npmjs.com/package/@vscode/jupyter-extension) contains all the TypeScript type definitions.
Users can manage (gran/revoke) access to the Jupyter Kernels per extension via the command `Jupyter: Manage Access To Jupyter Kernels`.
When an extension attempts to access a Jupyter kernel, the user is prompted to grant or revoke access to the kernels.
Access to Jupyter kernels is granted by the user per extension. This means that the user can grant access to extension `A`, and revoke access to extension `B`.
Users can manage (grant/revoke) access to the Jupyter kernels per extension via the command **Jupyter: Manage Access To Jupyter Kernels**.
### GitHub Pull Requests and Issues
@ -655,15 +660,15 @@ When registering a `FileSystemProvider` with `registerFileSystemProvider`, the `
In early December we went through our annual housekeeping. We achieved a net-reduction of 1891 issues across our repositories. *insert picture here*
### Markdown language service 0.4 release
### Markdown Language Service 0.4 release
The [Markdown language service package](https://www.npmjs.com/package/vscode-markdown-languageservice) powers VS Code's built-in Markdown support. The new 0.4 release bundles up a number of improvements we've made over the past half year so that other tooling and editors can use them. Highlights:
The [Markdown Language Service package](https://www.npmjs.com/package/vscode-markdown-languageservice) powers VS Code's built-in Markdown support. The new 0.4 release bundles a number of improvements we've made over the past half year, which other tooling and editors can benefit from. These are some of the highlights:
- Enable document links, references, and rename for HTML fragments in Markdown.
- Fix potential catastrophic backtracking in a regular expression.
- Avoid adding extra encoding on completions.
- Use fuzzy matching for workspace symbol search.
- Fix a number of cases around link detection / validation.
* Enable document links, references, and rename for HTML fragments in Markdown.
* Fix potential catastrophic back-tracking in a regular expression.
* Avoid adding extra encoding on completions.
* Use fuzzy matching for workspace symbol search.
* Fix a number of cases around link detection/validation.
### New `localize2` function to make crafting `ILocalizedString`s more easily
@ -685,11 +690,11 @@ and `localize2` will get picked up by our localization pipeline.
### Electron 27 update
In this milestone, we are promoting the Electron 27 update to our stable users. This update comes with Chromium 118.0.5993.159 and Node.js 18.17.1. We want to thank everyone who self-hosted on Insiders builds and provided early feedback.
In this milestone, we are promoting the Electron 27 update to users on our stable release. This update comes with Chromium 118.0.5993.159 and Node.js 18.17.1. We want to thank everyone who self-hosted on Insiders builds and provided early feedback.
### Linux minimum requirements update
In this milestone we have updated the toolchains to build our desktop client, starting with this release VS Code desktop is only compatible with Linux distributions based on glibc 2.28 or later and glibcxx 3.4.25 or later, for example, Debian 10, RHEL 8, or Ubuntu 20.04. If you are unable to upgrade your Linux distribution, the recommended alternative is to use our [web client](https://code.visualstudio.com/docs/editor/vscode-web). If you would like to use the desktop version, then you can download the VS Code release 1.85 from [here](https://code.visualstudio.com/updates/v1_85). Depending on your platform, make sure to disable updates to stay on that version. A good recommendation is to set up the installation with [Portable Mode](https://code.visualstudio.com/docs/editor/portable).
In this milestone, we have updated the toolchains to build our desktop client. From this release onwards, VS Code desktop is only compatible with Linux distributions based on glibc 2.28 or later, and glibcxx 3.4.25 or later, such as Debian 10, RHEL 8, or Ubuntu 20.04. If you are unable to upgrade your Linux distribution, the recommended alternative is to use our [web client](https://code.visualstudio.com/docs/editor/vscode-web). If you would like to use the desktop version, then you can download the VS Code release 1.85 from [here](https://code.visualstudio.com/updates/v1_85). Depending on your platform, make sure to disable updates to stay on that version. A good recommendation is to set up the installation with [Portable Mode](https://code.visualstudio.com/docs/editor/portable).
## Notable fixes

Просмотреть файл

@ -31,9 +31,3 @@ When using a Dockerfile to build the container image, you can now specify build
```
These options will be passed to the `docker build` command.
## Tunnels
## SSH
## WSL