Commit Graph
12417 Commits
Author SHA1 Message Date
MikaylaandMax dd375d1d4e Added db message and edit operation observation
Co-authored-by: Max <max@zed.dev>
2023-10-03 11:39:59 -07:00
Mikayla 10496fabf5 Add message and operation ACK messages to protos 2023-10-02 17:10:03 -07:00
Max BrunsfeldandMikayla 2305497209 Avoid N+1 query for channels with new messages
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-10-02 16:22:28 -07:00
Max BrunsfeldandMikayla 2e8040aeda Avoid N+1 query for channels with notes changes
Also, start work on new timing for recording observed notes edits.

Co-authored-by: Mikayla <mikayla@zed.dev>
2023-10-02 15:58:34 -07:00
Max BrunsfeldandMikayla 90373d87a7 Avoid spurious notifies in chat channel select
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-10-02 15:57:59 -07:00
Mikayla 03777676aa Implement channel changes for messages 2023-10-01 22:32:11 -07:00
Mikayla ec0d8fe1ba Add database implementation of channel message change tracking 2023-10-01 22:32:11 -07:00
Mikayla 30ae808ce1 Add channel note indicator and clear changed status 2023-10-01 22:32:10 -07:00
Mikayla 2a02ec0b87 Channel notifications from the server works 2023-10-01 22:30:21 -07:00
Mikayla 09289bb995 Add observed_channel_notes table and implement note diffing 2023-10-01 22:26:27 -07:00
Joseph T. Lyons a6d5a4b1a1 Add Nushell support to venv activation (#3073)
This PR adds an option to run `activate.nu` in the automatic venv
activation code (relevant comment
[here](https://github.com/zed-industries/community/issues/2103#issuecomment-1742355651))

Release Notes:

- Added a `nushell` option to the
`terminal.detect_venv.on.activate_script` setting
([2103](https://github.com/zed-industries/community/issues/2103)).
2023-10-01 23:55:57 -04:00
Joseph T. Lyons 07cbcd9cb5 Add Nushell support to venv activation 2023-10-01 23:38:30 -04:00
Max Brunsfeld 322da5d8d4 Allow following participants who aren't in the same project (#2993)
The goal of this PR is to make Following more intuitive.

### Old Behavior

Previously, following was scoped to a project. In order to follow
someone in a given window, the window needed to contain a shared
project, and the leader needed to be present in the project. Otherwise,
following failed.

### New Behavior

* You can always follow **any** participant in the current call, in any
pane of any window.
* When following someone in a project that you're both collaborating in,
it works the same as before.
* When following someone in an unshared project, or a project that they
don't have open, you'll only get updates about the leader's views that
don't belong to a project, such as channel notes views. When the leader
focuses a file in a different project, you'll get the "follow $LEADER to
their active project" indicator

### Todo

* [x] Change db schema and RPC protocol so a project id isn't required
for following
* [x] Change client to allow following into non-project items regardless
of the leader's project
* [x] Assign colors to users in a way that doesn't require users to be
in a shared project.
2023-09-29 15:18:05 -07:00
Max Brunsfeld 3590da0c16 Show current user as follower when following in unshared projects 2023-09-29 15:08:25 -07:00
Max Brunsfeld f0d5356ad9 Fix active view update when center pane is not focused 2023-09-29 14:37:28 -07:00
Mikayla Maki 4f7af645e1 Refactor elixir LSP settings (#3071)
This PR is a bit of a last minute change, but I realized there was
actually a third player in the Elixir LSP space who wants support as
well,
[lexical](https://github.com/zed-industries/community/issues/1567). I
realized that the settings arrangement I shipped in this preview
precludes adding a third kind of LSP. I don't have the time to learn how
to fully support this LSP, but I thought I'd at least refactor how the
settings are represented before this hits stable.

Release Notes:

- Changed the new `"elixir": { "next": "on" }` setting to `"elixir": {
"lsp": "next_ls" }`. The `elixir.lsp` setting requires a full restart to
take effect. (Preview only)
2023-09-29 14:25:05 -07:00
Max Brunsfeld d7eea1c383 Switch .leader_replica_id -> .leader_peer_id 2023-09-29 14:16:38 -07:00
Max Brunsfeld f5459e071e Merge branch 'main' into allow-following-outside-of-projects 2023-09-29 14:15:33 -07:00
Max Brunsfeld 8911694c15 Update active view when activating a window 2023-09-29 14:12:51 -07:00
Mikayla f6e1b47202 Refactor elixir LSP settings 2023-09-29 14:12:50 -07:00
Max Brunsfeld 951ba848a2 Fix bug in follower updates for non-project items 2023-09-29 14:09:14 -07:00
Max Brunsfeld c8dc666de8 Add ZED_ALWAYS_ACTIVE env var, use it in local collaboration script
This makes zed always behave as if the app is active, even if no window is focused.
It prevents the 'viewing a window outside of zed' state during collaboration.
2023-09-29 13:43:43 -07:00
Conrad Irwin dd03a7718e vim: Fix accidental visual selection when following (#3068)
Release Notes:

- vim: Fix a bug where following could put you in visual mode
2023-09-29 13:59:59 -06:00
Mikayla Maki 36fe80f674 Add support for the TextDocumentSyncKind LSP option (#3070)
fixes https://github.com/zed-industries/community/issues/2098

Release Notes:

- Fixed a bug in Zed's LSP implementation when using Next LS.
2023-09-29 12:25:37 -07:00
Mikayla f9dbbd26e9 Fix tests relying on off-spec behavior 2023-09-29 12:19:58 -07:00
Mikayla c744a22aec Add support for the TextDocumentSyncKind LSP options 2023-09-29 12:05:21 -07:00
Kyle Caverly 16621cee5e add scheme for full parseable files in semantic index (#3069)
add scheme as a parseable file type in semantic index.
Each file will operate as a single embedding, in which no real scheme
syntax or tree-sitter level data is stored.

Release Notes:

- Added scheme to Semantic Index
2023-09-29 14:42:15 -04:00
KCaverly 8eacf279f1 add scheme for full parseable files in semantic index 2023-09-29 14:35:02 -04:00
Conrad Irwin 4b61767fe0 vim: Fix accidental visual selection when following 2023-09-29 12:08:25 -06:00
Max Brunsfeld f7363fd4bd Remove uneeded Workspace::project_remote_id_changed method 2023-09-29 08:54:23 -07:00
Marshall Bowers d94bbd1ecb ui: Fix glyph used for option key in Keybinding (#3066)
This PR fixes the glyph used for the option key in the new `Keybinding`
component.

Same fix as in #3065, but applied to the new `Keybinding` component so
that we don't regress when switching to GPUI2.

<img width="750" alt="Screenshot 2023-09-29 at 10 50 15 AM"
src="https://github.com/zed-industries/zed/assets/1486634/8c6147e9-fa05-4804-954c-b8e3b98cbdf0">

Release Notes:

- N/A
2023-09-29 11:02:35 -04:00
Piotr Osiewicz 44c05f7a86 ui: Mirror option key in keybindings (#3065)
![image](https://github.com/zed-industries/zed/assets/24362066/94731737-a21a-4cef-a445-eb855f1a4d3e)

![image](https://github.com/zed-industries/zed/assets/24362066/e879ec9a-70aa-4989-923f-4cca18d01587)

Release Notes:

- Fixed option key's appearance in keybindings
2023-09-29 16:45:49 +02:00
Antonio Scandurra 04bedbd30f Introduce the ability to include or exclude warnings from project diagnostics (#3056)
![CleanShot 2023-09-27 at 18 09
37](https://github.com/zed-industries/zed/assets/482957/317d31e4-81f8-44d8-b94f-8ca7150d3fd2)

Release Notes:

- Added the ability to exclude warnings from project diagnostics. By
default, they will be on but they can be disabled temporarily by
clicking on the warnings icon. The default behavior can be changed by
changing the new `diagnostics.include_warnings` setting.
2023-09-29 13:13:04 +01:00
Max Brunsfeld 447a8ffa81 Introduce a WorkspaceStore for handling following 2023-09-28 18:58:52 -07:00
Marshall Bowers 94861f0260 storybook: Fix kitchen sink story (#3064)
This PR fixes the kitchen sink story in the storybook.

Included are some additional changes that make it so the kitchen sink is
automatically populated by all of the defined stories.

Release Notes:

- N/A
2023-09-28 21:22:50 -04:00
Max Brunsfeld 9d5b14d9cb Remove stray file 2023-09-28 17:14:53 -07:00
Max Brunsfeld 7f4cce9a99 🎨 Workspace::leader_updated 2023-09-28 17:13:10 -07:00
Max Brunsfeld 4d98184acc Remove unused db query method 2023-09-28 17:13:10 -07:00
Max Brunsfeld 893166c0fc Remove unused dependencies on theme 2023-09-28 17:13:10 -07:00
Max Brunsfeld c712acdfb2 Fix removal of followers on Unfollow 2023-09-28 16:46:43 -07:00
d54c6c2066 Mainline GPUI2 UI work (#3062)
This PR mainlines the current state of new GPUI2-based UI from the
`gpui2-ui` branch.

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Nate <nate@zed.dev>
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-09-28 19:36:21 -04:00
Conrad Irwin d0e5c86d31 vim: Fix some dw edge cases (#3058)
Release Notes:

- vim: Fix `dw` on the last word of a line, and on empty lines.
2023-09-28 15:32:29 -06:00
Conrad Irwin 93b2d38756 vim keybinding updates (#3057)
Release Notes:

- vim: Add ctrl-i to go forward
([#1732](https://github.com/zed-industries/community/issues/1732)).
ctrl-o was already supported.
- vim: Add `g <space>` to open the current snippet in its own file.
- vim: Escape will now return to normal mode even if completion menus
are open (use `ctrl-x ctrl-z` to hide menus, as in vim).
- vim: Add key bindings for Zed's various completion mechanisms:
- - `ctrl-x ctrl-o` to open the completion menu,
- -  `ctrl-x ctrl-l` to open the LSP action menu,
- - `ctrl-x ctrl-c` to trigger Copilot (requires configuring copilot),
- - `ctrl-x ctrl-a` to trigger the inline Assistant (requires
configuring openAI),

NOTE: we should add these to the docs before shipping 0.107 to stable.
2023-09-28 15:32:21 -06:00
Conrad Irwin 43eda76653 vim increment (#3054)
- vim: add ctrl-a/ctrl-x for increment/decrement
2023-09-28 15:32:11 -06:00
Joseph T. Lyons 7642ced3cf Enable semantic_index by default (#3061)
Release Notes:

- Enabled the `semantic_index` setting by default.
2023-09-28 17:24:00 -04:00
Max Brunsfeld 26b0382f31 Undo making project optional on stored follower states
Following works without a project, but following in unshared projects does
not need to be replicated to other participants.
2023-09-28 14:21:44 -07:00
Joseph T. Lyons 3190bfa2e5 Enable semantic_index by default 2023-09-28 17:17:26 -04:00
Max BrunsfeldandConrad cd72b7c288 Fix errors from assuming all room_participant rows had a non-null participant_index
Rows representing pending participants have a null participant_index.

Co-authored-by: Conrad <conrad@zed.dev>
2023-09-28 12:03:53 -07:00
Max Brunsfeld 0729b740c9 Merge branch 'main' into allow-following-outside-of-projects 2023-09-28 11:58:28 -07:00
Max BrunsfeldandConrad 8b2a8959d3 Fix coloring of local selections when following
Co-authored-by: Conrad <conrad@zed.dev>
2023-09-28 11:37:47 -07:00