gwen: Purge remaining Zed branding from user-facing surfaces

Sweep every user-visible product string to Gwen: app menus (Quit,
Hide, Gwen Repository), feedback links (repo/issues now point at
github.com/kk376/zed, email to yenru@yrkaierx.com), move-to-Applications
and update dialogs, provider and settings copy, CLI help, installer and
desktop/flatpak/snap/plist metadata.

Rename user-facing settings values with back-compat aliases: base_keymap
"Gwen" (accepts "Zed"), fonts ".GwenMono"/".GwenSans" (accept
".ZedMono"/".ZedSans"), icon theme "Gwen (Default)". Fix F10
app-menu keymap arguments to "Gwen" and align the Windows installer
AppMutex with release_channel::app_identifier(). Internal identifiers,
wire protocol names, upstream service URLs and legal attribution are
intentionally kept.
This commit is contained in:
yenru0 committed 2026-09-29 09:24:34 +09:00
1 parent faa11dea4c
commit fe62a99bf5
123 files changed
+508 -499

No files matched your search

+1 -1
View File
@@ -665,7 +665,7 @@
"shift-new": "workspace::NewWindow",
"ctrl-shift-n": "workspace::NewWindow",
"ctrl-`": "terminal_panel::Toggle",
"f10": ["app_menu::OpenApplicationMenu", "Zed"],
"f10": ["app_menu::OpenApplicationMenu", "Gwen"],
"alt-1": ["workspace::ActivatePane", 0],
"alt-2": ["workspace::ActivatePane", 1],
"alt-3": ["workspace::ActivatePane", 2],
+3 -3
View File
@@ -592,7 +592,7 @@
"cmd-f2": "editor::SelectAllMatches", // Select all occurrences of current word
"cmd-k cmd-d": ["editor::SelectNext", { "replace_newest": true }], // editor.action.moveSelectionToNextFindMatch / find_under_expand_skip
// macOS binds `ctrl-cmd-d` to Show Dictionary which breaks these two binds
// To use `ctrl-cmd-d` or `ctrl-k ctrl-cmd-d` in Zed you must execute this command and then restart:
// To use `ctrl-cmd-d` or `ctrl-k ctrl-cmd-d` in Gwen you must execute this command and then restart:
// defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 70 '<dict><key>enabled</key><false/></dict>'
"ctrl-cmd-d": ["editor::SelectPrevious", { "replace_newest": false }], // editor.action.addSelectionToPreviousFindMatch
"cmd-k ctrl-cmd-d": ["editor::SelectPrevious", { "replace_newest": true }], // editor.action.moveSelectionToPreviousFindMatch
@@ -629,7 +629,7 @@
"cmd-k cmd-9": "editor::FoldAtLevel_9",
"cmd-k cmd-0": "editor::FoldAll",
"cmd-k cmd-j": "editor::UnfoldAll",
// Using `ctrl-space` / `ctrl-shift-space` in Zed requires disabling the macOS global shortcut.
// Using `ctrl-space` / `ctrl-shift-space` in Gwen requires disabling the macOS global shortcut.
// System Preferences->Keyboard->Keyboard Shortcuts->Input Sources->Select the previous input source (uncheck)
"ctrl-space": "editor::ShowCompletions",
"ctrl-shift-space": "editor::ShowWordCompletions",
@@ -1396,7 +1396,7 @@
"cmd-home": "terminal::ScrollToTop",
"shift-end": "terminal::ScrollToBottom",
"cmd-end": "terminal::ScrollToBottom",
// Using `ctrl-shift-space` in Zed requires disabling the macOS global shortcut.
// Using `ctrl-shift-space` in Gwen requires disabling the macOS global shortcut.
// System Preferences->Keyboard->Keyboard Shortcuts->Input Sources->Select the previous input source (uncheck)
"ctrl-shift-space": "terminal::ToggleViMode",
"ctrl-alt-up": "pane::SplitUp",
+1 -1
View File
@@ -658,7 +658,7 @@
"ctrl-n": "workspace::NewFile",
"ctrl-shift-n": "workspace::NewWindow",
"ctrl-`": "terminal_panel::Toggle",
"f10": ["app_menu::OpenApplicationMenu", "Zed"],
"f10": ["app_menu::OpenApplicationMenu", "Gwen"],
"alt-1": ["workspace::ActivatePane", 0],
"alt-2": ["workspace::ActivatePane", 1],
"alt-3": ["workspace::ActivatePane", 2],
+2 -2
View File
@@ -1,6 +1,6 @@
// Zed keymap
// Gwen keymap
//
// For information on binding keys, see the Zed
// For information on binding keys, see the
// documentation: https://zed.dev/docs/key-bindings
//
// To see the default key bindings run `zed: open default keymap`
+1 -1
View File
@@ -1,4 +1,4 @@
// Default Keymap (Atom) for Zed on Linux
// Default Keymap (Atom) for Gwen on Linux
[
{
"bindings": {
+2 -2
View File
@@ -48,11 +48,11 @@
"ctrl-r": "agent::NewThread",
"ctrl-shift-v": "editor::Paste",
// "escape": "agent::ToggleFocus"
///// Enable when Zed supports multiple thread tabs
///// Enable when Gwen supports multiple thread tabs
// "ctrl-t": // new thread tab
// "ctrl-[": // next thread tab
// "ctrl-]": // next thread tab
///// Enable if Zed adds support for keyboard navigation of thread elements
///// Enable if Gwen adds support for keyboard navigation of thread elements
// "tab": // cycle to next message
// "shift-tab": // cycle to previous message
},
+6 -6
View File
@@ -10,7 +10,7 @@
},
{
// Workaround to avoid falling back to default bindings.
// Unbind so Zed ignores these keys and lets emacs handle them.
// Unbind so Gwen ignores these keys and lets emacs handle them.
// NOTE: must be declared before the `Editor` override.
// NOTE: in macos the 'ctrl-x' 'ctrl-p' and 'ctrl-n' rebindings are not needed, since they default to 'cmd'.
"context": "Editor",
@@ -153,7 +153,7 @@
"alt-x": "command_palette::Toggle", // execute-extended-command
"ctrl-x b": "tab_switcher::Toggle", // switch-to-buffer
"ctrl-x ctrl-b": "tab_switcher::Toggle", // list-buffers
// "ctrl-x ctrl-c": "workspace::CloseWindow" // in case you only want to exit the current Zed instance
// "ctrl-x ctrl-c": "workspace::CloseWindow" // in case you only want to exit the current Gwen instance
"ctrl-x ctrl-c": "zed::Quit", // save-buffers-kill-terminal
"ctrl-x 5 0": "workspace::CloseWindow", // delete-frame
"ctrl-x 5 2": "workspace::NewWindow", // make-frame-command
@@ -171,15 +171,15 @@
},
},
{
// Workaround to enable using native emacs from the Zed terminal.
// Unbind so Zed ignores these keys and lets emacs handle them.
// Workaround to enable using native emacs from the Gwen terminal.
// Unbind so Gwen ignores these keys and lets emacs handle them.
// NOTE:
// "terminal::SendKeystroke" only works for a single key stroke (e.g. ctrl-x),
// so override with null for compound sequences (e.g. ctrl-x ctrl-c).
"context": "Terminal",
"bindings": {
// If you want to perfect your emacs-in-zed setup, also consider the following.
// You may need to enable "option_as_meta" from the Zed settings for "alt-x" to work.
// If you want to perfect your emacs-in-gwen setup, also consider the following.
// You may need to enable "option_as_meta" from the Gwen settings for "alt-x" to work.
// "alt-x": ["terminal::SendKeystroke", "alt-x"],
// "ctrl-x": ["terminal::SendKeystroke", "ctrl-x"],
// "ctrl-n": ["terminal::SendKeystroke", "ctrl-n"],
+2 -2
View File
@@ -1,13 +1,13 @@
[
// VS Code for Linux (and Windows). See: https://code.visualstudio.com/docs/reference/default-keybindings
//
// Zed's default keymap is close to VS Code's, so this overlay only contains
// Gwen's default keymap is close to VS Code's, so this overlay only contains
// the bindings where the two diverge.
{
"context": "Editor",
"use_key_equivalents": true,
"bindings": {
"shift-alt-f": "editor::Format", // Format Document (Windows-style; Linux `ctrl-shift-i` is a Zed default already)
"shift-alt-f": "editor::Format", // Format Document (Windows-style; Linux `ctrl-shift-i` is a Gwen default already)
"ctrl-k ctrl-f": "editor::FormatSelections", // Format Selection
"shift-alt-i": "editor::SplitSelectionIntoLines", // Insert cursor at end of each line selected
"alt-z": "editor::ToggleSoftWrap", // Toggle Word Wrap
+1 -1
View File
@@ -1,4 +1,4 @@
// Default Keymap (Atom) for Zed on macOS
// Default Keymap (Atom) for Gwen on macOS
[
{
"bindings": {
+2 -2
View File
@@ -49,11 +49,11 @@
"cmd-r": "agent::NewThread",
"cmd-shift-v": "editor::Paste",
// "escape": "agent::ToggleFocus"
///// Enable when Zed supports multiple thread tabs
///// Enable when Gwen supports multiple thread tabs
// "cmd-t": // new thread tab
// "cmd-[": // next thread tab
// "cmd-]": // next thread tab
///// Enable if Zed adds support for keyboard navigation of thread elements
///// Enable if Gwen adds support for keyboard navigation of thread elements
// "tab": // cycle to next message
// "shift-tab": // cycle to previous message
},
+6 -6
View File
@@ -11,7 +11,7 @@
},
{
// Workaround to avoid falling back to default bindings.
// Unbind so Zed ignores these keys and lets emacs handle them.
// Unbind so Gwen ignores these keys and lets emacs handle them.
// NOTE: must be declared before the `Editor` override.
"context": "Editor",
"bindings": {
@@ -147,7 +147,7 @@
"alt-x": "command_palette::Toggle", // execute-extended-command
"ctrl-x b": "tab_switcher::Toggle", // switch-to-buffer
"ctrl-x ctrl-b": "tab_switcher::Toggle", // list-buffers
// "ctrl-x ctrl-c": "workspace::CloseWindow" // in case you only want to exit the current Zed instance
// "ctrl-x ctrl-c": "workspace::CloseWindow" // in case you only want to exit the current Gwen instance
"ctrl-x ctrl-c": "zed::Quit", // save-buffers-kill-terminal
"ctrl-x 5 0": "workspace::CloseWindow", // delete-frame
"ctrl-x 5 2": "workspace::NewWindow", // make-frame-command
@@ -165,15 +165,15 @@
},
},
{
// Workaround to enable using native emacs from the Zed terminal.
// Unbind so Zed ignores these keys and lets emacs handle them.
// Workaround to enable using native emacs from the Gwen terminal.
// Unbind so Gwen ignores these keys and lets emacs handle them.
// NOTE:
// "terminal::SendKeystroke" only works for a single key stroke (e.g. ctrl-x),
// so override with null for compound sequences (e.g. ctrl-x ctrl-c).
"context": "Terminal",
"bindings": {
// If you want to perfect your emacs-in-zed setup, also consider the following.
// You may need to enable "option_as_meta" from the Zed settings for "alt-x" to work.
// If you want to perfect your emacs-in-gwen setup, also consider the following.
// You may need to enable "option_as_meta" from the Gwen settings for "alt-x" to work.
// "alt-x": ["terminal::SendKeystroke", "alt-x"],
// "ctrl-x": ["terminal::SendKeystroke", "ctrl-x"],
// "ctrl-n": ["terminal::SendKeystroke", "ctrl-n"],
+1 -1
View File
@@ -1,7 +1,7 @@
[
// VS Code for macOS. See: https://code.visualstudio.com/docs/reference/default-keybindings
//
// Zed's default keymap is close to VS Code's, so this overlay only contains
// Gwen's default keymap is close to VS Code's, so this overlay only contains
// the bindings where the two diverge.
{
"context": "Editor",
+5 -5
View File
@@ -535,11 +535,11 @@
"shift-h": "pane::ActivatePreviousItem", // not a helix default
"g w": "vim::HelixJumpToWord",
"g .": "vim::HelixGotoLastModification",
"g o": "editor::ToggleSelectedDiffHunks", // Zed specific
"g shift-o": "git::ToggleStaged", // Zed specific
"g shift-r": "git::Restore", // Zed specific
"g u": "git::StageAndNext", // Zed specific
"g shift-u": "git::UnstageAndNext", // Zed specific
"g o": "editor::ToggleSelectedDiffHunks", // Gwen specific
"g shift-o": "git::ToggleStaged", // Gwen specific
"g shift-r": "git::Restore", // Gwen specific
"g u": "git::StageAndNext", // Gwen specific
"g shift-u": "git::UnstageAndNext", // Gwen specific
// Window mode
"space w v": "pane::SplitRight",
+64 -64
View File
@@ -1,6 +1,6 @@
{
"$schema": "zed://schemas/settings",
// The name of the Zed theme to use for the UI.
// The name of the Gwen theme to use for the UI.
//
// `mode` is one of:
// - "system": Use the theme that corresponds to the system's appearance
@@ -11,11 +11,11 @@
"light": "Gwen Light",
"dark": "Gwen Dark",
},
"icon_theme": "Zed (Default)",
"icon_theme": "Gwen (Default)",
// The name of a base set of key bindings to use.
// This setting can take the following values:
//
// 1. "Zed"
// 1. "Gwen"
// 2. "VSCode"
// 3. "Atom"
// 4. "JetBrains"
@@ -24,11 +24,11 @@
// 7. "Emacs"
// 8. "Cursor"
// 9. "None"
"base_keymap": "Zed",
"base_keymap": "Gwen",
// The name of a font to use for rendering text in the editor
// ".ZedMono" currently aliases to Lilex
// ".GwenMono" currently aliases to Lilex
// but this may change in the future.
"buffer_font_family": ".ZedMono",
"buffer_font_family": ".GwenMono",
// Set the buffer text's font fallbacks, this will be merged with
// the platform's default fallbacks.
"buffer_font_fallbacks": null,
@@ -54,9 +54,9 @@
"buffer_line_height": "comfortable",
// The name of a font to use for rendering text in the UI
// You can set this to ".SystemUIFont" to use the system font
// ".ZedSans" currently aliases to "IBM Plex Sans", but this may
// ".GwenSans" currently aliases to "IBM Plex Sans", but this may
// change in the future
"ui_font_family": ".ZedSans",
"ui_font_family": ".GwenSans",
// Set the UI's font fallbacks, this will be merged with the platform's
// default font fallbacks.
"ui_font_fallbacks": null,
@@ -153,9 +153,9 @@
// after the mouse moves away from the hover target.
// Only applies when `hover_popover_sticky` is enabled.
"hover_popover_hiding_delay": 300,
// Whether to confirm before quitting Zed.
// Whether to confirm before quitting Gwen.
"confirm_quit": false,
// Whether to restore last closed project when fresh Zed instance is opened
// Whether to restore last closed project when fresh Gwen instance is opened
// May take 3 values:
// 1. All workspaces open during last session
// "restore_on_startup": "last_session"
@@ -168,7 +168,7 @@
// an explicit `-e` (existing window) or `-n` (new window) flag.
//
// May take 2 values:
// 1. Open directories as a new workspace in the current Zed window's sidebar
// 1. Open directories as a new workspace in the current Gwen window's sidebar
// "cli_default_open_behavior": "existing_window"
// 2. Open paths in a new window, unless they are subpaths of an existing project
// "cli_default_open_behavior": "new_window"
@@ -176,7 +176,7 @@
// The default behavior when opening projects from the UI.
//
// May take 2 values:
// 1. Open projects as a new workspace in the current Zed window's sidebar
// 1. Open projects as a new workspace in the current Gwen window's sidebar
// "default_open_behavior": "existing_window"
// 2. Open projects in a new window
// "default_open_behavior": "new_window"
@@ -258,28 +258,28 @@
//
// Default: " — "
"window_title_separator": " — ",
// On Linux, what draws Zed's window decorations (titlebar).
// On Linux, what draws Gwen's window decorations (titlebar).
// This setting has no effect on other platforms:
// 1. Zed draws its own window decorations.
// 1. Gwen draws its own window decorations.
// "client"
// 2. The window manager or compositor draws the window decorations.
// Not supported by GNOME Wayland.
// "server"
//
// This requires restarting Zed for changes to take effect.
// This requires restarting Gwen for changes to take effect.
//
// Default: "client"
"window_decorations": "client",
// Whether to optimize Zed's interface for assistive technology such as screen
// Whether to optimize Gwen's interface for assistive technology such as screen
// readers.
"accessible_mode": false,
// Whether to use the system provided dialogs for Open and Save As.
// When set to false, Zed will use the built-in keyboard-first pickers.
// When set to false, Gwen will use the built-in keyboard-first pickers.
"use_system_path_prompts": true,
// Whether to use the system provided dialogs for prompts, such as confirmation
// prompts.
// When set to false, Zed will use its built-in prompts. Note that on Linux,
// this option is ignored and Zed will always use the built-in prompts.
// When set to false, Gwen will use its built-in prompts. Note that on Linux,
// this option is ignored and Gwen will always use the built-in prompts.
"use_system_prompts": true,
// Whether the cursor blinks in the editor.
"cursor_blink": true,
@@ -501,11 +501,11 @@
"use_on_type_format": true,
// Whether to automatically add matching closing characters when typing
// opening parenthesis, bracket, brace, single or double quote characters.
// For example, when you type '(', Zed will add a closing ) at the correct position.
// For example, when you type '(', Gwen will add a closing ) at the correct position.
"use_autoclose": true,
// Whether to automatically surround selected text when typing opening parenthesis,
// bracket, brace, single or double quote characters.
// For example, when you select text and type '(', Zed will surround the text with ().
// For example, when you select text and type '(', Gwen will surround the text with ().
"use_auto_surround": true,
// Controls automatic indentation behavior when typing.
// - "syntax_aware": Adjusts indentation based on syntax context (default)
@@ -576,7 +576,7 @@
"space": "•",
"tab": "→",
},
// Settings related to calls in Zed
// Settings related to calls in Gwen
"calls": {
// Join calls with the microphone live by default
"mute_on_join": false,
@@ -1233,7 +1233,7 @@
// The "default" setting applies when no tool-specific rules match.
// For external agents that define their own permission modes,
// "deny" and "confirm" still take precedence — the external agent's
// permission system is only used when Zed would allow the action.
// permission system is only used when Gwen would allow the action.
//
// Per-tool regex patterns ("tools" below) match against tool input text
// (commands, paths, URLs, etc.). For `copy_path` and `move_path`,
@@ -1376,7 +1376,7 @@
//
// Default: true
"expand_terminal_card": true,
// Command to automatically run when Zed creates a Terminal Thread shell in the agent panel.
// Command to automatically run when Gwen creates a Terminal Thread shell in the agent panel.
// The command is sent to the shell as if typed, so it is interpreted by your
// configured shell (including on Windows and remote/WSL projects).
// Set to "" to disable.
@@ -1451,7 +1451,7 @@
//
// 1. Never automatically save:
// "autosave": "off",
// 2. Save when changing focus away from the Zed window:
// 2. Save when changing focus away from the Gwen window:
// "autosave": "on_window_change",
// 3. Save when changing focus away from a specific buffer:
// "autosave": "on_focus_change",
@@ -1579,11 +1579,11 @@
// Default: true
"skip_focus_for_active_in_search": true,
// Whether to use gitignored files when searching.
// Only the file Zed had indexed will be used, not necessary all the gitignored files.
// Only the file Gwen had indexed will be used, not necessary all the gitignored files.
//
// Can accept 3 values:
// * "all": Use all gitignored files
// * "indexed": Use only the files Zed had indexed
// * "indexed": Use only the files Gwen had indexed
// * "smart": Be smart and search for ignored when called from a gitignored worktree
"include_ignored": "smart",
// Whether to include text channels in file finder results.
@@ -1630,7 +1630,7 @@
"format_on_save": "off",
// How to perform a buffer format. This setting can take multiple values:
//
// 1. Default. Format files using Zed's Prettier integration (if applicable),
// 1. Default. Format files using Gwen's Prettier integration (if applicable),
// or falling back to formatting via language server:
// "formatter": "auto"
// 2. Format code using the current language server:
@@ -1644,7 +1644,7 @@
// "arguments": ["--stdin-filepath", "{buffer_path}"]
// }
// }
// 5. Format code using Zed's Prettier integration:
// 5. Format code using Gwen's Prettier integration:
// "formatter": "prettier"
// 6. Format code using a code action
// "formatter": {"code_action": "source.fixAll.eslint"}
@@ -1685,21 +1685,21 @@
//
// Default: true
"word_diff_enabled": true,
// Control what info is collected by Zed.
// Control what info is collected by Gwen.
"telemetry": {
// Send debug info like crash reports.
"diagnostics": true,
// Send anonymized usage data like what languages you're using Zed with.
// Send anonymized usage data like what languages you're using Gwen with.
"metrics": true,
// Allow sending requests to Anthropic models that cannot be offered with
// Zero Data Retention
"anthropic_retention": false,
},
// Whether to disable all AI features in Zed.
// Whether to disable all AI features in Gwen.
//
// Default: false
"disable_ai": false,
// Automatically update Zed. This setting may be ignored on Linux if
// Automatically update Gwen. This setting may be ignored on Linux if
// installed through a package manager.
"auto_update": true,
// How to render LSP `textDocument/documentColor` colors in the editor.
@@ -1727,7 +1727,7 @@
//
// Default: true
"include_warnings": true,
// Settings for using LSP pull diagnostics mechanism in Zed.
// Settings for using LSP pull diagnostics mechanism in Gwen.
"lsp_pull_diagnostics": {
// Whether to pull for diagnostics or not.
"enabled": true,
@@ -1754,7 +1754,7 @@
"max_severity": null,
},
},
// Files or globs of files that will be excluded by Zed entirely. They will be skipped during file
// Files or globs of files that will be excluded by Gwen entirely. They will be skipped during file
// scans, file searches, and not be displayed in the project file tree. Takes precedence over `file_scan_inclusions`.
"file_scan_exclusions": [
"**/.git",
@@ -1769,9 +1769,9 @@
"**/.classpath",
"**/.settings",
],
// Files or globs of files that will be included by Zed, even when ignored by git. This is useful
// Files or globs of files that will be included by Gwen, even when ignored by git. This is useful
// for files that are not tracked by git, but are still important to your project. Note that globs
// that are overly broad can slow down Zed's file scanning. `file_scan_exclusions` takes
// that are overly broad can slow down Gwen's file scanning. `file_scan_exclusions` takes
// precedence over these inclusions.
"file_scan_inclusions": [".env*"],
// Maximum directory depth to eagerly index outside of git repositories;
@@ -1899,7 +1899,7 @@
"provider": "zed",
// Disable edit predictions for files matching these glob patterns.
//
// Use `"..."` to add patterns without repeating Zed's defaults. In project
// Use `"..."` to add patterns without repeating Gwen's defaults. In project
// settings, it extends the user or parent configuration value. Omit
// `"..."` to replace the inherited list.
//
@@ -1973,7 +1973,7 @@
"mercury": {
"prediction_debounce": 0,
},
// Controls whether Zed may collect training data when using Zed's Edit Predictions.
// Controls whether Gwen may collect training data when using Gwen's Edit Predictions.
// Data is only captured when the project is detected as open source.
// Possible values:
// - "default": use the preference previously set via the status-bar toggle,
@@ -2180,7 +2180,7 @@
// "font_size": 15,
// Set the terminal's font family. If this option is not included,
// the terminal will default to matching the buffer's font family.
// "font_family": ".ZedMono",
// "font_family": ".GwenMono",
// Set the terminal's font fallbacks. If this option is not included,
// the terminal will default to matching the buffer's font fallbacks.
// This will be merged with the platform's default font fallbacks
@@ -2275,13 +2275,13 @@
"tasks": {
"variables": {},
"enabled": true,
// Use LSP tasks over Zed language extension ones.
// Use LSP tasks over Gwen language extension ones.
// If no LSP tasks are returned due to error/timeout or regular execution,
// Zed language extension tasks will be used instead.
// Gwen language extension tasks will be used instead.
//
// Other Zed tasks will still be shown:
// * Zed task from either of the task config file
// * Zed task from history (e.g. one-off task was spawned before)
// Other Gwen tasks will still be shown:
// * Gwen task from either of the task config file
// * Gwen task from history (e.g. one-off task was spawned before)
//
// Default: true
"prefer_lsp": true,
@@ -2311,20 +2311,20 @@
// Settings for which version of Node.js and NPM to use when installing
// language servers and Copilot.
//
// Note: changing this setting currently requires restarting Zed.
// Note: changing this setting currently requires restarting Gwen.
"node": {
// By default, Zed will look for `node` and `npm` on your `$PATH`, and use the
// By default, Gwen will look for `node` and `npm` on your `$PATH`, and use the
// existing executables if their version is recent enough. Set this to `true`
// to prevent this, and force Zed to always download and install its own
// to prevent this, and force Gwen to always download and install its own
// version of Node.
"ignore_system_version": false,
// You can also specify alternative paths to Node and NPM. If you specify
// `path`, but not `npm_path`, Zed will assume that `npm` is located at
// `path`, but not `npm_path`, Gwen will assume that `npm` is located at
// `${path}/../npm`.
"path": null,
"npm_path": null,
},
// The extensions that Zed should automatically install on startup.
// The extensions that Gwen should automatically install on startup.
//
// If you don't want any of these extensions, add this field to your settings
// and change the value to `false`.
@@ -2374,7 +2374,7 @@
// When LSP servers give an `InsertReplaceEdit` completion, they provides two ranges: `insert` and `replace`. Usually, `insert`
// contains the word prefix before your cursor and `replace` contains the whole word.
//
// Effectively, this setting just changes whether Zed will use the received range for `insert` or `replace`, so the results may
// Effectively, this setting just changes whether Gwen will use the received range for `insert` or `replace`, so the results may
// differ depending on the underlying LSP server.
//
// Possible values:
@@ -2695,7 +2695,7 @@
// Default: false
"trust_all_worktrees": false,
},
// Zed's Prettier integration settings.
// Gwen's Prettier integration settings.
// Allows to enable/disable formatting with Prettier
// and configure default Prettier, used when no project-level Prettier installation is found.
"prettier": {
@@ -2723,7 +2723,7 @@
// "rust-analyzer": {
// // A special flag for rust-analyzer integration, to use server-provided tasks
// enable_lsp_tasks": true,
// // These initialization options are merged into Zed's defaults
// // These initialization options are merged into Gwen's defaults
// "initialization_options": {
// "check": {
// "command": "clippy" // rust-analyzer.check.command (default: "check")
@@ -2850,13 +2850,13 @@
// The server to connect to. If the environment variable
// ZED_SERVER_URL is set, it will override this setting.
"server_url": "https://zed.dev",
// Settings overrides to use when using Zed Preview.
// Mostly useful for developers who are managing multiple instances of Zed.
// Settings overrides to use when using Gwen Preview.
// Mostly useful for developers who are managing multiple instances of Gwen.
"preview": {
// "theme": "Andromeda"
},
// Settings overrides to use when using Zed Nightly.
// Mostly useful for developers who are managing multiple instances of Zed.
// Settings overrides to use when using Gwen Nightly.
// Mostly useful for developers who are managing multiple instances of Gwen.
"nightly": {
// "theme": "Andromeda"
"instrumentation": {
@@ -2865,13 +2865,13 @@
},
},
},
// Settings overrides to use when using Zed Stable.
// Mostly useful for developers who are managing multiple instances of Zed.
// Settings overrides to use when using Gwen Stable.
// Mostly useful for developers who are managing multiple instances of Gwen.
"stable": {
// "theme": "Andromeda"
},
// Settings overrides to use when using Zed Dev.
// Mostly useful for developers who are managing multiple instances of Zed.
// Settings overrides to use when using Gwen Dev.
// Mostly useful for developers who are managing multiple instances of Gwen.
"dev": {
// "theme": "Andromeda"
"instrumentation": {
@@ -2904,7 +2904,7 @@
// Supported URI scheme: `http`, `https`, `socks4`, `socks4a`, `socks5`,
// `socks5h`. `http` will be used when no scheme is specified.
//
// By default no proxy will be used, or Zed will try get proxy settings from
// By default no proxy will be used, or Gwen will try get proxy settings from
// environment variables. If certain hosts should not be proxied,
// set the `no_proxy` environment variable and provide a comma-separated list.
//
@@ -2922,7 +2922,7 @@
"command_aliases": {},
// ssh_connections is an array of ssh connections.
// You can configure these from `project: Open Remote` in the command palette.
// Zed's ssh support will pull configuration from your ~/.ssh too.
// Gwen's ssh support will pull configuration from your ~/.ssh too.
// Examples:
// [
// {
@@ -2968,7 +2968,7 @@
// Each profile has an optional `base` ("user" or "default") and a `settings`
// object. When `base` is "user" (the default), the profile applies on top of
// your user settings. When `base` is "default", user settings are ignored and
// the profile applies on top of Zed's defaults.
// the profile applies on top of Gwen's defaults.
//
// Examples:
// "profiles": {
@@ -1,4 +1,4 @@
// Default semantic token rules for Zed (read-only).
// Default semantic token rules for Gwen (read-only).
//
// These rules map LSP semantic token types to syntax theme styles.
// To customize, add rules to "semantic_token_rules" in your settings.json.
+3 -3
View File
@@ -1,9 +1,9 @@
// Zed settings
// Gwen settings
//
// For information on how to configure Zed, see the Zed
// For information on how to configure Gwen, see the
// documentation: https://zed.dev/docs/configuring-zed
//
// To see all of Zed's default settings without changing your
// To see all of Gwen's default settings without changing your
// custom settings, run `zed: open default settings` from the
// command palette (cmd-shift-p / ctrl-shift-p)
{
@@ -1,7 +1,7 @@
// Worktree setup tasks, stored in this project's tasks.json.
// See https://zed.dev/docs/tasks#hooks for the full Tasks Hooks documentation.
//
// Tasks with the `create_worktree` hook run automatically right after Zed
// Tasks with the `create_worktree` hook run automatically right after Gwen
// creates a new git worktree. Use them to get a fresh worktree ready to work
// in — for example, installing dependencies or copying files that git doesn't
// track (like `.env`) from the original repository.
+1 -1
View File
@@ -111,7 +111,7 @@ mod tests {
};
let templates = Templates::new();
let rendered = template.render(&templates).unwrap();
assert!(rendered.contains("You are the Zed coding agent"));
assert!(rendered.contains("You are the Gwen coding agent"));
assert!(rendered.contains("Today's Date: 2026-01-01"));
assert!(rendered.contains("## Fixing Diagnostics"));
assert!(rendered.contains("test-model"));
@@ -1,4 +1,4 @@
You are the Zed coding agent running inside the Zed editor. You help users complete software engineering tasks by understanding their codebase, making careful changes, and explaining your work clearly. Use your broad knowledge of programming languages, frameworks, design patterns, and engineering best practices to solve problems pragmatically.
You are the Gwen coding agent running inside the Gwen editor. You help users complete software engineering tasks by understanding their codebase, making careful changes, and explaining your work clearly. Use your broad knowledge of programming languages, frameworks, design patterns, and engineering best practices to solve problems pragmatically.
## Communication
+1 -1
View File
@@ -1,4 +1,4 @@
You are the Zed coding agent running inside the Zed editor. You help users complete software engineering tasks by understanding their codebase, making careful changes, and explaining your work clearly. Use your broad knowledge of programming languages, frameworks, design patterns, and engineering best practices to solve problems pragmatically.
You are the Gwen coding agent running inside the Gwen editor. You help users complete software engineering tasks by understanding their codebase, making careful changes, and explaining your work clearly. Use your broad knowledge of programming languages, frameworks, design patterns, and engineering best practices to solve problems pragmatically.
## Communication
+1 -1
View File
@@ -317,7 +317,7 @@ impl ToolPermissionDecision {
// hidden sub-commands that bypass the allow patterns.
return ToolPermissionDecision::Deny(format!(
"The {} shell does not support \"always allow\" patterns for the terminal \
tool because Zed cannot parse its command chaining syntax. Please remove \
tool because Gwen cannot parse its command chaining syntax. Please remove \
the always_allow patterns from your tool_permissions settings, or switch \
to a POSIX-conforming shell.",
shell_kind
+1 -1
View File
@@ -74,7 +74,7 @@ pub struct CreateThreadToolInput {
pub agent: Option<String>,
/// Optional model override as `provider/model-id` (e.g.,
/// `anthropic/claude-haiku-4-latest`). Only meaningful for Zed's native
/// `anthropic/claude-haiku-4-latest`). Only meaningful for Gwen's native
/// agent. Omit to use the user's configured default.
#[serde(default, skip_serializing_if = "Option::is_none")]
pub model: Option<String>,
+1 -1
View File
@@ -597,7 +597,7 @@ async fn run_terminal_tool(
#[cfg(target_os = "windows")]
let write_paths: Vec<settings::GrantedWritePath> = {
let Some(release) = wsl_zed_release.clone() else {
return Err("Could not select a Linux Zed release for WSL sandboxing".to_string());
return Err("Could not select a Linux Gwen release for WSL sandboxing".to_string());
};
let mut resolved_paths = Vec::with_capacity(write_paths.len());
for requested in write_paths {
+1 -1
View File
@@ -2781,7 +2781,7 @@ mod tests {
url_elicitation_id.clone(),
"https://auth.example.com/device",
),
"Authorize Zed in your browser",
"Authorize Gwen in your browser",
),
acp::CompleteElicitationNotification::new(url_elicitation_id),
cx,
+1 -1
View File
@@ -99,7 +99,7 @@ impl AgentProfile {
}
}
/// A profile for the Zed Agent that controls its behavior.
/// A profile for the Gwen Agent that controls its behavior.
#[derive(Debug, Clone)]
pub struct AgentProfileSettings {
/// The name of the profile.
@@ -1225,7 +1225,7 @@ fn wait_for_context_server(
Err(Arc::from("Context server store was dropped"))
}
futures::future::Either::Right(_) => Err(Arc::from(format!(
"Timed out waiting for context server `{}` to start. Check the Zed log for details.",
"Timed out waiting for context server `{}` to start. Check the Gwen log for details.",
context_server_id_for_timeout
))),
}
+1 -1
View File
@@ -5910,7 +5910,7 @@ impl AgentPanel {
Some(ContextMenu::build(window, cx, |menu, _window, cx| {
menu.context(focus_handle.clone())
.item(
ContextMenuEntry::new("Zed Agent")
ContextMenuEntry::new("Gwen Agent")
.when(
!showing_terminal && is_agent_selected(Agent::NativeAgent),
|this| this.action(Box::new(NewThread)),
+2 -2
View File
@@ -322,7 +322,7 @@ actions!(
ScrollOutputToNextMessage,
/// Toggles in-thread search over the current agent thread's contents.
ToggleSearch,
/// Import agent threads from other Zed release channels (e.g. Preview, Nightly).
/// Import agent threads from other Gwen release channels (e.g. Preview, Nightly).
ImportThreadsFromOtherChannels,
/// Starts a new terminal thread.
NewTerminalThread,
@@ -464,7 +464,7 @@ impl Agent {
pub fn label(&self) -> SharedString {
match self {
Self::NativeAgent => "Zed Agent".into(),
Self::NativeAgent => "Gwen Agent".into(),
Self::Custom { id, .. } => id.0.clone(),
#[cfg(any(test, feature = "test-support"))]
Self::Stub => "Stub Agent".into(),
+2 -2
View File
@@ -219,10 +219,10 @@ impl PromptLocalCommand {
pub fn description(&self) -> &'static str {
match self {
Self::ThumbsUp => {
"Rate this response as helpful. Sends the current conversation to the Zed team."
"Rate this response as helpful. Sends the current conversation to the Gwen team."
}
Self::ThumbsDown => {
"Rate this response as not helpful. Sends the current conversation to the Zed team."
"Rate this response as not helpful. Sends the current conversation to the Gwen team."
}
}
}
@@ -1254,7 +1254,7 @@ fn render_form_preview(
) -> AnyElement {
let request = acp::CreateElicitationRequest::new(
acp::ElicitationFormMode::new(preview_request_scope(entry_ix), preview_form_schema()),
"Choose how Zed should connect to this account.",
"Choose how Gwen should connect to this account.",
);
let mut form_state = matches!(status, ElicitationStatus::Pending { .. }).then(|| {
let acp::ElicitationMode::Form(mode) = &request.mode else {
@@ -1287,7 +1287,7 @@ fn render_url_preview(
acp::ElicitationId::new(format!("preview-url-{entry_ix}")),
preview_url(),
),
"Authorize Zed in your browser to finish signing in.",
"Authorize Gwen in your browser to finish signing in.",
);
render_preview_card(entry_ix, request, status, None, cx)
@@ -1867,7 +1867,7 @@ impl ThreadView {
ThreadError::ZedPaymentRequired => (
"payment_required",
None,
"You reached your free usage limit. Upgrade to Zed Pro for more prompts."
"You reached your free usage limit. Upgrade to Gwen Pro for more prompts."
.into(),
),
ThreadError::Refusal => {
@@ -6868,7 +6868,7 @@ impl ThreadView {
(self.is_subagent() && self.is_thread_feedback_enabled(cx)).then(|| {
let feedback = self.thread_feedback.feedback;
let tooltip_meta =
"Rating the thread sends all of your current conversation to the Zed team.";
"Rating the thread sends all of your current conversation to the Gwen team.";
h_flex()
.child(
@@ -11116,7 +11116,7 @@ impl ThreadView {
ThreadError::RateLimitExceeded { provider } => self.render_error_callout(
"Rate Limit Reached",
format!(
"{provider}'s rate limit was reached. Zed will retry automatically. \
"{provider}'s rate limit was reached. Gwen will retry automatically. \
You can also wait a moment and try again."
)
.into(),
@@ -11127,7 +11127,7 @@ impl ThreadView {
ThreadError::ServerOverloaded { provider } => self.render_error_callout(
"Provider Unavailable",
format!(
"{provider}'s servers are temporarily unavailable. Zed will retry \
"{provider}'s servers are temporarily unavailable. Gwen will retry \
automatically. If the problem persists, check the provider's status page."
)
.into(),
@@ -11147,7 +11147,7 @@ impl ThreadView {
ThreadError::StreamError { provider } => self.render_error_callout(
"Connection Interrupted",
format!(
"The connection to {provider}'s API was interrupted. Zed will retry \
"The connection to {provider}'s API was interrupted. Gwen will retry \
automatically. If the problem persists, check your network connection."
)
.into(),
@@ -11196,7 +11196,7 @@ impl ThreadView {
"API Error",
format!(
"{provider}'s API returned an unexpected error. \
If the problem persists, try switching models or restarting Zed."
If the problem persists, try switching models or restarting Gwen."
)
.into(),
true,
@@ -11247,7 +11247,7 @@ impl ThreadView {
fn render_zed_payment_required_error(&self, cx: &mut Context<Self>) -> Callout {
const ERROR_MESSAGE: &str =
"You reached your free usage limit. Upgrade to Zed Pro for more prompts.";
"You reached your free usage limit. Upgrade to Gwen Pro for more prompts.";
Callout::new()
.severity(Severity::Error)
+1 -1
View File
@@ -172,7 +172,7 @@ pub fn empty_draft_placeholder_label(
cx: &App,
) -> SharedString {
let agent_name = if agent_id.as_ref() == ZED_AGENT_ID.as_ref() {
SharedString::from(ZED_AGENT_ID.to_string())
crate::Agent::NativeAgent.label()
} else {
workspace
.map(|ws| ws.read(cx).project().read(cx).agent_server_store().clone())
+1 -1
View File
@@ -572,7 +572,7 @@ impl Render for ThreadImportModal {
ModalHeader::new()
.headline("Import External Agent Threads")
.description(
"Import threads from agents like Claude Agent, Codex, and more, whether started in Zed or another client. \
"Import threads from agents like Claude Agent, Codex, and more, whether started in Gwen or another client. \
Choose which agents to include, and their threads will appear in your thread history."
)
.show_dismiss_button(true),
@@ -275,7 +275,7 @@ async fn verify_created_by_zed(root: &RootPlan, cx: &mut AsyncApp) -> Result<()>
.map_err(|_| anyhow!("worktree creation time check was canceled"))?
.with_context(|| {
format!(
"refusing to delete worktree at {}: failed to verify that Zed created it",
"refusing to delete worktree at {}: failed to verify that Gwen created it",
root.root_path.display()
)
})?;
@@ -294,8 +294,8 @@ async fn verify_created_by_zed(root: &RootPlan, cx: &mut AsyncApp) -> Result<()>
.await
.log_err();
Err(anyhow!(
"refusing to delete worktree at {}: it is not the worktree Zed created \
(it was likely removed and recreated outside Zed)",
"refusing to delete worktree at {}: it is not the worktree Gwen created \
(it was likely removed and recreated outside Gwen)",
root.root_path.display()
))
}
@@ -1620,7 +1620,7 @@ mod tests {
.await
.expect_err("remove_root should refuse to delete a recreated worktree");
assert!(
error.to_string().contains("not the worktree Zed created"),
error.to_string().contains("not the worktree Gwen created"),
"unexpected error: {error:#}"
);
+1 -1
View File
@@ -33,7 +33,7 @@ impl RenderOnce for EndTrialUpsell {
)
.child(PlanDefinitions.pro_plan())
.child(
Button::new("cta-button", "Upgrade to Zed Pro")
Button::new("cta-button", "Upgrade to Gwen Pro")
.full_width()
.style(ButtonStyle::Tinted(ui::TintColor::Accent))
.on_click(move |_, _window, cx| {
+3 -3
View File
@@ -34,7 +34,7 @@ impl PlanDefinitions {
pub fn pro_plan(&self) -> impl IntoElement {
List::new()
.child(ListBulletItem::new("$5 of tokens in Zed agent"))
.child(ListBulletItem::new("$5 of tokens in Gwen agent"))
.child(ListBulletItem::new("Usage-based billing beyond $5"))
.child(ListBulletItem::new("Unlimited edit predictions"))
}
@@ -48,13 +48,13 @@ impl PlanDefinitions {
pub fn vip_plan(&self) -> impl IntoElement {
List::new()
.child(ListBulletItem::new("Unlimited edit predictions"))
.child(ListBulletItem::new("Tokens in the Zed agent"))
.child(ListBulletItem::new("Tokens in the Gwen agent"))
}
pub fn student_plan(&self) -> impl IntoElement {
List::new()
.child(ListBulletItem::new("Unlimited edit predictions"))
.child(ListBulletItem::new("$10 of tokens in Zed agent"))
.child(ListBulletItem::new("$10 of tokens in Gwen agent"))
.child(ListBulletItem::new(
"Optional credit packs for additional usage",
))
+2 -2
View File
@@ -27,7 +27,7 @@ pub enum OpenBehavior {
/// Match broadly including subdirectories, and fall back to any existing
/// window if no worktree matched. Corresponds to `zed -a`.
Add,
/// Open directories as a new workspace in the current Zed window's sidebar.
/// Open directories as a new workspace in the current Gwen window's sidebar.
/// Reuse existing windows for files in open worktrees.
/// Corresponds to `zed -e`.
ExistingWindow,
@@ -46,7 +46,7 @@ pub enum OpenBehavior {
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum CliBehaviorSetting {
/// Open directories as a new workspace in the current Zed window's sidebar.
/// Open directories as a new workspace in the current Gwen window's sidebar.
ExistingWindow,
/// Open paths in a new window unless they are subpaths of an existing project.
NewWindow,
+19 -19
View File
@@ -87,15 +87,15 @@ struct Args {
classic: bool,
/// Sets a custom directory for all user data (e.g., database, extensions, logs).
/// This overrides the default platform-specific data directory location:
#[cfg_attr(target_os = "macos", doc = "`~/Library/Application Support/Zed`.")]
#[cfg_attr(target_os = "windows", doc = "`%LOCALAPPDATA%\\Zed`.")]
#[cfg_attr(target_os = "macos", doc = "`~/Library/Application Support/Gwen`.")]
#[cfg_attr(target_os = "windows", doc = "`%LOCALAPPDATA%\\Gwen`.")]
#[cfg_attr(
not(any(target_os = "windows", target_os = "macos")),
doc = "`$XDG_DATA_HOME/zed`."
doc = "`$XDG_DATA_HOME/gwen`."
)]
#[arg(long, value_name = "DIR", value_hint = clap::ValueHint::DirPath)]
user_data_dir: Option<String>,
/// The paths to open in Zed (space-separated).
/// The paths to open in Gwen (space-separated).
///
/// Use `path:line:column` syntax to open a file at the given line and column.
#[arg(trailing_var_arg = true, value_hint = clap::ValueHint::AnyPath)]
@@ -103,13 +103,13 @@ struct Args {
/// Print Gwen's version and the app path.
#[arg(short, long)]
version: bool,
/// Run zed in the foreground (useful for debugging)
/// Run gwen in the foreground (useful for debugging)
#[arg(long)]
foreground: bool,
/// Custom path to Zed.app or the zed binary
/// Custom path to Gwen.app or the gwen binary
#[arg(long)]
zed: Option<PathBuf>,
/// Run zed in dev-server mode
/// Run gwen in dev-server mode
#[arg(long)]
dev_server_token: Option<String>,
/// The username and WSL distribution to use when opening paths. If not specified,
@@ -138,7 +138,7 @@ struct Args {
/// When directories are provided, recurses into them and shows all changed files in a single multi-diff view.
#[arg(long, action = clap::ArgAction::Append, num_args = 2, value_names = ["OLD_PATH", "NEW_PATH"], value_hint = clap::ValueHint::AnyPath)]
diff: Vec<String>,
/// Generate shell completions for Zed
/// Generate shell completions for Gwen
#[arg(long, value_names = ["SHELL"])]
completions: Option<Shell>,
/// Uninstall Gwen from user system
@@ -150,7 +150,7 @@ struct Args {
uninstall: bool,
/// Used for SSH/Git password authentication, to remove the need for netcat as a dependency,
/// by having Zed act like netcat communicating over a Unix socket.
/// by having Gwen act like netcat communicating over a Unix socket.
#[arg(long, hide = true)]
askpass: Option<String>,
}
@@ -582,7 +582,7 @@ fn run() -> Result<()> {
}
let (server, server_name) =
IpcOneShotServer::<IpcHandshake>::new().context("Handshake before Zed spawn")?;
IpcOneShotServer::<IpcHandshake>::new().context("Handshake before Gwen spawn")?;
let url = format!("zed-cli://{server_name}");
let open_behavior = if args.new {
@@ -709,7 +709,7 @@ fn run() -> Result<()> {
let exit_status = exit_status.clone();
let user_data_dir_for_thread = user_data_dir.clone();
move || {
let (_, handshake) = server.accept().context("Handshake after Zed spawn")?;
let (_, handshake) = server.accept().context("Handshake after Gwen spawn")?;
let (tx, rx) = (handshake.requests, handshake.responses);
#[cfg(target_os = "windows")]
@@ -851,16 +851,16 @@ fn prompt_open_behavior() -> Option<cli::CliBehaviorSetting> {
let blue = console::Style::new().blue();
let items = [
format!(
"Add to existing Zed window ({})",
blue.apply_to("zed --existing")
"Add to existing Gwen window ({})",
blue.apply_to("gwen --existing")
),
format!("Open a new window ({})", blue.apply_to("zed --classic")),
format!("Open a new window ({})", blue.apply_to("gwen --classic")),
];
let prompt = format!(
"Configure default behavior for {}\n{}",
blue.apply_to("zed <path>"),
console::style("You can change this later in Zed settings"),
blue.apply_to("gwen <path>"),
console::style("You can change this later in Gwen settings"),
);
let selection = dialoguer::Select::new()
@@ -1267,9 +1267,9 @@ mod windows {
let cli = std::env::current_exe()?;
let dir = cli.parent().context("no parent path for cli")?;
// ../Zed.exe is the standard, lib/zed is for MSYS2, ./zed.exe is for the target
// ../Gwen.exe is the standard, lib/zed is for MSYS2, ./gwen.exe is for the target
// directory in development builds.
let possible_locations = ["../Zed.exe", "../lib/zed/zed-editor.exe", "./zed.exe"];
let possible_locations = ["../Gwen.exe", "../lib/zed/zed-editor.exe", "./gwen.exe"];
possible_locations
.iter()
.find_map(|p| dir.join(p).canonicalize().ok().filter(|path| path != &cli))
@@ -1386,7 +1386,7 @@ mod mac_os {
kCFStringEncodingUTF8,
ptr::null(),
));
// equivalent to: open zed-cli:... -a /Applications/Zed\ Preview.app
// equivalent to: open zed-cli:... -a /Applications/Gwen\ Preview.app
let urls_to_open =
CFArray::from_copyable(&[url_to_open.as_concrete_TypeRef()]);
LSOpenFromURLSpec(
@@ -126,7 +126,7 @@ impl Render for IncomingCallNotification {
}),
)
.child(Label::new(format!(
"{} is sharing a project in Zed",
"{} is sharing a project in Gwen",
self.state.call.calling_user.username
))),
)
+2 -2
View File
@@ -70,7 +70,7 @@ fn open_copilot_code_verification_window(copilot: &Entity<Copilot>, window: &Win
is_resizable: false,
is_movable: true,
titlebar: Some(gpui::TitlebarOptions {
title: Some("Use GitHub Copilot in Zed".into()),
title: Some("Use GitHub Copilot in Gwen".into()),
appears_transparent: true,
..Default::default()
}),
@@ -996,7 +996,7 @@ impl ConfigurationView {
}
fn render_for_chat(&self) -> impl IntoElement {
let start_label = "To use Zed's agent with GitHub Copilot Chat, you need to be logged in to GitHub. Note that your GitHub account must have an active Copilot Chat subscription.";
let start_label = "To use Gwen's agent with GitHub Copilot Chat, you need to be logged in to GitHub. Note that your GitHub account must have an active Copilot Chat subscription.";
let no_status_label = "Copilot Chat requires an active GitHub Copilot subscription. Please ensure Copilot Chat is configured and try again, or use a different LLM provider.";
let (label, button) = if let Some(msg) = self.loading_message() {
@@ -3476,7 +3476,7 @@ fn merge_anchor_ranges(
#[derive(Error, Debug)]
#[error(
"You must update to Zed version {minimum_version} or higher to continue using edit predictions."
"You must update to Gwen version {minimum_version} or higher to continue using edit predictions."
)]
pub struct ZedUpdateRequiredError {
minimum_version: Version,
@@ -53,7 +53,7 @@ impl EditPredictionDelegate for ZedEditPredictionDelegate {
}
fn display_name() -> &'static str {
"Zed's Edit Predictions"
"Gwen's Edit Predictions"
}
fn show_predictions_in_menu() -> bool {
+1 -1
View File
@@ -672,7 +672,7 @@ fn handle_api_response<T>(
ErrorSeverity::Critical
}
fn primary_action(&self) -> ErrorAction {
ErrorAction::link("Update Zed", "https://zed.dev/releases")
ErrorAction::link("Update Gwen", "https://zed.dev/releases")
}
}
@@ -1248,7 +1248,7 @@ impl EditPredictionButton {
},
|_window, cx| cx.open_url(&zed_urls::account_url(cx)),
)
.entry("Upgrade to Zed Pro or contact us.", None, |_window, cx| {
.entry("Upgrade to Gwen Pro or contact us.", None, |_window, cx| {
telemetry::event!(
"Edit Prediction Menu Action",
action = "upsell_clicked",
+3 -3
View File
@@ -2977,7 +2977,7 @@ impl Editor {
cx,
|e, _, _| match e.error_code() {
ErrorCode::RemoteUpgradeRequired => Some(format!(
"The remote instance of Zed does not support this yet. It must be upgraded to {}",
"The remote instance of Gwen does not support this yet. It must be upgraded to {}",
e.error_tag("required").unwrap_or("the latest version")
)),
_ => None,
@@ -3063,7 +3063,7 @@ impl Editor {
.detach_and_prompt_err("Failed to create buffer", window, cx, |e, _, _| {
match e.error_code() {
ErrorCode::RemoteUpgradeRequired => Some(format!(
"The remote instance of Zed does not support this yet. It must be upgraded to {}",
"The remote instance of Gwen does not support this yet. It must be upgraded to {}",
e.error_tag("required").unwrap_or("the latest version")
)),
_ => None,
@@ -8966,7 +8966,7 @@ impl Editor {
cx: &mut Context<Self>,
) -> Entity<Self> {
const MINIMAP_FONT_WEIGHT: gpui::FontWeight = gpui::FontWeight::BLACK;
const MINIMAP_FONT_FAMILY: SharedString = SharedString::new_static(".ZedMono");
const MINIMAP_FONT_FAMILY: SharedString = SharedString::new_static(".GwenMono");
let mut minimap = Editor::new_internal(
EditorMode::Minimap {
+1 -1
View File
@@ -51,7 +51,7 @@ pub fn marked_display_snapshot(
let (unmarked_text, markers) = marked_text_offsets(text);
let font = Font {
family: ".ZedMono".into(),
family: ".GwenMono".into(),
features: FontFeatures::default(),
fallbacks: None,
weight: FontWeight::default(),
+1 -1
View File
@@ -254,7 +254,7 @@ pub struct AgentServerManifestEntry {
/// ```
///
/// For Node.js-based agents, you can use "node" as the cmd to automatically
/// use Zed's managed Node.js runtime instead of relying on the user's PATH:
/// use Gwen's managed Node.js runtime instead of relying on the user's PATH:
/// ```toml
/// [agent_servers.nodeagent.targets.darwin-aarch64]
/// archive = "https://example.com/nodeagent.zip"
+2 -2
View File
@@ -95,7 +95,7 @@ async fn main() -> Result<()> {
log::info!("compiling extension");
let user_agent = format!(
"Zed Extension CLI/{} ({}; {})",
"Gwen Extension CLI/{} ({}; {})",
env!("CARGO_PKG_VERSION"),
std::env::consts::OS,
std::env::consts::ARCH
@@ -599,7 +599,7 @@ fn test_languages(
let query_source = fs::read_to_string(&file_path)?;
let _query = Query::new(grammar, &query_source)?;
} else if file_name.ends_with(".scm") {
bail!("query {file_name} is not supported by Zed and should be removed")
bail!("query {file_name} is not supported by Gwen and should be removed")
} else if !context.is_known_resource(&file_path) {
bail!(
"'{file_name}' is not a supported file in a language directory and should be removed"
+5 -5
View File
@@ -9,21 +9,21 @@ use zed_actions::feedback::{EmailZed, FileBugReport, RequestFeature};
actions!(
zed,
[
/// Opens the Zed repository on GitHub.
/// Opens the Gwen repository on GitHub.
OpenZedRepo,
/// Copies installed extensions to the clipboard for bug reports.
CopyInstalledExtensionsIntoClipboard
]
);
const ZED_REPO_URL: &str = "https://github.com/zed-industries/zed";
const ZED_REPO_URL: &str = "https://github.com/kk376/zed";
const REQUEST_FEATURE_URL: &str = "https://github.com/zed-industries/zed/discussions/new/choose";
const REQUEST_FEATURE_URL: &str = "https://github.com/kk376/zed/discussions/new/choose";
fn file_bug_report_url(specs: &SystemSpecs) -> String {
format!(
concat!(
"https://github.com/zed-industries/zed/issues/new",
"https://github.com/kk376/zed/issues/new",
"?",
"template=10_bug_report.yml",
"&",
@@ -35,7 +35,7 @@ fn file_bug_report_url(specs: &SystemSpecs) -> String {
fn email_zed_url(specs: &SystemSpecs) -> String {
format!(
concat!("mailto:hi@zed.dev", "?", "body={}"),
concat!("mailto:yenru@yrkaierx.com", "?", "body={}"),
email_body(specs)
)
}
+2 -2
View File
@@ -270,7 +270,7 @@ impl TextExample {
}
const FONT_FAMILIES: [&str; 5] = [
".ZedMono",
".GwenMono",
".SystemUIFont",
"Menlo",
"Monaco",
@@ -405,7 +405,7 @@ fn run_example() {
|_window, cx| {
cx.new(|_cx| TextExample {
next_id: 0,
font_family: ".ZedMono".into(),
font_family: ".GwenMono".into(),
})
},
)
+14 -12
View File
@@ -254,8 +254,8 @@ impl TextSystem {
font_runs_pool: Mutex::default(),
fallback_font_stack: smallvec![
// TODO: Remove this when Linux have implemented setting fallbacks.
font(".ZedMono"),
font(".ZedSans"),
font(".GwenMono"),
font(".GwenSans"),
font("Helvetica"),
font("Segoe UI"), // Windows
font("Ubuntu"), // Gnome (Ubuntu)
@@ -1418,13 +1418,14 @@ impl FontMetrics {
/// Maps well-known virtual font names to their concrete equivalents.
#[allow(unused)]
pub fn font_name_with_fallbacks<'a>(name: &'a str, system: &'a str) -> &'a str {
// Note: the "Zed Plex" fonts were deprecated as we are not allowed to use "Plex"
// in a derived font name. They are essentially indistinguishable from IBM Plex/Lilex,
// and so retained here for backward compatibility.
// Note: ".ZedSans"/".ZedMono" are the legacy virtual font names, and the
// "Zed Plex" fonts were deprecated as we are not allowed to use "Plex"
// in a derived font name. They are essentially indistinguishable from
// IBM Plex/Lilex, and so retained here for backward compatibility.
match name {
".SystemUIFont" => system,
".ZedSans" | "Zed Plex Sans" => "IBM Plex Sans",
".ZedMono" | "Zed Plex Mono" => "Lilex",
".GwenSans" | ".ZedSans" | "Zed Plex Sans" => "IBM Plex Sans",
".GwenMono" | ".ZedMono" | "Zed Plex Mono" => "Lilex",
_ => name,
}
}
@@ -1435,13 +1436,14 @@ pub fn font_name_with_fallbacks_shared<'a>(
name: &'a SharedString,
system: &'a SharedString,
) -> &'a SharedString {
// Note: the "Zed Plex" fonts were deprecated as we are not allowed to use "Plex"
// in a derived font name. They are essentially indistinguishable from IBM Plex/Lilex,
// and so retained here for backward compatibility.
// Note: ".ZedSans"/".ZedMono" are the legacy virtual font names, and the
// "Zed Plex" fonts were deprecated as we are not allowed to use "Plex"
// in a derived font name. They are essentially indistinguishable from
// IBM Plex/Lilex, and so retained here for backward compatibility.
match name.as_str() {
".SystemUIFont" => system,
".ZedSans" | "Zed Plex Sans" => const { &SharedString::new_static("IBM Plex Sans") },
".ZedMono" | "Zed Plex Mono" => const { &SharedString::new_static("Lilex") },
".GwenSans" | ".ZedSans" | "Zed Plex Sans" => const { &SharedString::new_static("IBM Plex Sans") },
".GwenMono" | ".ZedMono" | "Zed Plex Mono" => const { &SharedString::new_static("Lilex") },
_ => name,
}
}
+1 -1
View File
@@ -1575,7 +1575,7 @@ mod tests {
px(16.),
&[TextRun {
len: text.len(),
font: font(".ZedMono"),
font: font(".GwenMono"),
color: black(),
..TextRun::default()
}],
+2 -2
View File
@@ -694,7 +694,7 @@ mod tests {
fn build_wrapper() -> LineWrapper {
let dispatcher = TestDispatcher::new(0);
let cx = TestAppContext::build(dispatcher, None);
let id = cx.text_system().resolve_font(&font(".ZedMono"));
let id = cx.text_system().resolve_font(&font(".GwenMono"));
LineWrapper::new(id, px(16.), cx.text_system().clone())
}
@@ -1267,7 +1267,7 @@ mod tests {
fn test_multiline_truncation_fits_within_wrapped_lines() {
let mut wrapper = build_wrapper();
// With .ZedMono at 16px, each char is 9.6px wide.
// With .GwenMono at 16px, each char is 9.6px wide.
// wrap_width = 72px fits ~7 chars per line.
//
// "aa bbbbbb cccccc dddddd eeee ffff" with wrap_width=72px wraps as:
+1 -1
View File
@@ -3603,7 +3603,7 @@ async fn load_keybind_context_language(
language.unwrap_or_else(|| {
Arc::new(Language::new(
LanguageConfig {
name: "Zed Keybind Context".into(),
name: "Gwen Keybind Context".into(),
..Default::default()
},
Some(tree_sitter_rust::LANGUAGE.into()),
+8 -8
View File
@@ -90,7 +90,7 @@ pub struct LanguageSettings {
pub line_ending: LineEndingSetting,
/// How to perform a buffer format.
pub formatter: settings::FormatterList,
/// Zed's Prettier integration settings.
/// Gwen's Prettier integration settings.
pub prettier: PrettierSettings,
/// Whether to automatically close JSX tags.
pub jsx_tag_auto_close: bool,
@@ -256,13 +256,13 @@ pub struct LanguageTaskSettings {
/// Extra task variables to set for a particular language.
pub variables: HashMap<String, String>,
pub enabled: bool,
/// Use LSP tasks over Zed language extension ones.
/// Use LSP tasks over Gwen language extension ones.
/// If no LSP tasks are returned due to error/timeout or regular execution,
/// Zed language extension tasks will be used instead.
/// Gwen language extension tasks will be used instead.
///
/// Other Zed tasks will still be shown:
/// * Zed task from either of the task config file
/// * Zed task from history (e.g. one-off task was spawned before)
/// Other Gwen tasks will still be shown:
/// * Gwen task from either of the task config file
/// * Gwen task from history (e.g. one-off task was spawned before)
pub prefer_lsp: bool,
}
@@ -499,7 +499,7 @@ pub struct EditPredictionSettings {
pub provider: settings::EditPredictionProvider,
/// Disable edit predictions for files matching these glob patterns.
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -530,7 +530,7 @@ pub struct EditPredictionSettings {
pub ollama: Option<OpenAiCompatibleEditPredictionSettings>,
/// Settings specific to using custom OpenAI-compatible servers for edit prediction.
pub open_ai_compatible_api: Option<OpenAiCompatibleEditPredictionSettings>,
/// Settings specific to Zed's Edit Predictions provider.
/// Settings specific to Gwen's Edit Predictions provider.
pub zed: ZedEditPredictionSettings,
/// Settings specific to the Mercury Edit Predictions provider.
pub mercury: MercuryEditPredictionSettings,
+1 -1
View File
@@ -18,7 +18,7 @@ pub const X_AI_PROVIDER_NAME: LanguageModelProviderName = LanguageModelProviderN
pub const ZED_CLOUD_PROVIDER_ID: LanguageModelProviderId = LanguageModelProviderId::new("zed.dev");
pub const ZED_CLOUD_PROVIDER_NAME: LanguageModelProviderName =
LanguageModelProviderName::new("Zed");
LanguageModelProviderName::new("Gwen");
pub fn provider_name_for_id(provider_id: &LanguageModelProviderId) -> LanguageModelProviderName {
if provider_id == &OPEN_AI_PROVIDER_ID {
+1 -1
View File
@@ -43,7 +43,7 @@ pub(crate) fn resolve_custom_headers(
.any(|reserved| reserved.eq_ignore_ascii_case(name))
{
log::warn!(
"ignoring custom {provider_name} header `{name}`: managed by Zed and cannot be overridden"
"ignoring custom {provider_name} header `{name}`: managed by Gwen and cannot be overridden"
);
return None;
}
@@ -29,7 +29,7 @@ const PROVIDER_NAME: LanguageModelProviderName = ANTHROPIC_PROVIDER_NAME;
#[derive(Default, Clone, Debug, PartialEq)]
pub struct AnthropicSettings {
pub api_url: String,
/// Extend Zed's list of Anthropic models.
/// Extend Gwen's list of Anthropic models.
pub available_models: Vec<AvailableModel>,
/// User-configured headers added to every Anthropic request.
pub custom_headers: CustomHeaders,
@@ -211,7 +211,7 @@ impl<S: ApiCompatibleProviderSettings> Render for ApiCompatibleProviderConfigura
v_flex()
.on_action(cx.listener(Self::save_api_key))
.child(Label::new(format!(
"To use Zed's agent with an {provider_name}-compatible provider, you need to add an API key."
"To use Gwen's agent with an {provider_name}-compatible provider, you need to add an API key."
)))
.child(
div()
@@ -220,7 +220,7 @@ impl<S: ApiCompatibleProviderSettings> Render for ApiCompatibleProviderConfigura
)
.child(
Label::new(format!(
"You can also set the {env_var_name} environment variable and restart Zed.",
"You can also set the {env_var_name} environment variable and restart Gwen.",
))
.size(LabelSize::Small)
.color(Color::Muted),
@@ -707,7 +707,7 @@ impl LanguageModelProvider for BedrockLanguageModelProvider {
.into()
})
.description(InlineDescription::Text(
"To use Zed's agent with Bedrock, set a custom authentication strategy in your settings or use static credentials. Mantle-only models (e.g. GPT-5.5, GPT-5.4, Grok 4.3) additionally require IAM permissions for the `bedrock-mantle` endpoint.".into(),
"To use Gwen's agent with Bedrock, set a custom authentication strategy in your settings or use static credentials. Mantle-only models (e.g. GPT-5.5, GPT-5.4, Grok 4.3) additionally require IAM permissions for the `bedrock-mantle` endpoint.".into(),
)),
))
}
@@ -2777,7 +2777,7 @@ impl Render for ConfigurationView {
.child(Headline::new("Amazon Bedrock").size(HeadlineSize::Small))
.child(
Label::new(
"To use Zed's agent with Bedrock, you can set a custom authentication strategy through your settings file or use static credentials.",
"To use Gwen's agent with Bedrock, you can set a custom authentication strategy through your settings file or use static credentials.",
)
.color(Color::Muted),
)
@@ -2885,7 +2885,7 @@ impl ConfigurationView {
)
.child(
Label::new(format!(
"You can also set the {}, {} and {} environment variables (or {} for Bedrock API Key authentication) and restart Zed.",
"You can also set the {}, {} and {} environment variables (or {} for Bedrock API Key authentication) and restart Gwen.",
ZED_BEDROCK_ACCESS_KEY_ID_VAR.name,
ZED_BEDROCK_SECRET_ACCESS_KEY_VAR.name,
ZED_BEDROCK_REGION_VAR.name,
+18 -18
View File
@@ -405,21 +405,21 @@ impl LanguageModelProvider for CloudLanguageModelProvider {
}
fn authentication_error_message(&self) -> SharedString {
"Failed to sign in with your Zed account (401).".into()
"Failed to sign in with your Gwen account (401).".into()
}
fn missing_credentials_error_message(&self) -> SharedString {
"You are not signed in to your Zed account. \
"You are not signed in to your Gwen account. \
Sign in to continue."
.into()
}
fn fast_mode_confirmation(&self, _cx: &App) -> Option<FastModeConfirmation> {
Some(FastModeConfirmation {
title: "Enable Fast Mode for Zed?".into(),
title: "Enable Fast Mode for Gwen?".into(),
message: "Fast mode routes requests through the upstream provider's fast mode or priority tier. The \
upstream provider's premium per-token pricing applies and is passed through to \
your Zed billing."
your Gwen billing."
.into(),
})
}
@@ -461,34 +461,34 @@ fn zed_ai_description(
eligible_for_trial: bool,
) -> &'static str {
if !is_connected {
return "Sign in to have access to Zed's complete agentic experience with hosted models.";
return "Sign in to have access to Gwen's complete agentic experience with hosted models.";
}
match plan {
Some(Plan::ZedPro) => {
"You have access to Zed's hosted models through your Pro subscription."
"You have access to Gwen's hosted models through your Pro subscription."
}
Some(Plan::ZedProTrial) => {
"Your Pro trial includes $5 of GPT Luna and unlimited edit predictions for 14 days from trial start."
}
Some(Plan::ZedStudent) => {
"You have access to Zed's hosted models through your Student subscription."
"You have access to Gwen's hosted models through your Student subscription."
}
Some(Plan::ZedBusiness) => {
if is_zed_model_provider_enabled {
"You have access to Zed's hosted models through your organization."
"You have access to Gwen's hosted models through your organization."
} else {
"Zed's hosted models are disabled by your organization's configuration."
"Gwen's hosted models are disabled by your organization's configuration."
}
}
Some(Plan::ZedVip) => {
"You have access to Zed's hosted models through your VIP subscription."
"You have access to Gwen's hosted models through your VIP subscription."
}
Some(Plan::ZedFree) | None => {
if eligible_for_trial {
"Start a free trial with $5 of GPT Luna and unlimited edit predictions for 14 days from trial start."
} else {
"Subscribe for access to Zed's hosted models."
"Subscribe for access to Gwen's hosted models."
}
}
}
@@ -542,7 +542,7 @@ impl RenderOnce for ZedAiConfiguration {
.gap_2()
.when(!self.compact, |this| this.child(Label::new(description)))
.child(
Button::new("sign_in", "Sign In to use Zed AI")
Button::new("sign_in", "Sign In to use Gwen AI")
.start_icon(
Icon::new(IconName::Github)
.size(IconSize::Small)
@@ -960,9 +960,9 @@ impl Component for ZedAiConfiguration {
}
fn description() -> &'static str {
"The configuration surface for Zed's hosted AI models, \
"The configuration surface for Gwen's hosted AI models, \
showing the user's connection status, current plan, trial eligibility, \
and entry points for enabling the Zed model provider."
and entry points for enabling the Gwen model provider."
}
fn preview(_window: &mut Window, _cx: &mut App) -> AnyElement {
@@ -1036,7 +1036,7 @@ impl Component for ZedAiConfiguration {
}),
),
single_example(
"Zed Pro Trial Plan",
"Gwen Pro Trial Plan",
configuration(PreviewConfiguration {
plan: Some(Plan::ZedProTrial),
is_connected: true,
@@ -1045,7 +1045,7 @@ impl Component for ZedAiConfiguration {
}),
),
single_example(
"Zed Pro Plan",
"Gwen Pro Plan",
configuration(PreviewConfiguration {
plan: Some(Plan::ZedPro),
is_connected: true,
@@ -1054,7 +1054,7 @@ impl Component for ZedAiConfiguration {
}),
),
single_example(
"Business Plan - Zed models enabled",
"Business Plan - Gwen models enabled",
configuration(PreviewConfiguration {
plan: Some(Plan::ZedBusiness),
is_connected: true,
@@ -1063,7 +1063,7 @@ impl Component for ZedAiConfiguration {
}),
),
single_example(
"Business Plan - Zed models disabled",
"Business Plan - Gwen models disabled",
configuration(PreviewConfiguration {
plan: Some(Plan::ZedBusiness),
is_connected: true,
@@ -1234,7 +1234,7 @@ impl ConfigurationView {
)
.child(
ListBulletItem::new(
"Click 'Connect' below to start using llama.cpp in Zed",
"Click 'Connect' below to start using llama.cpp in Gwen",
)
.label_color(Color::Muted),
),
@@ -1278,7 +1278,7 @@ impl ConfigurationView {
.mb_2()
.child(
Label::new(format!(
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Zed."
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Gwen."
))
.size(LabelSize::Small)
.color(Color::Muted),
@@ -770,7 +770,7 @@ impl ConfigurationView {
.mb_2()
.child(
Label::new(format!(
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Zed."
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Gwen."
))
.size(LabelSize::Small)
.color(Color::Muted),
@@ -414,7 +414,7 @@ pub fn into_mistral(
text_parts.push(text.to_string());
}
LanguageModelToolResultContent::Image(_) => {
text_parts.push("[Tool responded with an image, but Zed doesn't support these in Mistral models yet]".to_string());
text_parts.push("[Tool responded with an image, but Gwen doesn't support these in Mistral models yet]".to_string());
}
}
}
@@ -887,7 +887,7 @@ impl ConfigurationView {
.child(Label::new("ollama run gpt-oss:20b").inline_code(cx)),
)
.child(
ListBulletItem::new("Click 'Connect' below to start using Ollama in Zed")
ListBulletItem::new("Click 'Connect' below to start using Ollama in Gwen")
.label_color(Color::Muted),
),
)
@@ -13,7 +13,7 @@ use std::sync::Arc;
use ui::{ConfiguredApiCard, prelude::*};
const SUBSCRIPTION_DESCRIPTION: &str =
"Sign in with your ChatGPT Plus or Pro subscription to use OpenAI models in Zed's agent.";
"Sign in with your ChatGPT Plus or Pro subscription to use OpenAI models in Gwen's agent.";
pub struct OpenAiSubscribedProvider {
state: Entity<State>,
@@ -302,7 +302,7 @@ impl LanguageModelProvider for OpenCodeLanguageModelProvider {
.into()
})
.description(InlineDescription::Text(
"To use OpenCode models in Zed, you need an API key.".into(),
"To use OpenCode models in Gwen, you need an API key.".into(),
)),
))
}
@@ -907,7 +907,7 @@ impl Render for ConfigurationView {
let api_key_section = v_flex()
.on_action(cx.listener(Self::save_api_key))
.child(Label::new(
"To use OpenCode models in Zed, you need an API key:",
"To use OpenCode models in Gwen, you need an API key:",
).color(Color::Muted))
.child(
List::new()
@@ -928,7 +928,7 @@ impl Render for ConfigurationView {
.child(api_key_control)
.child(
Label::new(format!(
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Zed."
"You can also set the {API_KEY_ENV_VAR_NAME} environment variable and restart Gwen."
))
.size(LabelSize::Small)
.color(Color::Muted).mt_1p5(),
@@ -360,7 +360,7 @@ fn clean_error_message(message: &str) -> String {
let lower = message.to_lowercase();
if lower.contains("vercel_oidc_token") && lower.contains("oidc token") {
return "Authentication failed for Vercel AI Gateway. Use a Vercel AI Gateway key (vck_...).\nCreate or manage keys in Vercel AI Gateway console.\nIf this persists, regenerate the key and update it in Vercel AI Gateway provider settings in Zed.".to_string();
return "Authentication failed for Vercel AI Gateway. Use a Vercel AI Gateway key (vck_...).\nCreate or manage keys in Vercel AI Gateway console.\nIf this persists, regenerate the key and update it in Vercel AI Gateway provider settings in Gwen.".to_string();
}
if lower.contains("invalid api key") || lower.contains("invalid_api_key") {
@@ -13,7 +13,7 @@ use ui::{ConfiguredApiCard, prelude::*};
use x_ai_subscribed::{PROVIDER_ID, PROVIDER_NAME, State, SuperGrokModel, create_language_model};
const SUBSCRIPTION_DESCRIPTION: &str =
"Sign in with your SuperGrok subscription to use Grok models in Zed's agent.";
"Sign in with your SuperGrok subscription to use Grok models in Gwen's agent.";
pub struct XAiSubscribedProvider {
state: Entity<State>,
+3 -3
View File
@@ -74,16 +74,16 @@ impl Render for MarkdownExample {
fn render(&mut self, _window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
let markdown_style = MarkdownStyle {
base_text_style: gpui::TextStyle {
font_family: ".ZedSans".into(),
font_family: ".GwenSans".into(),
color: cx.theme().colors().terminal_ansi_black,
..Default::default()
},
code_block: StyleRefinement::default()
.font_family(".ZedMono")
.font_family(".GwenMono")
.m(rems(1.))
.bg(rgb(0xAAAAAAA)),
inline_code: gpui::TextStyleRefinement {
font_family: Some(".ZedMono".into()),
font_family: Some(".GwenMono".into()),
color: Some(cx.theme().colors().editor_foreground),
background_color: Some(cx.theme().colors().editor_background),
..Default::default()
@@ -49,13 +49,13 @@ impl Render for HelloWorld {
fn render(&mut self, _window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
let markdown_style = MarkdownStyle {
base_text_style: gpui::TextStyle {
font_family: "Zed Mono".into(),
font_family: "Gwen Mono".into(),
color: cx.theme().colors().text,
..Default::default()
},
code_block: StyleRefinement {
text: gpui::TextStyleRefinement {
font_family: Some("Zed Mono".into()),
font_family: Some("Gwen Mono".into()),
background_color: Some(cx.theme().colors().editor_background),
..Default::default()
},
@@ -68,7 +68,7 @@ impl Render for HelloWorld {
..Default::default()
},
inline_code: gpui::TextStyleRefinement {
font_family: Some("Zed Mono".into()),
font_family: Some("Gwen Mono".into()),
background_color: Some(cx.theme().colors().editor_background),
..Default::default()
},
+6 -1
View File
@@ -1095,7 +1095,11 @@ mod tests {
}
#[test]
fn test_mermaid_font_family_resolves_zed_virtual_fonts() {
fn test_mermaid_font_family_resolves_virtual_fonts() {
assert_eq!(
super::mermaid_font_family(".GwenSans"),
"IBM Plex Sans, sans-serif"
);
assert_eq!(
super::mermaid_font_family(".ZedSans"),
"IBM Plex Sans, sans-serif"
@@ -1104,6 +1108,7 @@ mod tests {
super::mermaid_font_family("Zed Plex Sans"),
"IBM Plex Sans, sans-serif"
);
assert_eq!(super::mermaid_font_family(".GwenMono"), "Lilex, sans-serif");
assert_eq!(super::mermaid_font_family(".ZedMono"), "Lilex, sans-serif");
assert_eq!(
super::mermaid_font_family(".SystemUIFont"),
+8 -8
View File
@@ -344,7 +344,7 @@ fn render_telemetry_section(tab_index: &mut isize, cx: &App) -> impl IntoElement
SwitchField::new(
"onboarding-telemetry-metrics",
None::<&str>,
Some("Help improve Zed by sending anonymous usage data".into()),
Some("Help improve Gwen by sending anonymous usage data".into()),
if TelemetrySettings::get_global(cx).metrics {
ui::ToggleState::Selected
} else {
@@ -384,7 +384,7 @@ fn render_telemetry_section(tab_index: &mut isize, cx: &App) -> impl IntoElement
"onboarding-telemetry-crash-reports",
None::<&str>,
Some(
"Help fix Zed by sending crash reports so we can fix critical issues fast"
"Help fix Gwen by sending crash reports so we can fix critical issues fast"
.into(),
),
if TelemetrySettings::get_global(cx).diagnostics {
@@ -425,7 +425,7 @@ fn render_telemetry_section(tab_index: &mut isize, cx: &App) -> impl IntoElement
fn render_base_keymap_section(tab_index: &mut isize, cx: &mut App) -> impl IntoElement {
let base_keymap = match BaseKeymap::get_global(cx) {
BaseKeymap::Zed => Some(0),
BaseKeymap::Gwen => Some(0),
BaseKeymap::VSCode => Some(1),
BaseKeymap::JetBrains => Some(2),
BaseKeymap::SublimeText => Some(3),
@@ -440,8 +440,8 @@ fn render_base_keymap_section(tab_index: &mut isize, cx: &mut App) -> impl IntoE
ToggleButtonGroup::two_rows(
"base_keymap_selection",
[
ToggleButtonWithIcon::new("Zed", IconName::AiZed, |_, _, cx| {
write_keymap_base(BaseKeymap::Zed, cx);
ToggleButtonWithIcon::new("Gwen", IconName::AiZed, |_, _, cx| {
write_keymap_base(BaseKeymap::Gwen, cx);
}),
ToggleButtonWithIcon::new("VS Code", IconName::EditorVsCode, |_, _, cx| {
write_keymap_base(BaseKeymap::VSCode, cx);
@@ -533,12 +533,12 @@ fn render_worktree_auto_trust_switch(tab_index: &mut isize, cx: &mut App) -> imp
ui::ToggleState::Unselected
};
let tooltip_description = "Zed can only allow services like language servers, project settings, and MCP servers to run after you mark a new project as trusted.";
let tooltip_description = "Gwen can only allow services like language servers, project settings, and MCP servers to run after you mark a new project as trusted.";
SwitchField::new(
"onboarding-auto-trust-worktrees",
Some("Trust All Projects By Default"),
Some("Automatically mark all new projects as trusted to unlock all Zed's features".into()),
Some("Automatically mark all new projects as trusted to unlock all Gwen's features".into()),
toggle_state,
{
let fs = <dyn Fs>::global(cx);
@@ -744,7 +744,7 @@ fn render_zed_agent_button(user_store: &Entity<UserStore>, cx: &mut App) -> impl
.size(IconSize::XSmall)
.color(Color::Muted),
)
.name("Zed Agent")
.name("Gwen Agent")
.state(state_element)
.disabled(is_trial || is_pro)
.map(|this| {
+1 -1
View File
@@ -1144,7 +1144,7 @@ pub enum PulledDiagnostics {
},
}
/// Whether to disable all AI features in Zed.
/// Whether to disable all AI features in Gwen.
///
/// Default: false
#[derive(Copy, Clone, Debug, RegisterSetting)]
+7 -7
View File
@@ -102,9 +102,9 @@ pub struct SessionSettings {
pub struct NodeBinarySettings {
/// The path to the Node binary.
pub path: Option<String>,
/// The path to the npm binary Zed should use (defaults to `.path/../npm`).
/// The path to the npm binary Gwen should use (defaults to `.path/../npm`).
pub npm_path: Option<String>,
/// If enabled, Zed will download its own copy of Node.
/// If enabled, Gwen will download its own copy of Node.
pub ignore_system_version: bool,
}
@@ -624,7 +624,7 @@ pub struct DiagnosticsSettings {
/// Whether or not to include warning diagnostics.
pub include_warnings: bool,
/// Settings for using LSP pull diagnostics mechanism in Zed.
/// Settings for using LSP pull diagnostics mechanism in Gwen.
pub lsp_pull_diagnostics: LspPullDiagnosticsSettings,
/// Settings for showing inline diagnostics.
@@ -1273,12 +1273,12 @@ impl SettingsObserver {
let zed_tasks = TaskTemplates::try_from(vscode_tasks)
.with_context(|| {
format!(
"converting VSCode tasks into Zed ones, file {abs_path:?}"
"converting VSCode tasks into Gwen ones, file {abs_path:?}"
)
})?;
serde_json::to_string(&zed_tasks).with_context(|| {
format!(
"serializing Zed tasks into JSON, file {abs_path:?}"
"serializing Gwen tasks into JSON, file {abs_path:?}"
)
})
} else if abs_path.ends_with(local_vscode_launch_file_relative_path().as_std_path()) {
@@ -1290,12 +1290,12 @@ impl SettingsObserver {
let zed_tasks = DebugTaskFile::try_from(vscode_tasks)
.with_context(|| {
format!(
"converting VSCode debug tasks into Zed ones, file {abs_path:?}"
"converting VSCode debug tasks into Gwen ones, file {abs_path:?}"
)
})?;
serde_json::to_string(&zed_tasks).with_context(|| {
format!(
"serializing Zed tasks into JSON, file {abs_path:?}"
"serializing Gwen tasks into JSON, file {abs_path:?}"
)
})
} else {
@@ -353,7 +353,7 @@ pub fn init(cx: &mut App) {
let message = indoc::indoc! { r#"
Invalid path specified when trying to open a folder inside WSL.
Please note that Zed currently does not support opening network share folders inside wsl.
Please note that Gwen currently does not support opening network share folders inside wsl.
"#};
let _ = cx.prompt(gpui::PromptLevel::Critical, "Invalid path", Some(&message), &["OK"]).await;
+4 -4
View File
@@ -747,9 +747,9 @@ fn probe_script() -> String {
///
/// Successful results are cached per distro for the life of the process —
/// like `linux_bubblewrap::is_available`, the answers can't realistically
/// change while Zed runs. Failures are deliberately *not* cached so a user
/// change while Gwen runs. Failures are deliberately *not* cached so a user
/// who installs `bwrap` (or lifts a user-namespace restriction) after seeing
/// the error can retry the command without restarting Zed.
/// the error can retry the command without restarting Gwen.
async fn probe_environment(wsl_exe: &Path, distro: Option<&str>) -> Result<EnvironmentProbe> {
static CACHE: OnceLock<Mutex<HashMap<Option<String>, EnvironmentProbe>>> = OnceLock::new();
let cache = CACHE.get_or_init(|| Mutex::new(HashMap::new()));
@@ -846,7 +846,7 @@ fn parse_probe_output(stdout: &str) -> Result<EnvironmentProbe> {
})
}
/// Ensure a Linux `zed` of the given release `channel`/`version` is available
/// Ensure a Linux `gwen` of the given release `channel`/`version` is available
/// inside WSL and return its absolute in-WSL path, to be `--exec`'d as the
/// `--wsl-sandbox-helper`. Runs [`HELPER_PROVISION_SCRIPT`] (which downloads the
/// matching release tarball into an off-`PATH` location on first use).
@@ -854,7 +854,7 @@ fn parse_probe_output(stdout: &str) -> Result<EnvironmentProbe> {
/// Successful resolutions are cached per `(distro, channel, version)` for the
/// life of the process — once provisioned, the path won't change. Failures are
/// not cached, so a user who installs `curl` (or fixes networking) after an
/// error can retry without restarting Zed.
/// error can retry without restarting Gwen.
async fn ensure_wsl_zed_helper(
wsl_exe: &Path,
distro: Option<&str>,
+10 -9
View File
@@ -7,13 +7,14 @@ use settings::{RegisterSetting, Settings};
/// Base key bindings scheme. Base keymaps can be overridden with user keymaps.
///
/// Default: Zed
/// Default: Gwen
#[derive(
Copy, Clone, Debug, Serialize, Deserialize, JsonSchema, PartialEq, Eq, Default, RegisterSetting,
)]
pub enum BaseKeymap {
#[default]
Zed,
#[serde(alias = "Zed")]
Gwen,
VSCode,
JetBrains,
SublimeText,
@@ -27,7 +28,7 @@ pub enum BaseKeymap {
impl From<BaseKeymapContent> for BaseKeymap {
fn from(value: BaseKeymapContent) -> Self {
match value {
BaseKeymapContent::Zed => Self::Zed,
BaseKeymapContent::Gwen => Self::Gwen,
BaseKeymapContent::VSCode => Self::VSCode,
BaseKeymapContent::JetBrains => Self::JetBrains,
BaseKeymapContent::SublimeText => Self::SublimeText,
@@ -42,7 +43,7 @@ impl From<BaseKeymapContent> for BaseKeymap {
impl Into<BaseKeymapContent> for BaseKeymap {
fn into(self) -> BaseKeymapContent {
match self {
BaseKeymap::Zed => BaseKeymapContent::Zed,
BaseKeymap::Gwen => BaseKeymapContent::Gwen,
BaseKeymap::VSCode => BaseKeymapContent::VSCode,
BaseKeymap::JetBrains => BaseKeymapContent::JetBrains,
BaseKeymap::SublimeText => BaseKeymapContent::SublimeText,
@@ -58,7 +59,7 @@ impl Into<BaseKeymapContent> for BaseKeymap {
impl Display for BaseKeymap {
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
match self {
BaseKeymap::Zed => write!(f, "Zed"),
BaseKeymap::Gwen => write!(f, "Gwen"),
BaseKeymap::VSCode => write!(f, "VS Code"),
BaseKeymap::JetBrains => write!(f, "JetBrains"),
BaseKeymap::SublimeText => write!(f, "Sublime Text"),
@@ -74,7 +75,7 @@ impl Display for BaseKeymap {
impl BaseKeymap {
#[cfg(target_os = "macos")]
pub const OPTIONS: [(&'static str, Self); 8] = [
("Zed (Default)", Self::Zed),
("Gwen (Default)", Self::Gwen),
("VS Code", Self::VSCode),
("Atom", Self::Atom),
("JetBrains", Self::JetBrains),
@@ -86,7 +87,7 @@ impl BaseKeymap {
#[cfg(not(target_os = "macos"))]
pub const OPTIONS: [(&'static str, Self); 7] = [
("Zed (Default)", Self::Zed),
("Gwen (Default)", Self::Gwen),
("VS Code", Self::VSCode),
("Atom", Self::Atom),
("JetBrains", Self::JetBrains),
@@ -105,7 +106,7 @@ impl BaseKeymap {
BaseKeymap::Emacs => Some("keymaps/macos/emacs.json"),
BaseKeymap::Cursor => Some("keymaps/macos/cursor.json"),
BaseKeymap::VSCode => Some("keymaps/macos/vscode.json"),
BaseKeymap::Zed => None,
BaseKeymap::Gwen => None,
BaseKeymap::None => None,
}
@@ -118,7 +119,7 @@ impl BaseKeymap {
BaseKeymap::Cursor => Some("keymaps/linux/cursor.json"),
BaseKeymap::TextMate => None,
BaseKeymap::VSCode => Some("keymaps/linux/vscode.json"),
BaseKeymap::Zed => None,
BaseKeymap::Gwen => None,
BaseKeymap::None => None,
}
}
+5 -5
View File
@@ -353,7 +353,7 @@ pub struct AgentSettingsContent {
///
/// Default: true
pub expand_terminal_card: Option<bool>,
/// Command to automatically run when Zed creates a Terminal Thread shell in the agent panel.
/// Command to automatically run when Gwen creates a Terminal Thread shell in the agent panel.
/// The command is sent to the shell as if typed, so it is interpreted by your
/// configured shell (including on Windows and remote/WSL projects).
/// An empty string disables this behavior.
@@ -392,7 +392,7 @@ pub struct AgentSettingsContent {
/// The global `default` applies when no tool-specific rules match.
/// For external agent servers (e.g. Claude Agent) that define their own
/// permission modes, "deny" and "confirm" still take precedence — the
/// external agent's permission system is only used when Zed would allow
/// external agent's permission system is only used when Gwen would allow
/// the action. Per-tool regex patterns (`always_allow`, `always_deny`,
/// `always_confirm`) match against the tool's text input (command, path,
/// URL, etc.).
@@ -860,7 +860,7 @@ pub enum CustomAgentServerSettings {
/// path string (`"/tmp/x"`, a legacy/hand-authored entry with no resolved
/// target) or an object (`{ "requested": "/tmp/x", "resolved": "/tmp/real" }`).
/// Serializes back as a bare string when `resolved` is `None` and as an object
/// otherwise, so hand-authored bare strings round-trip and Zed-written grants
/// otherwise, so hand-authored bare strings round-trip and Gwen-written grants
/// are objects.
#[derive(Clone, Debug, Default, PartialEq, MergeFrom)]
pub struct GrantedWritePathContent {
@@ -993,9 +993,9 @@ pub struct SandboxPermissionsContent {
/// Directory subtrees that sandboxed terminal commands may always write
/// to without prompting. Each entry is either a bare path string or an
/// object `{requested, resolved}`; Zed writes objects (the canonical,
/// object `{requested, resolved}`; Gwen writes objects (the canonical,
/// symlink-resolved target established at approval time), while
/// hand-authored entries may be bare path strings. Paths written by Zed
/// hand-authored entries may be bare path strings. Paths written by Gwen
/// are absolute.
/// Default: []
pub write_paths: Option<ExtendingVec<GrantedWritePathContent>>,
+1 -1
View File
@@ -8,7 +8,7 @@ use settings_macros::{MergeFrom, with_fallible_options};
#[with_fallible_options]
#[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize, JsonSchema, MergeFrom)]
pub struct ExtensionSettingsContent {
/// The extensions that should be automatically installed by Zed.
/// The extensions that should be automatically installed by Gwen.
///
/// This is used to make functionality provided by extensions (e.g., language support)
/// available out-of-the-box.
+17 -17
View File
@@ -116,7 +116,7 @@ impl EditPredictionProvider {
pub fn display_name(&self) -> Option<&'static str> {
match self {
EditPredictionProvider::Zed => Some("Zed AI"),
EditPredictionProvider::Zed => Some("Gwen AI"),
EditPredictionProvider::Copilot => Some("GitHub Copilot"),
EditPredictionProvider::Codestral => Some("Codestral"),
EditPredictionProvider::Mercury => Some("Mercury"),
@@ -135,7 +135,7 @@ pub struct EditPredictionSettingsContent {
pub provider: Option<EditPredictionProvider>,
/// Disable edit predictions for files matching these glob patterns.
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -167,11 +167,11 @@ pub struct EditPredictionSettingsContent {
pub ollama: Option<OllamaEditPredictionSettingsContent>,
/// Settings specific to using custom OpenAI-compatible servers for edit prediction.
pub open_ai_compatible_api: Option<CustomEditPredictionProviderSettingsContent>,
/// Settings specific to Zed's Edit Predictions provider.
/// Settings specific to Gwen's Edit Predictions provider.
pub zed: Option<ZedEditPredictionSettingsContent>,
/// Settings specific to the Mercury Edit Predictions provider.
pub mercury: Option<MercuryEditPredictionSettingsContent>,
/// Controls whether Zed may collect training data when using Zed's Edit Predictions.
/// Controls whether Gwen may collect training data when using Gwen's Edit Predictions.
/// Data is only ever captured for files in projects that are detected as open source.
///
/// - `"default"`: use the preference previously set via the status-bar toggle,
@@ -286,7 +286,7 @@ pub struct CodestralSettingsContent {
pub prediction_debounce: Option<DelayMs>,
}
/// Settings specific to Zed's Edit Predictions provider.
/// Settings specific to Gwen's Edit Predictions provider.
#[with_fallible_options]
#[derive(Clone, Debug, Default, Serialize, Deserialize, JsonSchema, MergeFrom, PartialEq)]
pub struct ZedEditPredictionSettingsContent {
@@ -359,7 +359,7 @@ pub struct OllamaEditPredictionSettingsContent {
pub prediction_debounce: Option<DelayMs>,
}
/// Controls whether Zed collects training data when using Zed's Edit Predictions.
/// Controls whether Gwen collects training data when using Gwen's Edit Predictions.
#[derive(
Copy,
Clone,
@@ -380,7 +380,7 @@ pub enum EditPredictionDataCollectionChoice {
/// if no preference has been stored.
#[default]
Default,
/// Allow Zed to collect training data from open-source projects.
/// Allow Gwen to collect training data from open-source projects.
Yes,
/// Never allow training data collection.
No,
@@ -597,7 +597,7 @@ pub struct LanguageSettingsContent {
///
/// Default: auto
pub formatter: Option<FormatterList>,
/// Zed's Prettier integration settings.
/// Gwen's Prettier integration settings.
/// Allows to enable/disable formatting with Prettier
/// and configure default Prettier, used when no project-level Prettier installation is found.
///
@@ -709,12 +709,12 @@ pub struct LanguageSettingsContent {
/// Inlay hint related settings.
pub inlay_hints: Option<InlayHintSettingsContent>,
/// Whether to automatically type closing characters for you. For example,
/// when you type '(', Zed will automatically add a closing ')' at the correct position.
/// when you type '(', Gwen will automatically add a closing ')' at the correct position.
///
/// Default: true
pub use_autoclose: Option<bool>,
/// Whether to automatically surround text with characters for you. For example,
/// when you select text and type '(', Zed will automatically surround text with ().
/// when you select text and type '(', Gwen will automatically surround text with ().
///
/// Default: true
pub use_auto_surround: Option<bool>,
@@ -1141,13 +1141,13 @@ impl AsRef<[Formatter]> for FormatterList {
#[derive(Clone, Default, Debug, Serialize, Deserialize, PartialEq, Eq, JsonSchema, MergeFrom)]
#[serde(rename_all = "snake_case")]
pub enum Formatter {
/// Format files using Zed's Prettier integration (if applicable),
/// Format files using Gwen's Prettier integration (if applicable),
/// or falling back to formatting via language server.
#[default]
Auto,
/// Do not format code.
None,
/// Format code using Zed's Prettier integration.
/// Format code using Gwen's Prettier integration.
Prettier,
/// Format code using an external command.
External {
@@ -1260,13 +1260,13 @@ pub struct LanguageTaskSettingsContent {
/// Extra task variables to set for a particular language.
pub variables: Option<HashMap<String, String>>,
pub enabled: Option<bool>,
/// Use LSP tasks over Zed language extension ones.
/// Use LSP tasks over Gwen language extension ones.
/// If no LSP tasks are returned due to error/timeout or regular execution,
/// Zed language extension tasks will be used instead.
/// Gwen language extension tasks will be used instead.
///
/// Other Zed tasks will still be shown:
/// * Zed task from either of the task config file
/// * Zed task from history (e.g. one-off task was spawned before)
/// Other Gwen tasks will still be shown:
/// * Gwen task from either of the task config file
/// * Gwen task from history (e.g. one-off task was spawned before)
pub prefer_lsp: Option<bool>,
}
@@ -51,7 +51,7 @@ pub struct AnthropicCompatibleSettingsContent {
pub struct AnthropicCompatibleAvailableModel {
/// The model's name in the provider's API. e.g. claude-3-5-sonnet-latest
pub name: String,
/// The model's name in Zed's UI, such as in the model selector dropdown menu in the assistant panel.
/// The model's name in Gwen's UI, such as in the model selector dropdown menu in the assistant panel.
pub display_name: Option<String>,
/// The model's context window size.
pub max_tokens: u64,
@@ -93,7 +93,7 @@ impl Default for AnthropicCompatibleModelCapabilities {
pub struct AnthropicAvailableModel {
/// The model's name in the Anthropic API. e.g. claude-3-5-sonnet-latest, claude-3-opus-20240229, etc
pub name: String,
/// The model's name in Zed's UI, such as in the model selector dropdown menu in the agent panel.
/// The model's name in Gwen's UI, such as in the model selector dropdown menu in the agent panel.
pub display_name: Option<String>,
/// The model's context window size.
pub max_tokens: u64,
@@ -199,7 +199,7 @@ pub struct OllamaSettingsContent {
pub struct OllamaAvailableModel {
/// The model name in the Ollama API (e.g. "llama3.2:latest")
pub name: String,
/// The model's name in Zed's UI, such as in the model selector dropdown menu in the agent panel.
/// The model's name in Gwen's UI, such as in the model selector dropdown menu in the agent panel.
pub display_name: Option<String>,
/// The Context Length parameter to the model (aka num_ctx or n_ctx)
pub max_tokens: u64,
@@ -323,7 +323,7 @@ pub struct LlamaCppSettingsContent {
pub struct LlamaCppAvailableModel {
/// The model id reported by the llama.cpp server (its `--alias` or the model file path).
pub name: String,
/// The model's name in Zed's UI, such as in the model selector dropdown menu in the agent panel.
/// The model's name in Gwen's UI, such as in the model selector dropdown menu in the agent panel.
pub display_name: Option<String>,
/// The Context Length parameter to the model (aka n_ctx).
pub max_tokens: u64,
+1 -1
View File
@@ -1,6 +1,6 @@
/// Trait for recursively merging settings structures.
///
/// When Zed starts it loads settings from `default.json` to initialize
/// When Gwen starts it loads settings from `default.json` to initialize
/// everything. These may be further refined by loading the user's settings,
/// and any settings profiles; and then further refined by loading any
/// local project settings.
+9 -9
View File
@@ -81,7 +81,7 @@ pub struct ProjectSettingsContent {
/// The list of custom Git hosting providers.
pub git_hosting_providers: Option<ExtendingVec<GitHostingProviderConfig>>,
/// Whether to disable all AI features in Zed.
/// Whether to disable all AI features in Gwen.
///
/// Default: false
pub disable_ai: Option<SaturatingBool>,
@@ -151,7 +151,7 @@ pub struct WorktreeSettingsContent {
/// }
/// ```
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -177,7 +177,7 @@ pub struct WorktreeSettingsContent {
/// }
/// ```
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -224,7 +224,7 @@ pub struct WorktreeSettingsContent {
/// }
/// ```
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -253,7 +253,7 @@ pub struct WorktreeSettingsContent {
/// }
/// ```
///
/// Use `"..."` to add patterns without repeating Zed's defaults. In project
/// Use `"..."` to add patterns without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list.
///
@@ -286,7 +286,7 @@ pub struct LspSettings {
/// Consult the documentation for the specific language server to see which settings are supported.
pub settings: Option<serde_json::Value>,
/// If the server supports sending tasks over LSP extensions,
/// this setting can be used to enable or disable them in Zed.
/// this setting can be used to enable or disable them in Gwen.
/// Default: true
#[serde(default = "default_true")]
pub enable_lsp_tasks: bool,
@@ -904,7 +904,7 @@ pub struct DiagnosticsSettingsContent {
/// Default: true
pub include_warnings: Option<bool>,
/// Settings for using LSP pull diagnostics mechanism in Zed.
/// Settings for using LSP pull diagnostics mechanism in Gwen.
pub lsp_pull_diagnostics: Option<LspPullDiagnosticsSettingsContent>,
/// Settings for showing inline diagnostics.
@@ -961,9 +961,9 @@ pub struct InlineDiagnosticsSettingsContent {
pub struct NodeBinarySettings {
/// The path to the Node binary.
pub path: Option<String>,
/// The path to the npm binary Zed should use (defaults to `.path/../npm`).
/// The path to the npm binary Gwen should use (defaults to `.path/../npm`).
pub npm_path: Option<String>,
/// If enabled, Zed will download its own copy of Node.
/// If enabled, Gwen will download its own copy of Node.
pub ignore_system_version: Option<bool>,
}
+23 -22
View File
@@ -211,7 +211,7 @@ pub struct SettingsContent {
pub agent: Option<AgentSettingsContent>,
pub agent_servers: Option<AllAgentServersSettings>,
/// Configuration of audio in Zed.
/// Configuration of audio in Gwen.
pub audio: Option<AudioSettingsContent>,
/// Configuration of the background image displayed behind the workspace UI.
@@ -222,8 +222,8 @@ pub struct SettingsContent {
/// Default: true
pub auto_update: Option<bool>,
/// This base keymap settings adjusts the default keybindings in Zed to be similar
/// to other common code editors. By default, Zed's keymap closely follows VSCode's
/// This base keymap settings adjusts the default keybindings in Gwen to be similar
/// to other common code editors. By default, Gwen's keymap closely follows VSCode's
/// keymap, with minor adjustments, this corresponds to the "VSCode" setting.
///
/// Default: VSCode
@@ -296,16 +296,16 @@ pub struct SettingsContent {
/// The URL used as the key for credential storage.
///
/// When set, credentials are stored under this URL instead of `server_url`.
/// This allows running multiple Zed instances side by side without them
/// This allows running multiple Gwen instances side by side without them
/// overwriting each other's keychain entries.
pub credentials_url: Option<String>,
/// Configuration for session-related features
pub session: Option<SessionSettingsContent>,
/// Control what info is collected by Zed.
/// Control what info is collected by Gwen.
pub telemetry: Option<TelemetrySettingsContent>,
/// Configuration of the terminal in Zed.
/// Configuration of the terminal in Gwen.
pub terminal: Option<TerminalSettingsContent>,
pub title_bar: Option<TitleBarSettingsContent>,
@@ -321,7 +321,7 @@ pub struct SettingsContent {
/// Settings for the which-key popup.
pub which_key: Option<WhichKeySettingsContent>,
/// Settings related to Vim mode in Zed.
/// Settings related to Vim mode in Gwen.
pub vim: Option<VimSettingsContent>,
/// Number of lines to search for modelines at the beginning and end of files.
@@ -340,7 +340,7 @@ pub struct SettingsContent {
}
/// Configuration for developer-oriented instrumentation tools that collect
/// diagnostic data about a running Zed instance.
/// diagnostic data about a running Gwen instance.
#[with_fallible_options]
#[derive(Clone, Debug, Default, PartialEq, Serialize, Deserialize, JsonSchema, MergeFrom)]
pub struct InstrumentationSettingsContent {
@@ -479,7 +479,7 @@ pub enum ProfileBase {
/// Apply profile settings on top of the user's current settings.
#[default]
User,
/// Apply profile settings on top of Zed's default settings, ignoring user customizations.
/// Apply profile settings on top of Gwen's default settings, ignoring user customizations.
Default,
}
@@ -490,7 +490,7 @@ pub struct SettingsProfile {
/// What base settings to start from before applying this profile's overrides.
///
/// - `user`: Apply on top of user's settings (default)
/// - `default`: Apply on top of Zed's default settings, ignoring user customizations
/// - `default`: Apply on top of Gwen's default settings, ignoring user customizations
#[serde(default)]
pub base: ProfileBase,
@@ -521,7 +521,7 @@ pub struct ExtensionsSettingsContent {
/// Base key bindings scheme. Base keymaps can be overridden with user keymaps.
///
/// Default: Zed
/// Default: Gwen
#[derive(
Copy,
Clone,
@@ -537,7 +537,8 @@ pub struct ExtensionsSettingsContent {
)]
pub enum BaseKeymapContent {
#[default]
Zed,
#[serde(alias = "Zed")]
Gwen,
VSCode,
JetBrains,
SublimeText,
@@ -550,7 +551,7 @@ pub enum BaseKeymapContent {
impl strum::VariantNames for BaseKeymapContent {
const VARIANTS: &'static [&'static str] = &[
"Zed",
"Gwen",
"VSCode",
"JetBrains",
"Sublime Text",
@@ -562,7 +563,7 @@ impl strum::VariantNames for BaseKeymapContent {
];
}
/// Configuration of audio in Zed.
/// Configuration of audio in Gwen.
#[with_fallible_options]
#[derive(Clone, PartialEq, Default, Serialize, Deserialize, JsonSchema, MergeFrom, Debug)]
pub struct AudioSettingsContent {
@@ -606,7 +607,7 @@ impl From<Option<String>> for AudioOutputDeviceName {
}
}
/// Control what info is collected by Zed.
/// Control what info is collected by Gwen.
#[with_fallible_options]
#[derive(Clone, PartialEq, Eq, Serialize, Deserialize, JsonSchema, Debug, MergeFrom)]
pub struct TelemetrySettingsContent {
@@ -614,7 +615,7 @@ pub struct TelemetrySettingsContent {
///
/// Default: true
pub diagnostics: Option<bool>,
/// Send anonymized usage data like what languages you're using Zed with.
/// Send anonymized usage data like what languages you're using Gwen with.
///
/// Default: true
pub metrics: Option<bool>,
@@ -642,7 +643,7 @@ pub struct DebuggerSettingsContent {
///
/// Default: line
pub stepping_granularity: Option<SteppingGranularity>,
/// Whether the breakpoints should be reused across Zed sessions.
/// Whether the breakpoints should be reused across Gwen sessions.
///
/// Default: true
pub save_breakpoints: Option<bool>,
@@ -654,7 +655,7 @@ pub struct DebuggerSettingsContent {
///
/// Default: 2000ms
pub timeout: Option<u64>,
/// Whether to log messages between active debug adapters and Zed
/// Whether to log messages between active debug adapters and Gwen
///
/// Default: true
pub log_dap_communications: Option<bool>,
@@ -715,7 +716,7 @@ pub enum DockPosition {
Right,
}
/// Configuration of voice calls in Zed.
/// Configuration of voice calls in Gwen.
#[with_fallible_options]
#[derive(Clone, PartialEq, Default, Serialize, Deserialize, JsonSchema, MergeFrom, Debug)]
pub struct CallSettingsContent {
@@ -957,7 +958,7 @@ pub struct FileFinderSettingsContent {
/// Default: true
pub skip_focus_for_active_in_search: Option<bool>,
/// Whether to use gitignored files when searching.
/// Only the file Zed had indexed will be used, not necessary all the gitignored files.
/// Only the file Gwen had indexed will be used, not necessary all the gitignored files.
///
/// Default: Smart
pub include_ignored: Option<IncludeIgnoredContent>,
@@ -985,7 +986,7 @@ pub struct FileFinderSettingsContent {
pub enum IncludeIgnoredContent {
/// Use all gitignored files
All,
/// Use only the files Zed had indexed
/// Use only the files Gwen had indexed
Indexed,
/// Be smart and search for ignored when called from a gitignored worktree
#[default]
@@ -1367,7 +1368,7 @@ pub struct RemoteSettingsContent {
pub use_podman: Option<bool>,
/// Whether to build dev container images with BuildKit.
///
/// When unset, Zed auto-detects BuildKit by probing for the `buildx` CLI
/// When unset, Gwen auto-detects BuildKit by probing for the `buildx` CLI
/// plugin. Set to `false` to force the classic Docker builder, which is
/// required for Docker-compatible engines that lack an integrated BuildKit
/// (e.g. Apple Container via a Docker-API bridge), where BuildKit builds
+1 -1
View File
@@ -63,7 +63,7 @@ pub struct ProjectTerminalSettingsContent {
/// }
/// ```
///
/// Use `"..."` to add regexes without repeating Zed's defaults. In project
/// Use `"..."` to add regexes without repeating Gwen's defaults. In project
/// settings, it extends the user or parent configuration value. Omit
/// `"..."` to replace the inherited list. Set `[]` to clear it. Omitting this
/// setting keeps the inherited list.
+1 -1
View File
@@ -214,7 +214,7 @@ pub struct ThemeSettingsContent {
/// The font size for user messages in the agent panel.
pub agent_buffer_font_size: Option<FontSize>,
pub git_commit_buffer_font_size: Option<FontSize>,
/// The name of the Zed theme to use.
/// The name of the Gwen theme to use.
pub theme: Option<ThemeSelection>,
/// The name of the icon theme to use.
pub icon_theme: Option<IconThemeSelection>,
+2 -2
View File
@@ -25,7 +25,7 @@ pub enum WindowButtonLayoutContent {
/// Follow the system/desktop configuration.
#[default]
PlatformDefault,
/// Use Zed's built-in standard layout, regardless of system config.
/// Use Gwen's built-in standard layout, regardless of system config.
Standard,
/// A raw GNOME-style layout string.
Custom(String),
@@ -122,7 +122,7 @@ pub struct TitleBarSettingsContent {
/// The layout of window control buttons in the title bar (Linux only).
///
/// This can be set to "platform_default" to follow the system configuration, or
/// "standard" to use Zed's built-in layout. For custom layouts, use a
/// "standard" to use Gwen's built-in layout. For custom layouts, use a
/// GNOME-style layout string like "close:minimize,maximize".
///
/// Default: "platform_default"
+11 -11
View File
@@ -45,7 +45,7 @@ pub struct WorkspaceSettingsContent {
///
/// Default: off
pub autosave: Option<AutosaveSetting>,
/// Controls previous session restoration in freshly launched Zed instance.
/// Controls previous session restoration in freshly launched Gwen instance.
/// Values: empty_tab, last_workspace, last_session, launchpad
/// Default: last_session
pub restore_on_startup: Option<RestoreOnStartupBehavior>,
@@ -81,19 +81,19 @@ pub struct WorkspaceSettingsContent {
///
/// Default: auto ("on" on macOS, "off" otherwise)
pub when_closing_with_no_tabs: Option<CloseWindowWhenNoItems>,
/// Whether to optimize Zed's interface for assistive technology such as
/// Whether to optimize Gwen's interface for assistive technology such as
/// screen readers.
///
/// Default: false
pub accessible_mode: Option<bool>,
/// Whether to use the system provided dialogs for Open and Save As.
/// When set to false, Zed will use the built-in keyboard-first pickers.
/// When set to false, Gwen will use the built-in keyboard-first pickers.
///
/// Default: true
pub use_system_path_prompts: Option<bool>,
/// Whether to use the system provided prompts.
/// When set to false, Zed will use the built-in prompts.
/// Note that this setting has no effect on Linux, where Zed will always
/// When set to false, Gwen will use the built-in prompts.
/// Note that this setting has no effect on Linux, where Gwen will always
/// use the built-in prompts.
///
/// Default: true
@@ -165,7 +165,7 @@ pub struct WorkspaceSettingsContent {
///
/// Default: ` — `
pub window_title_separator: Option<String>,
/// Controls whether Zed or the window manager or compositor draws window decorations on Linux.
/// Controls whether Gwen or the window manager or compositor draws window decorations on Linux.
///
/// Default: client
pub window_decorations: Option<WindowDecorations>,
@@ -394,7 +394,7 @@ pub enum FullscreenMode {
Simple,
}
/// Configures what draws Zed's window decorations on Linux.
/// Configures what draws Gwen's window decorations on Linux.
/// This setting has no effect on other platforms.
#[derive(
Copy,
@@ -411,7 +411,7 @@ pub enum FullscreenMode {
)]
#[serde(rename_all = "snake_case")]
pub enum WindowDecorations {
/// Zed draws its own window decorations/titlebar (client-side decoration).
/// Gwen draws its own window decorations/titlebar (client-side decoration).
#[default]
Client,
/// The window manager or compositor draws the server-side window
@@ -469,7 +469,7 @@ impl CloseWindowWhenNoItems {
)]
#[serde(rename_all = "snake_case")]
pub enum CliDefaultOpenBehavior {
/// Open directories as a new workspace in the current Zed window's sidebar.
/// Open directories as a new workspace in the current Gwen window's sidebar.
#[default]
#[strum(serialize = "Add to Existing Window")]
ExistingWindow,
@@ -494,7 +494,7 @@ pub enum CliDefaultOpenBehavior {
)]
#[serde(rename_all = "snake_case")]
pub enum DefaultOpenBehavior {
/// Open projects in the current Zed window.
/// Open projects in the current Gwen window.
#[default]
#[strum(serialize = "Add to Existing Window")]
ExistingWindow,
@@ -524,7 +524,7 @@ pub enum RestoreOnStartupBehavior {
EmptyTab,
/// Restore the workspace that was closed last.
LastWorkspace,
/// Restore all workspaces that were open when quitting Zed.
/// Restore all workspaces that were open when quitting Gwen.
#[default]
LastSession,
/// Show the launchpad with recent projects (no tabs).
+19 -19
View File
@@ -141,7 +141,7 @@ fn general_page(cx: &App) -> SettingsPage {
SettingsPageItem::SectionHeader("General Settings"),
SettingsPageItem::SettingItem(SettingItem {
title: "Accessible Mode",
description: "Optimize Zed's interface for assistive technology such as screen readers. When enabled, otherwise-collapsed controls stay expanded and keyboard-reachable.",
description: "Optimize Gwen's interface for assistive technology such as screen readers. When enabled, otherwise-collapsed controls stay expanded and keyboard-reachable.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("accessible_mode"),
@@ -327,7 +327,7 @@ fn general_page(cx: &App) -> SettingsPage {
SettingsPageItem::SectionHeader("Security"),
SettingsPageItem::SettingItem(SettingItem {
title: "Trust All Projects By Default",
description: "When opening Zed, avoid Restricted Mode by auto-trusting all projects, enabling use of all features without having to give permission to each new project.",
description: "When opening Gwen, avoid Restricted Mode by auto-trusting all projects, enabling use of all features without having to give permission to each new project.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("session.trust_all_projects"),
@@ -377,7 +377,7 @@ fn general_page(cx: &App) -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Restore On Startup",
description: "What to restore from the previous session when opening Zed.",
description: "What to restore from the previous session when opening Gwen.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("restore_on_startup"),
@@ -398,7 +398,7 @@ fn general_page(cx: &App) -> SettingsPage {
SettingsPageItem::SettingItem(SettingItem {
files: USER,
title: "Preview Channel",
description: "Which settings should be activated only in Preview build of Zed.",
description: "Which settings should be activated only in Preview build of Gwen.",
field: Box::new(
SettingField {
organization_override: None,
@@ -455,7 +455,7 @@ fn general_page(cx: &App) -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Telemetry Metrics",
description: "Send anonymized usage data like what languages you're using Zed with.",
description: "Send anonymized usage data like what languages you're using Gwen with.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("telemetry.metrics"),
@@ -719,7 +719,7 @@ fn appearance_page() -> SettingsPage {
discriminant: SettingItem {
files: USER,
title: "Icon Theme",
description: "The custom set of icons Zed will associate with files and directories.",
description: "The custom set of icons Gwen will associate with files and directories.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("icon_theme$"),
@@ -4021,7 +4021,7 @@ fn search_and_files_page() -> SettingsPage {
SettingsPageItem::SectionHeader("File Scan"),
SettingsPageItem::SettingItem(SettingItem {
title: "File Scan Exclusions",
description: "Files or globs of files that will be excluded by Zed entirely. They will be skipped during file scans, file searches, and not be displayed in the project file tree. Takes precedence over \"File Scan Inclusions\"",
description: "Files or globs of files that will be excluded by Gwen entirely. They will be skipped during file scans, file searches, and not be displayed in the project file tree. Takes precedence over \"File Scan Inclusions\"",
field: Box::new(
SettingField {
organization_override: None,
@@ -4044,7 +4044,7 @@ fn search_and_files_page() -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "File Scan Inclusions",
description: "Files or globs of files that will be included by Zed, even when ignored by git. This is useful for files that are not tracked by git, but are still important to your project. Note that globs that are overly broad can slow down Zed's file scanning. \"File Scan Exclusions\" takes precedence over these inclusions",
description: "Files or globs of files that will be included by Gwen, even when ignored by git. This is useful for files that are not tracked by git, but are still important to your project. Note that globs that are overly broad can slow down Gwen's file scanning. \"File Scan Exclusions\" takes precedence over these inclusions",
field: Box::new(
SettingField {
organization_override: None,
@@ -5259,7 +5259,7 @@ fn window_and_layout_page() -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Window Decorations",
description: "(Linux only) whether Zed or your compositor should draw window decorations.",
description: "(Linux only) whether Gwen or your compositor should draw window decorations.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("window_decorations"),
@@ -7093,7 +7093,7 @@ fn debugger_page() -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Save Breakpoints",
description: "Whether breakpoints should be reused across Zed sessions.",
description: "Whether breakpoints should be reused across Gwen sessions.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("debugger.save_breakpoints"),
@@ -7130,7 +7130,7 @@ fn debugger_page() -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Log DAP Communications",
description: "Whether to log messages between active debug adapters and Zed.",
description: "Whether to log messages between active debug adapters and Gwen.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("debugger.log_dap_communications"),
@@ -8070,7 +8070,7 @@ fn version_control_page() -> SettingsPage {
discriminant: SettingItem {
files: USER,
title: "Disable Git Integration",
description: "Disable all Git integration features in Zed.",
description: "Disable all Git integration features in Gwen.",
field: Box::new(SettingField::<bool> {
organization_override: None,
json_path: Some("git.disable_git"),
@@ -8683,7 +8683,7 @@ fn ai_page(cx: &App) -> SettingsPage {
SettingsPageItem::SectionHeader("General"),
SettingsPageItem::SettingItem(SettingItem {
title: "Disable AI",
description: "Whether to disable all AI features in Zed.",
description: "Whether to disable all AI features in Gwen.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("disable_ai"),
@@ -9047,7 +9047,7 @@ fn ai_page(cx: &App) -> SettingsPage {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Terminal Thread Init Command",
description: "Command to automatically run when Zed creates a Terminal Thread shell in the agent panel. Runs in your configured shell.",
description: "Command to automatically run when Gwen creates a Terminal Thread shell in the agent panel. Runs in your configured shell.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("agent.terminal_init_command"),
@@ -9896,7 +9896,7 @@ fn language_settings_data() -> Box<[SettingsPageItem]> {
SettingsPageItem::SectionHeader("Autoclose"),
SettingsPageItem::SettingItem(SettingItem {
title: "Use Autoclose",
description: "Whether to automatically type closing characters for you. For example, when you type '(', Zed will automatically add a closing ')' at the correct position.",
description: "Whether to automatically type closing characters for you. For example, when you type '(', Gwen will automatically add a closing ')' at the correct position.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("languages.$(language).use_autoclose"),
@@ -9916,7 +9916,7 @@ fn language_settings_data() -> Box<[SettingsPageItem]> {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Use Auto Surround",
description: "Whether to automatically surround text with characters for you. For example, when you select text and type '(', Zed will automatically surround text with ().",
description: "Whether to automatically surround text with characters for you. For example, when you select text and type '(', Gwen will automatically surround text with ().",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("languages.$(language).use_auto_surround"),
@@ -10464,7 +10464,7 @@ fn language_settings_data() -> Box<[SettingsPageItem]> {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Prefer LSP",
description: "Use LSP tasks over Zed language extension tasks.",
description: "Use LSP tasks over Gwen language extension tasks.",
field: Box::new(SettingField {
organization_override: None,
json_path: Some("languages.$(language).tasks.prefer_lsp"),
@@ -11223,7 +11223,7 @@ fn edit_prediction_language_settings_section() -> [SettingsPageItem; 5] {
title: "Configure Providers".into(),
r#type: Default::default(),
json_path: Some("edit_predictions.providers"),
description: Some("Set up different edit prediction providers in complement to Zed's built-in Zeta model.".into()),
description: Some("Set up different edit prediction providers in complement to Gwen's built-in Zeta model.".into()),
search_aliases: &[],
in_json: false,
files: USER,
@@ -11231,7 +11231,7 @@ fn edit_prediction_language_settings_section() -> [SettingsPageItem; 5] {
}),
SettingsPageItem::SettingItem(SettingItem {
title: "Data Collection",
description: "Controls whether Zed may collect training data when using Zed's Edit Predictions. Data is only collected for files in projects detected as open source. The default value uses the preference previously set via the status-bar toggle, or false if no preference has been stored.",
description: "Controls whether Gwen may collect training data when using Gwen's Edit Predictions. Data is only collected for files in projects detected as open source. The default value uses the preference previously set via the status-bar toggle, or false if no preference has been stored.",
field: Box::new(SettingField {
organization_override: Some(|org_settings| {
const DATA_COLLECTION_DISABLED: EditPredictionDataCollectionChoice = EditPredictionDataCollectionChoice::No;
@@ -320,7 +320,7 @@ fn render_api_key_provider(
.when_some(env_var_name, |this, env_var_name| {
this.child({
let label = format!(
"Or set the {} env var and restart Zed.",
"Or set the {} env var and restart Gwen.",
env_var_name.as_ref()
);
Label::new(label).size(LabelSize::Small).color(Color::Muted)
@@ -925,7 +925,7 @@ fn render_zed_provider(
.pt_8()
.gap_1p5()
.child(
SettingsSectionHeader::new("Zed Predictions")
SettingsSectionHeader::new("Gwen Predictions")
.icon(IconName::ZedPredict)
.no_padding(true),
)
@@ -296,7 +296,7 @@ fn render_api_key_providers_item(
)
.child(
Label::new(format!(
"Or set the {env_var_name} env var and restart Zed for it to take effect."
"Or set the {env_var_name} env var and restart Gwen for it to take effect."
))
.size(LabelSize::XSmall)
.color(Color::Muted),
@@ -1342,10 +1342,10 @@ mod tests {
.w_full()
.debug_selector(|| "provider-row".into())
.child(render_inline_body(
"Zed".into(),
"Gwen".into(),
Some("Subscribed to Business".into()),
Some(InlineDescription::Text(
"You have access to Zed's hosted models through your organization."
"You have access to Gwen's hosted models through your organization."
.into(),
)),
cloud::test_support::young_account_configuration(),
@@ -1378,7 +1378,7 @@ mod tests {
.expect("provider description should be rendered");
let configuration_bounds = visual_context
.debug_bounds("zed-ai-configuration")
.expect("Zed AI configuration should be rendered");
.expect("Gwen AI configuration should be rendered");
assert!(
configuration_bounds.right() <= provider_row_bounds.right(),
@@ -63,7 +63,7 @@ pub(crate) fn render_sandbox_settings_page(
"sandbox-enabled",
Some("Enable Sandbox"),
Some(
"Wrap agent-run terminal commands in an OS-level sandbox. When off, commands run with Zed's own permissions."
"Wrap agent-run terminal commands in an OS-level sandbox. When off, commands run with Gwen's own permissions."
.into(),
),
sandbox_enabled,
@@ -710,7 +710,7 @@ impl SkillCreatorPage {
.child(match &self.url_import_status {
UrlImportStatus::Idle => Label::new(
"Paste a GitHub .md URL to fetch it and fill out the form. \
For private files, Zed retries using GITHUB_TOKEN, if set.",
For private files, Gwen retries using GITHUB_TOKEN, if set.",
)
.size(LabelSize::Small)
.color(Color::Muted)
@@ -16,7 +16,7 @@ use crate::{SettingsWindow, components::SettingsInputField};
const HARDCODED_RULES_DESCRIPTION: &str =
"`rm -rf` commands are always blocked when run on `$HOME`, `~`, `.`, `..`, or `/`";
const SETTINGS_DISCLAIMER: &str = "Note: custom tool permissions only apply to the Zed native agent and don’t extend to external agents connected through the Agent Client Protocol (ACP).";
const SETTINGS_DISCLAIMER: &str = "Note: custom tool permissions only apply to the Gwen native agent and don’t extend to external agents connected through the Agent Client Protocol (ACP).";
/// Tools that support permission rules
const TOOLS: &[ToolInfo] = &[
+2 -2
View File
@@ -893,7 +893,7 @@ fn open_settings_editor_with(
cx.open_window(
WindowOptions {
titlebar: Some(TitlebarOptions {
title: Some("Zed — Settings".into()),
title: Some("Gwen — Settings".into()),
appears_transparent: true,
traffic_light_position: Some(point(px(12.0), px(12.0))),
}),
@@ -1716,7 +1716,7 @@ fn all_language_names(cx: &App) -> Vec<SharedString> {
.languages
.language_names()
.into_iter()
.filter(|name| name.as_ref() != "Zed Keybind Context")
.filter(|name| name.as_ref() != "Gwen Keybind Context")
.map(Into::into)
.collect()
}
+1 -1
View File
@@ -2217,7 +2217,7 @@ async fn test_closing_last_agent_panel_terminal_restores_empty_header(cx: &mut T
// placeholder row, so the header reports having threads.
assert_eq!(
visible_entries_as_strings(&sidebar, cx),
vec!["v [my-project]", " New Zed Agent Thread"]
vec!["v [my-project]", " New Gwen Agent Thread"]
);
assert_project_header_has_threads(&sidebar, "my-project", true, cx);
+2 -2
View File
@@ -8,14 +8,14 @@ use crate::{
ThemeFamily, ThemeStyles, default_color_scales,
};
/// The default theme family for Zed.
/// The default theme family for Gwen.
///
/// This is used to construct the default theme fallback values, as well as to
/// have a theme available at compile time for tests.
pub fn zed_default_themes() -> ThemeFamily {
ThemeFamily {
id: "zed-default".to_string(),
name: "Zed Default".into(),
name: "Gwen Default".into(),
author: "".into(),
themes: vec![zed_default_dark()],
scales: default_color_scales(),
+1 -1
View File
@@ -421,7 +421,7 @@ fn icon_keys_by_association(
}
/// The name of the default icon theme.
pub const DEFAULT_ICON_THEME_NAME: &str = "Zed (Default)";
pub const DEFAULT_ICON_THEME_NAME: &str = "Gwen (Default)";
static DEFAULT_ICON_THEME: LazyLock<Arc<IconTheme>> = LazyLock::new(|| {
Arc::new(IconTheme {
+2 -2
View File
@@ -517,7 +517,7 @@ mod tests {
cx.update(|cx| {
cx.set_menus(vec![
Menu::new("Zed").items([MenuItem::action(
Menu::new("Gwen").items([MenuItem::action(
"Settings",
OpenApplicationMenu(String::new()),
)]),
@@ -529,7 +529,7 @@ mod tests {
let zed_handle = cx.update(|window, cx| {
let zed_handle = app_menu.read_with(cx, |app_menu, _| {
menu_entry(&app_menu.entries, "Zed").handle.clone()
menu_entry(&app_menu.entries, "Gwen").handle.clone()
});
zed_handle.show(window, cx);
zed_handle
Loaded 100 of 123 files, more files were not shown because too many files have changed in this diff. Show more