Commit Graph

7744 Commits

Author SHA1 Message Date
KCaverly
ca4e21881e add ruby support for semantic search 2023-07-31 10:54:30 -04:00
KCaverly
a5dd8dd0a9 add lua embedding query for semantic search 2023-07-31 10:02:28 -04:00
Mikayla Maki
d58f031696
disable wrap guides in the assitant panel 2023-07-28 22:27:36 -07:00
Joseph T. Lyons
0bd6e7bac3 Fix comment 2023-07-28 23:13:36 -04:00
Joseph T. Lyons
b0e81c58dc Remove unused code in test 2023-07-28 23:06:40 -04:00
Joseph T. Lyons
2c47efcce9 Add a command to collapse all entires 2023-07-28 22:36:15 -04:00
Julia
fe43bacb6f Put LiveKitBridge Swift build directory in target
Helps it get caught in a cargo clean
2023-07-28 18:53:24 -04:00
Mikayla Maki
d3b89e16f2
Make wrap guides respect scroll position 2023-07-28 14:56:13 -07:00
Julia
46101bf110 Reattempt Node installation if the installation itself errors
This also makes us a bit more aggressive about reinstalling Node
2023-07-28 15:24:40 -04:00
Conrad Irwin
5d8370e2a1
Don't highlight project search matches either (#2807)
@JosephTLyons this is probably worth merging alongside #2803

