Commit Graph
10696 Commits
Author SHA1 Message Date
Conrad Irwin b4b1df5fee 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 7361cda15a Ignore off-screen cursors 2023-07-20 11:11:47 -06:00
Conrad Irwin 40e8fc2213 Assertions for assumptions 2023-07-20 11:11:37 -06:00
Conrad Irwin d424988245 Better calculation of pane distance 2023-07-20 11:06:16 -06:00
Kirill Bulatov 3c1f920544 Keep basic line height for single line editors (#2759) 2023-07-20 17:37:41 +03:00
Kirill Bulatov ce4edb3375 Fully revert the line height change 2023-07-20 15:39:22 +03:00
Kirill Bulatov e39b713496 Keep basic line height for single line editors 2023-07-20 13:42:11 +03:00
Kirill Bulatov 5eacb2a7a4 Properly display keybindings in context menus (#2758)
Fixes https://github.com/zed-industries/community/issues/1751


![image](https://github.com/zed-industries/zed/assets/2690773/cbf29eca-0fca-4aff-be50-810eb80fdcb5)

![image](https://github.com/zed-industries/zed/assets/2690773/330054eb-ba92-4c8f-862f-06f276cc262b)


Release Notes:

- Fixed context menu keybindings not updating with custom keybinding
values
2023-07-20 12:25:41 +03:00
Kirill Bulatov 923d7d849c Properly display keybindings in context menus 2023-07-20 12:18:04 +03:00
Conrad Irwin 7a098c5c48 Default keybindings for activating pane by direction
Breaking change: previously cmd-k cmd-{left,right} moved to the
{previous,next} pane; now they will move in the specified direction.
2023-07-19 18:33:08 -06:00
Conrad Irwin 2b63422a13 vim: Add support for ctrl-w commands
Primarily {h,j,k,l,left,right,up,down} for moving to a pane by
direction; but also {w,W,p} for going forward/back, and {v,s} for
splitting a pane vertically/horizontally, and {c,q} to close a pane.

There are a large number of ctrl-w commands that are not supported, and
which fall into three buckets:

* switch this pane with that one (VScode also has this, and it's a
  requested feature)
* move to top/bottom/leftmost/rightmost
* counts on any of these
* jump to "definition/file-under-cursor/etc.etc." in a new pane.
2023-07-19 18:29:13 -06:00
Conrad Irwin 6ab5bd0aff 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 c092a78588 Fix buffer_line_height bugs (#2756)
Release Notes:

- Bug fix: Raise minimum line height to 1.1
- Bug fix: Disable buffer_line_height setting in non-buffer UI
2023-07-19 17:11:45 -07:00
Mikayla Maki 37fc9cccca fmt 2023-07-19 16:56:49 -07:00
Mikayla Maki 5c35215148 Raise minimum line height to 1.1
Disable buffer_line_height setting in non-buffer editors
2023-07-19 16:55:28 -07:00
Conrad Irwin 08d5b2fd81 Make tab non-functional in vim mode (#2753)
Make tab do nothing (a surprisingly common vim request).

- Fixes
([#988](https://github.com/zed-industries/community/issues/988)).
- Fixes
([#897](https://github.com/zed-industries/community/issues/897)).
2023-07-19 16:26:32 -06:00
Joseph T. Lyons a2929d9df2 Fix return type in watch_file_types() 2023-07-19 16:24:29 -04:00
Mikayla Maki 86481fb260 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 fff37b30ea fmt 2023-07-19 12:34:56 -07:00
Mikayla Maki 72f550e68d 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 95f6210518 v0.97.x dev 2023-07-19 15:33:58 -04:00
Joseph T. Lyons eab626494e Update Cargo.lock 2023-07-19 15:32:41 -04:00
Mikayla Maki 5a4f9c1eb6 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 f9d722e8fd Add a few more spare associations 2023-07-19 11:14:31 -07:00
Mikayla Maki 71b800391f fmt 2023-07-19 11:10:31 -07:00
Derek Briggs 82ab668575 Fix files that don’t have a prefix 2023-07-19 11:10:30 -07:00
Derek Briggs 8906ce8c8b Update icons to new zed file icon set 2023-07-19 11:10:30 -07:00
Mikayla Maki b5a68644cb fmt 2023-07-19 11:10:30 -07:00
Mikayla Maki 157e96bc4d Make file types live reload 2023-07-19 11:10:30 -07:00
Mikayla Maki 2caa5fa2e4 Add willow license 2023-07-19 11:10:30 -07:00
Mikayla Maki 8db0da3e30 Fix tests 2023-07-19 11:10:30 -07:00
Mikayla Maki 98f263639e Added file suffix and icon associations data 2023-07-19 11:10:30 -07:00
Mikayla Maki e68edb7239 Add settings 2023-07-19 11:10:30 -07:00
Mikayla Maki 36d33e77f0 Add suffix based file icons 2023-07-19 11:10:30 -07:00
Conrad Irwin ac91fb0990 Make tab non-functional in vim mode
Fixes: zed-industries/community#988
Fixes: zed-industries/community#897
2023-07-19 10:25:17 -06:00
Conrad Irwin d14062e60a Vim search (#2657)
This PR makes searching in vim mode significantly more like vim.

I re-used search to implement "go to next instance of word under cursor"
as this is how it works in vim (for integration with other
search-related keyboard shortcuts) and to avoid having to rewrite all
the logic to be vim-specific; but that did mean I had to make some
changes to the way search works (in particular to allow different
searches to run with specific options).

Release Notes:
- vim: `<enter>` in search now puts you back in normal mode
([#1583](https://github.com/zed-industries/community/issues/1583))
- vim: `?` now works to search backwards.
- vim: jumping to definitions or search results keeps you in normal mode
([#1284](https://github.com/zed-industries/community/issues/1284))
([#1514](https://github.com/zed-industries/community/issues/1514))
- vim: `n`/`N` are now supported to jump to next/previous match after a
search
([#1583](https://github.com/zed-industries/community/issues/1583))
- vim: `*`/`#`/`g*`/`g#` are now supported to jump to the next/previous
occurrence of the word under the cursor.
- vim: `gD` now jumps to type definition
2023-07-19 10:15:23 -06:00
Conrad Irwin 8ff6450c40 Merge branch 'main' into vim-search 2023-07-19 09:48:25 -06:00
Kirill Bulatov 8a636d16b7 Clean up stale conflicting hints (#2751)
Closes
https://linear.app/zed-industries/issue/Z-2618/thread-main-panicked-at-excerpt-not-found-crateseditorsrcmulti
Closes
https://linear.app/zed-industries/issue/Z-2616/thread-main-panicked-at-excerpt-not-found-crateseditorsrcmulti

Fixes inlay hints cache not removing stale hints on invalidating
refreshes.

Release Notes:

- Fixes inlay hint panics after visible kinds settings update
2023-07-19 15:38:27 +03:00
Kirill Bulatov 913027995f Clean up stale conflicting hints 2023-07-19 15:29:00 +03:00
Kirill Bulatov 317728e644 Rework terminal highlight mechanism (#2743)
<img width="807" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/ef3bfeef-28f5-458f-abe6-7c19bf820106">

Closes https://github.com/zed-industries/community/issues/10
Closes https://github.com/zed-industries/community/issues/560

Initial version of improved terminal highlights and "open link"
functionality: drops old behavior where URLs were highlighted on hover.
Now, Cmd + hover is needed to highlight the links and click opens both
URLs and files that exist (either abs paths, or anything relative to the
project workspace worktree roots).
Only paths eligible for opening are highlighted.

Release Notes:

- Improved terminal highlights and selections: Cmd+Click opens local
files and links
2023-07-19 09:05:48 +03:00
Kirill Bulatov cb34f3ce17 Avoid extra blinking on mouse moves 2023-07-18 22:59:41 +03:00
Kirill Bulatov 753b58bce0 Consider all terminal when searching for words 2023-07-18 22:59:41 +03:00
Kirill Bulatov 8e4f3dcf8a Rework terminal highlight event flow 2023-07-18 22:59:41 +03:00
Kirill Bulatov 2fb18c9506 Avoid excessive blinking on cmd-hover 2023-07-18 22:59:41 +03:00
Kirill Bulatov 30f6a74686 Use lines and columns from the file url strings 2023-07-18 22:59:41 +03:00
Kirill Bulatov 05110f7de7 Only highlight the openable things 2023-07-18 22:59:41 +03:00
Kirill Bulatov f35133a0d6 Properly open project directories 2023-07-18 22:59:41 +03:00
Kirill Bulatov 31789331fd Detect and open URLs properly 2023-07-18 22:59:41 +03:00
Kirill Bulatov 3392b1c063 Map initial approach to string opening 2023-07-18 22:59:41 +03:00
Kirill Bulatov 99d084cbb3 Properly handle Cmd press for terminal highlights 2023-07-18 22:59:41 +03:00