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
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
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
Julia
2e3aa703d9
In macOS platform layer map a ctrl-click to a right click
2023-07-19 15:43:45 -04:00
Mikayla Maki
491b3d5515
Mute mics by default ( #2754 )
...
This adds a setting to mute mics by default.
fixes https://github.com/zed-industries/community/issues/1769
Release notes:
- Fixed a bug with gutter spacing on files that end on a new significant
digit
- Added a setting for muting on join, and set it to true by default.
2023-07-19 12:42:30 -07:00
Mikayla Maki
1e4bddd276
fmt
2023-07-19 12:34:56 -07:00
Mikayla Maki
5ceb258b3e
Mute mics by default
...
Fix bug when file ends in line with 1 more digit displayed than previous lines
Remove stale UI elements from voice call development
2023-07-19 12:34:24 -07:00
Joseph T. Lyons
34488ca863
v0.97.x dev
2023-07-19 15:33:58 -04:00
Mikayla Maki
07dc82409b
File icons ( #2719 )
...
This PR adds the next most requested editor feature.
TODO:
- [x] Figure out styles and icons for supported file types with
fixes https://github.com/zed-industries/community/issues/206
Release Notes:
- Added file icons
2023-07-19 11:17:01 -07:00
Mikayla Maki
9c9ce15afc
Add a few more spare associations
2023-07-19 11:14:31 -07:00
Mikayla Maki
e3f9a01f6b
fmt
2023-07-19 11:10:31 -07:00
Derek Briggs
f4413b0969
Fix files that don’t have a prefix
2023-07-19 11:10:30 -07:00
Mikayla Maki
aacc4bb8b0
fmt
2023-07-19 11:10:30 -07:00
Mikayla Maki
8c855680e7
Make file types live reload
2023-07-19 11:10:30 -07:00
Mikayla Maki
929a9f97b2
Fix tests
2023-07-19 11:10:30 -07:00
Mikayla Maki
fd72f4526d
Added file suffix and icon associations data
2023-07-19 11:10:30 -07:00
Mikayla Maki
d023189bda
Add settings
2023-07-19 11:10:30 -07:00
Mikayla Maki
d26f76ba90
Add suffix based file icons
2023-07-19 11:10:30 -07:00
Conrad Irwin
98b8008bcc
Merge branch 'main' into vim-search
2023-07-19 09:48:25 -06:00
Kirill Bulatov
3058a96dee
Clean up stale conflicting hints
2023-07-19 15:29:00 +03:00
KCaverly
0e071919a0
parellelize embedding api calls
2023-07-18 16:09:44 -04:00
Kirill Bulatov
33921183dc
Avoid extra blinking on mouse moves
2023-07-18 22:59:41 +03:00
Kirill Bulatov
6ed7820f7c
Consider all terminal when searching for words
2023-07-18 22:59:41 +03:00
Kirill Bulatov
10db05f87f
Rework terminal highlight event flow
2023-07-18 22:59:41 +03:00
Kirill Bulatov
6f7a6e57fc
Avoid excessive blinking on cmd-hover
2023-07-18 22:59:41 +03:00
Kirill Bulatov
94358ffb16
Use lines and columns from the file url strings
2023-07-18 22:59:41 +03:00
Kirill Bulatov
82a9d53c8a
Only highlight the openable things
2023-07-18 22:59:41 +03:00