3cabd4b
gpui example: Fix SVG not showing up when running from root (#13648)
Click to expand commit body
Took me a while to figure out that I can't run
cargo run -p gpui --example animation
and that it has to run in the `gpui` crate.
So I thought I'd fix this.
Release Notes:
- N/A
Thorsten Ball
created
2972bdc
docs: Make it clearer how to disable ligatures with `buffer_font_features` (#13645)
Click to expand commit body
This PR updates the docs around disabling font ligatures to make it
clearer which OpenType features need to be changed.
Release Notes:
- N/A
Marshall Bowers
created
a295b90
Fix typo in tab_bar.show default value rustdoc (#13641)
Click to expand commit body
Fixes #13639
Release Notes:
- N/A
Peter Tripp
created
891f195
Add support for .markdown extension (#13609)
The PageUp key was not working for the context menu. Instead of
selecting one of the previous items in the context menu, `MovePageUp`
closed the menu and scrolled the editor. `MovePageDown` was working
correctly because it has the same fix.
Release Notes:
- Fixed `pageup` key, when bound to `editor::MovePageUp`, not moving context menus as other keys
Aleksei Gusev
created
00d1561
Use better names for prompts duplicated (#13630)
Click to expand commit body
Repeats project panel duplicated file name logic for prompts:
* add a ` copy` suffix
* if conflicts still, add a ` i` digit suffix, where `i` is the first
number available starting from 1
Release Notes:
- N/A
Kirill Bulatov
created
d5fbf75
Add keyboard shortcuts for scrolling in terminal (#13508)
Click to expand commit body
Fixes #4917, #12231
Release Notes:
- Added keyboard shortcuts for scrolling in terminal ([4917](https://github.com/zed-industries/zed/issues/4917), [12231](https://github.com/zed-industries/zed/issues/12231))
Aleksei Gusev
created
61bbb35
Fix a stupid bug that was dropping system prompts for Claude (#13626)
Click to expand commit body
Release Notes:
- Fixed a bug that was causing system prompts to be dropped for
Anthropic models.
@JosephTLyons @notpeter We probably need to hot-fix this as I'm pretty
sure this affects the regular anthropic provider in addition to just the
feature-flagged cloud stuff. Wouldn't mind confirming that first so we
can communicate around it. 😬
Release Notes:
- vim: Fixed `:` in empty diagnostics view
- vim: Fixed `g/` outside of an editor
Conrad Irwin
created
97159bd
Associate logs from log_err with the calling crate (#13617)
Click to expand commit body
Now, when you selectively enable logs from particular crates with
`RUST_LOG=call,worktree`, logs created via `log_err` calls in those
crates get correctly enabled. Previously, they were all attributed to
the `util` crate, because they used the normal logging macros, which
implicitly insert the current crate name.
This relies on the regularity of our directory naming. Rust's
`track_caller` feature allows you to obtain the file system path of the
caller, but not its rust module path, so I'm inferring the crate name
from the file system path (which I believe is always valid, in our
codebase).
Release Notes:
- N/A
This PR extracts a singular title bar (`title_bar::TitleBar`) from
`ui::TitleBar` and
`collab_ui::collab_titlebar_item::CollabTitlebarItem`.
This is a first step towards organizing title bar things into one place,
and standardizing platform titlebar/window control implementations.
Release Notes:
- N/A
Fixes a typo in the README which (I believe) was accidentally committed
in #13604
Release Notes:
- N/A
Bennet Bo Fenner
created
228202a
Store starts open state of outline panel (#13601)
Click to expand commit body
- Fixed issue where outline panel remains open despite being closed
before window close.
Before the release of Outline Panel feature, everything works fine. But
after that, the outline panel keeps open. It's very annoy that I only
want to edit a simple file. Event I close it before I close the window.
The active state of this panel didn't stored.
### Description:
Before the introduction of the Outline Panel feature, the application
behaved as expected. However, with the addition of the Outline Panel, an
issue arose where the panel would persistently remain open. This
behavior was observed even when manually closing the panel before
closing the application window. The problem stemmed from the inactive
state of the panel not being stored properly. This fix addresses the
issue by ensuring that the panel's active state is correctly stored and
retrieved, thereby improving user experience and preventing unnecessary
persistence of the panel's visibility.
### Screen Records
#### Before Release of Outline Panel
https://github.com/zed-industries/zed/assets/704762/2a222c70-c6d7-4472-9f27-7868d1786a5f
#### After Release of Outline Panel
https://github.com/zed-industries/zed/assets/704762/69c16a5d-beed-4d4a-8341-83c53f6a6713
#### After Fixing This Issue
https://github.com/zed-industries/zed/assets/704762/f51c5df7-54e3-4a62-ac54-b5d12cfe69d1
### Release Notes:
- Persist outline panel open state to avoid opening it on Zed startup
Release Notes:
- Changed the default fonts to IBM Plex Sans and IBM Plex Mono. If you'd
like to go back to using Zed Sans/Zed mono you need to
[download](https://github.com/zed-industries/zed-fonts/releases/tag/1.2.0)
them and install them.
a695322
Fix incorrect point types in scroll calculations (#13600)
Click to expand commit body
fixes https://github.com/zed-industries/zed/issues/13559
Release Notes:
- Fixed incorrect scroll behavior when using different
`scroll_beyond_last_line` settings
([#13559](https://github.com/zed-industries/zed/issues/13559)) (preview
only)
Mikayla Maki
created
cb2d05b
editor: Fix scroll_beyond_last_line off for short files (#13571)
Click to expand commit body
Release Notes:
- Fixed bug with `scroll_beyond_last_line: off` for short files
([#13559](https://github.com/zed-industries/zed/issues/13559)).
Evan Liu
created
45d4de7
Add jq as a dependency for Linux script for Arch Linux (#13569)
Click to expand commit body
## Error
```sh
./script/install-linux
+ [[ 0 -gt 0 ]]
+ export ZED_CHANNEL=dev
+ ZED_CHANNEL=dev
++ pwd
+ export 'ZED_UPDATE_EXPLANATION=You need to fetch and rebuild zed in /home/adityakrcodes/repos/zed'
+ ZED_UPDATE_EXPLANATION='You need to fetch and rebuild zed in /home/adityakrcodes/repos/zed'
+ script/bundle-linux
+ getopts h flag
+ export ZED_BUNDLE=true
+ ZED_BUNDLE=true
+ channel=dev
++ script/get-crate-version zed
script/get-crate-version: line 16: jq: command not found <-- ERROR
+ version=
```
The script fails to install zed on Arch Linux due to a missing
dependency, `jq`.
## My machine info
OS: Arch Linux
Kernel: 6.6.34-1-lts
WM: dwm
Terminal: kitty
CPU: Ryzen 5 5500U with Radeon Graphics
GPU: AMD ATI 04:00.0 Lucienne
Memory: 16 GB
## Error Description
The error occurs when running the script in `script/install-linux`,
which is unable to find the `jq` package, which is not installed by
default on the machine.
## Solution
To resolve this issue, you can install `jq` independently by running
`sudo pacman -S jq`. Alternatively, I have updated script `script/linux`
to include `jq` as a dependency ([link to the
commit](https://github.com/adityakrcodes/zed/commit/2349ad111f48bf8c571e3710bdb317ee151fabdb)),
ensuring it is installed automatically when running the initial script
for system libraries.
Release Notes:
- N/A
Aditya Kumar
created
20c1f82
Improve PageUp/PageDown keybinds for Linux/Mac (#13510)
Click to expand commit body
This makes pageup/pagedown move the cursor too. Fixes: #13389
Co-authored-by: llogick <16590917+llogick@users.noreply.github.com>
Resolves https://github.com/zed-industries/extensions/issues/860 and
https://github.com/zed-industries/zed/issues/10921, also
https://github.com/biomejs/biome-zed/issues/11.
### Problem:
When opening .json files, zed allows comments by default in the JSON
language, which can cause some problems.
For example, language-servers also get "json" as the language, which may
show errors for those comments.
<img width="935" alt="image"
src="https://github.com/zed-industries/zed/assets/10381895/fed3d83d-abc0-44b5-9982-eb249bb04c3b">
### Solution:
This PR adds a JSONC language.
<img width="816" alt="image"
src="https://github.com/zed-industries/zed/assets/10381895/8b40e671-d4f0-4e8d-80cb-82ee7c0ec490">
This allows for more specific configuration for language servers.
Also any json file can be set explicitly to be JSONC using the
file_types setting:
```jsonc
{
"file_types": {
// set all .json files to be seen as JSONC
"JSONC": ["*.json"]
}
}
```
Release Notes:
- N/A
- Action for release notes upload (softprops/action-gh-release) configured with incorrect key.
- Valid keys here: https://github.com/softprops/action-gh-release?tab=readme-ov-file#-customizing
Peter Tripp
created
1260c61
Simplify font feature tag validation (#13548)
Click to expand commit body
Simplifies the logic for the changes of #13542.
Release Notes:
- N/A
Gilles Peiffer
created
89951f7
Add `shift shift` to open command palette (#13556)
Click to expand commit body
I've add `shift shift` as a default keybinding to open command palette,
when using JetBrains keymap, along with the already existing
`cmd-shift-a`. This isn't quite right, as in JetBrains, `cmd-shift-a`
opens the actions modal, which would be our command palette, and `shift
shift` actually opens up a view for searching everything, commands,
actions, settings, etc - we do not have a unified modal for these
things, so I think this is the best thing we can do. Some users might
want to change this to be our file picker, but I think adding it as the
default at least puts it on their radar that they can use this type of
binding; they can change it if they want.
Release Notes:
- Added `shift shift` as a default binding to open the command palette
in the JetBrains keymap.
Release Notes:
- Fixed a panic when editing HTML near the end of a file
- Fixed a panic when editing settings.json from inside the .zed
directory
Conrad Irwin
created
3a08d7a
json: Fix package-version-server referencing the wrong path to the binary (#13555)
Click to expand commit body
We were trying to access the binary at
package-version-server-{VERSION}/package-version-server, whereas the
binary itself is placed at package-version-server-{VERSION}
Release Notes:
- Fixed package.json language server failing to start.
Co-authored-by: Peter Tripp <peter@zed.dev>
Piotr Osiewicz
and
Peter Tripp
created
49dc638
Stop relying on binary location to be in `libexec` on Linux (#13374)
Click to expand commit body
This fixes #13360 by adding fallback directories that are searched by
the CLI if the main executable cannot be found in the `libexec`
directory.
Release Notes:
- Added the fallback directories `lib/zed` and `lib/zed-editor` for the
main executable search in the CLI
([#13360](https://github.com/zed-industries/zed/issues/13360)).
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
This inline assistant prompt is one I designed that in my experience
works much better with Claude 3.5 Sonnet than the default prompt.
Mainly because it takes advantage of a weird property of our finetuning
which is that when you use XML tags it knows that it's doing a
machine-read tasks and stops trying to elide things for brevity. The
default prompt will often remove comments and otherwise add elisions for
brevity when doing large rewrites.
It also avoids giving the entire file content twice when the rewrite
region is large relative to the non-rewritten region.
Not necessarily meant to be merged as-is since it may mess up OAI
models. This is mainly meant for your reference. But everyone should be
using 3.5 Sonnet for coding use cases now anyhow 😛
Release Notes:
- N/A
Adds some of the UI components to allow us to visually render settings.
These are UI only and are not functional yet (@maxdeviant will be
working on these when he is back.)
You can see some examples by running `script/storybook setting`.

Release Notes:
- N/A
5d766f6
linux: Fix some panics related to xkb compose (#13529)
Click to expand commit body
Release Notes:
- N/A
Fixed #13463 Fixed crash when the locale was non UTF-8 and fixed the
fallback locale.
Fixed #13010 Fixed crash when `compose.keysym()` was `XKB_KEY_NoSymbol`
I also extracted the `xkb_compose_state` to a single place
The previous implementation that I implemented had two issues:
1. It did not throw an error when the user input some invalid values
such as "panic".
2. The feature tag for OpenType fonts should be a combination of letters
and digits. We only checked if the input was an ASCII character, which
could lead to undefined behavior.
Closes #13517
Release Notes:
- N/A
- Fix Docker Compose obsolete setting
## Remove `version`
Fix the following error:
```
WARN[0000] /docker-compose.yml: `version` is obsolete
```
see also.
https://github.com/compose-spec/compose-spec/blob/master/spec.md#version-top-level-element-obsolete
## Rename: docker-compose.yml -> compose.yml
The preferred file name is now `compose.yml`.
> The default path for a Compose file is compose.yaml (preferred)
ref.
https://docs.docker.com/compose/compose-application-model/#the-compose-file
Release Notes:
- N/A
Toshimaru
created
f00bea5
docs: Fix Decrease buffer font size key binding (#13453)
Add a single-line text input example to gpui
(I'm hoping to be able to debug keyboard issues without rebuilding the
whole
app every time)
Release Notes:
- N/A
Conrad Irwin
created
eb91468
Fix multi-cursor copy/paste on linux (#13523)
Click to expand commit body
The clipboard library we use for X11 doesn't yet support multiple
formats on the clipboard, so for now we just store this in memory for
the current zed process, as we do for Wayland.
Fixes: #11971
Release Notes:
- N/A
---------
Co-authored-by: Mikayla Maki <mikayla@zed.dev>