ca18549
Keyboardable buttons in linux alerts (#13235)
Click to expand commit body
Release Notes: - N/A
Conrad Irwin created
ca18549
Keyboardable buttons in linux alerts (#13235)
Release Notes: - N/A
Conrad Irwin created
5cbb360
zed_extension_api: Add default implementation for `language_server_command` (#13234)
This PR adds a default implementation for the `language_server_command` method on the `Extension` trait. This will allow for extensions to be defined without having to implement this method, which will be useful for extensions that may just want to provide slash commands. Release Notes: - N/A
Marshall Bowers created
5ff7c89
Fix panic trying to go to next of 0 matches (#13233)
Release Notes: - Fixed a panic when going to next search result when there are none
Conrad Irwin created
99e4b3a
Add linux arm support to installer (#13231)
Release Notes: - N/A
Conrad Irwin created
9af4b6b
Allow telemetry from unofficial builds (#13224)
Release Notes: - N/A Co-authored-by: Peter Tripp <notpeter@users.noreply.github.com>
Joseph T. Lyons and Peter Tripp created
c84d432
Fix modality indicators in user menu (#13228)
This PR updates the modality indicators in the user menu after #12940. We use the ellipsis throughout the app to indicate that a menu action will open a modal (e.g., the theme selector), so "Themes" needs the trailing ellipsis. Whereas the "Extensions" entry opens up a new tab, which we don't indicate that same way. Release Notes: - N/A
Marshall Bowers created
6cea981
Stop using xtask for clippy (#13223)
This fixes an extra 10 second delay when needing to recompile xtask, and allows passing arbitrary clippy args (like --allow-dirty) Release Notes: - N/A
Conrad Irwin created
490a75a
Fix bug where window contents could appear outside of window bounds on X11 (#13181)
Release Notes: - N/A
Conrad Irwin created
4f364d6
Hide old linux panics (#13221)
Remove noise from the #panics channel by excluding any linux build before 0.139.x. We filter on the os_version and os_name because evern older versions of linux set app_version = 1.0.0. Release Notes: - N/A
Conrad Irwin created
89d2ace
Make LSP task cancellation discoverable (#13226)
Release Notes: - Added the ability to cancel a cargo check by clicking on the status bar item.
Max Brunsfeld created
84a44be
storybook: Use `theme::setup_ui_font` helper function (#13227)
This PR updates the storybook to use the new `theme::setup_ui_font` helper function to initialize the UI font. Release Notes: - N/A
Marshall Bowers created
6b9ddbf
Add more menus to Zed (#12940)
### TODO
- [x] Make sure keybinding shows up in pane + menu
- [x] Selection tool in the editor toolbar
- [x] Application Menu
- [x] Add more options to pane + menu
- Go to File...
- Go to Symbol in Project...
- [x] Add go items to the selection tool in the editor:
- Go to Symbol in Editor...
- Go to Line/Column...
- Next Problem
- Previous Problem
- [x] Fix a bug where modals opened from a context menu aren't focused
correclty
- [x] Determine if or what needs to be done with project actions:
- Difficulty is that these are exposed in the UI via clicking the
project name in the titlebar or by right clicking the root entry in the
project panel. But they require reading and are two clicks away. Is that
sufficient?
- Add Folder to Project
- Open a new project
- Open recent
- [x] Get a style pass
- [x] Implement style pass
- [x] Fix the wrong actions in the selection menu
- [x] Show selection tool toggle in the 'editor settings' thing
- [x] Put preferences section from the app menu onto the right hand user
menu
- [x] Add Project menu into app menu to replace 'preferences' section,
and put the rest of the actions there
- [ ] ~~Adopt `...` convention for opening a surface~~ uncertain what
this convention is.
- [x] Adopt link styling for webview actions
- [x] Set lucide hamburger for menu icon
- [x] Gate application menu to only show on Linux and Windows
Release Notes:
- Added a 'selection and movement' tool to the Editor's toolbar, as well
as controls to toggle it and a setting to remove it (`"toolbar":
{"selections_menu": true/false }`)
- Changed the behavior of the `+` menu in the tab bar to use standard
actions and keybindings. Replaced 'New Center Terminal' with 'New
Terminal', and 'New Search', with the usual 'Deploy Search'. Also added
item-creating actions to this menu.
- Added an 'application' menu to the titlebar to Linux and Windows
builds of Zed
Mikayla Maki created
8af8493
typescript: Make VTSLS the default language server for Typescript (#13140)
Additionally, limit # of returned completion items + use fuzzy filtering on VTSLS side. Prime LSP handler for response handling. Release Notes: - VTSLS is now a default language server for TypeScript, TSX, and JavaScript.
Piotr Osiewicz created
39edbe1
Update `.mailmap` (#13219)
This PR updates the `.mailmap` file to merge some commit authors using multiple emails. Release Notes: - N/A
Marshall Bowers created
f6fa660
wayland: Refactor clipboard implementation (#12405)
Fixes https://github.com/zed-industries/zed/issues/12054 Replaces the `copypasta`/`smithay-clipboard` implementation with a new, custom one TODO list: - [x] Cleanup code - [x] Remove `smithay-clipboard` - [x] Add more mime types to the supported list Release Notes: - Fixed drag and drop on Gnome - Fixed clipboard paste on Hyprland
apricotbucket28 created
b55961b
ruby: Update tree-sitter grammar version (#13216)
Hi, this pull request just updates the `tree-sitter` version for the Ruby language. I checked the changelog and it doesn't contain breaking changes. Thanks. tree-sitter/tree-sitter-ruby@9d86f3761bb3 -> tree-sitter/tree-sitter-ruby@dc2d7d6b50f9 Release Notes: - N/A
Vitaly Slobodin created
01b836a
util: Replace `lazy_static!` with `OnceLock` (#13215)
This PR replaces the `lazy_static!` usages in the `util` crate with `OnceLock` from the standard library. This allows us to drop the `lazy_static` dependency from this crate. Release Notes: - N/A
Marshall Bowers created
41180b8
util: Remove leftover `http` module (#13214)
This PR removes a leftover `http` module in `util` that was lingering from #11680. Release Notes: - N/A
Marshall Bowers created
81475ac
paths: Replace `lazy_static!` with `OnceLock` (#13213)
This PR replaces the `lazy_static!` usages in the `paths` crate with `OnceLock` from the standard library. This allows us to drop the `lazy_static` dependency from this crate. The paths are now exposed as accessor functions that reference a private static value. Release Notes: - N/A
Marshall Bowers created
ba59e66
Improve Python syntax highlighting (#12868)
Release Notes: - Improve syntax highlighting in Python #12578 Before: <img width="1181" alt="Screenshot 2024-06-08 at 01 44 54" src="https://github.com/zed-industries/zed/assets/87859239/0b8ab26b-149b-477e-af08-8cd9f2b1c117"> After: <img width="1184" alt="Screenshot 2024-06-10 at 01 02 35" src="https://github.com/zed-industries/zed/assets/87859239/a319a5ea-54b7-4681-951d-130ea26aa390"> --------- Co-authored-by: Joseph T Lyons <JosephTLyons@gmail.com>
Nigel Jose and Joseph T Lyons created
5ede483
GitHub Issue Templates: Hide Zed Logs (#13211)
Add details/summary block to GitHub issue templates so zed.log can be hidden by default. The diff for this is messy because the existing files were not correctly auto-formatted. So I created two commits, one for autoformat and the other for the changes. I tested it on a private repo. When you first open the issue it looks like this: <img width="879" alt="image" src="https://github.com/zed-industries/zed/assets/145113/07cda992-4d62-4c27-abaa-5c272ff65345"> Then when you double-click inside it becomes editable: <img width="880" alt="image" src="https://github.com/zed-industries/zed/assets/145113/970c6669-84da-41d1-9119-d3eb9b090066"> Release Notes: - N/A
Peter Tripp created
3701e19
Add runnable for rust main function (#13087)
Release Notes: - N/A https://github.com/zed-industries/zed/assets/21101490/7a57805c-1d31-48b2-bc2c-3a6f0b730d72
Panghu created
5dc26c2
util: Use GlobSet in PathMatcher (#13197)
Previously we were using a single globset::Glob in PathMatcher; higher up the stack, we were then resorting to using a list of PathMatchers. globset crate exposes a GlobSet type that's better suited for this use case. In my benchmarks, using a single PathMatcher with GlobSet instead of a Vec of PathMatchers with Globs is about 3 times faster with the default 'file_scan_exclusions' values. This slightly improves our project load time for projects with large # of files, as showcased in the following videos of loading a project with 100k source files. This project is *not* a git repository, so it should measure raw overhead on our side. Current nightly: 51404d4ea08cb5ba1cd678b9963037bde31aa7b2 https://github.com/zed-industries/zed/assets/24362066/e0aa9f8c-aae6-4348-8d42-d20bd41fcd76 versus this PR: https://github.com/zed-industries/zed/assets/24362066/408dcab1-cee2-4c9e-a541-a31d14772dd7 Release Notes: - Improved performance in large worktrees
Piotr Osiewicz created
64d815a
linux/x11: Fix closing of GPUI windows not working (#13201)
This fixes everything but the main Zed window (GPUI examples, prompt library, etc.) not being closable by clicking on the X in X11. We had a dangling reference before: we would remove the window from the X11 state, but GPUI itself would still have the window in its references. In order to fix this we have to call `window.close()`, which ends up calling `cx.remove_window()`, which removes the reference. That in turn then causes the reference to be dropped, which cleans up the X11 state for the window. Release Notes: - N/A
Thorsten Ball created
5dc5486
project panel: Improve performance in large projects (#13202)
In #12980 I've hoisted out creation of HashSet<PathInWorktree> out of render_entry, which made us not create that hash set for each entry in a worktree on each frame. In current nightly, we do it once per call to render() on the whole worktree, which is better. However, we can still reuse the hashed between the frames, if the worktree has not changed. Once we calculate the hashset for a given worktree state, we keep it around for as long as the state is valid for. We calculate the HashSet lazily, as we may not necessarily need it if the project panel is collapsed. In large worktrees, this helps keep the CPU usage of the main thread low-ish. Release Notes: - Improved performance of project panel in large worktrees.
Piotr Osiewicz created
e4ba336
Preserve sections generated by slash commands when reloading a context (#13199)
Release Notes: - N/A
Antonio Scandurra created
195a270
vim: Display pending keys in Vim mode indicator (#13195)
This changes the mode indicator to now show pending keys and not just pending operators. Release Notes: - Added pending keys to the mode indicator in Vim mode. Demo: https://github.com/zed-industries/zed/assets/1185253/4fc4ffd9-2ba7-4e2c-b2c3-cd19b40cb640
Thorsten Ball created
3a26a48
lsp: Revert URL type change (#13193)
This reverts URI changes made in https://github.com/zed-industries/zed/pull/12928 while keeping the perf goodies in tact. We should keep an eye out for https://github.com/gluon-lang/lsp-types/issues/284 Fixes: https://github.com/zed-industries/zed/issues/13135 Fixes: https://github.com/zed-industries/zed/issues/13131 Release Notes: - N/A
Piotr Osiewicz created
479c5df
Add more rust-analyzer configuration examples in the docs (#13189)
Release Notes: - N/A
Kirill Bulatov created
51404d4
Fix ci" on a brazillian keyboard (#13185)
Fixes: #12523 Release Notes: - vim: Fix ci" on keyboards where typing a " requires the IME (#12523)
Conrad Irwin created
05c4c78
Fix ctrl-r with no register (#13184)
Release Notes: - N/A
Conrad Irwin created
0af6e44
Don't generate invalid ranges for C code (#13183)
Fixes: #13128 Release Notes: - Fixed a panic when editing C code ([#13128](https://github.com/zed-industries/zed/issues/13128)).
Conrad Irwin created
7003b0f
Allow canceling in-progress language server work (e.g. `cargo check`) (#13173)
Release Notes: - Added a more detailed message in place of the generic `checking...` messages when Rust-analyzer is running. - Added a rate limit for language server status messages, to reduce noisiness of those updates. - Added a `cancel language server work` action which will cancel long-running language server tasks. --------- Co-authored-by: Richard <richard@zed.dev>
Max Brunsfeld and Richard created
f489c8b
Allow for non-official builds to report telemetry (#13175)
Release Notes: - N/A
Joseph T. Lyons created
be02b2f
chore: Bump git2 to 0.19 (#13180)
Related to: https://github.com/zed-industries/zed/issues/8242 Release Notes: - N/A
Piotr Osiewicz created
258a8a3
Extract paths out of `util` (#13182)
This PR extracts the definition of the various Zed paths out of `util` and into a new `paths` crate. `util` is for generic utils, while these paths are Zed-specific. For instance, `gpui` depends on `util`, and it shouldn't have knowledge of these paths, since they are only used by Zed. Release Notes: - N/A
Marshall Bowers created
78e0f71
ui: Use `PopoverMenu::new` for constructing `PopoverMenu`s (#13178)
This PR replaces the `popover_menu` function for constructing `PopoverMenu`s with a `PopoverMenu::new` associated function. This brings `PopoverMenu` in line with our other UI components. Release Notes: - N/A
Marshall Bowers created
59104a0
assistant: Show an indicator when a crate is being indexed (#13174)
This PR adds an indicator when a crate is being indexed as part of the `/rustdoc` command invocation. https://github.com/zed-industries/zed/assets/1486634/0dd4b663-658c-4be5-a342-cfbd7a938fca Release Notes: - N/A
Marshall Bowers created
7aa28c9
rustdoc: Strip out additional chrome (#13172)
This PR updates the HTML to Markdown converter for rustdoc to strip out some additional chrome. Namely, anchors and links to source files. Release Notes: - N/A
Marshall Bowers created
bb1d52b
docs: Remove references to `copilot` and `show_copilot_suggestions` settings (#13169)
This PR removes references to the deprecated `copilot` and `show_copilot_suggestions` settings. These settings were removed in #13167. Release Notes: - N/A
Marshall Bowers created
ca035db
Move project event logic to telemetry.rs (#13166)
I previously put this logic directly into `project.rs`, but it doesn't feel good to pollute that code with telemetry logic, so I've moved it over to `telemetry.rs`. Release Notes: - N/A
Joseph T. Lyons created
71cc95d
Remove `copilot` and `show_copilot_suggestions` setting aliases (#13167)
This PR removes the Copilot-specific aliases for the `inline_completions` and `show_inline_completions` settings. While these aliases were added to maintain backward-compatibility, the aliasing behavior here can lead to a confusing experience when both keys end up in the `settings.json`. Release Notes: - Breaking Change: Removed the `copilot` alias for the `inline_completions` setting. If you have settings under `copilot` they should get moved to `inline_completions`. - Breaking Change: Removed the `show_copilot_suggestions` alias for the `show_inline_completions` setting.
Marshall Bowers created
3707734
windows: Fix executable display name (#13091)
Closes #12907 **Note:** To actually take effect, delete the registered key of `Zed` in `HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache`, for example, delete this:  ### Before 1. In Taskmanager  2. Right click taskbar  ### After   Release Notes: - N/A
张小白 created
e19627d
windows: Fix regression introduced by a prev PR (#13090)
Fix regression introduced by #12991 ### Before The re-position and re-size of a window is broken. https://github.com/zed-industries/zed/assets/14981363/d4fb9dce-707e-4ab1-9ff5-f355b7fdd8a8 ### After https://github.com/zed-industries/zed/assets/14981363/7fd232e6-ff6c-4b7f-ad32-c284acd4f6db Release Notes: - N/A
张小白 created
bb75d87
Remove `language_overrides` setting alias (#13164)
This PR removes the `language_overrides` alias for the `languages` setting. I've seen a number of people run into issues where they have both `languages` and `language_overrides` in their settings and get confused when their settings don't seem to apply as expected. This is a breaking change, but I think it is a necessary one to prevent more users from running into issues. Release Notes: - Breaking Change: Removed the `language_overrides` alias for the `languages` setting. If you have settings under `language_overrides` they should get moved to `languages`.
Marshall Bowers created
eecbf20
Fix 100s freeze on boot on X11 (#13156)
Release Notes: - Fixed switching between dark and light mode with no windows open.
Conrad Irwin created
7fe5c27
repl: Add missing LICENSE file (#13161)
This PR adds a missing LICENSE file to the `repl` crate. Release Notes: - N/A
Marshall Bowers created
221edfc
Bring Jupyter to Zed Editing (#12062)
Run any Jupyter kernel in Zed on any buffer (editor): <img width="1074" alt="image" src="https://github.com/zed-industries/zed/assets/836375/eac8ed69-d02b-4d46-b379-6186d8f59470"> ## TODO ### Lifecycle * [x] Launch kernels on demand * [x] Wait for kernel to be started * [x] Request Kernel info on start * [x] Show in progress indicator * [ ] Allow picking kernel (it defaults to first matching language name) * [ ] Menu for interrupting and shutting down the kernel * [ ] Drop running kernels once editor is dropped ### Media Outputs * [x] Render text and tracebacks with ANSI color handling * [x] Render markdown as text * [x] Render PNG and JPEG images using an explicit height based on line-height * ~~Render SVG~~ -- not happening for this PR due to lack of text in SVG support * [ ] Process `update_display_data` message and related `display_id` * [x] Process `page` data from payloads as outputs * [ ] Render markdown as, well, rendered markdown -- Note: unsure if we can get line heights here ### Document * [x] Select code and run * [x] Run current line * [x] Clear previous overlapping runs * [ ] Support running markdown code blocks * [ ] Action to export session as notebook or output files * [ ] Action to clear all outputs * [ ] Delete outputs when lines are deleted ## Other missing features The following is a list of missing functionality or expectations that are out of scope for this PR. ### Python Environments Detecting python environments should probably be done in a separate PR in tandem with how they're used with LSP. Users likely want to pick an environment for their project, whether a virtualenv, conda env, pyenv, poetry backed virtualenv, or the system. Related issues: * https://github.com/zed-industries/zed/issues/7646 * https://github.com/zed-industries/zed/issues/7808 * https://github.com/zed-industries/zed/issues/7296 ### LSP Integration * Submit `complete_request` messages for completions to interleave interactive variables with LSP * LSP for IPython semantics (`%%timeit`, `!ls`, `get_ipython`, etc.) ## Future release notes - Run code in any editor, whether it's a script or a markdown document Release Notes: - N/A
Kyle Kelley created
d95c424
Show correct line number for entry placeholders in `/search` (#13151)
Release Notes: - N/A
Antonio Scandurra created
d6d5619
Properly propagate git statuses in the outline panel (#13150)
Release Notes: - N/A Co-authored-by: Max <max@zed.dev>
Kirill Bulatov and Max created