Commit Graph
39175 Commits
Author SHA1 Message Date
Antonio Scandurra b709205982 Allow splitting of messages using shift-enter 2023-06-15 14:05:26 +02:00
Piotr Osiewicz 0acffbd92a editor: Highlight search results
Z-1292
2023-06-15 09:44:44 +02:00
Mikayla Maki 0b698afc1c Add zoom serialization to the workspace 2023-06-14 23:43:45 -07:00
Mikayla Maki 1fd0218dc3 Add focusing into the toggle dock commands 2023-06-14 23:04:41 -07:00
Mikayla Maki 128b0cea89 Update test-app sound 2023-06-14 18:40:45 -07:00
Mikayla Maki 71571c7129 WIP: Use audio support to send live data 2023-06-14 18:40:45 -07:00
Mikayla Makiandnathan cf70885671 Wire in audio APIs from swift
co-authored-by: nathan <nathan@zed.dev>
2023-06-14 18:40:45 -07:00
Mikayla Maki 513a0f711b Add entitlements file to bundle step (#2611)
This completes the bundle changes that will be needed to access voice,
as well as adds permissions for accessing other MacOS services, the
camera, and the necessary permissions for plugins. This was developed by
combining the entitlements of iTerm and VSCode, cross-referenced with
the entitlements of Firefox. 

Release Notes:

- Fixed a bug in enabling authorization for macOS services (preview
only)
2023-06-14 18:06:55 -07:00
Mikayla Maki 452c62c452 Update bundle 2023-06-14 17:37:47 -07:00
Mikayla Maki 26c8dadbda Add entitlements file to bundle step 2023-06-14 17:34:48 -07:00
Joseph Lyons 5c4c8f2bc5 v0.92.x dev 2023-06-14 13:27:36 -04:00
Mikayla Maki ae3179e880 Add UsageDescriptions to Info.plist (#2609)
This updates our dependency on cargo-bundle to point at a fork I've
created that adjusts the latest version's behavior to work for our use
case. This PR also updates the Zed Info.plist to include the following
keys:

- NSSystemAdministrationUsageDescription
- NSAppleEventsUsageDescription
- NSBluetoothAlwaysUsageDescription
- NSCalendarsUsageDescription
- NSCameraUsageDescription
- NSContactsUsageDescription
- NSLocationAlwaysUsageDescription
- NSLocationUsageDescription
- NSLocationWhenInUseUsageDescription
- NSMicrophoneUsageDescription
- NSSpeechRecognitionUsageDescription
- NSRemindersUsageDescription

Release Notes:

- Bug fix: Allow applications run via the Zed terminal to request
authorization for macOS services (e.g. microphone and camera)
2023-06-14 10:04:54 -07:00
Antonio Scandurra 0c36e313bc Overhaul assistant panel (#2610)
Closes
https://linear.app/zed-industries/issue/Z-2368/use-a-different-icon-for-the-assistant-panel
Closes
https://linear.app/zed-industries/issue/Z-2363/ship-the-assistant-only-on-preview
Closes
https://linear.app/zed-industries/issue/Z-2331/scrolling-makes-it-hard-to-read
Closes
https://linear.app/zed-industries/issue/Z-2306/allow-undo-and-collaboration-in-assistant

This pull request is a significant overhaul of the assistant panel,
which now uses a simple `Buffer` as opposed to a `MultiBuffer` to show
messages. Specifically, we track the start of each message with an
anchor located right after the newline (or `Anchor::MIN` for the first
message). When the anchor becomes invalid (that is, the newline is
deleted), we merge the message with the preceding ones. Crucially,
messages don't actually get deleted so that, if the newline anchor
becomes valid again (such as when undoing/redoing), we can restore the
messages as well.

As part of this overhaul, we are also improving the scrolling behavior
to maintain the viewport stable only when editing or moving the cursor,
but otherwise leave the scroll position unchanged when manually
scrolling up or down.

Note that with these changes, we are limiting access to the assistant to
users on preview (and dev), as we want to polish the behavior a little
more before shipping to the general public. Users on stable will still
be able to see the default settings/keybindings of the assistant, but I
think that's okay, as they won't be able to do anything with them.

Release Notes:

- Added support for undo/redo in the assistant (preview-only)
- Improved the scrolling behavior of the assistant when it was
generating responses. Now Zed will keep the viewport stable only when
editing or moving the cursor, but otherwise leave the scroll position
unchanged when manually scrolling up or down (preview-only)
- Changed the icon of the assistant panel (preview-only)

**Note for @JosephTLyons: given that we're feature flagging this, let's
make sure things on stable look reasonable and work correctly. Things to
look out for: ensure a stock installation works, changing the settings
on stable works, changing the keybinding on stable works.**
2023-06-14 14:09:09 +02:00
Antonio Scandurra e9a5a6fdea Use robot icon for assistant to prevent confusion with conversations 2023-06-14 12:14:43 +02:00
Antonio Scandurra e14e11b748 Avoid loading the assistant panel on stable 2023-06-14 12:08:49 +02:00
Antonio Scandurra 26adb28be2 Save cursor scroll position when the editor is auto-scrolled 2023-06-14 12:00:27 +02:00
Antonio Scandurra ee5a23b04c Avoid auto-scrolling the editor when inserting/removing headers 2023-06-14 10:49:23 +02:00
Antonio Scandurra edb711d609 Keep cursor stable as autocompletions are being streamed 2023-06-14 10:41:18 +02:00
Antonio Scandurra e59dff6fd2 💄 2023-06-14 09:47:30 +02:00
Antonio Scandurra b35d73d4cc Re-enable copy support in the assistant 2023-06-14 09:40:43 +02:00
Antonio Scandurra 80cd172c7e Remove unnecessary set_render_excerpt_header method 2023-06-14 09:38:49 +02:00
Antonio Scandurra fba45fb73b Parse buffer as Markdown 2023-06-14 09:31:41 +02:00
Antonio Scandurra 921940f45c Merge remote-tracking branch 'origin/main' into assistant-buffer 2023-06-14 09:16:45 +02:00
Mikayla Maki 4226982ee6 Restore misconfigured Cargo.toml 2023-06-13 18:08:33 -07:00
Mikayla Maki 8066e68b19 Switch to using new version of cargo bundle with more capabilities 2023-06-13 18:01:51 -07:00
Kevin Hovsäter b84122ff10 Toggle comments for empty single line selections (#2594) 2023-06-13 20:15:11 +02:00
Max Brunsfeld e69f9a19bc Move worktree tests into their own file (#2608)
The worktree has a lot of tests. Let's reduce their indentation, and
make it easier to navigate to them. We deserve it.

Just doing this in its own PR, to minimize conflicts.

Release Notes:

- N/A
2023-06-13 10:50:49 -07:00
Max Brunsfeld 527d6d1761 Flatten worktree tests module structure 2023-06-13 10:31:29 -07:00
Max Brunsfeld a1471a191b Move worktree tests to their own file 2023-06-13 10:22:14 -07:00
Piotr Osiewicz 9b1eed8ff2 editor: Add language setting for comment continuations (#2605)
Per @JosephTLyons request I've added a language setting for comment
continuations.

Release Notes:

- Added a language setting for comment continuations.
2023-06-13 18:59:46 +02:00
Max Brunsfeld 7e9dbe4b2a Remove panic when programatically updating an invalid setting (#2607)
Fixes
https://linear.app/zed-industries/issue/Z-2170/thread-main-panicked-at-could-not-deserialize-setting-type-welcomebase
Fixes
https://linear.app/zed-industries/issue/Z-2228/thread-main-panicked-at-could-not-deserialize-setting-type
2023-06-13 09:50:54 -07:00
Max Brunsfeld f14568bcc3 Remove panic when programatically updating an invalid setting 2023-06-13 09:43:57 -07:00
Antonio ScandurraandJulia Risley a620f7af3b Skip merged messages when inserting new ones
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-13 16:06:50 +02:00
Antonio ScandurraandJulia Risley ac89247206 Update blocks when cycling the message role
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-13 16:00:13 +02:00
Antonio ScandurraandJulia Risley 46b249878f Show message headers again
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-13 15:55:52 +02:00
Antonio Scandurra d5a2642a9b Merge messages whose header has been invalidated 2023-06-13 15:16:04 +02:00
Antonio Scandurra 6c1f207ba9 Get back to a compiling state with Buffer backing the assistant 2023-06-13 13:43:06 +02:00
Joseph T. Lyons 39ed5931e3 Fix comments in settings files (#2604)
I accidentally added the information about folder-specific settings to
the user settings default file - just fixing that.

Release Notes:

- N/A
2023-06-13 04:06:53 -04:00
Joseph Lyons 762c823ac4 Fix comments in settings files 2023-06-13 04:03:51 -04:00
Max Brunsfeld 829ca51800 Add support for HEEx templates in Elixir, fix a bug in handling nested language injections (#2603)
Closes https://linear.app/zed-industries/issue/Z-2211/heex-support

Release Notes:

- Added support for Elixir HEEx templates.
- Fixed a bug that caused incorrect syntax highlighting in ERB templates
([#1619](https://github.com/zed-industries/community/issues/1619)).
2023-06-12 17:49:07 -07:00
Max Brunsfeld 8d6fc2f227 Add Heex language 2023-06-12 17:32:20 -07:00
Max Brunsfeld 9823a67a47 Fix syntax map bug with combined injections inside of other injections 2023-06-12 17:32:20 -07:00
Max Brunsfeld 9a72f66b72 Move SyntaxMap tests to their own file 2023-06-12 16:24:17 -07:00
Max Brunsfeld 2049eae00a Change action namespace to 'debug' for LSP log and syntax tree view 2023-06-12 15:54:36 -07:00
Max Brunsfeld 9b52ae7067 Add a syntax tree view, for developing and debugging language support (#2601)
This PR adds a syntax tree view, which lets you view the syntax tree of
any layer in the active editor's `SyntaxMap`.

This view uses some new APIs that I added to Tree-sitter, which allow us
to efficiently render the syntax tree using a `UniformList`. Tree-sitter
PR: https://github.com/tree-sitter/tree-sitter/pull/2316

![Screen Shot 2023-06-12 at 3 33 36
PM](https://github.com/zed-industries/zed/assets/326587/2a27ee7b-bf29-4b3b-bfa8-fb47f97a2785)

Release Notes:

- Added a *syntax tree view* that shows Zed's internal syntax tree(s)
for the active editor. You can open it running the `debug: open syntax
tree view` command from the command palette.
2023-06-12 15:50:39 -07:00
Max Brunsfeld 86f3bba98b Include field names in the syntax tree 2023-06-12 15:32:16 -07:00
Max Brunsfeld 534f263cf0 Upgrade Tree-sitter 2023-06-12 15:31:59 -07:00
Max Brunsfeld 9b4746ca05 Close the menu when selecting a different layer in the syntax tree view 2023-06-12 15:14:57 -07:00
Max Brunsfeld 1b6aeb4165 Improve the look of the syntax tree view UI 2023-06-12 15:14:57 -07:00
Max Brunsfeld 36a1be982a Sync selection between syntax tree view and editor 2023-06-12 15:14:57 -07:00