ZIm/crates
Antonio Scandurra fb6cff89d7
Introduce InlineCompletionProvider (#9777)
This pull request introduces a new `InlineCompletionProvider` trait,
which enables making `Editor` copilot-agnostic and lets us push all the
copilot functionality into the `copilot_ui` module. Long-term, I would
like to merge `copilot` and `copilot_ui`, but right now `project`
depends on `copilot`, which makes this impossible.

The reason for adding this new trait is so that we can experiment with
other inline completion providers and swap them at runtime using config
settings.

Please, note also that we renamed some of the existing copilot actions
to be more agnostic (see release notes below). We still kept the old
actions bound for backwards-compatibility, but we should probably remove
them at some later version.

Also, as a drive-by, we added new methods to the `Global` trait that let
you read or mutate a global directly, e.g.:

```rs
MyGlobal::update(cx, |global, cx| {
});
```

Release Notes:

- Renamed the `copilot::Suggest` action to
`editor::ShowInlineCompletion`
- Renamed the `copilot::NextSuggestion` action to
`editor::NextInlineCompletion`
- Renamed the `copilot::PreviousSuggestion` action to
`editor::PreviousInlineCompletion`
- Renamed the `editor::AcceptPartialCopilotSuggestion` action to
`editor::AcceptPartialInlineCompletion`

---------

Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Kyle <kylek@zed.dev>
Co-authored-by: Kyle Kelley <rgbkrk@gmail.com>
2024-03-26 13:28:06 +01:00
..
activity_indicator Fix issues with extension API that come up when moving Svelte into an extension (#9611) 2024-03-22 17:29:06 -07:00
assets Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
assistant Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
audio Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
auto_update markdown preview: highlight code blocks (#9087) 2024-03-12 12:54:12 +02:00
breadcrumbs Encode rem values derived from pixels using rems_from_px (#9367) 2024-03-14 16:39:55 -04:00
call Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
channel Fix issues with extension API that come up when moving Svelte into an extension (#9611) 2024-03-22 17:29:06 -07:00
cli Make the cli crate depend on workspace clap (#9507) 2024-03-18 20:00:37 +01:00
client Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
clock Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
collab Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
collab_ui Fix invalid highlight position for (edited) text (#9660) 2024-03-21 13:37:45 -06:00
collections Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
color Fix hex_to_hsla inside the color crate (#9412) 2024-03-15 16:58:46 -04:00
command_palette Encapsulate CommandPaletteFilter and CommandPaletteInterceptor (#9402) 2024-03-15 12:37:25 -04:00
command_palette_hooks Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
copilot Fix issues with extension API that come up when moving Svelte into an extension (#9611) 2024-03-22 17:29:06 -07:00
copilot_ui Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
db Fix issues with extension API that come up when moving Svelte into an extension (#9611) 2024-03-22 17:29:06 -07:00
diagnostics Add an animation to the LSP checking indicator (#9463) 2024-03-19 10:16:18 -07:00
editor Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
extension Consolidate more extension API structs that were duplicated btwn client and server (#9797) 2024-03-25 21:28:18 -07:00
extension_api Fix issues with extension API that come up when moving Svelte into an extension (#9611) 2024-03-22 17:29:06 -07:00
extension_cli Consolidate more extension API structs that were duplicated btwn client and server (#9797) 2024-03-25 21:28:18 -07:00
extensions_ui Consolidate more extension API structs that were duplicated btwn client and server (#9797) 2024-03-25 21:28:18 -07:00
feature_flags Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
feedback Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
file_finder Fix next/prev shortcuts handling in the File Finder (#9785) 2024-03-25 14:06:37 -07:00
fs Windows: implement symlink (#9508) 2024-03-18 14:27:39 -07:00
fsevent Add rs-notify implementation of fs::watch (#9040) 2024-03-08 22:18:44 -08:00
fuzzy Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
git Properly display deleted diff hunks (#9182) 2024-03-11 17:53:45 +02:00
go_to_line Restore --all-targets for clippy (#9346) 2024-03-14 12:39:45 -04:00
google_ai Fix licensing errors 2024-03-20 15:52:02 +01:00
gpui Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
gpui_macros Fix flickering (#9012) 2024-03-11 10:45:57 +01:00
image_viewer Image viewer (#9425) 2024-03-19 10:13:10 -07:00
install_cli Fix flickering (#9012) 2024-03-11 10:45:57 +01:00
journal Revert "Revert "chore: Bump Rust version to 1.77 (#9631)"" (#9672) 2024-03-22 11:17:16 +01:00
language Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
language_selector Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
language_tools Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
languages Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
live_kit_client Add a schema to extensions, to prevent installing extensions on too old of a Zed version (#9599) 2024-03-20 17:33:26 -04:00
live_kit_server Merge prost dependecies (#9522) 2024-03-18 20:33:20 -06:00
lsp lsp: Add partial support for insert/replace completions (#9634) 2024-03-21 16:19:21 +01:00
markdown_preview markdown preview: Handle line breaks in between task list items correctly (#9795) 2024-03-26 12:12:57 +02:00
media Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
menu Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
multi_buffer Enable clippy::never_loop (#9006) 2024-03-14 14:07:50 -04:00
node_runtime Allow extensions to define more of the methods in the LspAdapter trait (#9554) 2024-03-20 12:47:04 -07:00
notifications Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
open_ai Hard code max token counts for supported models (#9675) 2024-03-21 20:30:33 -06:00
outline Restore --all-targets for clippy (#9346) 2024-03-14 12:39:45 -04:00
picker Clean up Picker constructor signature (#9500) 2024-03-18 12:27:51 -04:00
prettier Fix prettier-plugin-organize-imports plugin removes used imports (#9598) 2024-03-21 08:23:15 +01:00
project Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
project_panel Handle first click on Zed window (#9553) 2024-03-25 10:52:18 -07:00
project_symbols Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
quick_action_bar Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
recent_projects chore: Wrap WorkspaceId in newtype (#9492) 2024-03-18 12:39:03 +01:00
refineable Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
release_channel Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
rich_text Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
rope Revert "language: Remove buffer fingerprinting (#9007)" 2024-03-21 14:10:18 -06:00
rpc Consolidate more extension API structs that were duplicated btwn client and server (#9797) 2024-03-25 21:28:18 -07:00
search Support newline and tab literals in regex search-and-replace operations (#9609) 2024-03-25 12:21:04 +01:00
settings Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
snippet Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
sqlez Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
sqlez_macros Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
story Enable clippy::eq_op (#9369) 2024-03-14 17:05:07 -04:00
storybook windows: Add manifest for storybook (#9453) 2024-03-18 10:14:01 -04:00
sum_tree Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
task Extensions registering tasks (#9572) 2024-03-22 16:18:33 +01:00
tasks_ui Extensions registering tasks (#9572) 2024-03-22 16:18:33 +01:00
telemetry_events Add telemetry events for loading extensions (#9793) 2024-03-25 17:30:48 -04:00
terminal Do not enable venv in terminal for bash-like oneshot task invocations (#8444) 2024-03-21 19:40:33 +02:00
terminal_view Small improvements of the task terminal spawn behavior (#9399) 2024-03-15 18:32:59 +02:00
text Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
theme remoting (#9680) 2024-03-22 08:44:56 -06:00
theme_importer Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
theme_selector Add support for applying theme after extension is installed (#9529) 2024-03-20 11:13:58 -04:00
time_format notification panel: rework time formatting (#8997) 2024-03-12 21:02:04 -06:00
ui Change maximum height of TitleBar (#9758) 2024-03-25 10:45:19 -04:00
util Add telemetry events for loading extensions (#9793) 2024-03-25 17:30:48 -04:00
vcs_menu Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
vim Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
welcome Allow specifying no base keymap (#9471) 2024-03-20 18:52:17 -06:00
workspace Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
worktree Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
zed Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
zed_actions Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00