88c500b
zed 0.122.1
Conrad Irwin created
88c500b
zed 0.122.1
Conrad Irwin created
2832c39
Stop display link when window is occluded (#7511)
Release Notes: - Fixed a bug that caused the window to become unresponsive after foregrounding. --------- Co-authored-by: Conrad <conrad@zed.dev>
Antonio Scandurra and Conrad created
a95c05b
v0.122.x preview
Joseph T. Lyons created
83cffdd
Use collections::{HashMap, HashSet} instead of its std:: counterpart (#7502)
Kirill Bulatov created
c322179
Initialize the `SystemAppearance` using the app's global window appearance (#7508)
This PR changes our approach to initializing the `SystemAppearance` so that we can do it earlier in the startup process. Previously we were using the appearance from the window, meaning that we couldn't initialize the value until we first opened the window. Now we read the `window_appearance` from the `AppContext`. On macOS this is backed by the [`effectiveAppearance`](https://developer.apple.com/documentation/appkit/nsapplication/2967171-effectiveappearance) on the `NSApplication`. We currently still watch for changes to the appearance at the window level, as the only hook I could find in the documentation is [`viewDidChangeEffectiveAppearance`](https://developer.apple.com/documentation/appkit/nsview/2977088-viewdidchangeeffectiveappearance), which is at the `NSView` level. In my testing this makes it so Zed appropriately chooses the correct light/dark theme on startup. Release Notes: - N/A
Marshall Bowers created
b59e110
Attempt to fix random lag (#7506)
Co-Authored-By: Antonio <antonio@zed.dev> Co-Authored-By: Thorsten <thorsten@zed.dev> Co-Authored-By: Mikayla <mikayla@zed.dev> Release Notes: - N/A **or** - N/A Co-authored-by: Antonio <antonio@zed.dev> Co-authored-by: Thorsten <thorsten@zed.dev> Co-authored-by: Mikayla <mikayla@zed.dev>
Conrad Irwin , Antonio , Thorsten , and Mikayla created
42a5081
Use try_from_bytes for windows build (#7500)
Reduce windows build error. Release Notes: - N/A
白山風露 created
c7b0221
theme_importer: Read theme name from VS Code theme (#7489)
apply theme_name(fallback use "") Release Notes: - N/A
d1y created
ad3940c
text rendering: support strikethroughs (#7363)
<img width="1269" alt="image" src="https://github.com/zed-industries/zed/assets/18583882/d4c93033-b2ac-4ae0-8e12-457f256ee869"> Release Notes: - Added support for styling text with strikethrough. Related: - https://github.com/zed-industries/zed/issues/5364 - https://github.com/zed-industries/zed/pull/7345
Kieran Gill created
55129d4
Revert "Use Fx* variants of HashMap and HashSet everywhere in Zed" (#7492)
Reverts zed-industries/zed#7481 This would regress performance because we'd be using the standard library's hash maps everywhere, so reverting for now.
Antonio Scandurra created
5c8073d
Underline text if in dead key state (#7488)
This highlights dead keys. Example: when in Brazilian keyboard layout and typing `"` it's now underlined. https://github.com/zed-industries/zed/assets/1185253/a6b65f7b-1007-473d-ab0f-5d658faa191b Release Notes: - Fixed dead keys not being underlined. Co-authored-by: Antonio <antonio@zed.dev>
Thorsten Ball and Antonio created
db39b9d
Add ability to bind to pane::RevealInProjectPanel (#7487)
Previously it wasn't possible to create a keybinding for this action because it required an argument. Now the action takes the active item of the pane and if it's a multi-buffer the first one. This also adds a default keybinding for Vim mode: `-` will reveal the file in the project panel. Fixes #7485. Release Notes: - Added `pane::RevealInProjectPanel` as an action in the command palette. ([#7485](https://github.com/zed-industries/zed/issues/7485)). Co-authored-by: Antonio <antonio@zed.dev>
Thorsten Ball and Antonio created
2aa8ccd
fix: use OPEN_AI_API_URL (#7484)
Release Notes: - N/A
Todsaporn Banjerdkit created
eb23630
Use Fx* variants of HashMap and HashSet everywhere in Zed (#7481)
Release Notes: - N/A
Kirill Bulatov created
7939673
Jetbrains keymap - Movement between panes (#7464)
Release Notes: - Improved Jetbrains keybindings to include cmd+alt+left/right to go back and forwards between panes rather than the default previous / next pane Signed-off-by: James Gee <1285296+geemanjs@users.noreply.github.com>
James Gee created
9fd2212
Go back to an alacritty release (#7474)
Release Notes: - N/A
Conrad Irwin created
3aa4e0c
Fix Vim 'e' Behavior When Boundary Is Last Point on Line (#7424)
This was originally just to fix https://github.com/zed-industries/zed/issues/4354, which I did by just returning the previous offset in `find_boundary`.. but `find_boundary` is used in the "insert mode" / normal editor too, so returning the previous boundary breaks existing functionality in that case. I was considering a new `find_boundary` function just for some of the vim motions like this, but I thought that this is straightforward enough and future Vim functions might need similar logic too. Release Notes: - Fixed https://github.com/zed-industries/zed/issues/4354
Andrew Marek created
90cd3b5
Prevent terminal being a single column wide (#7471)
Fixes: #2750 Fixes: #7457 Release Notes: - Fixed a hang/panic that could happen rendering a double-width character in a single-width terminal ([#2750](https://github.com/zed-industries/zed/issues/2750), [#7457](https://github.com/zed-industries/zed/issues/7457)).
Conrad Irwin created
1264e36
Remove Default impl for ConnectionId (#7452)
We noticed the following message in my logs when trying to debug some
lag when collaborating:
```
2024-02-06T09:42:09-08:00 [ERROR] error handling message. client_id:3, sender_id:Some(PeerId { owner_id: 327, id: 1123430 }), type:GetCompletions, error:no such connection: 0/0
```
That `0/0` looks like a bogus connection id, constructed via a derived
`Default`. We didn't ever find a code path that would *use* a default
`ConnectionId` and lead to this error, but it did seem like an
improvement to not have a `Default` for that type.
Release Notes:
- N/A
Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
4e519e3
Make diagnostics with empty messages take up one line (#7456)
When a supporting diagnostic had an empty message, we were accidentally giving the corresponding block a height of zero lines. Release Notes: - Fixed an issue where an editors' lines were not laid out correctly when showing certain diagnostics. Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
6c4b96e
Add the ability to reply to a message (#7170)
Feature
- [x] Allow to click on reply to go to the real message
- [x] In chat
- [x] Show only a part of the message that you reply to
- [x] In chat
- [x] In reply preview
TODO’s
- [x] Fix migration
- [x] timestamp(in filename)
- [x] remove the reference to the reply_message_id
- [x] Fix markdown cache for reply message
- [x] Fix spacing when first message is a reply to you and you want to
reply to that message.
- [x] Fetch message that you replied to
- [x] allow fetching messages that are not inside the current view
- [x] When message is deleted, we should show a text like `message
deleted` or something
- [x] Show correct GitHub username + icon after `Replied to: `
- [x] Show correct message(now it's hard-coded)
- [x] Add icon to reply + add the onClick logic
- [x] Show message that you want to reply to
- [x] Allow to click away the message that you want to reply to
- [x] Fix hard-coded GitHub user + icon after `Reply tp:`
- [x] Add tests
<img width="242" alt="Screenshot 2024-02-06 at 20 51 40"
src="https://github.com/zed-industries/zed/assets/62463826/a7a5f3e0-dee3-4d38-95db-258b169e4498">
<img width="240" alt="Screenshot 2024-02-06 at 20 52 02"
src="https://github.com/zed-industries/zed/assets/62463826/3e136de3-4135-4c07-bd43-30089b677c0a">
Release Notes:
- Added the ability to reply to a message.
- Added highlight message when you click on mention notifications or a
reply message.
---------
Co-authored-by: Bennet Bo Fenner <53836821+bennetbo@users.noreply.github.com>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Remco Smits , Bennet Bo Fenner , and Conrad Irwin created
743f9b3
chore: Move workspace dependencies to workspace.dependencies (#7454)
We should prefer referring to local deps via `.workspace = true` from now on. Release Notes: - N/A
Piotr Osiewicz created
70e7ea3
chore: Fix up warnings from cargo +beta check. (#7453)
With upcoming release of 1.76 I did a check of current +beta (which seems to already be at 1.77). These would cause CI pipeline failures once 1.77 is out. Release Notes: - N/A
Piotr Osiewicz created
792c832
Improve error handling when copying a permalink fails (#7447)
This PR improves the error handling when the `editor: copy permalink to line` action fails. Right now if something goes wrong nothing happens, and we don't write anything to the logs. This PR makes it so we display a toast when the operation fails with the error message, as well as write it to the Zed logs. Release Notes: - Improved error behavior for `editor: copy permalink to line` action.
Marshall Bowers created
0b2a9d2
Remove empty message editor placeholder (#7444)
This PR removes the placeholder that we previously displayed for the chat message editor. With the changes in #7441 we can no longer hit this codepath. Release Notes: - N/A
Marshall Bowers created
960eaf6
Remove unused TerminalView.has_new_content (#7429)
Found this last week with @osiewicz and we realized that it's unused. So I think it's fine to remove it, but I want to hear whether @mikayla-maki has some thoughts here. Release Notes: - N/A
Thorsten Ball created
068c141
Fix shell environment not loading for Nushell (#7442)
Turns out that Nushell doesn't like `-lic` and `&&`, but works perfectly
fine with `-l -i -c` and `;`, which the other shells do too.
These all work:
bash -l -i -c 'echo lol; /usr/bin/env -0'
nu -l -i -c 'echo lol; /usr/bin/env -0'
zsh -l -i -c 'echo lol; /usr/bin/env -0'
fish -l -i -c 'echo lol; /usr/bin/env -0'
Release Notes:
- Fixed shell environment not being loaded if Nushell was set as
`$SHELL`.
Thorsten Ball created
33d982b
Add Elm file icon (#7440)
Tried to match the existing file icons in Zed as much as possible. This is how it looks: | dark | light | |---|----| | <img width="183" alt="Screenshot 2024-02-06 at 15 03 57" src="https://github.com/zed-industries/zed/assets/43472/bd862753-41bb-4ca6-9a44-16b9b1c9591c"> | <img width="180" alt="Screenshot 2024-02-06 at 15 03 14" src="https://github.com/zed-industries/zed/assets/43472/9df8c589-64b6-49f2-8e15-b43126579a9f"> | The main challenge is that the tangram is visually quite heavy and detailed. The existing icons in Zed are designed in a 14px bounding box, but are a bit smaller themselves. I guess the extra space is reserved for hanging elements, it probably doesn't make sense to occupy the whole area. Simply scaling down an available SVG of the tangram didn't work well. The individual shapes were not recognizable because the spacing between them was too thin. I tried removing the spacing and applying different opacities for each shape, but that didn't yield enough contrast between the shapes either. The second approach was to just use the outlines. It sort of worked, but looked a bit messy in the places when the outlines are denser than the tangram shapes: | dark | light | |---|----| | <img width="192" alt="Screenshot 2024-02-05 at 22 55 46" src="https://github.com/zed-industries/zed/assets/43472/d0029f49-675d-40ac-96d8-788a29706bad"> | <img width="195" alt="Screenshot 2024-02-05 at 22 56 05" src="https://github.com/zed-industries/zed/assets/43472/d2de922a-70ec-4bd1-9033-db9a5201e9bd"> | I then tried to remove the main outline and use the maximum space for the tangram. That let me increase the spacing between the shapes. I also rounded them a little bit, to make them look similar to other icons from Zed. The end result looks clean and the shapes are still recognisable. Approaches I tried next to an existing icon from Zed: <img width="711" alt="Screenshot 2024-02-06 at 15 15 33" src="https://github.com/zed-industries/zed/assets/43472/a3e4b0db-4b98-4072-91e8-fe71cff19adf"> Release Notes: - Added file type icon for Elm
Andrey Kuzmin created
56f7f18
Hide the chat message editor when there is no active chat (#7441)
This PR makes it so the chat message editor is hidden when not in an active chat. Release Notes: - Changed the chat message editor to be hidden when not in an active chat.
Marshall Bowers created
b2ce515
Add Prisma file icon (#7207)
Add Prisma icon from https://github.com/file-icons/icons  Release Notes: - Added Prisma icon.
Guillem Arias Fauste created
dad2df3
Add notes about XCode also being on the Apple Developer website (#7431)
Super minor edit about XCode being on the Apple Developer website, which can be easier to download and install without needing to go through the App Store. Release Notes: - N/A --------- Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Josh Taylor and Kirill Bulatov created
1446fb7
Outline a bunch of methods in gpui that leaked SubscriberSet types (#7430)
This takes down LLVM IR size of theme_selector from 316k to ~250k. Note
that I do not care about theme_selector in particular, though it acts as
a benchmark for smaller crates to me ("how much static overhead in
compile time does gpui have").
The title is a bit dramatic, so just to shed some light: by leaking a
type I mean forcing downstream crates to codegen it's methods/know about
it's drop code. Since SubscriberSet is no longer used directly in the
generic (==inlineable) methods, users no longer have to codegen `insert`
and co.
Release Notes:
- N/A
Piotr Osiewicz created
c591681
Fix Terminal focus handlers not being called (#7428)
This fixes #7401 and probably a few other things that seemed odd with the terminal. Turns out that `TerminalView` has `focus_in` and `focus_out` callbacks, but they were never called. The `focus_handle` on which they were set was not passed in to `TerminalView`. That meant that the `impl FocusableView for TerminalView` never returned the focus handle with the right callbacks. This change here uses the already created focus handle and passes it in, so that `focus_in` and `focus_out` are now correctly called. Release Notes: - Fixed terminal not handling focus-state correctly and, for example, not restoring cursor blinking state correctly. ([#7401](https://github.com/zed-industries/zed/issues/7401)).
Thorsten Ball created
038d2a8
Respect RUST_LOG when started in terminal (#7425)
Release Notes: - N/A
Oliver N created
c7c4166
Disable extra frames for ProMotion when screen is not active. (#7410)
This was causing an issue where windows about 1/10 of the way across the display would hang for a fully second after being deactivated. Release Notes: - N/A Co-authored-by: max <max@zed.dev> Co-authored-by: nathan <nathan@zed.dev> Co-authored-by: antonio <antonio@zed.dev>
Mikayla Maki , max , nathan , and antonio created
d04a286
Fix prompting the user to hang up when opening a workspace (#7408)
Before this change if you had joined a call with an empty workspace, then we'd prompt you to hang up when you tried to open a recent project. Release Notes: - Fixed an erroneous prompt to "hang up" when opening a new project from an empty workspace.
Conrad Irwin created
1a40c9f
Add Haskell buffer symbol search (#7331)
This PR is a follow-up from https://github.com/zed-industries/zed/pull/6786#issuecomment-1912912550 and adds an `outline.scm` file for buffer symbol search support in Haskell. Release Notes: - Added buffer symbol search support for Haskell
Pseudomata created
0c34bd8
fix following bugs (#7406)
- Another broken following test - Fix following between two windows Release Notes: - Fixed following when the leader has multiple Zed windows open
Conrad Irwin created
a80a3b8
Add support for specifying both light and dark themes in `settings.json` (#7404)
This PR adds support for configuring both a light and dark theme in
`settings.json`.
In addition to accepting just a theme name, the `theme` field now also
accepts an object in the following form:
```jsonc
{
"theme": {
"mode": "system",
"light": "One Light",
"dark": "One Dark"
}
}
```
Both `light` and `dark` are required, and indicate which theme should be
used when the system is in light mode and dark mode, respectively.
The `mode` field is optional and indicates which theme should be used:
- `"system"` - Use the theme that corresponds to the system's
appearance.
- `"light"` - Use the theme indicated by the `light` field.
- `"dark"` - Use the theme indicated by the `dark` field.
Thank you to @Yesterday17 for taking a first stab at this in #6881!
Release Notes:
- Added support for configuring both a light and dark theme and
switching between them based on system preference.
Marshall Bowers created
b59f925
Upgrade GH actions to reduce CI warnings (#7403)
Deals with one of the warnings GH shows on our actions run: https://github.com/zed-industries/zed/actions/runs/7790218555 <img width="1383" alt="image" src="https://github.com/zed-industries/zed/assets/2690773/e523ec7c-bf43-4b0d-8c36-8540aef6fae9"> bufbuild/* actions seem to have no new major versions so there's nothing new to upgrade to. Release Notes: - N/A
Kirill Bulatov created
46464eb
terminal: Fix copy to clipboard lag (#7323)
Fixes #7322 Release Notes: - Fixed terminal's copy to clipboard being non-instant ([7322](https://github.com/zed-industries/zed/issues/7322))
N8th8n8el created
28a62af
Clean up visible inlay hints that got removed from the cache (#7399)
Fixes another flack in the inlay hint cache. Now that test does not fail after 500 iterations and seems to be stable at last. Release Notes: - N/A
Kirill Bulatov created
6863b92
Add Terraform & HCL syntax highlighting (#6882)
Terraform and HCL are almost the same language, but not quite so proposing them as separate languages within Zed. (Terraform is an extension of HCL, with a different formatter.) This is just adding the language definition, parsing and highlighting functionality, not any LSP or formatting beyond that for either language. I've taken a bunch of inspiration from Neovim for having the separate languages, and also lifted some of their `scm` files (with attribution comments in this codebase) as the tree-sitter repo doesn't contain them. (Neovim's code is Apache-2.0 licensed, so should be fine here with attribution from reading Zed's licenses files.) I've then amended to make sure the capture groups are named for things Zed understands. I'd love someone from Zed to confirm that's okay, or if I should clean-room implement the `scm` files. Highlighting in Terraform & HCL with a moderate amount of syntax in a file (Terraform on left, HCL on right.) <img width="1392" alt="Screenshot 2024-01-31 at 18 07 45" src="https://github.com/zed-industries/zed/assets/696/1d3c9a08-588e-4b8f-ad92-98ce1e419659"> Release Notes: - (|Improved) ... ([#5098](https://github.com/zed-industries/zed/issues/5098)).
Caius Durling created
21797ba
file_finder: Simplify removal of file name from file path (#7398)
This PR simplifies the removal of the file name from the file path when computing the file finder matches. Release Notes: - N/A
Marshall Bowers created
ce62404
Correctly use the base element in `HighlightedLabel` (#7397)
This PR updates the `HighlightedLabel` to correctly render its base element, which is the one that receives the styling properties, instead of rendering a new `LabelLike`. Release Notes: - N/A
Marshall Bowers created
8911e1b
Make inlay hints test less flacky (#7396)
Suppresses a flacky inlay hints test failures like https://github.com/zed-industries/zed/actions/runs/7788741514a for now. Release Notes: - N/A
Kirill Bulatov created
2ed45d7
File finder UI enhancement (#7364)
File finder looks and feels a little bulky now. It duplicates file names and consumes too much space for each file. This PR makes it more compact: - File name is trimmed from the path, removing duplication - Path is placed to the right of the file name, improving space usage - Path is muted and printed in small size to not distract attention from the main information (file names) It makes search results easier to look through, consistent with the editor tabs, and closer in terms of usage to mature editors. Release Notes: - File finder UI enhancement
Andrew Lygin created
91303a5
Do not run scheduled CI jobs on forks (#7394)
Runs scheduled CI jobs only on the main repository, not on forks. These jobs fail on forks and generate unnecessary noise on contributor emails. Release Notes: - N/A
Dairon M created
e2e8e52
Beancount syntax highlighting (#7389)
Release Notes: - Added syntax highlighting for [Beancount](https://beancount.github.io)
Conrad Irwin created
4195f27
Fix hover links in channel buffers (#7393)
Release Notes: - N/A
Conrad Irwin created