7065d6c
Use proper template for initial runnables config contents (#8064)
Click to expand commit body
Release Notes: - N/A
Kirill Bulatov created
7065d6c
Use proper template for initial runnables config contents (#8064)
Release Notes: - N/A
Kirill Bulatov created
6c714c1
Fix markdown preview heading overflows no wrap (#8052)
 Release Notes: - Improved markdown preview wrapping ([#8047](https://github.com/zed-industries/zed/issues/8047)).
Hourann created
c54d6af
Properly ignore missing/empty runnables config
Kirill Bulatov created
48a6fb9
Fix runnables-related hickups (#8058)
* never error on absent/empty runnables file * always activate terminal tab on runnable (re)schedule Release Notes: - N/A
Kirill Bulatov created
e9f400a
rust-analyzer check command is `check` and not `checkOnSave` (#8054)
Reference: https://rust-analyzer.github.io/manual.html#configuration Release Notes: - N/A
Ali Servet Donmez created
fc101c1
Log when failed to deserialize response from language server (#8046)
This should probably help us debug when language servers don't start up properly. Release Notes: - N/A
Thorsten Ball created
4616d66
Download right language server binary for OS (#8040)
Release Notes: - Download right language server binary for OS
bbb651 created
3ef8a99
chat: auto detect links (#8028)
@ConradIrwin here's our current implementation for auto detecting links in the chat. We also fixed an edge case where the close reply to preview button was cut off (rendered off screen). Release Notes: - Added auto detection for links in the chat panel. --------- Co-authored-by: Remco Smits <62463826+RemcoSmitsDev@users.noreply.github.com>
Bennet Bo Fenner and Remco Smits created
1e44bac
Add Ruby method visibility in outline view (#7954)
Release Notes: - Improved ([#7849 ](https://github.com/zed-industries/zed/issues/7849)). <img width="897" alt="image" src="https://github.com/zed-industries/zed/assets/7274458/a2b0db84-1971-45c0-a5a2-68de651e342b">
Ben Hamment created
aad7761
Add an indicator to the channel chat to see all the messages that you missed (#7781)
This pull requests add the following features: - Show indicator before first unseen message - Scroll to last unseen message <img width="241" alt="Screenshot 2024-02-14 at 18 10 35" src="https://github.com/zed-industries/zed/assets/62463826/ca396daf-7102-4eac-ae50-7d0b5ba9b6d5"> https://github.com/zed-industries/zed/assets/62463826/3a5c4afb-aea7-4e7b-98f6-515c027ef83b ### Questions: 1. Should we hide the indicator after a couple of seconds? Now the indicator will hide when you close/reopen the channel chat, because when the last unseen channel message ID is not smaller than the last message we will not show it. Release Notes: - Added unseen messages indicator for the channel chat.
Remco Smits created
0422d43
Linux: Add support for MouseButton::Navigate in GPUI (wayland and x11) (#7996)
Release Notes: - N/A Based on wgpu implementation (which I wrote). --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
bbb651 and Mikayla Maki created
b00b65b
linux/x11: implement window focus (#8002)
Release Notes: - N/A
Dzmitry Malyshau created
fddb778
Enable server side decorations on wayland (#8037)
This PR enables server side decorations on Wayland if possible. This is stopgap solution, so that the window can be moved, resized and dragged on Wayland sessions at all.  Since Wayland compositors can decide to force either mode (as in, forcing server or client side decorations), this requires additional handling in zed. Since zed doesn't provide any of that handling as of now, as a temporary solution server side decorations are always requested.
Janrupf created
77974a4
Stubbing unix-dependent values on Windows (#8036)
Release Notes: - N/A
白山風露 created
0037f0b
Avoid dependencies build errors on Windows (#7827)
This is a compilation of fixes for errors that appeared in dependent crates in Windows. - wezterm (zed-industries/wezterm#1) - tree-sitter-svelte (Himujjal/tree-sitter-svelte#54) - tree-sitter-uiua (shnarazk/tree-sitter-uiua#25) - tree-sitter-haskell (I sent a PR, but upstream source is regenerated and no longer errors.) Release Notes: - N/A
白山風露 created
37f6a70
Invalidate Linux build caches more agressively (#8031)
We run Linux CI on regular GitHub Action runners, which have ~30GB of disk space. This is nothing for Rust builds and, due to Cargo.lock perturbations, we tend to accumulate enough artifacts to fill the disk entirely since `restore-keys` alowed to keep the cache for different lockfiles. Instead, try to invalidate the cache more aggressively (which will cost us more frequent ~30min Linux CI runs) to see how this will work in comparison. Release Notes: - N/A
Kirill Bulatov created
f4bafd5
Dart support (#7220)
This is my first contribution, feedback is welcome. Release Notes: - Added Dart language support ([#5343](https://github.com/zed-industries/zed/issues/5343)).
Abdullah Alsigar created
b3d3a00
chore: Add missing LICENSE-GPL files
Piotr Osiewicz created
0a5df7d
Fix `jk` not working in Vim bindings (#8023)
Fixes #8006. Release Notes: - Fixed two-character bindings in Vim insert mode (e.g. `j k` or `j j`) not working. ([#8006](https://github.com/zed-industries/zed/issues/8006)) Co-authored-by: Conrad <conrad@zed.dev>
Thorsten Ball and Conrad created
4d1585b
Don't drop key bindings (#8019)
Fixes: #7748 Release Notes: - Fixed a bug where keystrokes could be lost after focus changes ([#7748](https://github.com/zed-industries/zed/issues/7748)). Co-authored-by: Antonio <as-cii@zed.dev>
Conrad Irwin and Antonio created
99559f3
Add another runnables_ui/Cargo.toml field to satisfy license checks
Kirill Bulatov created
5783497
Add missing license field to runnables_ui
Kirill Bulatov created
e27c2fc
Fix seed-db script by passing it the correct admin file path (#8022)
Release Notes: - N/A
Kirill Bulatov created
f17d0b5
Add static Runnables (#8009)
Part of #7108 This PR includes just the static runnables part. We went with **not** having a dedicated panel for runnables. This is just a 1st PR out of N, as we want to start exploring the dynamic runnables front. Still, all that work is going to happen once this gets merged. Release Notes: - Added initial, static Runnables support to Zed. Such runnables are defined in `runnables.json` file (accessible via `zed: open runnables` action) and they can be spawned with `runnables: spawn` action. --------- Co-authored-by: Kirill Bulatov <kirill@zed.dev> Co-authored-by: Pitor <pitor@zed.dev> Co-authored-by: Beniamin <beniamin@zagan.be>
Piotr Osiewicz , Kirill Bulatov , Pitor , and Beniamin created
ca251ba
Drop `Box<dyn PlatformWindow>` when the OS closes the native window (#8016)
Closes #7973 This fixes a leak in GPUI when the user didn't override `on_should_close_window`. Release Notes: - N/A --------- Co-authored-by: Thorsten <thorsten@zed.dev>
Antonio Scandurra and Thorsten created
c33efe8
recent projects: cleanup ui (#7528)
As the ui for the file finder was recently changed in #7364, I think it makes sense to also update the ui of the recent projects overlay. Before:  After:  Release Notes: - Improved UI of recent project overlay
Bennet Bo Fenner created
2b56c43
Wayland: Keyboard input improvements (#7989)
Release Notes: - N/A --- Right now the Wayland backend is using `xkb::State::key_get_utf8` as the `key`, when it should be used as the `ime_key`. It also manages pressing/releasing modifiers manually when this should be managed by the display server. This allows modifier combinations to work in more cases, making it an alternative to https://github.com/zed-industries/zed/pull/7975, which interprets what is now only used as the `ime_key` value as a `key` value.
Tadeo Kondrak created
bd137b0
Wayland fractional scaling (#7961)
This PR adds support for fractional scaling on Wayland. Release Notes: - N/A
Roman created
4e1e26b
blade: Fix initialization of atlas textures used for path rasterization (#8000)
Generally the BladeAtlas logic has been deferring all the texture
initializations and updates till `begin_frame`. This doesn't work for
path rasterization, since a texture needs to be allocated after
`begin_frame` and used immediately.
Fixed validation error:
> UNASSIGNED-CoreValidation-DrawState-InvalidImageLayout(ERROR / SPEC):
msgNum: 1303270965 - Validation Error: [
UNASSIGNED-CoreValidation-DrawState-InvalidImageLayout ] Object 0:
handle = 0x60ce301b9010, name = main, type =
VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x51820000000007b,
name = atlas, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x4dae5635 |
vkQueueSubmit(): pSubmits[0].pCommandBuffers[0] command buffer
VkCommandBuffer 0x60ce301b9010[main] expects VkImage
0x51820000000007b[atlas] (subresource: aspectMask 0x1 array layer 0, mip
level 0) to be in layout VK_IMAGE_LAYOUT_GENERAL--instead, current
layout is VK_IMAGE_LAYOUT_UNDEFINED.
Objects: 2
[0] 0x60ce301b9010, type: 6, name: main
[1] 0x51820000000007b, type: 10, name: atlas
Release Notes:
- N/A
Dzmitry Malyshau created
12b12ba
Add syntax highlighting and LSP for Dockerfiles(#6905) (#7977)
Release Notes: - Added Dockerfile syntax highlighting and LSP support --------- Co-authored-by: Bryce Palmer <bpalmer@redhat.com> Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
d1y , Bryce Palmer , and Kirill Bulatov 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