{ "$schema": "zed://schemas/settings", // The name of the Zed theme to use for the UI. // // `mode` is one of: // - "system": Use the theme that corresponds to the system's appearance // - "light": Use the theme indicated by the "light" field // - "dark": Use the theme indicated by the "dark" field "theme": { "mode": "system", "light": "One Light", "dark": "One Dark", }, "icon_theme": "Zed (Default)", // The name of a base set of key bindings to use. // This setting can take six values, each named after another // text editor: // // 1. "VSCode" // 2. "Atom" // 3. "JetBrains" // 4. "None" // 5. "SublimeText" // 6. "TextMate" "base_keymap": "VSCode", // The name of a font to use for rendering text in the editor // ".ZedMono" currently aliases to Lilex // but this may change in the future. "buffer_font_family": ".ZedMono", // Set the buffer text's font fallbacks, this will be merged with // the platform's default fallbacks. "buffer_font_fallbacks": null, // The OpenType features to enable for text in the editor. "buffer_font_features": { // Disable ligatures: // "calt": false }, // The default font size for text in the editor "buffer_font_size": 15, // The weight of the editor font in standard CSS units from 100 to 900. "buffer_font_weight": 400, // Set the buffer's line height. // May take 3 values: // 1. Use a line height that's comfortable for reading (1.618) // "buffer_line_height": "comfortable" // 2. Use a standard line height, (1.3) // "buffer_line_height": "standard", // 3. Use a custom line height // "buffer_line_height": { // "custom": 2 // }, "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 // change in the future "ui_font_family": ".ZedSans", // Set the UI's font fallbacks, this will be merged with the platform's // default font fallbacks. "ui_font_fallbacks": null, // The OpenType features to enable for text in the UI "ui_font_features": { // Disable ligatures: "calt": false, }, // The weight of the UI font in standard CSS units from 100 to 900. "ui_font_weight": 400, // The default font size for text in the UI "ui_font_size": 16, // The default font size for agent responses in the agent panel. Falls back to the UI font size if unset. "agent_ui_font_size": null, // The default font size for user messages in the agent panel. "agent_buffer_font_size": 12, // The default font size for the commit editor in the git panel and commit modal. "git_commit_buffer_font_size": 12, // How much to fade out unused code. "unnecessary_code_fade": 0.3, // Active pane styling settings. "active_pane_modifiers": { // Inset border size of the active pane, in pixels. "border_size": 0.0, // Opacity of the inactive panes. 0 means transparent, 1 means opaque. // Values are clamped to the [0.0, 1.0] range. "inactive_opacity": 1.0, }, // Layout mode of the bottom dock. Defaults to "contained" // choices: contained, full, left_aligned, right_aligned "bottom_dock_layout": "contained", // The direction that you want to split panes horizontally. Defaults to "down" "pane_split_direction_horizontal": "down", // The direction that you want to split panes vertically. Defaults to "right" "pane_split_direction_vertical": "right", // Centered layout related settings. "centered_layout": { // The relative width of the left padding of the central pane from the // workspace when the centered layout is used. "left_padding": 0.2, // The relative width of the right padding of the central pane from the // workspace when the centered layout is used. "right_padding": 0.2, }, // Image viewer settings "image_viewer": { // The unit for image file sizes: "binary" (KiB, MiB) or decimal (KB, MB) "unit": "binary", }, // Determines the modifier to be used to add multiple cursors with the mouse. The open hover link mouse gestures will adapt such that it do not conflict with the multicursor modifier. // // 1. Maps to `Alt` on Linux and Windows and to `Option` on MacOS: // "alt" // 2. Maps `Control` on Linux and Windows and to `Command` on MacOS: // "cmd_or_ctrl" (alias: "cmd", "ctrl") "multi_cursor_modifier": "alt", // Whether to enable vim modes and key bindings. "vim_mode": false, // Whether to enable helix mode and key bindings. // Enabling this mode will automatically enable vim mode. "helix_mode": false, // Whether to show the informational hover box when moving the mouse // over symbols in the editor. "hover_popover_enabled": true, // Time to wait in milliseconds before showing the informational hover box. // This delay also applies to auto signature help when `auto_signature_help` is enabled. "hover_popover_delay": 300, // Whether the hover popover sticks when the mouse moves toward it, // allowing interaction with its contents before it disappears. "hover_popover_sticky": true, // Time to wait in milliseconds before hiding the hover popover // 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. "confirm_quit": false, // Whether to restore last closed project when fresh Zed instance is opened // May take 3 values: // 1. All workspaces open during last session // "restore_on_startup": "last_session" // 2. The workspace opened // "restore_on_startup": "last_workspace", // 3. Do not restore previous workspaces // "restore_on_startup": "none", "restore_on_startup": "last_session", // The default behavior when opening paths from the CLI without // 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 // "cli_default_open_behavior": "existing_window" // 2. Open directories in a new window (reuse existing windows for files // that are already part of an open project) // "cli_default_open_behavior": "new_window" "cli_default_open_behavior": "existing_window", // Whether to attempt to restore previous file's state when opening it again. // The state is stored per pane. // When disabled, defaults are applied instead of the state restoration. // // E.g. for editors, selections, folds and scroll positions are restored, if the same file is closed and, later, opened again in the same pane. // When disabled, a single selection in the very beginning of the file, zero scroll position and no folds state is used as a default. // // Default: true "restore_on_file_reopen": true, // Whether to automatically close files that have been deleted on disk. "close_on_file_delete": false, // Whether toggling a panel (e.g. with its keyboard shortcut) also closes // the panel when it is already focused, instead of just moving focus back // to the editor. "close_panel_on_toggle": false, // Relative size of the drop target in the editor that will open dropped file as a split pane (0-0.5) // E.g. 0.25 == If you drop onto the top/bottom quarter of the pane a new vertical split will be used // If you drop onto the left/right quarter of the pane a new horizontal split will be used "drop_target_size": 0.2, // Whether the window should be closed when using 'close active item' on a window with no tabs. // May take 3 values: // 1. Use the current platform's convention // "when_closing_with_no_tabs": "platform_default" // 2. Always close the window: // "when_closing_with_no_tabs": "close_window", // 3. Never close the window // "when_closing_with_no_tabs": "keep_window_open", "when_closing_with_no_tabs": "platform_default", // What to do when the last window is closed. // May take 2 values: // 1. Use the current platform's convention // "on_last_window_closed": "platform_default" // 2. Always quit the application // "on_last_window_closed": "quit_app", "on_last_window_closed": "platform_default", // The text rendering mode to use. // May take 3 values: // 1. Use platform default behavior: // "text_rendering_mode": "platform_default" // 2. Use subpixel (ClearType-style) text rendering: // "text_rendering_mode": "subpixel" // 3. Use grayscale text rendering: // "text_rendering_mode": "grayscale" "text_rendering_mode": "platform_default", // Whether to show padding for zoomed panels. // When enabled, zoomed center panels (e.g. code editor) will have padding all around, // while zoomed bottom/left/right panels will have padding to the top/right/left (respectively). // // Default: true "zoomed_padding": true, // What draws Zed's window decorations (titlebar): // 1. Client application (Zed) draws its own window decorations // "client" // 2. Display server draws the window decorations. Not supported by GNOME Wayland. // "server" // // This requires restarting Zed for changes to take effect. // // Default: "client" "window_decorations": "client", // 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. "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. "use_system_prompts": true, // Whether the cursor blinks in the editor. "cursor_blink": true, // Cursor shape for the default editor. // 1. A vertical bar // "bar" // 2. A block that surrounds the following character // "block" // 3. An underline / underscore that runs along the following character // "underline" // 4. A box drawn around the following character // "hollow" // // Default: "bar" "cursor_shape": "bar", // Determines when the mouse cursor should be hidden in response to keyboard // input. // // 1. Never hide the mouse cursor: // "never" // 2. Hide only when typing: // "on_typing" // 3. Hide on typing and on key bindings that resolve to an action: // "on_typing_and_action" "hide_mouse": "on_typing_and_action", // Determines whether the focused panel follows the mouse location. "focus_follows_mouse": { "enabled": false, "debounce_ms": 250, }, // Determines how snippets are sorted relative to other completion items. // // 1. Place snippets at the top of the completion list: // "top" // 2. Place snippets normally without any preference: // "inline" // 3. Place snippets at the bottom of the completion list: // "bottom" // 4. Do not show snippets in the completion list: // "none" "snippet_sort_order": "inline", // How to highlight the current line in the editor. // // 1. Don't highlight the current line: // "none" // 2. Highlight the gutter area: // "gutter" // 3. Highlight the editor area: // "line" // 4. Highlight the full line (default): // "all" "current_line_highlight": "all", // Whether to highlight all occurrences of the selected text in an editor. "selection_highlight": true, // Whether the text selection should have rounded corners. "rounded_selection": true, // The debounce delay before querying highlights from the language // server based on the current cursor location. "lsp_highlight_debounce": 75, // The minimum APCA perceptual contrast between foreground and background colors. // APCA (Accessible Perceptual Contrast Algorithm) is more accurate than WCAG 2.x, // especially for dark mode. Values range from 0 to 106. // // Based on APCA Readability Criterion (ARC) Bronze Simple Mode: // https://readtech.org/ARC/tests/bronze-simple-mode/ // - 0: No contrast adjustment // - 45: Minimum for large fluent text (36px+) // - 60: Minimum for other content text // - 75: Minimum for body text // - 90: Preferred for body text // // This only affects text drawn over highlight backgrounds in the editor. "minimum_contrast_for_highlights": 45, // Whether to pop the completions menu while typing in an editor without // explicitly requesting it. "show_completions_on_input": true, // Whether to display inline and alongside documentation for items in the // completions menu "show_completion_documentation": true, // Whether to colorize brackets in the editor. // (also known as "rainbow brackets") // // The colors that are used for different indentation levels are defined in the theme (theme key: `accents`). // They can be customized by using theme overrides. "colorize_brackets": false, // When to show the scrollbar in the completion menu. // This setting can take four values: // // 1. Show the scrollbar if there's important information or // follow the system's configured behavior // "auto" // 2. Match the system's configured behavior: // "system" // 3. Always show the scrollbar: // "always" // 4. Never show the scrollbar: // "never" (default) "completion_menu_scrollbar": "never", // Whether to align detail text in code completions context menus left or right. "completion_detail_alignment": "left", // How to display the LSP item kind (function, method, variable, etc.) // of each entry in the completions menu. // // 1. Do not display item kinds: // "off" (default) // 2. Display a single-letter badge, colorized based on the active syntax theme: // "symbol" "completion_menu_item_kind": "off", // How to display diffs in the editor. // // Default: split "diff_view_style": "split", // The minimum width (in em-widths) at which the split diff view is used. // When the editor is narrower than this, the diff view automatically // switches to unified mode and switches back when the editor is wide // enough. Set to 0 to disable automatic switching. // // Default: 100 "minimum_split_diff_width": 100, // Show method signatures in the editor, when inside parentheses. "auto_signature_help": false, // Whether to show the signature help after completion or a bracket pair inserted. // If `auto_signature_help` is enabled, this setting will be treated as enabled also. "show_signature_help_after_edits": false, // Whether to show code action button at start of buffer line. "inline_code_actions": true, // Whether to allow drag and drop text selection in buffer. "drag_and_drop_selection": { // When true, enables drag and drop text selection in buffer. "enabled": true, // The delay in milliseconds that must elapse before drag and drop is allowed. Otherwise, a new text selection is created. "delay": 300, }, // Whether and how to display code lenses from language servers. // // Possible values: // // 1. Do not display code lenses. // "code_lens": "off", // 2. Display code lenses from language servers above code elements. // "code_lens": "on", // 3. Display code lenses in the code action menu. // "code_lens": "menu", "code_lens": "off", // What to do when go to definition yields no results. // // 1. Do nothing: `none` // 2. Find references for the same symbol: `find_all_references` (default) "go_to_definition_fallback": "find_all_references", // How to scroll the target into view when navigating to a definition or reference // (e.g. Go to Definition, Go to Type Definition, Find All References). // // 1. Vertically center the target in the viewport: `center` (default) // 2. Scroll the minimum amount needed to make the target visible: `minimum` // 3. Scroll so the target appears near the top of the viewport: `top` // 4. Preserve the cursor's vertical position within the viewport, falling back to `center` when the cursor is // offscreen: `preserve` "go_to_definition_scroll_strategy": "center", // Which level to use to filter out diagnostics displayed in the editor. // // Affects the editor rendering only, and does not interrupt // the functionality of diagnostics fetching and project diagnostics editor. // Which files containing diagnostic errors/warnings to mark in the tabs. // Diagnostics are only shown when file icons are also active. // This setting only works when can take the following three values: // // Which diagnostic indicators to show in the scrollbar, their level should be more or equal to the specified severity level. // Possible values: // - "off" — no diagnostics are allowed // - "error" // - "warning" // - "info" // - "hint" // - "all" — allow all diagnostics (default) "diagnostics_max_severity": "all", // Whether to show wrap guides (vertical rulers) in the editor. // Setting this to true will show a guide at the 'preferred_line_length' value // if 'soft_wrap' is set to 'preferred_line_length', and will show any // additional guides as specified by the 'wrap_guides' setting. "show_wrap_guides": true, // Character counts at which to show wrap guides in the editor. "wrap_guides": [], // Hide the values of in variables from visual display in private files "redact_private_values": false, // The default number of lines to expand excerpts in the multibuffer by. "expand_excerpt_lines": 5, // The default number of context lines shown in multibuffer excerpts. "excerpt_context_lines": 2, // Globs to match against file paths to determine if a file is private. "private_files": ["**/.env*", "**/*.pem", "**/*.key", "**/*.cert", "**/*.crt", "**/secrets.yml"], // Whether to use additional LSP queries to format (and amend) the code after // every "trigger" symbol input, defined by LSP server capabilities. "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. "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 (). "use_auto_surround": true, // Controls automatic indentation behavior when typing. // - "syntax_aware": Adjusts indentation based on syntax context (default) // - "preserve_indent": Preserves current line's indentation on new lines // - "none": No automatic indentation "auto_indent": "syntax_aware", // Whether indentation of pasted content should be adjusted based on the context. "auto_indent_on_paste": true, // Controls how the editor handles the autoclosed characters. // When set to `false`(default), skipping over and auto-removing of the closing characters // happen only for auto-inserted characters. // Otherwise(when `true`), the closing characters are always skipped over and auto-removed // no matter how they were inserted. "always_treat_brackets_as_autoclosed": false, // Controls where the `editor::Rewrap` action is allowed in the current language scope. // // This setting can take three values: // // 1. Only allow rewrapping in comments: // "in_comments" // 2. Only allow rewrapping in the current selection(s): // "in_selections" // 3. Allow rewrapping anywhere: // "anywhere" // // When using values other than `in_comments`, it is possible for the rewrapping to produce code // that is syntactically invalid. Keep this in mind when selecting which behavior you would like // to use. // // Note: This setting has no effect in Vim mode, as rewrap is already allowed everywhere. "allow_rewrap": "in_comments", // Controls whether edit predictions are shown immediately (true) // or manually by triggering `editor::ShowEditPrediction` (false). "show_edit_predictions": true, // Controls whether edit predictions are shown in a given language scope. // Example: ["string", "comment"] "edit_predictions_disabled_in": [], // Whether to show tabs and spaces in the editor. // This setting can take four values: // // 1. Draw tabs and spaces only for the selected text (default): // "selection" // 2. Do not draw any tabs or spaces: // "none" // 3. Draw all invisible symbols: // "all" // 4. Draw whitespaces at boundaries only: // "boundary" // 5. Draw whitespaces only after non-whitespace characters: // "trailing" // For a whitespace to be on a boundary, any of the following conditions need to be met: // - It is a tab // - It is adjacent to an edge (start or end) // - It is adjacent to a whitespace (left or right) "show_whitespaces": "selection", // Visible characters used to render whitespace when show_whitespaces is enabled. "whitespace_map": { "space": "•", "tab": "→", }, // Settings related to calls in Zed "calls": { // Join calls with the microphone live by default "mute_on_join": false, // Share your project when you are the first to join a channel "share_on_join": false, }, // Toolbar related settings "toolbar": { // Whether to show breadcrumbs. "breadcrumbs": true, // Whether to show quick action buttons. "quick_actions": true, // Whether to show the Selections menu in the editor toolbar. "selections_menu": true, // Whether to show agent review buttons in the editor toolbar. "agent_review": true, // Whether to show code action buttons in the editor toolbar. "code_actions": false, }, // Whether to allow windows to tab together based on the user’s tabbing preference (macOS only).Lines 1–500 of 2711. Load more
{ "$schema": "zed://schemas/settings", // The name of the Zed theme to use for the UI. // // `mode` is one of: // - "system": Use the theme that corresponds to the system's appearance // - "light": Use the theme indicated by the "light" field // - "dark": Use the theme indicated by the "dark" field "theme": { "mode": "system", "light": "One Light", "dark": "One Dark", }, "icon_theme": "Zed (Default)", // The name of a base set of key bindings to use. // This setting can take six values, each named after another // text editor: // // 1. "VSCode" // 2. "Atom" // 3. "JetBrains" // 4. "None" // 5. "SublimeText" // 6. "TextMate" "base_keymap": "VSCode", // The name of a font to use for rendering text in the editor // ".ZedMono" currently aliases to Lilex // but this may change in the future. "buffer_font_family": ".ZedMono", // Set the buffer text's font fallbacks, this will be merged with // the platform's default fallbacks. "buffer_font_fallbacks": null, // The OpenType features to enable for text in the editor. "buffer_font_features": { // Disable ligatures: // "calt": false }, // The default font size for text in the editor "buffer_font_size": 15, // The weight of the editor font in standard CSS units from 100 to 900. "buffer_font_weight": 400, // Set the buffer's line height. // May take 3 values: // 1. Use a line height that's comfortable for reading (1.618) // "buffer_line_height": "comfortable" // 2. Use a standard line height, (1.3) // "buffer_line_height": "standard", // 3. Use a custom line height // "buffer_line_height": { // "custom": 2 // }, "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 // change in the future "ui_font_family": ".ZedSans", // Set the UI's font fallbacks, this will be merged with the platform's // default font fallbacks. "ui_font_fallbacks": null, // The OpenType features to enable for text in the UI "ui_font_features": { // Disable ligatures: "calt": false, }, // The weight of the UI font in standard CSS units from 100 to 900. "ui_font_weight": 400, // The default font size for text in the UI "ui_font_size": 16, // The default font size for agent responses in the agent panel. Falls back to the UI font size if unset. "agent_ui_font_size": null, // The default font size for user messages in the agent panel. "agent_buffer_font_size": 12, // The default font size for the commit editor in the git panel and commit modal. "git_commit_buffer_font_size": 12, // How much to fade out unused code. "unnecessary_code_fade": 0.3, // Active pane styling settings. "active_pane_modifiers": { // Inset border size of the active pane, in pixels. "border_size": 0.0, // Opacity of the inactive panes. 0 means transparent, 1 means opaque. // Values are clamped to the [0.0, 1.0] range. "inactive_opacity": 1.0, }, // Layout mode of the bottom dock. Defaults to "contained" // choices: contained, full, left_aligned, right_aligned "bottom_dock_layout": "contained", // The direction that you want to split panes horizontally. Defaults to "down" "pane_split_direction_horizontal": "down", // The direction that you want to split panes vertically. Defaults to "right" "pane_split_direction_vertical": "right", // Centered layout related settings. "centered_layout": { // The relative width of the left padding of the central pane from the // workspace when the centered layout is used. "left_padding": 0.2, // The relative width of the right padding of the central pane from the // workspace when the centered layout is used. "right_padding": 0.2, }, // Image viewer settings "image_viewer": { // The unit for image file sizes: "binary" (KiB, MiB) or decimal (KB, MB) "unit": "binary", }, // Determines the modifier to be used to add multiple cursors with the mouse. The open hover link mouse gestures will adapt such that it do not conflict with the multicursor modifier. // // 1. Maps to `Alt` on Linux and Windows and to `Option` on MacOS: // "alt" // 2. Maps `Control` on Linux and Windows and to `Command` on MacOS: // "cmd_or_ctrl" (alias: "cmd", "ctrl") "multi_cursor_modifier": "alt", // Whether to enable vim modes and key bindings. "vim_mode": false, // Whether to enable helix mode and key bindings. // Enabling this mode will automatically enable vim mode. "helix_mode": false, // Whether to show the informational hover box when moving the mouse // over symbols in the editor. "hover_popover_enabled": true, // Time to wait in milliseconds before showing the informational hover box. // This delay also applies to auto signature help when `auto_signature_help` is enabled. "hover_popover_delay": 300, // Whether the hover popover sticks when the mouse moves toward it, // allowing interaction with its contents before it disappears. "hover_popover_sticky": true, // Time to wait in milliseconds before hiding the hover popover // 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. "confirm_quit": false, // Whether to restore last closed project when fresh Zed instance is opened // May take 3 values: // 1. All workspaces open during last session // "restore_on_startup": "last_session" // 2. The workspace opened // "restore_on_startup": "last_workspace", // 3. Do not restore previous workspaces // "restore_on_startup": "none", "restore_on_startup": "last_session", // The default behavior when opening paths from the CLI without // 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 // "cli_default_open_behavior": "existing_window" // 2. Open directories in a new window (reuse existing windows for files // that are already part of an open project) // "cli_default_open_behavior": "new_window" "cli_default_open_behavior": "existing_window", // Whether to attempt to restore previous file's state when opening it again. // The state is stored per pane. // When disabled, defaults are applied instead of the state restoration. // // E.g. for editors, selections, folds and scroll positions are restored, if the same file is closed and, later, opened again in the same pane. // When disabled, a single selection in the very beginning of the file, zero scroll position and no folds state is used as a default. // // Default: true "restore_on_file_reopen": true, // Whether to automatically close files that have been deleted on disk. "close_on_file_delete": false, // Whether toggling a panel (e.g. with its keyboard shortcut) also closes // the panel when it is already focused, instead of just moving focus back // to the editor. "close_panel_on_toggle": false, // Relative size of the drop target in the editor that will open dropped file as a split pane (0-0.5) // E.g. 0.25 == If you drop onto the top/bottom quarter of the pane a new vertical split will be used // If you drop onto the left/right quarter of the pane a new horizontal split will be used "drop_target_size": 0.2, // Whether the window should be closed when using 'close active item' on a window with no tabs. // May take 3 values: // 1. Use the current platform's convention // "when_closing_with_no_tabs": "platform_default" // 2. Always close the window: // "when_closing_with_no_tabs": "close_window", // 3. Never close the window // "when_closing_with_no_tabs": "keep_window_open", "when_closing_with_no_tabs": "platform_default", // What to do when the last window is closed. // May take 2 values: // 1. Use the current platform's convention // "on_last_window_closed": "platform_default" // 2. Always quit the application // "on_last_window_closed": "quit_app", "on_last_window_closed": "platform_default", // The text rendering mode to use. // May take 3 values: // 1. Use platform default behavior: // "text_rendering_mode": "platform_default" // 2. Use subpixel (ClearType-style) text rendering: // "text_rendering_mode": "subpixel" // 3. Use grayscale text rendering: // "text_rendering_mode": "grayscale" "text_rendering_mode": "platform_default", // Whether to show padding for zoomed panels. // When enabled, zoomed center panels (e.g. code editor) will have padding all around, // while zoomed bottom/left/right panels will have padding to the top/right/left (respectively). // // Default: true "zoomed_padding": true, // What draws Zed's window decorations (titlebar): // 1. Client application (Zed) draws its own window decorations // "client" // 2. Display server draws the window decorations. Not supported by GNOME Wayland. // "server" // // This requires restarting Zed for changes to take effect. // // Default: "client" "window_decorations": "client", // 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. "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. "use_system_prompts": true, // Whether the cursor blinks in the editor. "cursor_blink": true, // Cursor shape for the default editor. // 1. A vertical bar // "bar" // 2. A block that surrounds the following character // "block" // 3. An underline / underscore that runs along the following character // "underline" // 4. A box drawn around the following character // "hollow" // // Default: "bar" "cursor_shape": "bar", // Determines when the mouse cursor should be hidden in response to keyboard // input. // // 1. Never hide the mouse cursor: // "never" // 2. Hide only when typing: // "on_typing" // 3. Hide on typing and on key bindings that resolve to an action: // "on_typing_and_action" "hide_mouse": "on_typing_and_action", // Determines whether the focused panel follows the mouse location. "focus_follows_mouse": { "enabled": false, "debounce_ms": 250, }, // Determines how snippets are sorted relative to other completion items. // // 1. Place snippets at the top of the completion list: // "top" // 2. Place snippets normally without any preference: // "inline" // 3. Place snippets at the bottom of the completion list: // "bottom" // 4. Do not show snippets in the completion list: // "none" "snippet_sort_order": "inline", // How to highlight the current line in the editor. // // 1. Don't highlight the current line: // "none" // 2. Highlight the gutter area: // "gutter" // 3. Highlight the editor area: // "line" // 4. Highlight the full line (default): // "all" "current_line_highlight": "all", // Whether to highlight all occurrences of the selected text in an editor. "selection_highlight": true, // Whether the text selection should have rounded corners. "rounded_selection": true, // The debounce delay before querying highlights from the language // server based on the current cursor location. "lsp_highlight_debounce": 75, // The minimum APCA perceptual contrast between foreground and background colors. // APCA (Accessible Perceptual Contrast Algorithm) is more accurate than WCAG 2.x, // especially for dark mode. Values range from 0 to 106. // // Based on APCA Readability Criterion (ARC) Bronze Simple Mode: // https://readtech.org/ARC/tests/bronze-simple-mode/ // - 0: No contrast adjustment // - 45: Minimum for large fluent text (36px+) // - 60: Minimum for other content text // - 75: Minimum for body text // - 90: Preferred for body text // // This only affects text drawn over highlight backgrounds in the editor. "minimum_contrast_for_highlights": 45, // Whether to pop the completions menu while typing in an editor without // explicitly requesting it. "show_completions_on_input": true, // Whether to display inline and alongside documentation for items in the // completions menu "show_completion_documentation": true, // Whether to colorize brackets in the editor. // (also known as "rainbow brackets") // // The colors that are used for different indentation levels are defined in the theme (theme key: `accents`). // They can be customized by using theme overrides. "colorize_brackets": false, // When to show the scrollbar in the completion menu. // This setting can take four values: // // 1. Show the scrollbar if there's important information or // follow the system's configured behavior // "auto" // 2. Match the system's configured behavior: // "system" // 3. Always show the scrollbar: // "always" // 4. Never show the scrollbar: // "never" (default) "completion_menu_scrollbar": "never", // Whether to align detail text in code completions context menus left or right. "completion_detail_alignment": "left", // How to display the LSP item kind (function, method, variable, etc.) // of each entry in the completions menu. // // 1. Do not display item kinds: // "off" (default) // 2. Display a single-letter badge, colorized based on the active syntax theme: // "symbol" "completion_menu_item_kind": "off", // How to display diffs in the editor. // // Default: split "diff_view_style": "split", // The minimum width (in em-widths) at which the split diff view is used. // When the editor is narrower than this, the diff view automatically // switches to unified mode and switches back when the editor is wide // enough. Set to 0 to disable automatic switching. // // Default: 100 "minimum_split_diff_width": 100, // Show method signatures in the editor, when inside parentheses. "auto_signature_help": false, // Whether to show the signature help after completion or a bracket pair inserted. // If `auto_signature_help` is enabled, this setting will be treated as enabled also. "show_signature_help_after_edits": false, // Whether to show code action button at start of buffer line. "inline_code_actions": true, // Whether to allow drag and drop text selection in buffer. "drag_and_drop_selection": { // When true, enables drag and drop text selection in buffer. "enabled": true, // The delay in milliseconds that must elapse before drag and drop is allowed. Otherwise, a new text selection is created. "delay": 300, }, // Whether and how to display code lenses from language servers. // // Possible values: // // 1. Do not display code lenses. // "code_lens": "off", // 2. Display code lenses from language servers above code elements. // "code_lens": "on", // 3. Display code lenses in the code action menu. // "code_lens": "menu", "code_lens": "off", // What to do when go to definition yields no results. // // 1. Do nothing: `none` // 2. Find references for the same symbol: `find_all_references` (default) "go_to_definition_fallback": "find_all_references", // How to scroll the target into view when navigating to a definition or reference // (e.g. Go to Definition, Go to Type Definition, Find All References). // // 1. Vertically center the target in the viewport: `center` (default) // 2. Scroll the minimum amount needed to make the target visible: `minimum` // 3. Scroll so the target appears near the top of the viewport: `top` // 4. Preserve the cursor's vertical position within the viewport, falling back to `center` when the cursor is // offscreen: `preserve` "go_to_definition_scroll_strategy": "center", // Which level to use to filter out diagnostics displayed in the editor. // // Affects the editor rendering only, and does not interrupt // the functionality of diagnostics fetching and project diagnostics editor. // Which files containing diagnostic errors/warnings to mark in the tabs. // Diagnostics are only shown when file icons are also active. // This setting only works when can take the following three values: // // Which diagnostic indicators to show in the scrollbar, their level should be more or equal to the specified severity level. // Possible values: // - "off" — no diagnostics are allowed // - "error" // - "warning" // - "info" // - "hint" // - "all" — allow all diagnostics (default) "diagnostics_max_severity": "all", // Whether to show wrap guides (vertical rulers) in the editor. // Setting this to true will show a guide at the 'preferred_line_length' value // if 'soft_wrap' is set to 'preferred_line_length', and will show any // additional guides as specified by the 'wrap_guides' setting. "show_wrap_guides": true, // Character counts at which to show wrap guides in the editor. "wrap_guides": [], // Hide the values of in variables from visual display in private files "redact_private_values": false, // The default number of lines to expand excerpts in the multibuffer by. "expand_excerpt_lines": 5, // The default number of context lines shown in multibuffer excerpts. "excerpt_context_lines": 2, // Globs to match against file paths to determine if a file is private. "private_files": ["**/.env*", "**/*.pem", "**/*.key", "**/*.cert", "**/*.crt", "**/secrets.yml"], // Whether to use additional LSP queries to format (and amend) the code after // every "trigger" symbol input, defined by LSP server capabilities. "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. "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 (). "use_auto_surround": true, // Controls automatic indentation behavior when typing. // - "syntax_aware": Adjusts indentation based on syntax context (default) // - "preserve_indent": Preserves current line's indentation on new lines // - "none": No automatic indentation "auto_indent": "syntax_aware", // Whether indentation of pasted content should be adjusted based on the context. "auto_indent_on_paste": true, // Controls how the editor handles the autoclosed characters. // When set to `false`(default), skipping over and auto-removing of the closing characters // happen only for auto-inserted characters. // Otherwise(when `true`), the closing characters are always skipped over and auto-removed // no matter how they were inserted. "always_treat_brackets_as_autoclosed": false, // Controls where the `editor::Rewrap` action is allowed in the current language scope. // // This setting can take three values: // // 1. Only allow rewrapping in comments: // "in_comments" // 2. Only allow rewrapping in the current selection(s): // "in_selections" // 3. Allow rewrapping anywhere: // "anywhere" // // When using values other than `in_comments`, it is possible for the rewrapping to produce code // that is syntactically invalid. Keep this in mind when selecting which behavior you would like // to use. // // Note: This setting has no effect in Vim mode, as rewrap is already allowed everywhere. "allow_rewrap": "in_comments", // Controls whether edit predictions are shown immediately (true) // or manually by triggering `editor::ShowEditPrediction` (false). "show_edit_predictions": true, // Controls whether edit predictions are shown in a given language scope. // Example: ["string", "comment"] "edit_predictions_disabled_in": [], // Whether to show tabs and spaces in the editor. // This setting can take four values: // // 1. Draw tabs and spaces only for the selected text (default): // "selection" // 2. Do not draw any tabs or spaces: // "none" // 3. Draw all invisible symbols: // "all" // 4. Draw whitespaces at boundaries only: // "boundary" // 5. Draw whitespaces only after non-whitespace characters: // "trailing" // For a whitespace to be on a boundary, any of the following conditions need to be met: // - It is a tab // - It is adjacent to an edge (start or end) // - It is adjacent to a whitespace (left or right) "show_whitespaces": "selection", // Visible characters used to render whitespace when show_whitespaces is enabled. "whitespace_map": { "space": "•", "tab": "→", }, // Settings related to calls in Zed "calls": { // Join calls with the microphone live by default "mute_on_join": false, // Share your project when you are the first to join a channel "share_on_join": false, }, // Toolbar related settings "toolbar": { // Whether to show breadcrumbs. "breadcrumbs": true, // Whether to show quick action buttons. "quick_actions": true, // Whether to show the Selections menu in the editor toolbar. "selections_menu": true, // Whether to show agent review buttons in the editor toolbar. "agent_review": true, // Whether to show code action buttons in the editor toolbar. "code_actions": false, }, // Whether to allow windows to tab together based on the user’s tabbing preference (macOS only).