This changes vim motions to be relative to fold lines, not display
lines, to match the behaviour of vim.
This is necessary for relative line numbers to make sense (as the most
important thing is you can do `3j` to get th e line that is numbered 3).
Release Notes:
- vim: Fix handling of motions when `soft_wrap` is enabled in zed. Like
in vim `j,k,up,down,$,^,0,home,end` will all now navigate in file
coordinates not display coordinates.
- vim: Add `g {j,k,up,down,$,^,0,home,end}` to navigate in display
coordinates.
- vim: Add `z o` and `z c` to open and close folds.
- vim: Add `z f` in visual mode to fold selection.
Note: this may be a jarring change if you're grown used to the current
behaviour of `j` and `k`. You can make the issue less acute by setting
`"soft_wrap":"none"` in your settings; or you can manually copy the
bindings for `g j` to the binding for `j` (etc.) in your keymap.json to
preserve the existing behaviour.
Conrad Irwin
created
859ac1e
Add a default binding for toggling inlay hints (#2910)
Click to expand commit body
Release Notes:
- Add a `"ctrl-shift-:": "editor::ToggleInlayHints"` default binding
53558bc
Remove baseurl to prevent theme import issue
Nate Butler
created
7ae5ee6
Debounce code action and document highlight requests (#2905)
Click to expand commit body
Lately, I've been finding Rust-analyzer unusably slow when editing large
files (like `editor_tests.rs`, or `integration_tests.rs`). When I
profile the Rust-analyzer process, I see that it sometimes saturates up
to 10 cores processing a queue of code actions requests.
Additionally, sometimes when collaborating on large files like these, we
see long delays in propagating buffer operations. I'm still not sure why
this is happening, but whenever I look at the server logs in Datadog, I
see that there are remote `CodeActions` and `DocumentHighlights`
messages being processed that take upwards of 30 seconds. I think what
may be happening is that many such requests are resolving at once, and
the responses are taking up too much of the host's bandwidth.
I think that both of these problems are caused by us sending way too
many code action and document highlight requests to rust-analyzer. This
PR adds a simple debounce between changing selections and making these
requests.
From my local testing, this debounce makes Rust-analyzer *much* more
responsive when moving the cursor around a large file like
`editor_tests.rs`.
Max Brunsfeld
created
87e25c8
Use model from conversation when available
Antonio Scandurra
created
16422a0
Remember whether include conversation was toggled
15628af
Style language server name in completion menu
Click to expand commit body
Omit in buffers with one or zero running language servers with the
capability to provide completions
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Julia
and
Antonio Scandurra
created
ea0e5e8
chore: Use IsTerminal trait instead of relying on libc to detect stdout being a terminal (#2908)
Click to expand commit body
IsTerminal was added in 1.70.
Release Notes:
- N/A
Piotr Osiewicz
created
3965587
Testing: Update build script to make local testing easier (#2903)
Click to expand commit body
* `script/bundle -l` will only build for the current architecture and
skip DMG creation. It will also copy to `/Applications`.
* `script/bundle -l "My Bundle"` will name the bundle after your
provided name.
* Passing `-f` will overwrite. Passing `-o` will also open the
application.
Nathan Sobo
created
72413db
Remove the ability to reply to specific message in assistant
c2b60df
Allow including conversation when triggering inline assist
Antonio Scandurra
created
1c6964e
Trim off surrounding `[]` when parsing terminal hover links (#2906)
Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/2899
Terminal has to accept `[` and `]` as valid word parts, due to
`[slug].tsx` being a valid file name.
Yet, terminal has to exclude these to match paths in strings like
`[/some/path/[slug].tsx]`.
Release Notes:
- N/A
Kirill Bulatov
created
7c498fe
Trim off surrounding `[]` when parsing terminal hover links
Click to expand commit body
Terminal has to accept `[` and `]` as valid word parts, due to
`[slug].tsx` being a valid file name.
Yet, terminal has to exclude these to match paths in strings like
`[/some/path/[slug].tsx]`.
Kirill Bulatov
created
791f6cf
Update some tests to reflect code action debouncing
* Use a single row, instead of centering the search bar within a double-row toolbar.
* Search query controls on the left, navigation on the right
* Semantic is the final mode, for greater stability between buffer and project search.
* Prevent query editor from moving when toggling path filters
Max Brunsfeld
created
78f9a1f
Remove padding from workspace toolbar, increase its content height to compensate
Click to expand commit body
The padding makes it difficult to layout toolbar items correctly when they are more than one row tall.
Max Brunsfeld
created
bb448b9
Don't add a quick actions toolbar item for non-editor views
Click to expand commit body
Rather than adding primary toolbar item that renders as empty,
don't add an item at all. This prevents spurious spacing from
being added after other primary toolbar items.
Max Brunsfeld
created
9521f6d
Simplify implementation of flex with spacing
When you pass -l, we build for the local architecture only and copy the
resulting app bundle to /Applications. You can provide a bundle name as
an optional argument.
Fresh off the press, memchr 2.6.0 adds vector search routines for
aarch64. That directly improves our search performance for both text and
regex searches. Per BurntSushi's claims, the simple string searches in
ripgrep got ~2 times faster (more details available in
https://github.com/BurntSushi/memchr/pull/129).
Release Notes:
- N/A
Piotr Osiewicz
created
ded6dec
Initial unstyled language server short name in completions
d804afc
Don't auto-indent when the assistant starts responding with indentation
Antonio Scandurra
created
07b9c6c
language: Make Buffer::new take an explicit ID (#2900)
Click to expand commit body
See Linear description for the full explanation of the issue. This PR is
mostly a mechanical change, except for the one case where we do pass in
an explicit `next_id` instead of `model_id` in project.rs.
Release Notes:
- Fixed a bug where some results were not reported in project search in
presence of unnamed buffers.
Piotr Osiewicz
created
937aabf
Extract a `strip_markdown_codeblock` function
Antonio Scandurra
created
81a5043
Allow `[` and `]` symbols in terminal links (#2899)
Click to expand commit body
Deals with https://github.com/zed-industries/community/issues/1865
` ./src/pages/[[...slug]].tsx` is a valid file path in macOs and Linux,
and should be available for cmd-hover-click in terminal.
Release Notes:
- Allow `[` and `]` symbols in terminal links
Kirill Bulatov
created
506ec01
Allow `[` and `]` symbols in terminal links
Click to expand commit body
` ./src/pages/[[...slug]].tsx` is a valid file path in macOs and Linux,
and should be available for cmd-hover-click in terminal.