b52f907
extension_ci: Auto-assign version bumps to GitHub actor (#44929)
Click to expand commit body
Release Notes: - N/A
Finn Evers created
b52f907
extension_ci: Auto-assign version bumps to GitHub actor (#44929)
Release Notes: - N/A
Finn Evers created
4096bc5
languages: Add injections for string and tagged template literals for JS/TS(X) (#44180)
Hi! This pull request adds language injections for string and tagged
template literals for JS/TS(X).
This is similar to what [this
extension](https://marketplace.visualstudio.com/items?itemName=bierner.comment-tagged-templates)
provides for VSCode. This PR is inspired by this tweet
https://x.com/leaverou/status/1996306611208388953?s=46&t=foDQRPR8oIl1buTJ4kZoSQ
I've added injections queries for the following languages: HTML, CSS,
GraphQL and SQL.
This works for:
- String literals: `const cssString = /* css */'button { color: hotpink
!important; }';`
- Template literals: ```const cssString = /* css */`button { color:
hotpink !important; }`;```
All injections support the format with whitespaces inside, i.e. `/* html
*/` and without them `/*html*/`.
## Screenshots
|before|after|
|---------|-----------|
| <img width="1596" height="1476" alt="CleanShot 2025-12-04 at 21 12
00@2x"
src="https://github.com/user-attachments/assets/8e0fb758-41f0-43a8-93e6-ae28f79d7c8f"
/> | <img width="1576" height="1496" alt="CleanShot 2025-12-04 at 21 08
35@2x"
src="https://github.com/user-attachments/assets/b47bb9c1-224e-4a24-8f08-a459f1081449"
/>|
Release Notes:
- Added language injections for string and tagged template literals in
JS/TS(X)
Vitaly Slobodin created
97f6cda
Add an autofix workflow (#44922)
One of the major annoyances with writing code with claude is that its poorly indented; instead of requiring manual intervention, let's just fix that in CI. Similar to https://autofix.ci, but as we already have a github app, we can do it without relying on a 3rd party. This PR doesn't trigger the workflow (we need a separate change in Zippy to do that) but will let me test it manually. Release Notes: - N/A
Conrad Irwin created
5987dff
Add save_file and restore_file_from_disk agent tools (#44789)
Release Notes: - Added `save_file` and `restore_file_from_disk` tools to the agent, allowing it to resolve dirty buffer conflicts when editing files. When the agent encounters a file with unsaved changes, it will now ask whether you want to keep or discard those changes before proceeding.
Nathan Sobo created
eceece8
docs: Update links to account page (#44924)
This PR updates the links to the account page to point to the Dashboard. Release Notes: - N/A
Marshall Bowers created
faef5c9
docs: Drop deprecated key from settings for Agent Panel (#44923)
The `version` key was deprecated a while ago. Release Notes: - N/A
Kunall Banerjee created
47a6bd2
Terminal ANSI colors (#44912)
Closes #38992 Release Notes: - N/A --------- Co-authored-by: dangooddd <dangoodds@gmail.com>
Matt Miller and dangooddd created
c7a1852
collab: Add `dependabot[bot]` to the `GET /contributor` endpoint (#44919)
This PR adds the `dependabot[bot]` user to the `GET /contributor` endpoint so that it passes the CLA check. Release Notes: - N/A
Finn Evers created
ee6469d
project: Clear worktree settings when worktrees get removed (#44913)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
9e11aae
Add ZoomIn and ZoomOut actions for independent zoom control (#44587)
Closes #14472
Introduces `workspace::ZoomIn` and `workspace::ZoomOut` actions that
complement the existing `workspace::ToggleZoom` action. ZoomIn only
zooms if not already zoomed, and ZoomOut only zooms out if currently
zoomed. This enables composing zoom actions with
`workspace::SendKeystrokes` for workflows like "focus terminal then zoom
in".
<details><summary>Example usage</summary>
<p>
Example keybindings:
```json
[
{
"bindings": {
"ctrl-cmd-,": "terminal_panel::ToggleFocus",
"ctrl-cmd-.": "workspace::ZoomIn",
}
},
{
"context": "Terminal",
"bindings": {
"cmd-.": "terminal_panel::ToggleFocus"
}
},
{
"context": "!Terminal",
"bindings": {
"cmd-.": ["workspace::SendKeystrokes", "ctrl-cmd-, ctrl-cmd-."]
}
},
]
```
Demo:
https://github.com/user-attachments/assets/1b1deda9-7775-4d78-a281-dc9622032ead
</p>
</details>
Release Notes:
- Added the actions: `workspace::ZoomIn` and `workspace::ZoomOut` that
complement the existing `workspace::ToggleZoom` action
pedroni created
fb574d8
Inline assistant: Clear failure text when regenerating (#44911)
Release Notes: - N/A
Michael Benfield created
523f093
editor: Use Tree-sitter scopes to calculate quote autoclose (#44281)
Closes #44233 Release Notes: - Fixed quote autoclose incorrectly counting quotes inside strings --------- Co-authored-by: Ben Kunkle <ben@zed.dev>
Mayank Verma and Ben Kunkle created
2441dc3
gpui: Take advantage of unified memory on Apple silicon (#44273)
Metal chooses a buffer’s default storage mode based on the type of GPU in use. On Apple GPUs, the default mode is shared, which allows the CPU and GPU to access the same memory without requiring explicit synchronization. On discrete or external GPUs, Metal instead defaults to managed storage, which does require explicit CPU–GPU memory synchronization. This change aligns our buffer usage with Metal’s default behavior and avoids unnecessary synchronization on Apple-silicon Macs. As a result, memory usage on Apple hardware is reduced and performance improves due to fewer sync operations. Ref: https://developer.apple.com/documentation/metal/setting-resource-storage-modes Ref: https://developer.apple.com/documentation/metal/synchronizing-a-managed-resource-in-macos With the storage mode: <img width="356" height="74" alt="image" src="https://github.com/user-attachments/assets/e5a5bf9a-f339-417b-b5ab-818d8f692bd1" /> On main branch: <img width="356" height="74" alt="image" src="https://github.com/user-attachments/assets/6ccd77fe-7929-4423-9696-671d185ceffb" /> That's a 44% reduction of memory usage. Release Notes: - Reduced memory usage on Apple-silicon Macs by using shared memory where appropriate --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com>
Marco Mihai Condrache created
969e9a6
Fix micromamba not initializing shell (#44646)
Closes #44645 This is a continuation of #40577 Release Notes: - initializes micromamba based on the shell
Casper van Elteren created
dbab71e
Add `.claude/settings.local.json` to `.gitignore` (#44905)
Ignore people's local Claude Code settings Release Notes: - N/A
Agus Zubiaga created
c75d880
Check for local files from within surrounding parens (#44733)
Closes #18228 We parse local clickable links by looking for start/end based on whitespace. However, this means that we don't catch links which are embedded in parenthesis, such as in markdown syntax: `[here's my link text](./path/to/file.txt)` Parsing strictly against parenthesis can be problematic, because strictly-speaking, files can have parenthesis. This is a valid file name in at least MacOS: `thisfilehas)parens.txt` Therefore, this change adds a small regex layer on top of the filename finding logic, which parses out text within parenthesis. If any are found, they are checked for being a valid filepath. The original filename string is also checked in order to preserve behavior. Before: https://github.com/user-attachments/assets/37f60335-e947-4879-9ca2-88a33f5781f5 After: https://github.com/user-attachments/assets/bd10649e-ad74-43da-80f4-3e7fd56abd86 Release Notes: - Improved link parsing for cases when a link is embedded in parenthesis, e.g. markdown
KyleBarton created
3076c4e
Add behavior for multiple click and drag to markdown component (#43813)
Closes #43354 Overview: In a diagnostic panel (and all Markdown derived panels, including function hint popovers and the like), the expected behavior is that when a user double clicks a word, the whole word is highlighted. If they double click and hold, then drag, the text selection proceeds word by word. There is similar behavior for triple click which goes line by line, and quadruple click which selects all text. Before this fix, the DiagnosticPopover allowed the user to click and drag, but double click and drag reverts to selecting text character by character. The same wrong behavior is shown for triple click (line). Quadruple click (all text) was not previously implemented in MarkdownElement. Quick example of wrong behavior, showing single click and drag, double click and drag, triple click and drag, then quadruple click (fails). https://github.com/user-attachments/assets/1184e64d-5467-4504-bbb6-404546eab90a Quick example showing the correct behavior fixed in this PR: https://github.com/user-attachments/assets/06bf5398-d6d6-496c-8fe9-705031207f05 Nota bene: I'm not a rust dev, so a lot of this relied on my C/C++ experience, cribbing from elsewhere in the repo, and help from Claude. If that's not ok for this project, I totally understand. Much of this was informed by editor.rs, using a similar pattern to SelectMode in there (see lines 450, and begin_selection and extend_selection). It didn't seem appropriate to import SelectMode from there (also Markdown range and Anchor range seemed different enough), nor did it seem appropriate to move SelectMode to markdown.rs. The tests are non-ui based, instead testing the relevant functions. Not sure if that's what's expected. Release Notes: - Double- and triple-click selection now correctly expands by word and by line within Markdown elements (diagnostics, agent panel, etc.).
RMcGhee created
0410b23
editor: Refactor cursor_offset_on_selection field in favor of VimModeSettings (#44889)
In a previous Pull Request, a new field was added to `editor::Editor`, namely `cursor_offset_on_selection`, in order to control whether the cursor representing the head of a selection should be positioned in the last selected character, as we have on Vim mode, or after, like we have when Vim mode is disabled. This field would then be set by the `vim` crate, depending on the current vim mode. However, it was noted that `vim_mode_setting::VimModeSetting` already exsits and allows other crates to determine whether Vim mode is enabled or not. Since we're already checking `!range.is_empty()` in `editor::element::SelectionLayout::new` we can then rely on simply determining whether Vim mode is enabled to decide whether tho shift the cursor one position to the left when making a selection. As such, this commit removes the `cursor_offset_on_selection` field, as well as any related methods in favor of a new `Editor.vim_mode_enabled` method, which can be used to achieve the same behavior. Relates to #42837 Release Notes: - N/A
Dino created
7d7ca12
Add timeout support to terminal tool (#44895)
Adds an optional `timeout_ms` parameter to the terminal tool that allows bounding the runtime of shell commands. When the timeout expires, the running terminal task is killed and the tool returns with the partial output captured so far. ## Summary This PR adds the ability for the agent to specify a maximum runtime when invoking the terminal tool. This helps prevent indefinite hangs when running commands that might wait for network, user prompts, or long builds/tests. ## Changes - Add `timeout_ms` field to `TerminalToolInput` schema - Extend `TerminalHandle` trait with `kill()` method - Implement `kill()` for `AcpTerminalHandle` and `EvalTerminalHandle` - Race terminal exit against timeout, killing on expiry - Update system prompt to recommend using timeouts for long-running commands - Add test for timeout behavior - Update `.rules` to document GPUI executor timers for tests ## Testing - Added `test_terminal_tool_timeout_kills_handle` which verifies that when a timeout is specified and expires, the terminal handle is killed and the tool returns with partial output. - All existing agent tests pass. Release Notes: - agent: Added optional `timeout_ms` parameter to the terminal tool, allowing the agent to bound command runtime and prevent indefinite hangs
Nathan Sobo created
7cd4833
agent_ui_v2: Fix `set_position` not updating the position properly (#44902)
The panel could not be relocated using the right click menu because both valid positions mapped to `Left` Release Notes: - N/A
Finn Evers created
d4f9657
editor: Accept next line prediction (#44411)
Closes [#20574](https://github.com/zed-industries/zed/issues/20574) Release Notes: - Replaced editor action editor::AcceptPartialEditPrediction with editor::AcceptNextLineEditPrediction and editor::AcceptNextWordEditPrediction Tested manually on windows, attaching screen cap. https://github.com/user-attachments/assets/fea04499-fd16-4b7d-a6aa-3661bb85cf4f Updated existing test for accepting word prediction in copilot - it is already marked as flaky, not sure what to do about it and I'm not really confident creating new one without a working example. Added migration of keymaps and new defaults for windows, linux, macos in defaults and in cursor. This should alleviate [#21645](https://github.com/zed-industries/zed/issues/21645) I used some work done in stale PR https://github.com/zed-industries/zed/pull/25274, hopefully this one makes it through! --------- Co-authored-by: Agus Zubiaga <agus@zed.dev>
teleoflexuous and Agus Zubiaga created
0d891bd
Enable Zeta edit predictions with custom URL without authentication (#43236)
Enables using Zeta edit predictions with a custom `ZED_PREDICT_EDITS_URL` without requiring authentication to Zed servers. This is useful for: - Development and testing workflows - Self-hosted Zeta instances - Custom AI model endpoints Prior context on this usage of `ZED_PREDICT_EDITS_URL`: https://github.com/zed-industries/zed/pull/30418 Release Notes: - Improved self-hosted zeta UX. Users no longer have to log into Zed to use custom or self-hosted zeta backends. --------- Co-authored-by: Agus Zubiaga <agus@zed.dev>
Dominic Burkart and Agus Zubiaga created
1b29725
git_ui: Fix Git panel color for staged new files (#44071)
Closes https://github.com/zed-industries/zed/issues/38797 Release Notes: - Fixed Git panel color for staged new files Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com> Co-authored-by: Cole Miller <cole@zed.dev>
Xiaobo Liu and Cole Miller created
79dfae2
gpui: Fix some memory leaks on macOS platform (#44639)
While profiling with instruments, I discovered that some of the strings allocated on the mac platform are never released, and the profiler marks them as leaks <img width="1570" height="219" alt="image" src="https://github.com/user-attachments/assets/174e9293-5139-46ae-8757-c8989f3fc598" /> Release Notes: - N/A --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com> Co-authored-by: Anthony Eid <anthony@zed.dev>
Marco Mihai Condrache and Anthony Eid created
e106374
vim: Fix global mark overwriting inconsistency (#44765)
Closes #43963 This issue was caused by the global marks not being deleted. Previously marking the first file `m A` <img width="1736" height="888" alt="Screenshot From 2025-12-13 01-37-55" src="https://github.com/user-attachments/assets/9e46747f-7bb3-4297-82d4-44a20ef9e91a" /> followed by marking the second file `m A` <img width="1736" height="888" alt="Screenshot From 2025-12-13 01-37-42" src="https://github.com/user-attachments/assets/0d126b47-2c42-475f-826a-173c0d5a1156" /> and navigating back to the first file <img width="1736" height="888" alt="Screenshot From 2025-12-13 01-37-30" src="https://github.com/user-attachments/assets/032fd0bd-ff71-4a12-987a-7f1743016f6d" /> shows that the mark still exists and was not properly deleted. After these changes the global mark in the original file is correctly overwritten. Added regression test for this. Release Notes: - Fixed bug where overwriting global Vim marks was inconsistent
AidanV created
3cc21a0
Suppress another logged backtrace (#44896)
Do not log any error when the binary is not found, do not show any backtrace when logging errors. <img width="2032" height="1161" alt="bad" src="https://github.com/user-attachments/assets/3f379c90-e61f-447f-9e46-fed989380164" /> Release Notes: - N/A
Kirill Bulatov created
0a5955a
Ensure Sweep and Mercury keys are loaded for Edit Prediction button (#44894)
Follow up for #44505 Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
34122ae
editor: Don't merge adjacent selections (#44811)
Closes #24748 Release Notes: - Adjacent selections are not merged anymore --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com> Signed-off-by: Marco Mihai Condrache
Marco Mihai Condrache created
6401ac0
remote: Add ssh timeout setting (#44823)
Closes #21527 Release Notes: - Added a setting to specify the ssh connection timeout --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com>
Marco Mihai Condrache created
c20cbba
python: Add SQL syntax highlighting (#43756)
Release Notes: - Added support for SQL syntax highlighting in Python files ## Summary I am a data engineer who spends a lot of time writing SQL in Python files using Zed. This PR adds support for SQL syntax highlighting with common libraries (like pyspark, polars, pandas) and string variables (prefixed with a `# sql` comment). I referenced [#37605](https://github.com/zed-industries/zed/pull/37605) for this implementation to keep the comment prefix consistent. ## Examples <img width="738" height="990" alt="image" src="https://github.com/user-attachments/assets/48a859da-c477-490d-be73-ca70d8e47cc9" /> --------- Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Jeff Brennan and Piotr Osiewicz created
f2f3d9f
Add adjustments to agent v2 pane changes (#44885)
Follow-up to https://github.com/zed-industries/zed/pull/44190. Release Notes: - N/A
Danilo Leal created
b922019
git_ui: Make the file history view keyboard navigable (#44328)
 Release Notes: - git: Made the file history view keyboard navigable
feeiyu created
d52defe
Fix vitest test running and debugging for v4 with backwards compatibility (#43241)
## Summary This PR updates the vitest test runner integration to use the modern `--no-file-parallelism` flag instead of the deprecated `--poolOptions.forks.minForks=0` and `--poolOptions.forks.maxForks=1` flags. ## Changes - Replaced verbose pool options with `--no-file-parallelism` flag in both file-level and symbol-level vitest test tasks - This change works with vitest v4 while maintaining backwards compatibility with earlier versions (or 3 at least!) ## Testing - Added test `test_vitest_uses_no_file_parallelism_flag` that verifies: - The `--no-file-parallelism` flag is present in generated test tasks - The deprecated `poolOptions` flags are not present - Manually tested with both vitest v4 and older versions to confirm backwards compatibility - All existing tests pass ## Impact This allows Zed users to run and debug vitest tests in projects using vitest v4 while maintaining support for earlier versions. Release Notes: - Fixed vitest test running and debugging for projects using vitest v4 --------- Co-authored-by: Cole Miller <cole@zed.dev>
Freddy Fallon and Cole Miller created
79a8985
vim: Add scroll keybindings for the OutlinePanel (#42438)
Closes #ISSUE
```json
{
"context": "OutlinePanel && not_editing",
"bindings": {
"enter": "editor::ToggleFocus",
"/": "menu::Cancel",
"ctrl-u": "outline_panel::ScrollUp",
"ctrl-d": "outline_panel::ScrollDown",
"z t": "outline_panel::ScrollCursorTop",
"z z": "outline_panel::ScrollCursorCenter",
"z b": "outline_panel::ScrollCursorBottom"
}
},
{
"context": "OutlinePanel && editing",
"bindings": {
"enter": "menu::Cancel"
}
},
```
Release Notes:
- Added scroll keybindings for the OutlinePanel
---------
Co-authored-by: Ben Kunkle <ben@zed.dev>
0x2CA and Ben Kunkle created
03216c9
git_ui: Display correct provider for view on remote button (#44738)
Closes #44729 Release Notes: - Fixed incorrect provider shown in "view on remote" button
Mayank Verma created
632bd37
git_ui: Reset the project diff at the start when it is deployed again (#43579)
Closes #26920 Release Notes: - Clicking the 'changes' button now resets the diff at the beginning --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com>
Marco Mihai Condrache created
b71ef54
Add trailing commas to all asset jsonc files following #43854 (#44891)
Closes #ISSUE Post #43854, we are advertising trailing comma support for our asset `jsonc` files to the JSON LSP. This results in it adding trailing commas on format of these files. This PR batch updates the formatting for these files, so they are not spuriously added as part of other PRs that happen to modify these files Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
158ebdc
Allow external handles to be provided to gpui_tokio (#42795)
This PR allows for a handle to an existing Tokio runtime to be passed to gpui_tokio's initialization function, which means that Tokio runtimes created externally can be used. Mikayla suggested that the function simply take the runtime from whatever context the initialization function is called from but I think there could reasonably be situations where that isn't the case and this shouldn't have a meaningful impact to code complexity. If you want to use the current context's runtime you can just do `gpui_tokio::init_from_handle(cx, Handle::current());`. This doesn't have an impact on the current users of the crate - the existing `init()` function is functionally unchanged. Release Notes: - N/A
William Whittaker created
f4c3a6c
wsl: Fix folder picker adding wrong slashes (#44886)
Closes https://github.com/zed-industries/zed/issues/44508 Release Notes: - Fixed folder picker inserting wrong slashes when remoting from windows to wsl
Lukas Wirth created
6eb198c
Revert "Add Doxygen injection into C and C++ comments" (#44883)
Reverts zed-industries/zed#43581 Release notes: - Fixed comment injections not working with C and C++.
Piotr Osiewicz created
07bf685
gpui: Support Force Touch go-to-definition on macOS (#40399)
Closes #4644 Release Notes: - Adds `MousePressureEvent`, an event that is sent anytime the touchpad pressure changes, into `gpui`. MacOS only. - Triggers go-to-defintion on force clicks in the editor. This is my first contribution, let me know if I've missed something here. --------- Co-authored-by: Anthony Eid <anthony@zed.dev> Co-authored-by: Antonio Scandurra <me@as-cii.com>
Aaro Luomanen , Anthony Eid , and Antonio Scandurra created
a6b7af3
Make LiveKit source use audio priority (#44881)
Release Notes: - N/A
Yara 🏳️⚧️ created
7889aaf
lsp: Support on-type formatting request with newlines (#44882)
We called out to `request_on_type_formatting` only in handle_input function, but newlines are actually handled by editor::Newline action. Closes #12383 Release Notes: - Added support for on-type formatting with newlines.
Piotr Osiewicz created
3bf57dc
Revert "extension_api: Add `digest` to `GithubReleaseAsset`" (#44880)
Reverts zed-industries/zed#44399
Finn Evers created
a3ac595
gpui: Make refining a `Style` properly refine the `TextStyle` (#42852)
## Motivating problem
The gpui API currently has this counter intuitive behaviour
```rust
div()
.id("hallo")
.cursor_pointer()
.text_color(white())
.font_weight(FontWeight::SEMIBOLD)
.text_size(px(20.0))
.child("hallo")
.active(|this| this.text_color(red()))
```
By changing the text_color when the div is active, the current behaviour
is to overwrite all of the text styling rather than do a proper
refinement of the existing text styling leading to this odd result:
The button being active inadvertently changes the font size.
https://github.com/user-attachments/assets/1ff51169-0d76-4ee5-bbb0-004eb9ffdf2c
## Solution
Previously refining a Style would not recursively refine the TextStyle
inside of it, leading to this behaviour:
```rust
let mut style = Style::default();
style.refine(&StyleRefinement::default().text_size(px(20.0)));
style.refine(&StyleRefinement::default().font_weight(FontWeight::SEMIBOLD));
assert!(style.text_style().unwrap().font_size.is_none());
//assertion passes
```
(As best as I can tell) Style deliberately has `pub text:
TextStyleRefinement` storing the `TextStyleRefinement` rather than the
absolute `TextStyle` so that these refinements can be elsewhere used in
cascading text styles down to element's children. But a consequence of
that is that the refine macro was not properly recursively refining the
`text` field as it ought to.
I've modified the refine macro so that the `#[refineable]` attribute
works with `TextStyleRefinement` as well as the usual `TextStyle`.
(Perhaps a little bit haphazardly by simply checking whether the name
ends in Refinement - there may be a better solution there).
This PR resolves the motivating problem and triggers the assertion in
the above code as you'd expect. I've compiled zed under these changes
and all seems to be in order there.
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Serophots and Antonio Scandurra created
63bfb61
scheduler: Fix background threads ending early (#44878)
Release Notes: - N/A Co-authored-by: kate <work@localcc.cc>
Yara 🏳️⚧️ and kate created
5fe7fd9
editor: Fix block cursor offset when selecting text (#42837)
Vim visual mode and Helix selection mode both require the cursor to be on the last character of the selection. Until now, this was implemented by offsetting the cursor one character to the left whenever a block cursor is used. (Since the visual modes use a block cursor.) However, this oversees the problem that **some users might want to use the block cursor without being in visual mode**. Meaning that the cursor is offset by one character to the left even though Vim/Helix mode isn't even activated. Since the Vim mode implementation is separate from the `editor` crate the solution is not as straightforward as just checking the current vim mode. Therefore this PR introduces a new `Editor` struct field called `cursor_offset_on_selection`. This field replaces the previous check condition and is set to `true` whenever the Vim mode is changed to a visual mode, and `false` otherwise. Closes #36677 and #20121 Release Notes: - Fixes block and hollow cursor being offset when selecting text --------- Co-authored-by: dino <dinojoaocosta@gmail.com>
Lennart and dino created
a61c14c
Add setting to hide user menu in the title bar (#44466)
Closes #44417 Release Notes: - Added a setting `show_user_menu` (defaulting to true) which shows or hides the user menu (the one with the user avatar) in title bar. --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Jake Go and Danilo Leal created
c996934
Helix: Fix visual/textual line up/down (#42676)
Release Notes: - Make Helix keybinds use visual line movement for `j`, `Down`, `k` and `Up`, and textual line movement for `g j`, `g Down`, `g k` and `g Up`.
Kasper created
5805f62
git_ui: Show missing right border on selected items (#44747)
For folders and files basically any selected item in the git panel we draw a border around it. The issue is that the right side of this border wasn't ever visible. In the project_panel.rs file I've saw that the decision was to make the right side border 2 pixels. And this panel doesn't have this issue, no matter which side of the dock is selected. So it was a very easy `look at how we did x do y`. Before:  After:  I don't think it warrants a release note. Release Notes: - N/A --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Devzeth and Danilo Leal created