7af96a1
Fix typo in comment
Marshall Bowers created
7af96a1
Fix typo in comment
Marshall Bowers created
3eac581
Allow controlling Tailwind via the `language_servers` setting (#11012)
This PR adds the ability for the Tailwind language server
(`tailwindcss-language-server`) to be controlled by the
`language_servers` setting.
Now in your settings you can indicate that the Tailwind language server
should be used for a given language, even if that language does not have
the Tailwind language server registered for it already:
```json
{
"languages": {
"My Language": {
"language_servers": ["tailwindcss-language-server", "..."]
}
}
}
```
Release Notes:
- N/A
Marshall Bowers created
c833a7e
Don't use fancy cursors for non-vim people (#11010)
Release Notes: - N/A
Conrad Irwin created
f176e8f
Accept `View`s on `LanguageModelTool`s (#10956)
Creates a `ToolView` trait to allow interactivity. This brings expanding and collapsing to the excerpts from project index searches. Release Notes: - N/A --------- Co-authored-by: Nathan <nathan@zed.dev> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Kyle Kelley , Nathan , and Max Brunsfeld created
7005f0b
Remove outdated instructions for adding languages (#11005)
This PR removes the outdated comment regarding adding languages to Zed. New languages should be added as extensions. Release Notes: - N/A
Marshall Bowers created
d3f6ca7
Add @operator, @lifetime and @punctuation.delimiters captures for Rust (#10885)
Adds additional captures for theming rust code. I'm uncertain about whether `#` belongs in the `@operator` capture, but I didn't see a more appropriate capture name in my brief hunt in other files. It is the prefix of an `attribute_item`.. suggestions welcome. Release Notes: - Added `@operator`, `@lifetime` and `@punctuation.delimiter` captures to Rust highlights file.
James Thurley created
544bd49
Extract Elixir extension (#10948)
This PR extracts Elixir support into an extension and removes the
built-in Elixir support from Zed.
As part of this, [Lexical](https://github.com/lexical-lsp/lexical) has
been added as an available language server for Elixir.
Since the Elixir extension provides three different language servers,
you'll need to use the `language_servers` setting to select the one you
want to use:
#### Elixir LS
```json
{
"languages": {
"Elixir": {
"language_servers": [ "elixir-ls", "!next-ls", "!lexical", "..."]
}
}
}
```
#### Next LS
```json
{
"languages": {
"Elixir": {
"language_servers": [ "next-ls", "!elixir-ls", "!lexical", "..."]
}
}
}
```
#### Lexical
```json
{
"languages": {
"Elixir": {
"language_servers": [ "lexical", "!elixir-ls", "!next-ls", "..."]
}
}
}
```
These can either go in your user settings or your project settings.
Release Notes:
- Removed built-in support for Elixir, in favor of making it available
as an extension.
Marshall Bowers created
7065da2
Fix project-panel double click file support on Windows (#10917)
Release Notes: - Fixed project panel double click to force open file on Windows. Ref issue: #10898 @bennetbo I saw you was also used `event.down.click_count` in Markdown Preview. https://github.com/zed-industries/zed/commit/7dccbd8e3b61c48ae174807a4023332b7c1df06a#diff-c8d1735cb347ea08d03198df112343ec50a74de8d50414a6f3be6c6d674c6d19R161 And this also used in other place: <img width="870" alt="image" src="https://github.com/zed-industries/zed/assets/5518/b844e700-b95f-4cd2-987f-9e4305ebdd7c"> ## Test demo after updated Looks like it is no side effect 
Jason Lee created
0d6fb08
vim: set cursor to hollow-block if editor loses focus (#10995)
This has been bugging me for a while now. Finally figured out how to do it. Release Notes: - Fixed cursor in Vim mode not changing into a hollow block when editor loses focus. Demo: https://github.com/zed-industries/zed/assets/1185253/c7585282-156d-4ab2-b516-eb1940d6d0d3
Thorsten Ball created
3ce4ff9
Update `Cargo.lock`
Marshall Bowers created
21022f1
Fix cmd+click find all references fallback not working in Vim mode (#10684)
Exclude go-to-definition links returned by LSP that points to the current cursor position. This fixes #10392 . Related PR #9243 . The previous implementation first performs go-to-definition, and if the selected text covers the clicked position, it figures out that it is already clicking on a definition, and should instead look for references. However, the selected range does not necessarily cover the clicked position after clicking on a definition, as in VIM mode. After the PR, if cmd+click on definitions, the definition links would be an empty list, so no go-to-definition is performed, and find-all-references is performed instead. Release Notes: - Fixed #10392 , now `cmd+click`ing to find all references works in vim mode.
Congyu created
11bcfea
Fix single-line editors not working anymore (#10994)
This was introduced with #10979 and was caused by a missing call to `cx.set_view_id` in `EditorElement`, which is necessary when rendering `EditorElement` manually instead of via a view. Release Notes: - N/A
Antonio Scandurra created
1cd34fd
Recognize `PKGBUILD` as bash script (#10946)
[PKGBUILD] is a file used in the build system of arch linux, and it is basically just a bash script with special functions. Release Notes: - Changed `PKGBUILD` files to be recognized as bash.
Jakob Hellermann created
5302245
Allow pressing `escape` to cancel the current assistant generation (#10987)
If the assistant has already emitted some text, we will leave the assistant message but maintain the cursor on the previous user message, so that the user can easily discard the message by submitting again. If no output was emitted yet, we simply delete the empty assistant message. Release Notes: - N/A
Antonio Scandurra created
0de2636
Revert "Changed cmd+w with no open tabs to close window (#10740)" (#10986)
This PR reverts #10740, as it makes it too easy to close Zed accidentally. Quitting Zed when you don't mean to is disruptive and can break your flow. This is even more the case when you're collaborating. Therefore, we shouldn't make it easy to quit Zed when you don't mean to. If we want to bring back this behavior it needs to have a corresponding setting that should, in my opinion, be **off** by default. Additionally, someone made the good point that this behavior should not be present on Linux or Windows. This reverts commit 5102e37a5bc344cb1f5f2a4116b55d4d3afafbb0. Release Notes: - Changed `cmd-w` with no open tabs to no longer close the window (preview-only).
Marshall Bowers created
7ec9636
git blame: Do not try to blame buffer if it has no file (#10985)
Release Notes: - Fixed error messages being logged due to inline git blame not working on an empty buffer that hasn't been saved yet.
Thorsten Ball created
019821d
eslint: register as language server for Vue.js (#10983)
This fixes #9934 and does two things: 1. It registers ESLint as a secondary language server for Vue.js files (`.vue`) 2. It registers ESLint as a _secondary_ (instead of primary) language server for TypeScript, JavaScript and TSX. The second point because I don't see any reason why ESLint should be registered as a primary language server for these languages. I read through the code in `project.rs` that uses the primary language server and I don't think there will be any differences to how it previously worked. I also manually tested ESLint support in a Vue.js project, a Next.js project and a plain old JS project — still works in all three. Release Notes: - Added ESLint support for Vue.js files by starting it as a language server on `.vue` files. ([#9934](https://github.com/zed-industries/zed/issues/9934)).
Thorsten Ball created
bb213b6
Fix keybinding errors on Linux (#10982)
These showed up as error messages. One of them has been removed and the other two have changed names. Release Notes: - N/A
Thorsten Ball created
6a7761e
Merge `ElementContext` into `WindowContext` (#10979)
The new `ElementContext` was originally introduced to ensure the element APIs could only be used inside of elements. Unfortunately, there were many places where some of those APIs needed to be used, so `WindowContext::with_element_context` was introduced, which defeated the original safety purposes of having a specific context for elements. This pull request merges `ElementContext` into `WindowContext` and adds (debug) runtime checks to APIs that can only be used during certain phases of element drawing. Release Notes: - N/A --------- Co-authored-by: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
031580f
git: Fix inline blame moving on horizontal scroll (#10974)
This fixes the behaviour reported by @mikayla-maki. ## Before https://github.com/zed-industries/zed/assets/1185253/35aa4e6d-295b-4050-b5cc-cab0f91b27e1 ## After https://github.com/zed-industries/zed/assets/1185253/a17cbc9c-fc2c-43d6-918b-1205b327507b ## Release notes Release Notes: - Fixed inline git blame information moving when horizontally scrolling.
Thorsten Ball created
1a27016
Improve logic for obtaining surrounds range in Vim mode (#10938)
now correctly retrieves range in cases where escape characters are present. Fixed #10827 Release Notes: - vim: Fix logic for finding surrounding quotes to ignore escaped characters (#10827)
Hans created
d142560
Fix misalignment of vim mode indicator (#10962)
Credit-to: @elkowar New is the top <img width="220" alt="Screenshot 2024-04-24 at 19 00 48" src="https://github.com/zed-industries/zed/assets/94272/9d917bf1-e175-494d-9653-757d15584921"> Release Notes: - N/A
Conrad Irwin created
583a662
Fix issues with drafting release notes in CI (#10955)
This PR addresses some issues I ran into with the way we draft release notes in CI when doing builds. The first issue I encountered was that `script/draft-release-notes` was failing, seemingly due to CI doing a shallow Git checkout and not having all of the tags available in order to compare then. This was addressed by setting the `fetch-depth` during the Git checkout. The second issue is that (in my opinion) we shouldn't fail the build if drafting release notes fails. After well, we're doing it as a convenience to ourselves, and it isn't a mandatory part of the build. This was addressed by making any failures in `script/draft-release-notes` not fail the CI step as a whole. These changes were already applied to the `v0.133.x` branch. Release Notes: - N/A
Marshall Bowers created
64617a0
Read settings in headless mode (#10950)
Release Notes: - N/A
Conrad Irwin created
b673494
Restore the previous styles for single-line editors (#10951)
This PR fixes a bug introduced in #10870 that caused editors used as single-line inputs to have the wrong text style. If this change was intentional for something relating to the new Assistant panel, we'll need to figure out a way to change it without breaking these other usages. ### Before <img width="589" alt="Screenshot 2024-04-24 at 5 35 36 PM" src="https://github.com/zed-industries/zed/assets/1486634/31624cfd-75d1-4771-9402-c14ef9e9483e"> <img width="326" alt="Screenshot 2024-04-24 at 5 35 46 PM" src="https://github.com/zed-industries/zed/assets/1486634/1b76a3ef-7205-49ee-b391-7609f90461bd"> ### After <img width="588" alt="Screenshot 2024-04-24 at 5 36 14 PM" src="https://github.com/zed-industries/zed/assets/1486634/9d550ee2-80c0-4afb-9b45-a2956471c546"> <img width="260" alt="Screenshot 2024-04-24 at 5 36 31 PM" src="https://github.com/zed-industries/zed/assets/1486634/63240f27-1679-45d5-b39c-016860ff9683"> Release Notes: - Fixed a bug where some inputs were using the wrong font style (preview-only).
Marshall Bowers created
53f67a8
Update blade with transparency and exclusive fullscreen fixes (#10880)
Release Notes: - N/A Picks up https://github.com/kvark/blade/pull/113 and a bunch of other fixes. Should prevent the exclusive full-screen on Vulkan - related to #9728 cc @kazatsuyu Note: this PR doesn't enable transparency, this is left to follow-up
Dzmitry Malyshau created
06d2d9d
windows: Let the OS decide which font to use as the UI font (#10877)
On my computer, I get `Yahei UI`, which makes sense since I'm using a Chinese operating system, and `Yahei UI` includes Chinese codepoints. On an English operating system, `Segoe UI` should be used instead. Edit: I also choose to use the UI font selected by the system as the fallback font, rather than hard-coding the `Arial` font. Release Notes: - N/A
张小白 created
9e88155
Use winresource instead of embed-manifest (#10810)
use winresource for crates/zed and crates/storybook. tested on `x86_64-pc-windows-gnu`. on `x86_64-pc-windows-msvc` I receive a error message, that looks like a problem with my machine Release Notes: - N/A
Maksim Bondarenkov created
048fc7a
Allow cli to accept --dev-server-token (#10944)
Release Notes: - N/A
Conrad Irwin created
bd77232
dart: Bump to v0.0.2 (#10940)
This PR bumps the Dart extension to v0.0.2. Changes: - https://github.com/zed-industries/zed/pull/8347 - https://github.com/zed-industries/zed/pull/10552 Release Notes: - N/A
Marshall Bowers 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