Linear:
https://linear.app/zed-industries/issue/Z-2578/zed-launches-very-slow-for-user
I was searching for the cause of a slow startup time reported in the
above issue, and I don't think I found it, but I did find two very
noticeable slow code paths while profiling, and fixed them.
### Notes
1. When starting the JSON language server, we provide it with a JSON
schema for our settings. For the `theme` setting, the JSON schema needs
to read all of the themes in the registry, to generate a list of valid
theme names. Previously, as part of this, we were deserializing each
theme from JSON, which took a lot of CPU. Now, we don't do that.
2. When an FS event occurs within a git repository, we reload the git
status for all entries in that git repository. Previously, we did that
via a separate `libgit2` call per FS entry (including ignored entries,
so many thousands in the case of the `zed` repo). Now we do one
`libgit2` call, asking for all of the statuses. Git carries an index of
all of the files with statuses, so this is fast.
Release Notes:
- Improved the the performance of starting up a JSON language server.
- Improved the performance of handling changes to git repositories, such
as changing branches or committing.
Fixes https://github.com/zed-industries/community/issues/54
Release Notes:
- Added modifiers for opening files and symbols on a split
- Added modifiers for navigating to definition and type definitions on a
split
Alex Viscreanu
created
c0b2326
fix(flexes): reset flexes when collapsing axis
Click to expand commit body
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Alex Viscreanu
and
Mikayla Maki
created
c766931
feat(workspace): allow alternative actions to open files and symbols in split
Click to expand commit body
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Alex Viscreanu
and
Mikayla Maki
created
369ccc7
branch_list: Bail in case of missing worktrees. (#2726)
Click to expand commit body
Z-2632
Release Notes:
- Fixed a crash that occurred when opening a modal branch picker without
a corktree.
Closes https://github.com/zed-industries/community/issues/75
Closes https://github.com/zed-industries/community/issues/1749
The PR
* changes keybindings for `Editor && mode == auto_height` context:
before, `alt-enter` and `alt-shift-enter` added new lines in such
editors, including the one from buffer search.
New bindings are the same as in `Editor && mode == full` context.
* adds `search::SelectAllMatches` action and binds it to `Alt + Enter`
by default, to select all matches of a buffer search
The behavior mimics VSCode: we do not move the screen even if all
selections are out of the visible range (Cmd+G will navigate there) and
allow reselecting the results from both pane and search field, as long
as the search is not dismissed.
Release Notes:
- Added `search::SelectAllMatches` (`Alt + Enter` default) action to
place carets and select all buffer search results
([#75](https://github.com/zed-industries/community/issues/75),
[#1749](https://github.com/zed-industries/community/issues/1749)).
Kirill Bulatov
created
2dae42b
update embedding query for tsx to accomodate for leading comments
d4971e9
update typescript parsing to manage for leading tsdoc comments
KCaverly
created
c6195e6
branch_list: Bail in case of missing worktrees.
Click to expand commit body
Z-2632
Piotr Osiewicz
created
0f54893
Fix syntax map issues that caused bugs in editing HEEx (#2723)
Click to expand commit body
Fixes [Z-2575 : HEEX files are using deprecated commenting
sytle](https://linear.app/zed-industries/issue/Z-2575/heex-files-are-using-deprecated-commenting-sytle)
- Fixed a bug where comment toggling and bracket matching used the wrong
characters in templating languages like ERB and HEEx
([#1724](https://github.com/zed-industries/community/issues/1724)).
- Fixed a bug where interpolated code was sometimes not parsed correctly
within templating languages like ERB and HEEx.
Max Brunsfeld
created
c466711
branch_list: Ensure index is within list bounds. (#2724)
Click to expand commit body
Z-2630
Release Notes:
- Fixed a crash in branch list that occurred when confirming a match in
empty list.
Piotr Osiewicz
created
9c15025
branch_list: Ensure index is within list bounds.
Click to expand commit body
Z-2630
Piotr Osiewicz
created
31720d8
Add randomized syntax map test with elixir within heex within elixir
Max Brunsfeld
created
21e7e35
Include newlines in between combined injection ranges on different lines
Max Brunsfeld
created
2f2ef7c
Use workspace dependencies for tree-sitter grammars
Max Brunsfeld
created
2e23331
Find the layer with the smallest enclosing node in language_scope_at
Max Brunsfeld
created
3a625d1
update c embedding query for preceding comments
415b8f0
Add line height settings for the editor (#2718)
Click to expand commit body
I'm a bit tired of the complaining for this feature. But also, we should
have it. Hence, this PR.
fixes:
https://github.com/zed-industries/community/issues/304#issue-1305112032
Release Notes:
- Added a `buffer_line_height` setting
We're finally doing the thing.
TODO:
- [x] Choose an approach
- Decided to add a new element just for the pane axis, containing a
slimmed down copy of the flex code.
- [x] Wire through callbacks and pointers so that data goes where it
needs to
- [x] Do the flex juggling math on resize
- [x] Update the flexes when updating the split tree
- [x] Restore the active_pane_magnification setting
- [x] Serialize an axis' flexes
Release Notes:
- Made the center pane group splits resizable. Note that resizing is
disabled if the `active_pane_magnification` setting is changed from
default.
Mikayla Maki
created
b38e3b8
remove reindexing subscription, and add status methods for vector store