facd04c
v0.134.x dev
Joseph T. Lyons created
facd04c
v0.134.x dev
Joseph T. Lyons created
d843713
Fix primary language server selection for formatting (#10939)
This PR fixes the way we select the primary language server for use with formatting. Previously we were just taking the first one in the list, but this could be the wrong one in cases where a language server was provided by an extension in conjunction with a built-in language server (e.g., Tailwind). We now use the `primary_language_server_for_buffer` method to more accurately identify the primary one. Fixes https://github.com/zed-industries/zed/issues/10902. Release Notes: - Fixed an issue where the wrong language server could be used for formatting.
Marshall Bowers created
d0a5dbd
terraform: Sync `Cargo.toml` version with `extension.toml` version (#10937)
This PR syncs the `Cargo.toml` version with the `extension.toml` version. We should try to keep these in sync. Release Notes: - N/A
Marshall Bowers created
76ff467
Log which language servers will be started (#10936)
This PR adds a new log message indicating which language servers will be started for a given language. The aim is to make debugging the usage of the new `language_servers` setting (#10911) easier. Release Notes: - N/A
Marshall Bowers created
e1791b7
Autoscroll containing element when editor has a pending selection (#10931)
Release Notes: - N/A
Antonio Scandurra created
25e239d
Fix autoscroll in the new assistant (#10928)
This removes the manual calls to `scroll_to_reveal_item` in the new assistant, as they are superseded by the new autoscrolling behavior of the `List` when the editor requests one. Release Notes: - N/A
Antonio Scandurra created
f7ea137
Update docstring for SumTree (#10927)
Need the updated docstring for the blog post. Release Notes: - N/A
Thorsten Ball created
6108140
Properly extract package name out of cargo pkgid (#10929)
Fixes https://github.com/zed-industries/zed/issues/10925 Uses correct package name to generate Rust `cargo` tasks. Also deduplicates lines in task modal item tooltips. Release Notes: - Fixed Rust tasks using incorrect package name ([10925](https://github.com/zed-industries/zed/issues/10925))
Kirill Bulatov created
135a5f2
Enable unfocused windows to update their status based on whether they are clickable or not (#10229)
- Fixed #9784 By removing the interception of the MouseMove event, zed can update the corresponding Hover even when it is inactive
Hans created
dfd4d2a
chore: remove repetitive word (#10923)
hardlydearly created
fbc6e93
Fix regressions in `List` (#10924)
Release Notes: - N/A
Antonio Scandurra created
af5a9fa
Include root schema as parameters for tool calling (#10914)
Allows `LanguageModelTool`s to include nested structures, by exposing the definitions section of their JSON Schema. Release Notes: - N/A
Kyle Kelley created
2598155
Extract Deno extension (#10912)
This PR extracts Deno support into an extension and removes the built-in
Deno support from Zed.
When using the Deno extension, you'll want to add the following to your
settings to disable the built-in TypeScript and ESLint language servers
so that they don't conflict with Deno's functionality:
```json
{
"languages": {
"TypeScript": {
"language_servers": ["deno", "!typescript-language-server", "!eslint", "..."]
},
"TSX": {
"language_servers": ["deno", "!typescript-language-server", "!eslint", "..."]
}
}
}
```
Release Notes:
- Removed built-in support for Deno, in favor of making it available as
an extension.
Marshall Bowers created
cf67fc9
Add `language_servers` setting for customizing which language servers run (#10911)
This PR adds a new `language_servers` setting underneath the language
settings.
This setting controls which of the available language servers for a
given language will run.
The `language_servers` setting is an array of strings. Each item in the
array must be either:
- A language server ID (e.g., `"rust-analyzer"`,
`"typescript-language-server"`, `"eslint"`, etc.) denoting a language
server that should be enabled.
- A language server ID prefixed with a `!` (e.g., `"!rust-analyzer"`,
`"!typescript-language-server"`, `"!eslint"`, etc.) denoting a language
server that should be disabled.
- A `"..."` placeholder, which will be replaced by the remaining
available language servers that haven't already been mentioned in the
array.
For example, to enable the Biome language server in place of the default
TypeScript language server, you would add the following to your
settings:
```json
{
"languages": {
"TypeScript": {
"language_servers": ["biome", "!typescript-language-server", "..."]
}
}
}
```
More details can be found in #10906.
Release Notes:
- Added `language_servers` setting to language settings for customizing
which language server(s) run for a given language.
Marshall Bowers created
68a1ad8
New revision of the Assistant Panel (#10870)
This is a crate only addition of a new version of the AssistantPanel. We'll be putting this behind a feature flag while we iron out the new experience. Release Notes: - N/A --------- Co-authored-by: Nathan Sobo <nathan@zed.dev> Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Conrad Irwin <conrad@zed.dev> Co-authored-by: Marshall Bowers <elliott.codes@gmail.com> Co-authored-by: Antonio Scandurra <antonio@zed.dev> Co-authored-by: Nate Butler <nate@zed.dev> Co-authored-by: Nate Butler <iamnbutler@gmail.com> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-authored-by: Max <max@zed.dev>
Kyle Kelley , Nathan Sobo , Antonio Scandurra , Conrad Irwin , Marshall Bowers , Antonio Scandurra , Nate Butler , Nate Butler , Max Brunsfeld , and Max created
e0c83a1
remote projects per user (#10594)
Release Notes: - Made remote projects per-user instead of per-channel. If you'd like to be part of the remote development alpha, please email hi@zed.dev. --------- Co-authored-by: Bennet Bo Fenner <53836821+bennetbo@users.noreply.github.com> Co-authored-by: Bennet <bennetbo@gmx.de> Co-authored-by: Nate Butler <1714999+iamnbutler@users.noreply.github.com> Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Conrad Irwin , Bennet Bo Fenner , Bennet , Nate Butler , and Nate Butler created
8ae4c32
storybook: Fix crash in Kitchen Sink and Auto Height Editor stories (#10904)
The *Kitchen Sink* as well as the *Auto Height Editor* story is crashing for the same reason that the Picker story was crashing... ### Related Topics - Picker Story PR : #10793 - Picker Story Issue : #10739 - Introduced By : #10620 Release Notes: - N/A
Michael Angerman created
f6eaa8b
Clean up whitespace (#10755)
I saved the `file_types.json` file and got a diff because it had some trailing whitespace. I ran [`lineman`](https://github.com/JosephTLyons/lineman) on the codebase. I've done this before, but this time, I've added in the following settings to our `.zed` local settings, to make sure every future save respects our desire to have consistent whitespace formatting. ```json "remove_trailing_whitespace_on_save": true, "ensure_final_newline_on_save": true ``` Release Notes: - N/A
Joseph T. Lyons created
85b26e9
Store goldenfiles with trailing newline (#10900)
Release Notes: - N/A
Thorsten Ball created
2ee257a
task_ui: Move status indicator into tab bar of terminal panel (#10846)
I'm not a huge fan of this change (& I expect the placement to change). The plan is to have the button in a toolbar of terminal panel, but I'm not sure if occupying a whole line of vertical space for a single button is worth it; I suppose we might want to put more of tasks ui inside of that toolbar. Release Notes: - Removed task status indicator and added "Spawn task" action to terminal panel context menu.
Piotr Osiewicz created
bcbf2f2
Introduce autoscroll support for elements (#10889)
This pull request introduces the new `ElementContext::request_autoscroll(bounds)` and `ElementContext::take_autoscroll()` methods in GPUI. These new APIs enable container elements such as `List` to change their scroll position if one of their children requested an autoscroll. We plan to use this in the revamped assistant. As a drive-by, we also: - Renamed `Element::before_layout` to `Element::request_layout` - Renamed `Element::after_layout` to `Element::prepaint` - Introduced a new `List::splice_focusable` method to splice focusable elements into the list, which enables rendering offscreen elements that are focused. Release Notes: - N/A --------- Co-authored-by: Nathan <nathan@zed.dev>
Antonio Scandurra and Nathan created
efcd31c
Update documentation and handling to use a `crates/collab/seed.json` (#10874)
Updates `collab` to accept a `seed.json` file that allows you to override the defaults. Updated the `README` in collab to just have directions inside instead of redirecting the developer to the website. Release Notes: - N/A Co-authored-by: Max <max@zed.dev>
Kyle Kelley and Max created
ae3c641
wayland: File drag and drop (#10817)
Implements file drag and drop on Wayland https://github.com/zed-industries/zed/assets/71973804/febcfbfe-3a23-4593-8dd3-e85254e58eb5 Release Notes: - N/A
apricotbucket28 created
029eb67
Add `SettingsSources::<T>::json_merge_with` function (#10869)
This PR adds a `json_merge_with` function to `SettingsSources::<T>` to allow JSON merging settings from custom sources. This should help avoid repeating the actual merging logic when all that needs to be customized is which sources are being respected. Release Notes: - N/A
Marshall Bowers created
63c5295
Automatically install the HTML extension (#10867)
This PR makes it so the HTML extension will be installed in Zed by
default.
We feel we should keep HTML available out-of-the-box, but we want to do
so while still keeping it as an extension (as opposed to built-in to Zed
natively). There may be a world where we bundle the extension in with
the Zed binary itself, but installing it on startup gets us 99% of the
way there.
The approach for making HTML available by default is quite general, and
could be applied to any extension that we choose (likely other languages
that we want to come out-of-the-box, but that could then be moved to
extensions).
If you do not want the HTML extension in Zed, you can disable the
auto-installation in your `settings.json` and then uninstall the
extension:
```json
{
"auto_install_extensions": {
"html": false
}
}
```
Release Notes:
- Added auto-installation for the HTML extension on startup.
- This can be disabled by adding `{ "auto_install_extensions": { "html":
false } }` to your settings.
Marshall Bowers created
c96a96b
Add traits in Rust highlights (#10731)
Question: I use type.super here because I made a similar change to the ruby syntax to apply the same style to superclasses. With this in mind, should this change be renamed to type.trait or should it be renamed to something like type.italic so the ruby syntax or any other language can all use type.italic? or maybe something else altogether. <img width="597" alt="image" src="https://github.com/zed-industries/zed/assets/7274458/9d02dba0-75a4-4439-9f31-fd8aa0873075"> Release Notes: - Exposed Rust traits as `type.interface` for individual syntax theming.
Ben Hamment created
7f81bfb
Make keymaps reusable across platforms (#10811)
This PR includes two relevant changes: - Platform binds (super, windows, cmd) will now parse on all platforms, regardless of which one is being used. While very counter-intuitive (this means that `cmd-d` will actually be triggered by `win-d` on windows) this makes it possible to reuse keymap files across platforms easily - There is now a KeyContext `os == linux`, `os == macos` or `os == windows` available in keymaps. This allows users to specify certain blocks of keybinds only for one OS, allowing you to minimize the amount of keymappings that you have to re-configure for each platform. Release Notes: - Added `os` KeyContext, set to either `linux`, `macos` or `windows` - Fixed keymap parsing errors when `cmd` was used on linux, `super` was used on mac, etc.
ElKowar created
33baa37
docs: Add note about manually using the `bump_patch_version` action (#10862)
This PR updates the releases docs to make a note about `bump_patch_version` action through the GitHub UI. Not all of us have `gh` (or `brew`) installed. Release Notes: - N/A
Marshall Bowers created
07f490f
Ensure `target` directory exists before drafting release notes
Marshall Bowers created
b296431
XDG_BASE_DIR support (linux, windows) (#10808)
This PR adds XDG_BASE_DIR support on linux, and cleans up the path declarations slightly. Additionally, we move the embeddings and conversations directly to the SUPPORT_DIR on those platforms. I _think_ that should also be done on MacOS in the future, but that has been left out here for now to not break existing users setups. Additionally, we move the SUPPORT_DIR into LocalAppData on windows for consistency. Release Notes: - Fixed missing support of `XDG_BASE_DIR` on linux - Fixed improper placement of data in XDG_CONFIG_HOME on linux and windows (https://github.com/zed-industries/zed/issues/9308, https://github.com/zed-industries/zed/issues/7155) --------- Co-authored-by: phisch <philipp.schaffrath@gmail.com>
ElKowar and phisch created
e9a965f
Add missing linux dependencies (#10814)
At least one of the dependencies requires cmake to configure the build process. On ubuntu libgit2-dev was missing. Debian and derivates do not install development headers by default. Release Notes: - Improved Linux development setup scripts. Co-authored-by: Max Linke <max.linke88@gmail.com>
Max Linke and Max Linke created
b964fe2
Fix reading workspace-level LSP settings in extensions (#10859)
This PR fixes an issue where workspace-level LSP settings could be not read using `LspSettings::for_worktree` in extensions. We we erroneously always reading the global settings instead of respecting the passed-in location. Release Notes: - Fixed a bug where workspace LSP settings could not be read by extensions.
Marshall Bowers created
1be4527
cli: Use leading dashes in channel designators (#10858)
/cc @maxbrunsfeld Release Notes: - N/A
Piotr Osiewicz created
d298df8
Minor script fix (#10857)
Fixes a minor error in the analyze highlight script. Release Notes: - N/A
Nate Butler created
a111b95
cli: Treat first argument as name of release channel to use for the cli (#10856)
With this commit, it is now possible to invoke cli with a release channel of bundle as an argument. E.g: `zed stable some_arguments` will find CLI binary of Stable channel installed on your machine and invoke it with `some_arguments` (so the first argument is essentially omitted). Fixes #10851 Release Notes: - CLI now accepts an optional name of release channel as it's first argument. For example, `zed stable` will always use your Stable installation's CLI. Trailing args are passed along.
Piotr Osiewicz created
189cece
Add analyze highlights script (#10855)
Adds a script to print all unique highlight keys for building syntax themes. Usage: - `python script/analyze_highlights.py` OR - `python script/analyze_highlights.py -v` - Using the `-v` or `--verbose` arg will print each language that uses each key. Example output: ``` @attribute (6) @boolean (5) @charset (1) @comment (19) @comment.doc (3) @comment.unused (2) @constant (27) @constant.builtin (15) @constant.character (1) @constructor (4) @embedded (10) @emphasis (1) @emphasis.strong (1) @escape (4) @function (44) @function.builtin (2) @function.definition (2) @function.method (22) @function.method.builtin (3) @function.special (4) @function.special.definition (1) @import (1) @keyframes (1) @keyword (32) @label (2) @link_text (1) @link_uri (1) @media (1) @module (1) @namespace (1) @number (16) @operator (24) @property (11) @property.json_key (1) @punctuation (1) @punctuation.bracket (28) @punctuation.delimiter (12) @punctuation.list_marker (1) @punctuation.special (17) @string (23) @string.doc (1) @string.escape (5) @string.regex (7) @string.special (4) @string.special.symbol (2) @supports (1) @tag (14) @text.literal (2) @title (1) @type (28) @type.builtin (4) @type.super (3) @variable (5) @variable.member (3) @variable.parameter (4) @variable.special (12) Extension-only: @tag.delimiter (1) ``` Verbose example output: ``` Shared: @attribute (6) - [css, heex, javascript, tsx] @boolean (5) - [javascript, proto, tsx, typescript, yaml] @charset (1) - [css] @comment (19) - [bash, c, cpp, css, elixir, erb, go, gomod, gowork, heex, javascript, json, proto, python, ruby, rust, tsx, typescript, yaml] @comment.doc (3) - [elixir] @comment.unused (2) - [elixir] @constant (27) - [bash, c, cpp, elixir, heex, javascript, json, proto, python, ruby, rust, tsx, typescript] @constant.builtin (15) - [elixir, go, javascript, python, ruby, tsx, typescript, yaml] @constant.character (1) - [regex] @constructor (4) - [tsx, typescript] @embedded (10) - [bash, elixir, javascript, python, ruby, tsx, typescript] @emphasis (1) - [markdown] @emphasis.strong (1) - [markdown] @escape (4) - [go, python, regex, ruby] @function (44) - [bash, c, cpp, css, elixir, go, heex, javascript, python, rust, tsx, typescript] @function.builtin (2) - [python] @function.definition (2) - [rust] @function.method (22) - [go, javascript, python, ruby, rust, tsx, typescript] @function.method.builtin (3) - [ruby] @function.special (4) - [c, cpp, rust] @function.special.definition (1) - [rust] @import (1) - [css] @keyframes (1) - [css] @keyword (32) - [bash, c, cpp, css, elixir, erb, go, gomod, gowork, heex, javascript, jsdoc, proto, python, ruby, rust, tsx, typescript] @label (2) - [c, cpp] @link_text (1) - [markdown] @link_uri (1) - [markdown] @media (1) - [css] @module (1) - [heex] @namespace (1) - [css] @number (16) - [bash, c, cpp, css, elixir, go, javascript, json, proto, python, regex, ruby, rust, tsx, typescript, yaml] @operator (24) - [bash, c, cpp, css, elixir, go, gomod, gowork, heex, javascript, proto, python, regex, ruby, tsx, typescript] @property (11) - [bash, c, cpp, css, javascript, python, regex, rust, tsx, typescript, yaml] @property.json_key (1) - [json] @punctuation (1) - [elixir] @punctuation.bracket (28) - [c, cpp, elixir, go, heex, javascript, json, proto, regex, ruby, rust, tsx, typescript, yaml] @punctuation.delimiter (12) - [c, cpp, css, elixir, heex, javascript, proto, regex, ruby, tsx, typescript, yaml] @punctuation.list_marker (1) - [markdown] @punctuation.special (17) - [elixir, javascript, python, ruby, tsx, typescript, yaml] @string (23) - [bash, c, cpp, css, elixir, go, gomod, gowork, heex, javascript, json, proto, python, regex, ruby, rust, tsx, typescript, yaml] @string.doc (1) - [python] @string.escape (5) - [elixir, javascript, tsx, typescript, yaml] @string.regex (7) - [elixir, javascript, ruby, tsx, typescript] @string.special (4) - [css, elixir] @string.special.symbol (2) - [elixir, ruby] @supports (1) - [css] @tag (14) - [css, heex, javascript, tsx] @text.literal (2) - [markdown] @title (1) - [markdown] @type (28) - [c, cpp, css, elixir, go, javascript, jsdoc, proto, python, ruby, rust, tsx, typescript, yaml] @type.builtin (4) - [javascript, rust, tsx, typescript] @type.super (3) - [ruby] @variable (5) - [c, cpp, javascript, tsx, typescript] @variable.member (3) - [go, ruby] @variable.parameter (4) - [ruby] @variable.special (12) - [cpp, css, javascript, ruby, rust, tsx, typescript] Extension-only: @tag.delimiter (1) - [astro] ``` Release Notes: - N/A --------- Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Nate Butler and Joseph T. Lyons created
ee531b6
Sort the list of suggested extensions (#10854)
This PR sorts the list of suggested extensions. Release Notes: - N/A
Marshall Bowers created
67e7c33
Add ReScript suggested extension for res and resi files (#10822)
Release Notes: - Added ReScript as a suggested extension for .res and .resi files
Karolis Narkevicius created
615de38
terminal: hide navigation buttons (#10847)
We were effectively discarding value set by display_nav_history_buttons once we've updated settings for a pane. This commit adds another bit of state to display_nav_history_buttons by allowing it to hard-deny setting updates. Release Notes: - Fixed a bug that caused disabled navigation buttons to show up in terminal panel.
Piotr Osiewicz created
74241d9
Add woff(2) to file type icon list (#10833)
I noticed the sidebar was using the fallback icons for woff/woff2 webfont files, instead of the font icon: <img width="195" alt="CleanShot 2024-04-22 at 03 01 18@2x" src="https://github.com/zed-industries/zed/assets/5074763/2e925c33-0be5-4ed9-ae87-ce72f95f8416"> With this PR, I'm hoping all those font files would use the A icon instead. Release Notes: - Updated`.woff` & `.woff2` file types in the sidebar to display the font icon.
Lachlan Campbell created
dd41c10
Filter out other languages' tasks from the task modal (#10839)
Release Notes: - Fixed tasks modal showing history from languages, not matching the currently active buffer's one
Kirill Bulatov created
a0fa8a4
ruby: Check if `solargraph` exists in `$PATH` or is configured (#10835)
This fixes #9811 by checking for the `solargraph` binary in the `$PATH`
as it's setup in the project shell.
It also adds support for configuring the path to `solargraph` manually:
```json
{
"lsp": {
"solargraph": {
"binary": {
"path": "/Users/thorstenball/bin/solargraph",
"arguments": ["stdio"]
}
}
}
}
```
## Example
Given the following setup:
- `ruby@3.3.0` used globally, no `solargraph` installed globally
- `ruby@3.2.2` used in a project, `solargraph` installed as binstub in
`$project/bin/solargraph`, `.envrc` to configure `direnv` to add
`$project/bin` to `$PATH
Which looks like this in practice:
```shell
# GLOBAL
~ $ ruby --version
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
~ $ which solargraph
solargraph not found
# IN PROJECT
~ $ cd work/projs/rails-proj
direnv: loading ~/work/projs/rails-proj/.envrc
direnv: export ~PATH
~/work/projs/rails-proj $ ruby --version
ruby 3.2.2 (2023-03-30 revision e51014f9c0) [arm64-darwin23]
~/work/projs/rails-proj $ which solargraph
/Users/thorstenball/work/projs/rails-proj/bin/solargraph
```
The expectation is that Zed, when opening `~/work/projs/rails-proj`,
picks up the local `solargraph`.
But with **Zed Stable** that doesn't work, as we can see in the logs:
```
2024-04-22T10:21:37+02:00 [INFO] starting language server. binary path: "solargraph", working directory: "/Users/thorstenball/work/projs/rails-proj", args: ["stdio"]
2024-04-22T10:21:37+02:00 [ERROR] failed to start language server "solargraph": No such file or directory (os error 2)
```
With the change in this PR, it uses `rails/proj/bin/solargraph`:
```
[2024-04-22T10:33:06+02:00 INFO language] found user-installed language server for Ruby. path: "/Users/thorstenball/work/projs/rails-proj/bin/solargraph", arguments: ["stdio"]
[2024-04-22T10:33:06+02:00 INFO lsp] starting language server. binary path: "/Users/thorstenball/work/projs/rails-proj/bin/solargraph", working directory: "/Users/thorstenball/work/projs/rails-proj", args: ["stdio"]
```
**NOTE**: depending on whether `mise` (or `rbenv`, `asdf`, `chruby`,
...) or `direnv` come first in the shell-rc file, it picks one or the
other, depending on what puts itself first in `$PATH`.
## Release Notes
Release Notes:
- Added support for finding the Ruby language server `solargraph` in the
user's `$PATH` as it is when `cd`ing into a project's directory.
([#9811](https://github.com/zed-industries/zed/issues/9811))
- Added support for configuring the `path` and `arguments` for
`solargraph` language server manually. Example from settings: `{"lsp":
{"solargraph": {"binary":
{"path":"/Users/thorstenball/bin/solargraph","arguments": ["stdio"]}}}}`
([#9811](https://github.com/zed-industries/zed/issues/9811))
Thorsten Ball created
e1685de
Revert "Use XI2 for Scrolling on X11" (#10818)
Reverts zed-industries/zed#10695 Some users are experiencing broken scrolling due to the changes from this PR, so it should be reverted while I investigate what causes the problems. Release Notes: - N/A
Owen Law created
4ab48c6
storybook: Fix crash in Picker story (#10793)
@mikayla-maki approved my suggested change as noted in the issue below... Release Notes: - Fixed: [#10739 ](https://github.com/zed-industries/zed/issues/10739)
Michael Angerman created
2677ec7
Suggest .log file (#10796)
Release Notes: - Suggest .log file
d1y created
cd6acff
Remove TODOs from semantic index build-up (#10789)
Quick touch up of some `// todo!()` that got left in `semantic-index` Release Notes: - N/A
Kyle Kelley created
5102e37
Changed cmd+w with no open tabs to close window (#10740)
Fixes https://github.com/zed-industries/zed/issues/5322 Release Notes: - Changed cmd+w with no open tabs to close window [#5322](https://github.com/zed-industries/zed/issues/5322) https://github.com/zed-industries/zed/assets/22855292/113b1635-ae30-4718-a3d3-758a4bf53714
William Viktorsson created
fee2065
windows: Fix main thread blocking when resizing or moving window (#10758)
Connection: Fix #10703 https://github.com/zed-industries/zed/assets/14981363/59abfab7-ebb2-4da7-ad13-0a9e42f9c1d3 Release Notes: - N/A
张小白 created
c3bcfb3
windows: Fix wrong bitmap format (#10773)
I accidentally wrote the bitmap format incorrectly during a refactor. Release Notes: - N/A
张小白 created
8a02159
Add a command to expand the context for a multibuffer (#10300)
This PR adds an action to expand the excerpts lines of context in a
multibuffer.
Release Notes:
- Added an `editor::ExpandExcerpts` action (bound to `shift-enter` by
default), which can expand the excerpt the cursor is currently in by 3
lines. You can customize the number of lines by rebinding this action
like so:
```json5
// In your keybindings array...
{
"context": "Editor && mode == full",
"bindings": {
"shift-enter": ["editor::ExpandExcerpts", { "lines": 5 }],
}
}
```
---------
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Max <max@zed.dev>
Mikayla Maki , Nathan , and Max created