bc0359a
gpui: Input example log keystrokes (#13963)
Click to expand commit body
Release Notes: - N/A
Conrad Irwin created
bc0359a
gpui: Input example log keystrokes (#13963)
Release Notes: - N/A
Conrad Irwin created
23c84f8
linux: Treat fullscreen as tiled on X11 and prevent resizing while maximized (#13990)
Two quick fixes for issues I noticed: 1. Fullscreening an unmaximized X11 window still showed rounded window corners and allowed resizing 2. Maximized windows still allowed for resizing on corners due to missing checks  Release Notes: - N/A
apricotbucket28 created
2922617
docs: Add tiny tweaks to the Linux page (#13994)
Release Notes: - N/A
Danilo Leal created
9a523ef
Fix keybind conflicts (atom mac/linux default) (#13988)
- atom(mac): Cmd+j conflicts with `workspace: ToggleBottomDock` in default map. Revert. - default(linux): `ctrl-shift-t` conflict. Move `project_symbols::Toggle` to `ctrl-t` to match vscode linux. Leave `pane::ReopenClosedItem` at `ctrl-shift-t` to match vscode/chrome on linux. - Fixes #13973
Peter Tripp created
9b68865
Add a way to filter items in the outline panel (#13984)
https://github.com/zed-industries/zed/assets/2690773/145a7cf2-332c-46c9-ab2f-42a77504f54f Adds a way to filter entries in the outline panel, by showing all entries (even if their parents were collapsed) that fuzzy match a given query. Release Notes: - Added a way to filter items in the outline panel
Kirill Bulatov created
9a6f30f
Snippets: Move snippets into the core of editor (#13937)
Release Notes: - Move snippet support into core editor experience, marking the official extension as deprecated. Snippets now show up in any buffer (including plain text buffers).
Piotr Osiewicz created
b3dad0b
Revert "x11: Differentiate between mouse and keyboard focus #13943" (#13974)
This reverts #13943 and reopens #13897 since the fix in #13943 comes with a regression: Sometimes Zed loses keyboard focus and can't be restored. I haven't figured out yet exactly when and how this happens and can't reliably reproduce it yet, but there's something off with focus handling. One reliable way to reproduce _one_ of the problems: 1. Open two zed windows 2. Focus one Zed window 3. Hover with the mouse over the other 4. Try to type in the window that should still be focused So, to be careful, I'm going to revert the PR first, since I couldn't find an obvious fix yet. If we do find a fix, we can unrevert. Release Notes: - N/A
Thorsten Ball created
18d6be2
Add keyboard shortcuts for the prompts on Linux (#13915)
This change adds ability to choose any action from prompts, not just the default one and cancel as Zed has right now. For example, when a user tries to close a file with edits in it the prompt offers "Don't save" option that can be selected only with mouse. Now you can use arrows, tab/shift-tab to pick action and enter/space to confirm it. Fixes [#13906](https://github.com/zed-industries/zed/issues/13906) Release Notes: - Added keyboard navigation in the prompts on Linux ([#13906](https://github.com/zed-industries/zed/issues/13906)). Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Aleksei Gusev and Thorsten Ball created
5e1c690
Add Nix/NixOS dev-shell (#13407)
This PR adds a Nix/NixOS development-shell (`shell.nix`), which is based on the upstream [nixpkgs](https://github.com/NixOS/nixpkgs/blob/c5d4d458115263ec3ee0efd974e6aeb2f787a0ed/pkgs/by-name/ze/zed-editor/package.nix), as well as its corresponding `flake.nix` file. To use it, run either the `nix-shell` command (uses the `shell.nix` file), or the newer but experimental `nix develop` command (uses `flake.nix`) ~~This has not been tested on macOS, tho preliminary code is there to try and support it, feel free to report any issues.~~ Zed unfortunately doesn't build on nix-darwin (see https://github.com/NixOS/nixpkgs/issues/320084), so this PR doesn't aim to add darwin support. --- Release Notes: - N/A --------- Signed-off-by: xtrm <oss@xtrm.me> Co-authored-by: Niklas Korz <niklas@niklaskorz.de>
killian and Niklas Korz created
034d905
Allow vim counts with undo and redo (#13950)
These were previously passed directly to the editor module, which knows nothing about vim counts. Instead, implement new actions in the vim module which take the count and use it to invoke the corresponding action in the editor module, properly repeated. Release Notes: - Fixed vim undo and redo commands not taking counts.
Matt Fellenz created
0d7bd0c
vim: Disable default ctrl-x/ctrl-w on linux (#13966)
Release Notes: - N/A
Conrad Irwin created
ed50dea
Only clear selections when right click was performed outside of selection (#13701)
Release Notes: - Fixed selections being cleared when right-click was performed outside of a selection ([#4267](https://github.com/zed-industries/zed/pull/13701)). <img width="1136" alt="Screenshot 2024-07-01 at 16 53 58" src="https://github.com/zed-industries/zed/assets/43210583/082bfb0a-c679-4e87-a4e8-7dd751d8f4a2">
Stanislav Alekseev created
5c95d28
Ensure people who hit /linux directly have the right instructions (#13959)
Release Notes: - N/A
Conrad Irwin created
05e2e4d
Send IME-supported key downs (#13964)
Release Notes: - N/A
Conrad Irwin created
30479bf
Improve window decorations: check for compositor support (#13822)
Adds the `compositor_support` to the `X11WindowState` struct so that correct window decorations are selected Release notes: - N/A --------- Co-authored-by: Thorsten Ball <mrnugget@gmail.com> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Sebastijan Kelnerič , Thorsten Ball , and Conrad Irwin created
a40a16a
zsh instructions too (#13944)
Release Notes: - N/A
Conrad Irwin created
2e7db8f
Add mouse handling to gpui input example (#13960)
Release Notes: - N/A
Conrad Irwin created
b0ecda6
x11 calloop 2 (#13955)
Release Notes: - N/A --------- Co-authored-by: Max <max@zed.dev>
Conrad Irwin and Max created
efc2336
title_bar: Factor out collab-related code into `collab` module (#13957)
This PR refactors the `TitleBar` component to move all of the collab-related code into the `collab` module. This simplifies the top-level `Render` implementation of `TitleBar` by a lot and makes it easier to read. Release Notes: - N/A
Marshall Bowers created
9e36a66
ui: Add `NumericStepper` component (#13954)
This PR adds a `NumericStepper` component that can be used to display a numeric value along with controls to increment, decrement, and reset the value. The `ApplicationMenu` has been updated to use the `NumericStepper` for adjusting the buffer and UI font size. Here it is in action: https://github.com/zed-industries/zed/assets/1486634/03cffe67-1256-4283-aa3d-560fffa06dad Note: Due to the way we do font adjustments, once modified the reset button will be displayed until it is clicked (or the font size adjustment is otherwise reset). Simply returning to the original value will currently not hide the reset button. Release Notes: - N/A
Marshall Bowers created
97f3153
Linux docs (#13945)
Release Notes: - N/A --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev> Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Conrad Irwin , Mikayla Maki , and Marshall Bowers created
0b6ef99
wayland: Implement `activate()` API and use portals to open URLs and paths (#13336)
This PR consists of two main changes: 1. The first commit changes the `open` crate for opening URLs/paths for the `OpenURI` desktop portal. This fixes the activation token not being passed to programs (at least on KDE). 2. The second commit implements the window `activate()` API on Wayland. This allows KWin and Mutter to show a visual indicator when the window is requesting attention. (see https://github.com/zed-industries/zed/issues/12557)  Release Notes: - N/A
apricotbucket28 created
414cff5
One Dark Updates (#13777)
Before | After  Release Notes: - Improved contrast between some items in the One Dark theme.
Nate Butler created
2925f3d
Rename `ui_text_field` crate to `ui_input` (#13949)
This PR renames the `ui_text_field` crate to `ui_input` to make it a bit more generic. We'll likely end up with multiple kinds of input components in this crate. Release Notes: - N/A
Marshall Bowers created
1a0242e
Add story for `ApplicationMenu` (#13948)
This PR adds a story for the `ApplicationMenu` so it can be viewed in isolation. <img width="664" alt="Screenshot 2024-07-08 at 4 45 24 PM" src="https://github.com/zed-industries/zed/assets/1486634/dca3dd32-4845-4009-b781-b4bac9ba6049"> Release Notes: - N/A
Marshall Bowers created
ea9ba68
title_bar: Factor out application menu into its own component (#13947)
This PR factors out the application menu in the title bar into its own component. Release Notes: - N/A
Marshall Bowers created
af697d9
Better tooltips for back/forward (#13946)
Fixes #8459
Peter Tripp created
75377bb
x11: Differentiate between mouse and keyboard focus (#13943)
Fixes https://github.com/zed-industries/zed/issues/13897 Release Notes: - N/A
apricotbucket28 created
032b203
Separate out macOS and Linux keymaps (#13792)
Release Notes: - Added Linux-Specific keymaps for JetBrains, Atom and Sublime Text - Improved MacOS-specific keymaps for JetBrains and Atom - Improved Linux default keymap (VSCode compatibility) - Windows now uses same keymap as Linux --------- Co-authored-by: Peter Tripp <peter@zed.dev>
Mikayla Maki and Peter Tripp created
f555f66
clojure: Bump to v0.0.3 (#13935)
This PR bumps the Clojure extension to v0.0.3. Changes: - https://github.com/zed-industries/zed/pull/13914 - https://github.com/zed-industries/zed/pull/13933 Release Notes: - N/A
Marshall Bowers created
d3f869a
scripts/flatpak: Escape XML characters in convert-release-notes.py (#13801)
Resolves #13791 Release Notes: - N/A
Joey Riches created
c617d48
clojure: Upgrade `zed_extension_api` to v0.0.6 (#13933)
This PR upgrades the Clojure extension to use v0.0.6 of the `zed_extension_api`. Release Notes: - N/A
Marshall Bowers created
7f50055
windows: Replace symlinks with files for TSX Tree-sitter queries (#13893)
Previously to these changes, as stated in the issue, when someone tried to use TSX as language for the file, the language was not set and it disappeared from the selectable language list. This was due to the fact that that the three files were symlinks, and windows couldn't read them. I replaced them with normal files. Fixes #12208. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Ghostylab and Marshall Bowers created
c5e5add
clojure: Recognize ClojureDart files (#13914)
Added support for ClojureDart (cljd) files in the Clojure Extension Release Notes: - N/A
zachcp created
65e463b
x11: Properly update XKB group state (#13931)
Pass on all the XkbStateNotify information to XKB. > "All parameters must always be passed, or the resulting state may be incoherent." > https://docs.rs/xkbcommon/latest/xkbcommon/xkb/struct.State.html#method.update_mask Previously, many keymaps using multiple groups/layers would not work and remain in group0. Release Notes: - Fixed handling of Xkb keymap groups on X11.
fsh created
11c7374
Use user-defined font weight in terminal (#13926)
Related #13653 Release Notes: - Fixed honoring of the `terminal.font_weight` user setting
Aleksei Gusev created
cd7268f
linux: Add tracing logs to the x11 client and linux dispatcher (#13928)
This adds some tracing logging that can be toggled on to debug issues. How I used it: ``` RUST_LOG=gpui=trace cargo run ``` Release Notes: - N/A
Thorsten Ball created
a1eaf1b
tailwind: Check user settings for `classAttributes` (#13923)
This addresses the question in [this
comment](https://github.com/zed-industries/zed/issues/5830#issuecomment-2211942554)
by adding support for `classAttributes` to the settings.
Meaning that the following Zed `settings.json` now works:
```jsonc
{
"lsp": {
"tailwindcss-language-server": {
"settings": {
"classAttributes": [
"class",
"className",
"ngClass",
// add styles so will give intellisense to styles constant.
"styles"
]
// Optional:
// "includeLanguages": {
// "erb": "html",
// "ruby": "html"
// },
// "experimental": {
// "classRegex": ["\\bclass:\\s*['\"]([^'\"]*)['\"]"]
// }
}
}
}
}
```
Release Notes:
- Added support for setting `classAttributes` in the configuration for
`tailwindcss-language-server`. Example: `{ "lsp": {
"tailwindcss-language-server": { "settings": { "classAttributes": [
"class", "className", "ngClass", "styles" ] } } } }`
Thorsten Ball created
ab83820
linux: Remove `StartupWMClass` from .desktop file, add `NewWorkspace` action (#13807)
Release Notes: - N/A
jansol created
800bdf3
linux: Fix dropping action when action is just started (#13840)
```
Thread "main" panicked with "divide by zero error when dividing duration by scalar" at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/time.rs:1172:31
0: zed::reliability::init_panic_hook::{{closure}}
at crates/zed/src/reliability.rs:58:29
1: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/alloc/src/boxed.rs:2036:9
std::panicking::rust_panic_with_hook
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:799:13
2: std::panicking::begin_panic_handler::{{closure}}
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:664:13
3: std::sys_common::backtrace::__rust_end_short_backtrace
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/sys_common/backtrace.rs:171:18
4: rust_begin_unwind
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:652:5
5: core::panicking::panic_fmt
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/panicking.rs:72:14
6: core::panicking::panic_display
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/panicking.rs:263:5
7: core::option::expect_failed
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/option.rs:1994:5
8: core::option::Option<T>::expect
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/option.rs:895:21
<core::time::Duration as core::ops::arith::Div<u32>>::div
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/time.rs:1172:31
9: <gpui::platform::linux::wayland::client::WaylandClientStatePtr as wayland_client::event_queue::Dispatch<wayland_client::protocol::wl_keyboard::WlKeyboard,()>>::event::{{closure}}
at crates/gpui/src/platform/linux/wayland/client.rs:1211:63
10: <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::{{closure}}
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/sources/mod.rs:327:61
11: <calloop::sources::timer::Timer as calloop::sources::EventSource>::process_events
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/sources/timer.rs:122:38
12: <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/sources/mod.rs:326:9
13: calloop::loop_logic::EventLoop<Data>::dispatch_events
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/loop_logic.rs:445:31
14: calloop::loop_logic::EventLoop<Data>::dispatch
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/loop_logic.rs:559:9
15: calloop::loop_logic::EventLoop<Data>::run
at /home/atassis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/calloop-0.13.0/src/loop_logic.rs:596:13
16: <gpui::platform::linux::wayland::client::WaylandClient as gpui::platform::linux::platform::LinuxClient>::run
at crates/gpui/src/platform/linux/wayland/client.rs:655:9
17: gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run
at crates/gpui/src/platform/linux/platform.rs:153:9
18: gpui::app::App::run
at crates/gpui/src/app.rs:140:9
19: zed::main
at crates/zed/src/main.rs:382:5
20: core::ops::function::FnOnce::call_once
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/ops/function.rs:250:5
21: std::sys_common::backtrace::__rust_begin_short_backtrace
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/sys_common/backtrace.rs:155:18
22: std::rt::lang_start::{{closure}}
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/rt.rs:159:18
23: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/core/src/ops/function.rs:284:13
std::panicking::try::do_call
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:559:40
std::panicking::try
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:523:19
std::panic::catch_unwind
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panic.rs:149:14
std::rt::lang_start_internal::{{closure}}
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/rt.rs:141:48
std::panicking::try::do_call
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:559:40
std::panicking::try
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panicking.rs:523:19
std::panic::catch_unwind
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/panic.rs:149:14
std::rt::lang_start_internal
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/rt.rs:141:20
24: std::rt::lang_start
at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081/library/std/src/rt.rs:158:17
25: main
26: __libc_start_call_main
27: __libc_start_main_impl
28: _start
```
This error was happening when I started typing. This PR fixes this
error.
Fedora 40, latest kernel, gnome 46, wayland.
Release Notes:
- N/A
Taimuraz Kaitmazov created
79f3646
Add missing clipboard shortcut to default-linux.json (#13900)
Bind shift-delete to editor::Cut (similar to #11799, which added copy and paste, but not cut) Release Notes: - N/A
Vince created
813cc3f
Keymap oneliners (#13887)
This is should be a no-op, whitespace formatting only. Removes 425 lines of excess whitespace in our default keymap json files. Release Notes: - Improved formatting of default keymaps (single line per bind)
Peter Tripp created
c190ed4
Treat `flake.lock` files as JSON (#13886)
This PR updates the default settings to treat Nix's `flake.lock` files as JSON. Resolves https://github.com/zed-extensions/nix/issues/2. Release Notes: - Nix's `flake.lock` files are now automatically identified as JSON.
Marshall Bowers created
5c7e6b7
wayland: Fix window state issues (#13885)
Fixes some issues with the CSD added in https://github.com/zed-industries/zed/pull/13611 Here's a video comparing the master branch (yellow icon) with this PR (blue icon): https://github.com/zed-industries/zed/assets/71973804/35be443a-8f24-4aed-910b-625bad9821e2 _Note: the flicker at the bottom of the window when maximizing is an issue with the KDE floating task bar, it happens with all programs._ Release Notes: - N/A
apricotbucket28 created
1c1fd6a
Finely scope repl events for runs and output clearing (#13872)
Sets up the `cmd-enter` keybinding for the jupyter repl to only apply when enabled. Release Notes: - N/A --------- Co-authored-by: Kirill <kirill@zed.dev>
Kyle Kelley and Kirill created
750df6c
Clean up comments in runtimes (#13870)
Kyle Kelley created
a53b3b6
Explicitly specify php files' formatter for prettier (#13883)
Closes https://github.com/zed-industries/zed/issues/13878 Seems that all regular files types are being recognized by Prettier from their paths, but the PHP one does not despite the PHP plugin used when formatting. Release Notes: - Fixed PHP prettier formatting, by including `php` parser name into formatting queries ([13878](https://github.com/zed-industries/zed/issues/13878))
Kirill Bulatov created
078ce33
lua: Bump to v0.0.3 (#13882)
This PR bumps the Lua extension to v0.0.3. Changes: - https://github.com/zed-industries/zed/pull/13871 Release Notes: - N/A
Marshall Bowers created
19490d8
lua: Add Windows support (#13871)
The current version of the extension tries to download the Windows binary files for lua-language-server like this: `lua-language-server-3.9.3-win32-x64.tar.gz` The [Windows binary files](https://github.com/LuaLS/lua-language-server/releases) are only released as zip archives, so it will fail to get the required files. This pr changes the following: - Add check for Windows specific zip archive - Add check for Windows specific .exe executable Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Idris Saklou and Marshall Bowers created
61e4b64
zed_extension_api: Return structured slash command completions (#13879)
This PR updates the extension API to use structured slash command completions instead of plain strings. This allows slash commands defined in extensions to take advantage of the improvements made in #13876. Release Notes: - N/A
Marshall Bowers created