8acd4d1
Fix git_commit grammar name typo (#7982)
Click to expand commit body
Release Notes: - Fixed git_commit highlights not working
d1y created
8acd4d1
Fix git_commit grammar name typo (#7982)
Release Notes: - Fixed git_commit highlights not working
d1y created
2512189
Add editor::OpenUrl action and bind to `gx` in Vim mode (#7972)
This adds one feature I've been missing a lot in Vim mode: `gx` to open the URL under the cursor. Technically, in Vim, `gx` opens more "paths", not just URLs, but I think this is a good start. Release Notes: - Added `gx` to Vim mode to open the URL under the cursor. Demo: https://github.com/zed-industries/zed/assets/1185253/6a19490d-b61d-40b7-93e8-4819599f6977
Thorsten Ball created
3ca6f75
Add more documentation about base keymaps (#7953)
Release Notes: - Clarify base keymap settings better in the docs
Victor created
b91d6da
Remove Beancount as a built-in language (#7934)
This PR removes Beancount as a built-in language, as it is now available as an [extension](https://github.com/zed-extensions/beancount). Release Notes: - Removed built-in support for Beancount, as it is now provided by an [extension](https://github.com/zed-extensions/beancount).
Marshall Bowers created
a041e07
Hide Inline Assist button if assistant.button is disabled (#7932)
This PR adds check for `assistant.button` setting in quick bar, to hide it when the setting is set to false. It seems that the setting can be a separate one, I would be happy to add it if needed. Release Notes: - Improved `assistant.button` setting so that `Inline Assist` button in editor quick bar is also hidden ([#4500](https://github.com/zed-industries/zed/issues/4500)).
Aleksei Trifonov created
6d9b8cc
Clear search results on invalid query input (#7958)
Fixes a bug in the buffer search bar: Clears results of a previous successfull search when the user enters invalid search request. Steps to reproduce the bug: 1. Switch to Regex search mode. 2. Enter a valid search query that produces several matches. 3. Add a symbol to the search query that makes it an invalid regexp. 4. Switch to the editor and walk through the code back and forth. Expected result: All the match highlightings after step 2 are cleared, search bar indicates absence of the last search matches. Actual: The results from the last valid search are highlighted, search bar indicates presence of matches. Potentially, the same effect may occur when searching in the simple text mode, or when clearing the search query in some circumstances, so I made the fix for all those cases, though I wasn't able to reproduce them manually. The bug: https://github.com/zed-industries/zed/assets/2101250/1c50b98c-ae8e-4a9c-8ff5-1e5c63027ec3 After the fix: https://github.com/zed-industries/zed/assets/2101250/e3eedf8c-2e3e-41ee-81cc-c2c9d919fba3 Release Notes: - Clear search results on invalid query input
Andrew Lygin created
4c781b6
vim netrw (#7962)
- Tidy up vim netrw bindings (c.f. https://github.com/zed-industries/zed/issues/4270, https://github.com/zed-industries/zed/pull/7757) - Add vim commands for panels Release Notes: - vim: add commands to toggle panels `:E[xplore]`, `:C[ollab]`, `:Ch[at]`, `:N[otification]`, `:A[I]`, `:te[rm]` (or `:T[erm]`).
Conrad Irwin created
8aa5319
Add documentation to many core editor types (#7919)
Hopefully this makes it a bit easier for new contributors to dive into the codebase :) Release Notes: - Improved documentation for many core editor types --------- Co-authored-by: Nathan Sobo <nathan@zed.dev>
vultix and Nathan Sobo created
f193781
Add Lua file icon (#7926)
Release Notes: - Added Lua file icon and association ([7925](https://github.com/zed-industries/zed/issues/7925))
Jack T created
7804be0
Add missing character "-" for "Go back" in key_bindings.md (#7942)
Release Notes: - Added "Go back" binding docs in the `key_bindings.md`
Xing Liu created
98ffdca
Add locale-based time formatting in the chat panel (#7945)
This commit addresses the issue of time formats displayed in the chat panel. Previously, the time was always displayed in a 12-hour format, regardless of the user's locale. The `format_timestamp` function has been updated to check the system locale and format the time accordingly. Release Notes: - Fixed time formatting in the chat panel to be locale based.
evrsen created
cd4d2f7
Add Prettier support for Vue, Markdown and PHP (#7904)
Current prettier support w/i Zed leaves out a few languages that are officially supported by prettier. In particular, Vue and Markdown are supported by the core prettier project, and PHP is supported via an official plugin. I didn't see any open issues for this, but I have been wondering for months why `"formatter": "prettier"` wasn't working on my PHP files. Now that Zed is open source, I was able to find out why, and fix it. :smile: I have been using this with PHP files daily for a week+ now, and I have also used it successfully with Vue and Markdown files, though not as extensively. I looked around and did not see any tests for specific prettier language integrations, but if I missed them please let me know and I'll add some tests. **Notes** - I did not add support for Ruby (which has an official prettier plugin) because it seems to require some external dependencies (notably, Rudy and some Gems). When those are present on the system and `$PATH`, prettier will will work just fine on Ruby files if the plugin is set up similar to how the PHP plugin is set up (I tried it), and I can add that in here, if desired. The PHP plugin is pure JS (as I recall) and doesn't have this issue. - I did *not* add support for languages that have "community" plugins, though I do note that Zed already ships with prettier support for svelte enabled, which – if I understand correctly – is powered by a community plugin. If desired, I could look at adding support/configuration to enable prettier support for things like elm, erb, glsl, bash, toml. Bash, in particular, *I* would find useful. :smile: Release Notes: - Added prettier support for Vue, Markdown and PHP
claytonrcarter created
43a845c
Add default settings to display Svelte inlay hints (#7943)
Fixes: #7913. Release Notes: - Added default settings for Svelte language server to display inlay hints ([#7913](https://github.com/zed-industries/zed/issues/7913)).
Robin Pfäffle created
3cbc188
Upgrade `toml` to v0.8 (#7931)
This PR upgrades our `toml` dependency to v0.8. I noticed that our current version of `toml` wasn't able to parse certain kinds of documents involving enums, whereas the newer version can. Release Notes: - N/A
Marshall Bowers created
f82b274
Wayland input handling (#7857)
Adds initial keyboard and mouse input for Wayland (thanks to @gabydd and @kvark for reference). Release Notes: - N/A --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Roman and Mikayla Maki created
9ad1862
Enable Blade on MacOS via "macos-blade" feature (#7669)
Depends on https://github.com/zed-industries/font-kit/pull/2 and https://github.com/kvark/blade/pull/77 This change enables Blade to be also used on MacOS. It will also make it easier to use it on Windows. What works: most of the things. Zed loads as fast and appears equally responsive to the current renderer. <img width="306" alt="Screenshot 2024-02-11 at 12 09 15 AM" src="https://github.com/zed-industries/zed/assets/107301/66d82f45-5ea2-4e2b-86c6-5b3ed333c827"> Things missing: - [x] video streaming. ~~Requires a bit of plumbing on both Blade and Zed sides, but all fairly straightforward.~~ - verified with a local setup - [x] resize. ~~Not sure where exactly to hook up the reaction on the window size change. Once we know where, the fix is one line.~~ - [ ] fine-tune CA Layer - this isn't a blocker for merging the PR, but it would be a blocker if we wanted to switch to the new path by default - [ ] rebase on latest, get the dependency merged (need review/merge of https://github.com/zed-industries/font-kit/pull/2!) Update: I implemented resize support as well as "surface" rendering on the Blade path (which will be useful on Linux/Windows later on). I haven't tested the latter though - not sure how to get something streaming. Would appreciate some help! I don't think this should be a blocker to this PR, anyway. The only little piece that's missing for the Blade on MacOS path to be full-featured is fine-tuning the CALayer configuration. Zed does a lot of careful logic in configuring the layer, such as switching the "present with transaction" on/off intermittently, which Blade path doesn't have yet. Release Notes: - N/A --------- Co-authored-by: Mikayla <mikayla@zed.dev>
Dzmitry Malyshau and Mikayla created
1c361ac
Remove comment (#7922)
Per https://github.com/zed-industries/zed/pull/7814, this is more trouble than it's worth. As these functions are never exposed to the user of GPUI, we can just manually audit and enforce the relevant rules. Release Notes: - N/A
Mikayla Maki created
bea3691
Linux: file dialogs (#7852)
This PR implements linux file dialogs and open/reveal actions. | Open folder | Reveal path | | --- | --- | |  |  | --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Rom Grk and Mikayla Maki created
43e8fdb
Fix a missing follower update on re-activate (#7918)
This could cause following to get into a bad state temporarily Release Notes: - Fixed a bug around following if the follow started while the workspace was inactive.
Conrad Irwin created
5df1318
Don't use stale layout when view cache is invalidated in GPUI (#7914)
When a view is invalidated, we want to participate in Taffy layout with an accurate style rather than the dummy style we use when a view is cached. Previously, we only detected invalidation during paint. This adds logic to layout as well to avoid using the dummy style when dirty. Release Notes: - N/A --------- Co-authored-by: Nathan <nathan@zed.dev>
Antonio Scandurra and Nathan created
577b244
Add button link to extension repository (#7880)
Fixes: https://github.com/zed-industries/zed/issues/7873 <img width="1165" alt="image" src="https://github.com/zed-industries/zed/assets/19867440/2338519c-bd48-4716-9f88-ed155b0dad67"> Release Notes: - Added a button to link to an extension's repository
Joseph T. Lyons created
2e0d18e
Don't support cloning the extensions view (#7875)
Fixes https://github.com/zed-industries/zed/issues/7840 We could support this later, but for now, I don't think we need to. Release Notes: - N/A Co-authored-by: Nathan <nathan@zed.dev>
Max Brunsfeld and Nathan created
c5a23fa
Fall back to One themes if the selected theme doesn't exist (#7911)
This PR makes it so the One themes—One Dark and One Light—are used as a fallback when trying to reload a theme that no longer exists in the registry. This makes it so when an extension providing the current theme is removed, the active theme will change to either One Dark or One Light (based on the system appearance) instead of retaining a cached version of the theme. Release Notes: - Changed the behavior when uninstalling a theme to default to One Dark or One Light (based on system appearance) rather than keeping a cached version of the old theme.
Marshall Bowers created
86f81c4
Mention Docker Compose in the collab docs (#7908)
This PR adds a note about using Docker Compose to run the `collab` dependencies. Release Notes: - N/A
Marshall Bowers created
07501d9
Add LiveKit server to Docker Compose (#7907)
This PR adds the LiveKit server to the Docker Compose setup. All of the dependencies needed to run the collab server are now encapsulated within Docker Compose. Release Notes: - N/A
Marshall Bowers created
07c7778
Add cancel button on GitHub Copilot actions (#7850)
Release Notes: - Added cancel button on Copilot actions ([#6878](https://github.com/zed-industries/zed/issues/6878)). Here is the screenshot of the UI change: <img width="545" alt="Screenshot 2024-02-15 at 13 00 53" src="https://github.com/zed-industries/zed/assets/29421465/7a4e1641-1822-47ad-819e-f3d83bc3cc74">
Subash Chandra Sapkota created
aa6926e
Revert "Upgrade to Taffy 0.4" (#7896)
Reverts zed-industries/zed#7868 @nicoburns: this seems to break text input in the chat panel, so reverting this for now. <img width="365" alt="image" src="https://github.com/zed-industries/zed/assets/482957/fc47eee9-6049-49c2-be2c-fb91f7d35caf"> It would be great to upgrade to Taffy 0.4 though, so we should figure out why that particular input breaks. Release notes: - N/A
Antonio Scandurra created
ae577c9
Highlight escape sequences in TypeScript/JavaScript (#7892)
Ran into this while hacking on TypeScript/React/TSX... Release Notes: - N/A 
Thorsten Ball created
f4f72a1
Add blob store to Docker Compose (#7889)
This PR adds the local blob store—backed by [MinIO](https://github.com/minio/minio)—to the Docker Compose setup. This allows running the blob store locally all within a container. Release Notes: - N/A
Marshall Bowers created
4310b0b
Replace `full` with `size_full` (#7888)
This PR removes the `full` style method and replaces it with
`size_full`, as the two do the same thing.
This is the generated code for `size_full`:
```rs
#[doc = "Sets the width and height of the element.\n\n100%"]
fn size_full(mut self) -> Self {
let style = self.style();
style.size.width = Some((gpui::relative(1.)).into());
style.size.height = Some((gpui::relative(1.)).into());
self
}
```
Release Notes:
- N/A
Marshall Bowers created
a161a7d
Format YAML files (#7887)
This PR formats the YAML files in the repo with Prettier. Release Notes: - N/A
Marshall Bowers created
ab6b919
Fix `Cargo.toml` formatting (#7886)
This PR disables the formatting for `.toml` files within the Zed repo, as the formatter provided by the TOML language server messes things up. Release Notes: - N/A
Marshall Bowers created
ef551ce
Add `CheckboxWithLabel` component (#7881)
This PR builds on top of #7878 by adding a general-purpose `CheckboxWithLabel` component to use for checkboxes that have attached labels. This component encompasses the functionality of allowing to click on the label to toggle the value of the checkbox. There was only one other occurrence of a checkbox with a label—the "Public" checkbox in the channel management modal—and this has been updated to use `CheckboxWithLabel`. Resolves #7794. Release Notes: - Added support for clicking the label of the "Public" checkbox in the channel management modal to toggle the value ([#7794](https://github.com/zed-industries/zed/issues/7794)).
Marshall Bowers created
9ef83a2
Make the labels of the checkboxes on the welcome screen clickable (#7878)
This PR makes the labels of the checkboxes on the welcome screen clickable. Release Notes: - Added support for clicking the labels of the checkboxes on the welcome screen to toggle the value ([#7794](https://github.com/zed-industries/zed/issues/7794)).
Marshall Bowers created
32fdff0
Update issue template configuration (again)
Joseph T. Lyons created
4094562
Update issue template configuration
Joseph T. Lyons created
6869b62
Update `.mailmap` (#7871)
This PR updates the `.mailmap` file to merge some commit authors using multiple emails. Release Notes: - N/A
Marshall Bowers created
21a7421
Update 1_language_support.yml
Joseph T. Lyons created
96dcc38
vim: Implement Go To Previous Word End (#7505)
Activated by keystrokes g-e. Release Notes: - vim: Added `ge` and `gE` for go to Previous Word End. --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Vishal Bhavsar and Conrad Irwin created
e6766e1
Return descriptions for extensions (#7869)
This PR updates the extensions API to return descriptions for extensions. Release Notes: - N/A
Marshall Bowers created
694e184
Upgrade to Taffy 0.4 (#7868)
Upgraded Taffy to v0.4.0 from crates.io (previously using prerelease version from git). Code changes required were minor as gpui was already using a recent version of Taffy. Release Notes: - N/A
Nico Burns created
94426c4
Better logic for copying themed player colors into registry (#7867)
Release Notes: - Fixed a potential panic when themes did not contain enough player colors ([#7733](https://github.com/zed-industries/zed/issues/7733)). Thanks to @maxdeviant for the code review and improvements!
Joey Smith created
bf1bcd0
Secondarily sort by extension name instead of ID (#7866)
This PR makes it so extensions are secondarily sorted by their name (instead of by ID) after we sort them by their download count. Release Notes: - N/A
Marshall Bowers created
23132b5
Display extension download counts (#7864)
This PR adds the download count for extensions to the extensions view. Release Notes: - Added download counts for extensions to the extensions view.
Marshall Bowers created
a8d5864
Fix panic when loading hover state. (#7861)
Release Notes: - Fixed a panic when hovering over an identifier in the editor
Conrad Irwin created
ea322e1
Add `"code_actions_on_format"` (#7860)
This lets Go programmers configure `"code_actions_on_format": {
"source.organizeImports": true,
}` so that they don't have to manage their imports manually
I landed on `code_actions_on_format` instead of `code_actions_on_save`
(the
VSCode version of this) because I want to run these when I explicitly
format
(and not if `format_on_save` is disabled).
Co-Authored-By: Thorsten <thorsten@zed.dev>
Release Notes:
- Added `"code_actions_on_format"` to control additional formatting
steps on format/save
([#5232](https://github.com/zed-industries/zed/issues/5232)).
- Added a `"code_actions_on_format"` of `"source.organizeImports"` for
Go ([#4886](https://github.com/zed-industries/zed/issues/4886)).
Co-authored-by: Thorsten <thorsten@zed.dev>
Conrad Irwin and Thorsten created
e1ae0d4
Add an extensions API to the collaboration server (#7807)
This PR adds a REST API to the collab server for searching and downloading extensions. Previously, we had implemented this API in zed.dev directly, but this implementation is better, because we use the collab database to store the download counts for extensions. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com> Co-authored-by: Marshall <marshall@zed.dev> Co-authored-by: Conrad <conrad@zed.dev>
Max Brunsfeld , Marshall Bowers , Marshall , and Conrad created
bdc2558
Add default language server settings to display inlay hints for Go and TypeScript (#7854)
Hints are still disabled by default in Zed, but when those get enabled, the language server settings allow to display those instantly without further server configuration, which might be not obvious. Also add the documentation enties for those settings and their defaults in Zed. Closes https://github.com/zed-industries/zed/issues/7821 Release Notes: - Added default settings for TypeScript and Go LSP servers to enable inlay hints when those are turned on in Zed ([7821](https://github.com/zed-industries/zed/issues/7821))
Kirill Bulatov created
a41fb29
Linux/x11 input handling (#7811)
Implements the basics of keyboard and mouse handling. Some keys will need special treatment, like Backspace/Delete. In this PR, all keys are treated as append-only. Leaving this for a follow-up. I used @gabydd 's branch as a reference (thank you!) as well as https://github.com/xkbcommon/libxkbcommon/blob/master/doc/quick-guide.md For future work, I'll also use https://github.com/xkbcommon/libxkbcommon/blob/master/tools/interactive-x11.c All commits are separately compileable and reviewable. Release Notes: - N/A --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Dzmitry Malyshau and Mikayla Maki created
aa319cc
Fix buffer search invalid regexp indicator (#7795)
This PR fixes the issue with invalid regexp highlighting (red border) when switching to the simple text searching mode (#7658). Implementation details: - `update_matches()` always relied on the caller to reset the `query_contains_error` flag, which wasn't always the case. Now, it resets the flag itself. Release Notes: - Fix issue with switching between invalid regexp and simple text buffer search (#7658). How it works now: https://github.com/zed-industries/zed/assets/2101250/ac868a5d-5e2f-49a0-90fc-00e62a1d5ee8
Andrew Lygin created