- vim: Fix a bug where focusing project search results unexpectedly
entered visual mode
2023-07-28 12:25:32 -06:00
Conrad Irwin
fac0e2dd56 Don't highlight project search matches either 2023-07-28 12:17:32 -06:00
Kirill Bulatov
cf6e524c9a Make project search includes and excludes more user-friendly
Allow search results that start with the include/exclude path part
2023-07-28 12:56:44 +03:00
Mikayla Maki
1545128ec5
Add Nix language support (#2781)
This adds rudimentary language support for the Nix expression language,
through tree-sitter-nix.

I spent a little bit of time trying to add support for one of the Nix
language servers too, but wasn't able to get any of them running
reliably without crashing, and so I've opted to stick to just the
tree-sitter grammar for now.


![image](https://github.com/zed-industries/zed/assets/285821/c770f3d8-6fa0-4083-9bf3-239cc78ca307)
2023-07-27 18:35:52 -07:00
Mikayla Maki
e945b3c0e1
feat(workspace): add action for closing inactive editors on all panes (#2771)
using zed more and more to develop zed itself I'm finding some small qol
features missing, this is one of them
I'm very used to open two or three splits, and sometimes I want to close
everything except for the active editor, but that wasn't supported, as
the `pane::CloseInactiveItems` action only closes inactive items on the
active pane

so I've implemented it really quick, although I'm not sure it's the
right way to do this

note: I really don't like the default keybinding I've set it to, I have
this action bound to `cmd-shift-w` on all editors, but in zed is taken,
so I chose something that's free but without thinking too much about it

Release Notes:

- Added action for closing inactive editors from all panes
2023-07-27 18:11:11 -07:00
Conrad Irwin
ade8d4d167
Fix jumping to definition in a new file (#2803)
This is broken because vim currently sets settings only on the active
editor. Fix this by correcting the range on the currently active editor.

It would be nice (at some point) to refactor how vim sets settings, but
that's for another day.

Release Notes:

- vim: Fix bug when jumping to definition in new file accidentally
entered visual mode.
2023-07-27 19:10:01 -06:00
Mikayla Maki
4735b07088
Fix warning 2023-07-27 18:00:33 -07:00
Mikayla Maki
a0fc515cfc
Rework close_inactive_items to await all tasks
Update action name to be more accurate
2023-07-27 17:58:48 -07:00
Mikayla Maki
f15a03816f
underscore arguments 2023-07-27 17:19:32 -07:00
Conrad Irwin
1935307b4f Fix jumping to definition in a new file
This is broken because vim currently sets settings only on the active
editor. Fix this by correcting the range on the currently active editor.

It would be nice (at some point) to refactor how vim sets settings, but
that's for another day.
2023-07-27 18:10:17 -06:00
Mikayla Maki
ae765bbca3
Make mode indicator follow vim enabled state (#2802)
There was a minor visual bug introduced in
https://github.com/zed-industries/zed/pull/2801, this PR corrects it.

Release Notes:

- N/A
2023-07-27 16:30:49 -07:00
Mikayla Maki
03bc430bdd
Make mode indicator follow vim enabled state 2023-07-27 16:14:56 -07:00
Mikayla Maki
17fa15d989
Avoid panic by accessing view handle by global in wrong window (#2801)
View handles are window specific but the Vim global will be doing things
in all windows, that would cause a panic when Vim attempted to update a
status bar mode indicator in a background window

Release Notes:

- N/A
2023-07-27 16:02:46 -07:00
Julia
fc9687d163 Avoid panic by accessing view handle by global in wrong window
View handles are window specific but this global will be doing things
in all windows, that would cause a panic when it attempted to update
a status bar mode indicator in a background window

Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-07-27 18:53:05 -04:00
Joseph T. Lyons
3979454485 Follow naming convention for menu items 2023-07-27 17:13:37 -04:00
Julia
6a0e1d5345
Update Alacritty (#2798)
This will potentially fix a number of Alacritty related panics, however
it is tricky to figure out which ones in particular will be impacted for
sure. We've said we were going to do this for a while but with the
constant trickle of panics it seemed reasonable to just go and do it

Release Notes:

- Fixed a few potential terminal related crashes.
2023-07-27 15:03:53 -04:00
Mikayla Maki
a829b5be01
fmt 2023-07-27 11:14:21 -07:00
Mikayla Maki
d835274306
Downgrade our dependency on treesitter-cpp 2023-07-27 11:11:24 -07:00
Nate Butler
86fa27eb54 Update uses of # to . in our scheme files where they are interchangeable.
uses of `#` cause ERRORs in our scheme highlighting
2023-07-27 12:41:19 -04:00
Nate Butler
85f193dd09 Extract syntax highlighting properties from tree-sitter highlight queries 2023-07-27 12:25:53 -04:00
Julia
8c9c8362ec Update Alacritty 2023-07-27 12:19:07 -04:00
Antonio Scandurra
2e0d051a78 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
354c020612
Block extra drag events in original drag handlers 2023-07-26 14:57:46 -07:00
Kyle Caverly
ee66f99ce6
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
fbede4a5a3 removed old code 2023-07-26 17:11:30 -04:00
KCaverly
e2b38f7a31 remove unused imports 2023-07-26 17:01:44 -04:00
KCaverly
5c48729c7c managed for small batch size edge case in semantic search 2023-07-26 16:56:41 -04:00
KCaverly
89bbcdfa4f remove debug logging for project_search semantic search 2023-07-26 16:51:25 -04:00
KCaverly
98fde36834 batch search queries in the vector database 2023-07-26 16:36:39 -04:00
Joseph T. Lyons
40fcec1495 Follow naming convention for menu items 2023-07-26 14:35:23 -04:00
Joseph T. Lyons
6cd10f3d5e v0.98.x dev 2023-07-26 13:27:55 -04:00
Derek Briggs
603387ace5
icon updates (#2791)
Updated app icon and icon system updates
2023-07-26 11:23:23 -06:00
Derek Briggs
9fc1ebcb5b
icon updates 2023-07-26 11:19:34 -06:00
Mikayla Maki
711073cf3c
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
a58c9ed7d3
fmt 2023-07-26 09:39:35 -07:00
Mikayla Maki
56704c7c5f
Remove placeholders 2023-07-26 09:37:52 -07:00
KCaverly
0b61c93a25 ensure semantic search is not enabled on stable 2023-07-26 10:22:33 -04:00
KCaverly
394a105639 fix warnings 2023-07-26 10:03:30 -04:00
KCaverly
0ac919f6e0 catchup with main 2023-07-26 09:50:38 -04:00
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
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
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.


![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. 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
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
Conrad Irwin
458916409c Add a mode indicator for vim
This is the second most common remaining complaint (after :w not
working).

Fixes: zed-industries/community#409
2023-07-21 16:06:14 -06:00
Max Brunsfeld
7788eabec0
Avoid performance bottlenecks from git status calls during worktree scanning (#2777)
Closes
https://linear.app/zed-industries/issue/Z-2689/huge-slowdown-when-working-in-large-git-repositories-like-webkit
Closes https://github.com/zed-industries/community/issues/1770

In large git repositories (like Webkit), `git status` can be very slow.
And our current approach of retrieving git statuses (one by one as we
load paths), causes catastrophic slowdowns in these repos. This PR
further optimizes our retrieval of git statuses (started in
https://github.com/zed-industries/zed/pull/2728), so that when scanning
a directory, we only load git statuses once, in a single batch, at the
beginning of the scan.

There is still an initial lag when opening `WebKit` in Zed, while the
initial git status runs. But once this call completes, everything is
fast. Let's come back to this problem later.

For now, this makes Zed's directory scanning massively more efficient,
even in the case of normal-sized repos like `zed`. The git status code
was a huge percentage of zed's CPU usage when launching. Here is that
code, highlighted in a flamegraph before and after this change:

Before:

![before](https://github.com/zed-industries/zed/assets/326587/627012f2-6131-44ac-95c2-ea4a4531cb24)

After:

![after](https://github.com/zed-industries/zed/assets/326587/a11a3e1b-e925-4bff-a421-ea71cb4de85d)


Release Notes:

- Fixed a bug where project paths took a very long time to load when
working in large git repositories
([#1770](https://github.com/zed-industries/community/issues/1770))
2023-07-21 14:46:53 -07:00
Kirill Bulatov
c538504b9c Do not scroll when selecting all 2023-07-22 00:17:02 +03:00
Max Brunsfeld
4bd415f2b6 Retrieve git statuses in one batch when scanning dirs 2023-07-21 13:50:54 -07:00
Kirill Bulatov
25ea07cd41
When renaming in project panel, select file names without extensions (#2776)
Closes
https://github.com/zed-industries/community/issues/1789#issuecomment-1646061712

<img width="196" alt="Screenshot 2023-07-21 at 23 23 47"
src="https://github.com/zed-industries/zed/assets/2690773/f5c7025b-6dc8-4f0c-81e5-3cc98a3a9c8b">
<img width="197" alt="Screenshot 2023-07-21 at 23 23 52"
src="https://github.com/zed-industries/zed/assets/2690773/596f8ab0-15e0-4285-be34-ce4c276b686f">

When renaming in project panel, select file names without extensions.

Release Notes:

- Improved project panel rename by selecting file names without
extensions
2023-07-21 23:30:55 +03:00
Kirill Bulatov
33b215a288
Add search in directory action in the project panel (#2774)
Part of https://github.com/zed-industries/zed/issues/1153
Closes https://github.com/zed-industries/community/issues/1326

<img width="432" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/a50ee073-9d2e-4e5c-ae5e-23312693c540">

Adds an `project_panel::NewSearchInDirectory` action ("alt-shift-f"
default) in the project editor context to open a new project search in
the selected directory.

Release Notes:

- Adds an action to open project search in the project panel's directory
2023-07-21 23:25:45 +03:00
Kirill Bulatov
804da68af7 When renaming in project panel, select file names without extensions 2023-07-21 23:22:22 +03:00
Julia
2d8159998d Put our downloaded copy of Node in the env for every NPM action
Intelephense (PHP language server) has a dependency on `protobufjs`
which invokes `node` in the `postinstall` script and if the user did
not have a system Node runtime installed that would fail. Have this
use our downloaded installation too
2023-07-21 16:13:00 -04:00
Kirill Bulatov
595bc16749 Add search in directory action in the project panel 2023-07-21 22:47:57 +03:00
Julia
e002d9efb0
Avoid panic from assuming a vim operator exists on the operator stack (#2773)
Fixes
https://linear.app/zed-industries/issue/Z-338/operator-popped-when-no-operator-was-on-the-stack-this-likely-means

Release Notes:
- Fixed a panic that could occur when invoking a Vim object without an
operator.
2023-07-21 14:47:38 -04:00
Julia
243a1a854e Avoid panic from assuming a vim operator exists on the operator stack 2023-07-21 14:25:30 -04:00
Conrad Irwin
56c657fe79
Vim shortcuts (#2760)
Refactors some of the vim bindings to make the vim.json file less
obtuse.

Release Notes:

- vim: add `;` and `,` to repeat last `{f,F,t,T}`
- vim: add zed-specific shortcuts for common IDE actions:
- - `g A` to find all references
- - `g .` to open the code actions menu.
- - `c d` for rename
2023-07-21 10:31:18 -06:00
Conrad Irwin
4772e4ccee vim: add , and ; 2023-07-21 09:50:22 -06:00
Conrad Irwin
a50d30bf8e Quality of life shortcuts for code actions 2023-07-21 09:47:15 -06:00
Conrad Irwin
8ba69c15d1 refactor: Remove G/Z Namespace support
This previously enabled things like `d g g` to work, but we can
fix that instead by not clearing out pending vim state on change.

Either way, it is unnecessary and causes some user-confusion
(zed-industries/community#176), so remove this code for now; and use
comments to organize the file a bit instead.
2023-07-21 09:47:14 -06:00
Conrad Irwin
bf2583414b
Fix shift-enter in search (#2772)
Fixes shift-enter to go to previous result.

Release Notes:

- To type a newline in search use `ctrl-enter` (or `ctrl-shift-enter`
for a newline below).
2023-07-21 09:23:04 -06:00
Conrad Irwin
807279208d Fix shift-enter in search
If you want to type a newline in an auto_height editor, ctrl and
ctrl-shift are your friends.
2023-07-21 09:10:12 -06:00
Joseph T. Lyons
5f89de0b80
Add key binding to close all docks (#2769)
Fixes:
https://linear.app/zed-industries/issue/Z-2680/add-a-close-all-docks-action

I frequently get stuck in this state:

<img width="1608" alt="SCR-20230721-dgvs"
src="https://github.com/zed-industries/zed/assets/19867440/13257e6d-f75a-4d1c-9718-153499e90c60">

I could zoom, but I dont want to in this case, I just want to close
everything, to get back to a truly decluttered state. Running 3 toggle
commands is cumbersome. I'd like to be able to close all docks with one
action.

I added an action with the key binding `alt-cmd-y` (similar
to`alt-cmd-t`, which is used to close all tabs). My original choice was
`alt-cmd-d` (`d` for dock), but that is the default macOS key binding to
hide the system dock.


Release Notes:

- Added a `workspace: close all docks` action (deployed via
`alt-cmd-y`).
2023-07-21 11:08:43 -04:00
Alex Viscreanu
1610e270d6
feat(workspace): add action for closing inactive editors on all panes 2023-07-21 13:16:00 +02:00
Kirill Bulatov
cd3620692b Do not highlight fake URLs in terminal 2023-07-21 11:28:56 +03:00
Joseph T. Lyons
d98fcc4402 Add key binding to close all docks 2023-07-21 02:44:44 -04:00
Conrad Irwin
57b6e25278
Fix enter in search (#2768)
Fixes a regression in non-vim search caused by my changes to vim search.

Release Notes:

- N/A
2023-07-20 20:53:31 -06:00
Conrad Irwin
7337910034 Fix enter in search 2023-07-20 20:48:36 -06:00
Mikayla Maki
05a8409363
bump the brightness of the active wrap guide 2023-07-20 16:45:41 -07:00
Mikayla Maki
a9bfe97361
Add wrap guides and associated settings 2023-07-20 16:39:13 -07:00
Max Brunsfeld
81b05f2a08 Optimize glob filtering of semantic search
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-20 14:23:11 -07:00
Mikayla Maki
a85af79892
Folder icons (#2764)
- Updates icons and adds more
- Adds ability to choose folders or chevrons in user settings
- Adds ability to set indent size in user settings
2023-07-20 13:59:21 -07:00
Mikayla Maki
6b95ac9b26
fmt 2023-07-20 13:45:19 -07:00
Joseph T. Lyons
719c56734a Reuse previously-obtained call object 2023-07-20 16:21:21 -04:00
Joseph T. Lyons
6095525b56
Add microphone toggle events (#2765)
Release Notes:

- N/A
2023-07-20 16:10:20 -04:00
Joseph T. Lyons
429daf5f8c Add microphone events to calls 2023-07-20 16:00:11 -04:00
Joseph T. Lyons
7d3d54652b Remove unused method 2023-07-20 15:54:26 -04:00
Julia
0b6155609d
In macOS platform layer map a ctrl-click to a right click (#2755)
Maps a ctrl left down event into a ctrl-less right down and then up pair
and filters out ctrl left up. Hopefully this ensures that mouse down/up
events remain balanced and somewhat matching.

Release Notes:
- Added the ability to ctrl-click in place of right click to summon
context menus
([#1150](https://github.com/zed-industries/community/issues/1150)).
2023-07-20 14:54:55 -04:00
Derek Briggs
abb145da70
add indent size to project panel settings 2023-07-20 12:30:35 -06:00
Derek Briggs
0e068a644f
organize settings 2023-07-20 12:23:47 -06:00
Derek Briggs
13ae1249f5
Allow for folders or chevrons 2023-07-20 12:23:28 -06:00
Nate Butler
2f4e5b7e0e
Add the local and declare keywords to bash syntax highlighting (#2761)
Release Notes:

- Improved Bash / Shell Script syntax highlighting
2023-07-20 14:17:29 -04:00
Derek Briggs
8f0b24b264
Add moar icons 2023-07-20 12:01:41 -06:00
KCaverly
e02d6bc0d4 add glob filtering functionality to semantic search 2023-07-20 13:46:27 -04:00
Mikayla Maki
d84d663ac3
fmt 2023-07-20 10:36:23 -07:00
Mikayla Maki
4d1dbb8aa3
Add a double click to reset resized splits 2023-07-20 10:33:28 -07:00
Nate Butler
5d22a300c3 Add the local and declare keywords to bash syntax highlighting 2023-07-20 13:18:15 -04:00
Conrad Irwin
372f66c88a
Add workspace::ActivatePaneInDirection (#2757)
This change adds support for choosing a pane based on direction; and
adds default keybindings (`cmd+k cmd+{left,right,up,down}`) and vim
keybindings.

Release Notes:

- Add support for navigating to the next pane in a given direction using
`cmd+k cmd-{up,down,left,right}`
([#476](https://github.com/zed-industries/community/issues/476),
[#478](https://github.com/zed-industries/community/issues/478))
- Vim: adds support for many window related shortcuts: `ctrl-w
{h,j,k,l,up,down,left,right,w,W,p}` for navigating around panes, `ctrl-w
{q,c}` for closing panes and `ctrl-w {v,s}` for splitting panes.
2023-07-20 11:17:13 -06:00
Conrad Irwin
0e984e1e69 Ignore off-screen cursors 2023-07-20 11:11:47 -06:00
Conrad Irwin
464cc2e71a Assertions for assumptions 2023-07-20 11:11:37 -06:00
Conrad Irwin
d6a463afb8 Better calculation of pane distance 2023-07-20 11:06:16 -06:00
Kirill Bulatov
0237276557 Fully revert the line height change 2023-07-20 15:39:22 +03:00
Kirill Bulatov
0e6048a85d Keep basic line height for single line editors 2023-07-20 13:42:11 +03:00
Kirill Bulatov
a5e63fbf77 Properly display keybindings in context menus 2023-07-20 12:18:04 +03:00
Conrad Irwin
e1379f0ef0 Add support for activating a pane by direction
Contributes: zed-industries/community#476
Contributes: zed-industries/community#478
2023-07-19 18:29:11 -06:00
Mikayla Maki
cb97f5a69c
fmt 2023-07-19 16:56:49 -07:00
Mikayla Maki
aa67413abc
Raise minimum line height to 1.1
Disable buffer_line_height setting in non-buffer editors
2023-07-19 16:55:28 -07:00
KCaverly
efe973ebe2 add embedding query for json with nested arrays and strings
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-19 16:52:44 -04:00
Joseph T. Lyons
7e904183bf Fix return type in watch_file_types() 2023-07-19 16:24:29 -04:00
KCaverly
9809ec3d70 update treesitter parsing to accomodate for collapsed nested functions
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-19 15:47:05 -04:00