Commit Graph
10851 Commits
Author SHA1 Message Date
Julia 48a9b3e1e9 Make LSP status message match new font size of diagnostic message (#2796)
The status bar diagnostic message font size was updated in
https://github.com/zed-industries/zed/commit/8fd9cba675667508377e5aef65ba5b0f42462414
but the LSP status message font size remained the same causing a font
size change when swapping between the two

![CleanShot 2023-07-26 at 18 32
13](https://github.com/zed-industries/zed/assets/30666851/8d357f46-3a48-4ed1-9832-d24b4b2be4a8)
![CleanShot 2023-07-26 at 18 30
56](https://github.com/zed-industries/zed/assets/30666851/e4ce9911-f66d-4bc3-b951-78196da44176)

Release Notes:

- Fixed an inconsistency in status bar font size.
2023-07-27 11:16:28 -04:00
Julia cdb8eb1f2f Make LSP status message match new font size of diagnostic message 2023-07-27 10:25:46 -04:00
Antonio Scandurra 1bfab5029e Maintain cursor stack's position correctly when ascending the tree (#2795)
This fixes a bug that could cause the cursor to incorrectly report its
start when using `slice` or `seek_forward`, and then calling `prev`. We
didn't notice this because we were not testing those three methods
together.

I suppose this could explain some of the panics we've observed because
we do use `slice`/`seek_forward` followed by `prev` calls in production.
2023-07-27 13:51:09 +02:00
Antonio Scandurra f9671ca100 Maintain cursor stack's position correctly when ascending the tree
This fixes a bug that could cause the cursor to incorrectly report its
start when using `slice` or `seek_forward`, and then calling `prev`. We
didn't notice this because we were not testing those three methods
together.

I suppose this could explain some of the panics we've observed because
we do use `slice`/`seek_forward` followed by `prev` calls in production.
2023-07-27 12:34:03 +02:00
Mikayla Maki ad82887428 Downgrade tree sitter elm to 5.6.4 (#2794)
The tree sitter elm parser contains a c symbol which collides with other
linked symbols. This PR downgrades the tree sitter elm parser to a
version which doesn't have this problem.

Release Notes:
- Fixed crash when parsing elm files
2023-07-26 15:54:55 -07:00
Mikayla Maki 038eeee16b Downgrade tree sitter elm to 5.6.4 2023-07-26 15:44:06 -07:00
Mikayla Maki 3c1bf68c83 Block extra drag events in original drag handlers (#2793)
In https://github.com/zed-industries/zed/pull/2790 I added an extra drag
event on mouse_up which signaled the end of a drag event, as mouse_up
event themselves wouldn't reliably fire if users moved their mouse too
quickly. This broke the assumptions of the terminal element. This PR
adds filters to all current on_drag handlers which removes this new
event.

Release Notes:

- Fixed a bug causing terminal links to never open (preview only)
- Fixed a bug in terminal link detection causing it to miss files with a
`-` in it
2023-07-26 15:15:31 -07:00
Mikayla Maki 1d6fc91933 Block extra drag events in original drag handlers 2023-07-26 14:57:46 -07:00
Kyle Caverly 118a1ac7d7 Parallel vector db (#2792)
Parallelize Vector Database calls for project semantic search.

Release Notes: (Preview-only)

- Parallelize Vector database calls for project semantic search. Cuts
query time by 2/3rds.
- Removed default keymap for old semantic search modal.
2023-07-26 17:17:59 -04:00
KCaverly 96bd8e569b removed old code 2023-07-26 17:11:30 -04:00
KCaverly 8bd62f7c46 remove unused imports 2023-07-26 17:01:44 -04:00
KCaverly ccb967c295 remove default keymap for semantic search modal 2023-07-26 16:59:19 -04:00
KCaverly 6745934d29 managed for small batch size edge case in semantic search 2023-07-26 16:56:41 -04:00
KCaverly 8ba11c110b remove debug logging for project_search semantic search 2023-07-26 16:51:25 -04:00
KCaverly 5149035702 batch search queries in the vector database 2023-07-26 16:36:39 -04:00
Joseph T. Lyons e46d228bf2 Follow naming convention for menu items 2023-07-26 14:35:23 -04:00
Joseph T. Lyons 1e46805315 v0.98.x dev 2023-07-26 13:27:55 -04:00
Derek Briggs fae6f2d8e2 icon updates (#2791)
Updated app icon and icon system updates
2023-07-26 11:23:23 -06:00
Derek Briggs ecbeb0741c icon updates 2023-07-26 11:19:34 -06:00
Mikayla Maki a3a03211e5 Simple cascading split (#2790)
This PR cascades the split resizing to adjacent splits, if the current
split has already hit the minimum size. This PR also adds support for
detecting the end of a drag event to GPUI, via a bool on the dispatched
drag.

Release Notes:

- Made split resizing more flexible
2023-07-26 09:49:27 -07:00
Mikayla Maki 8f49972d41 fmt 2023-07-26 09:39:35 -07:00
Mikayla Maki ff392442a5 Remove placeholders 2023-07-26 09:37:52 -07:00
Kyle Caverly 16332063d9 Semantic search v2 (#2789)
Move semantic search from navigation modal, to project search option.
This PR is intended to be released in Preview only, and requires an
opt-in semantic_index option to enable. Without this opt-in setting
enable, the user should perceive no differences between previous project
search.

Release Notes: (Preview-only)

- Added Semantic Search as a opt-in feature within Project Search
- Show indexing feedback on indexing process within project search view
2023-07-26 10:34:58 -04:00
KCaverly f71a224c79 ensure semantic search is not enabled on stable 2023-07-26 10:22:33 -04:00
KCaverly 43fffcbcb4 fix warnings 2023-07-26 10:03:30 -04:00
KCaverly 3d2d6b9fa2 catchup with main 2023-07-26 09:50:38 -04:00
KCaverly 655ec92da6 add worktree previously indexed functionality to vector db 2023-07-26 09:17:04 -04:00
Conrad Irwin 44f4f14010 Add a mode indicator for vim (#2763)
Release Notes:

- vim: add a mode indicator
([#409](https://github.com/zed-industries/community/issues/409))

Now updated screenshots with @iamnbutler 
<img width="1043" alt="Screenshot 2023-07-25 at 11 11 57"
src="https://github.com/zed-industries/zed/assets/94272/8301479a-8b58-42d8-81a1-bc40e1e0a4df">
<img width="1043" alt="Screenshot 2023-07-25 at 11 12 00"
src="https://github.com/zed-industries/zed/assets/94272/89c3b8bd-9cbc-4fd7-ad10-dac5538ed3a3">
<img width="1043" alt="Screenshot 2023-07-25 at 11 12 12"
src="https://github.com/zed-industries/zed/assets/94272/adc87fe3-a720-4779-853b-df9443407046">
2023-07-25 20:18:23 -06:00
KCaverly a399e9f41c update project search to only show semantic button visible with semantic_index enabled 2023-07-25 16:26:37 -04:00
Joseph T. Lyons 2d7b0074a6 Add sort lines command (#2786)
This PR adds command palette actions for:

- `sort lines case sensitive`
- `sort lines case insensitive`
- `reverse lines`
- `shuffle lines`

Closes out:

- https://github.com/zed-industries/community/issues/658

and partially closing out:

- https://github.com/zed-industries/community/issues/57 (which is
currently a top-ranked issue)

There are issues with dedupe lines and I didn't try to tackle converting
variable names between different conventions. I'll likely close out 57
with a note to just upvote the remaining individual issues

Release Notes:

- added command palette actions for `sort lines case sensitive`, `sort
lines case insensitive`, `reverse lines`, and`shuffle lines`
(([#57](https://github.com/zed-industries/community/issues/57)),
([#658](https://github.com/zed-industries/community/issues/658)))
2023-07-25 15:39:45 -04:00
KCaverly eb8aaebf66 move visible text to just start anchor with context lines for semantic search 2023-07-25 15:24:27 -04:00
KCaverly 65a6489a79 update semantic index tests for elixir 2023-07-25 15:20:35 -04:00
Joseph T. Lyons a8b628ce9f Add tests for manipulate_lines() 2023-07-25 15:17:16 -04:00
Conrad IrwinandMikayla Maki e81bab4e2e A little refactor
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 12:55:01 -06:00
Joseph T. Lyons 3a8579b79b Remove { and } from single-line closure 2023-07-25 14:48:11 -04:00
Mikayla Maki d2a6264731 Add support for Elm and GLSL (#2782)
This adds tree-sitter grammars for both Elm and GLSL, with injections
for GLSL embedded within Elm. It also adds an `outline.scm` for Elm,
though limitations in the tree-sitter grammar meant that I wasn't able
to get it looking exactly how I'd have liked.

In particular, it wasn't clear how to nicely annotate functions in the
outline as being functions, or how to prevent the fields of a record
declaration from being increasingly indented.


![image](https://github.com/zed-industries/zed/assets/285821/544bc00b-3bfc-4ec7-be9d-764b9f0292ab)

![image](https://github.com/zed-industries/zed/assets/285821/74e57e95-bf87-4989-ae29-a2f625141bcf)

![image](https://github.com/zed-industries/zed/assets/285821/9e283c78-66d5-4c15-9827-1b5b446cdc37)

fixes https://github.com/zed-industries/community/issues/598

Release Notes:
- Added syntax highlighting for the Elm and GLSL languages
2023-07-25 11:34:22 -07:00
Joseph T. LyonsandMikayla Maki e3dae4eacb Fix code computing new selections
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 14:04:25 -04:00
KCaverly d3aacb692d update semantic index tests for cpp 2023-07-25 13:30:38 -04:00
Conrad IrwinandNate Butler 8fd9cba675 Update status bar theming
Co-Authored-By: Nate Butler <iamnbutler@gmail.com>
2023-07-25 11:06:41 -06:00
Joseph T. LyonsandJulia f702d3536a Fix rand import and tweak callbacks
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-07-25 11:44:13 -04:00
KCaverly a5972b022f update semantic index tests for javascript 2023-07-25 10:38:37 -04:00
Joseph T. Lyons 385367b6c9 WIP 2023-07-25 10:33:20 -04:00
Joseph T. Lyons e7724c8621 Add open file in project finder via space (#2785)
@mikayla-maki for 👀 

[This PR added in the ability to rename a file via
`enter`](https://github.com/zed-industries/zed/pull/2784). Previously,
`enter` was used to both open a file and confirm a rename, so this PR
changes the opening of a file to use `space`, which is what VS Code
uses. It also makes a bit more sense because now `enter` is just used to
start a rename and confirm the rename, vs being used for 2 different
actions.

N/A on the release notes, as I adjusted the release note in the
previously-tagged PR.

Release Notes:

- N/A
2023-07-24 16:35:01 -04:00
Max Brunsfeld 4f2579494c More git status optimizations (#2779)
Follow-up to https://github.com/zed-industries/zed/pull/2777
Refs https://github.com/zed-industries/community/issues/1770

In this PR, I reworked the way that git statuses are retrieved. In a
huge repository like `WebKit`, the really slow part of computing a list
of git statuses is the *unstaged* portion of the diff. For the *staged*
diff, `git` can avoid comparing the contents of unchanged directories,
because the index contains hashes of every tree. But for the *unstaged*
portion, Git needs to compare every file in the worktree against the
index. In the common case, when there are no changes, it's enough to
check the `mtime` of every file (because the index stores the mtimes of
files when they are added). But this still requires an `lstat` call to
retrieve each file's metadata.

I realized that this is redundant work, because the worktree is
*already* calling `lstat` on every file, and caching their metadata. So
in this PR, I've changed the `Repository` API so that there are separate
methods for retrieving a file's *staged* and *unstaged* statuses. The
*staged* statuses are retrieved in one giant batch, like before, to
reduce our git calls (which also have an inherent cost). But the
`unstaged` statuses are retrieved one-by-one, after we load files'
mtimes. Often, all that's required is an index lookup, and an mtime
comparison.

With this optimization, it once again becomes pretty responsive to open
`WebKit` or `chromium` in Zed.

Release Notes:

- Optimized the loading of project file when working in very large git
repositories
2023-07-24 11:23:32 -07:00
Quinn Wilton e2cdf03336 Highlight all Elm function calls 2023-07-24 10:55:15 -07:00
Mikayla Maki 7a6f8c2ad3 Add MacOS standard key binding for file renames (#2784)
Release Notes:

- Added a default keybinding for using enter to rename files in the
project panel
2023-07-24 10:46:43 -07:00
Quinn Wilton ad8a056344 Add all Elm functions to the outline, including locals 2023-07-24 10:45:46 -07:00
Quinn Wilton 3e1304534c Highlight qualified Elm function calls 2023-07-24 10:45:15 -07:00
Quinn Wilton 802d3edc07 Highlight Elm arrows as keywords 2023-07-24 10:44:56 -07:00
Mikayla Maki ebb923a1c1 Add MacOS standard key binding for file renames 2023-07-24 10:20:10 -07:00