KCaverly
ca6f7d8a80
add worktree previously indexed functionality to vector db
2023-07-26 09:17:04 -04:00
Conrad Irwin
39f02c2b72
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
Nathan Sobo
c48d8af204
Merge branch 'paint-context' into cells
2023-07-25 17:36:05 -06:00
Nathan Sobo
1b03c5d69c
Pass PaintContext to Element::paint
...
I want to use this on another branch, but it's a sweeping change,
so this prepares the ground for it. This can always be reverted if
it doesn't work out.
2023-07-25 17:32:31 -06:00
Nathan Sobo
df9c17176e
WIP
2023-07-25 16:33:58 -06:00
KCaverly
75999204ad
update project search to only show semantic button visible with semantic_index enabled
2023-07-25 16:26:37 -04:00
Joseph T. Lyons
cc23360bab
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
e8210b827d
move visible text to just start anchor with context lines for semantic search
2023-07-25 15:24:27 -04:00
KCaverly
cdceddd2cc
update semantic index tests for elixir
2023-07-25 15:20:35 -04:00
Joseph T. Lyons
4085df5146
Add tests for manipulate_lines()
2023-07-25 15:17:16 -04:00
Conrad Irwin
64b252e81a
A little refactor
...
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 12:55:01 -06:00
Joseph T. Lyons
bf2ca57f55
Remove { and } from single-line closure
2023-07-25 14:48:11 -04:00
Mikayla Maki
b5630eb901
Merge branch 'main' into quinn/nix
2023-07-25 11:34:57 -07:00
Mikayla Maki
c32fd57643
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.



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. Lyons
93ec73da29
Fix code computing new selections
...
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 14:04:25 -04:00
KCaverly
97c3d97792
update semantic index tests for cpp
2023-07-25 13:30:38 -04:00
Conrad Irwin
1f65effe57
Update status bar theming
...
Co-Authored-By: Nate Butler <iamnbutler@gmail.com>
2023-07-25 11:06:41 -06:00
Joseph T. Lyons
299818cde0
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
c86096a886
update semantic index tests for javascript
2023-07-25 10:38:37 -04:00
Joseph T. Lyons
1a84382881
WIP
2023-07-25 10:33:20 -04:00
Nathan Sobo
54a7419fa2
WIP
2023-07-24 23:27:14 -06:00
Joseph T. Lyons
bdd0b9f387
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
a01d973477
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
e199a6a3a1
Highlight all Elm function calls
2023-07-24 10:55:15 -07:00
Quinn Wilton
3cc88904bf
Add all Elm functions to the outline, including locals
2023-07-24 10:45:46 -07:00
Quinn Wilton
62ee52a5fc
Highlight qualified Elm function calls
2023-07-24 10:45:15 -07:00
Quinn Wilton
fbe0108959
Highlight Elm arrows as keywords
2023-07-24 10:44:56 -07:00
Mikayla Maki
d95c4fdb2b
Remove unbound highlight queries
2023-07-24 09:01:15 -07:00
Conrad Irwin
baa16a2fc6
Better method ordering
2023-07-24 09:57:51 -06:00
Mikayla Maki
ea74734b0a
Touch up elm tree sitter integration
2023-07-24 08:52:51 -07:00
Conrad Irwin
43d94e37ec
Refactor mode indicator to remove itself
...
One of the problems we had is that the status_bar shows a gap between
items, and we want to not add an additional gap for an invisible status
indicator.
2023-07-24 09:51:54 -06:00
Mikayla Maki
25e4bcea7f
Implement cascading resize algorithm
2023-07-24 08:04:46 -07:00
Kirill Bulatov
7dccb487de
Fixes a crash when SelectAllMatches action was called on no matches
2023-07-24 15:42:10 +03:00
Quinn Wilton
6ad0852a70
Add outline.scm for Elm
2023-07-24 00:58:59 -07:00
Quinn Wilton
dd504f5965
Add tree-sitter-glsl
2023-07-23 22:22:11 -07:00
Quinn Wilton
a4914fcf3b
Add tree-sitter-elm
2023-07-23 22:22:11 -07:00
Max Brunsfeld
8fff0b0ff8
Fix pathspec in staged_statuses
...
Enable non-literal matching so that directory paths match
all files contained within them.
2023-07-23 21:36:29 -07:00
Quinn Wilton
fe388ed71e
Add tree-sitter-nix
2023-07-23 17:24:50 -07:00
Mikayla Maki
429a2fc623
Add drag end events
...
Fix left dragging cascade
WIP: Implement right dragging, WIP: use drag end events to set and reset state around initial flex orientation
2023-07-23 13:28:30 -07:00
Mikayla Maki
28ee05b324
WIP: cascade split resizes
2023-07-23 01:20:25 -07:00
Mikayla Maki
b4b53eb5f1
Refactor resize handle code to be amenable to cascading resizes
2023-07-22 21:48:45 -07:00
Max Brunsfeld
a3a9d024ba
Fix filtering of staged statuses
2023-07-22 17:53:58 -07:00
Max Brunsfeld
b338ffe8d8
Rely on git status for any paths not matching the git index
2023-07-22 17:47:36 -07:00
Kirill Bulatov
f05095a6dd
Focus project panel on directory select
2023-07-23 00:12:25 +03:00
Max Brunsfeld
6c09782aa2
Optimize full file status via passing in known file mtime
2023-07-22 11:53:26 -07:00
Max Brunsfeld
51d311affd
Compute unstaged git status separately, to take advantage of our cached file mtimes
2023-07-21 17:58:43 -07:00
Max Brunsfeld
ff0864026e
Only fetch statuses for changed paths
2023-07-21 17:08:31 -07:00
Max Brunsfeld
05b161118c
Don't call git status when ignored files change
2023-07-21 17:05:42 -07:00
Kirill Bulatov
dcaf8a9af8
Open paths starting with ~ from terminal click
2023-07-22 01:34:25 +03:00
Conrad Irwin
d14a484a20
Add support for adding/removing status items
2023-07-21 16:06:14 -06:00