Ctrl+, or Cmd+,) or per-project in .zed/settings.json.
Appearance
Theme
Controls the application theme.
mode:"system","light", or"dark"light: Theme name to use in light modedark: Theme name to use in dark mode
The icon theme to use for file and folder icons in the project panel.
Fonts
Font family for editor text.
.ZedMono currently aliases to Lilex.Font size for editor text in pixels.
Font weight for editor text (100-900). Standard CSS units.
OpenType font features for editor text.
Fallback fonts for editor text. Merged with platform defaults.
Line height for editor text.
"comfortable": 1.618 ratio for comfortable reading"standard": 1.3 ratio{"custom": 2}: Custom line height value
Font family for UI elements.
.ZedSans aliases to IBM Plex Sans. Use .SystemUIFont for system font.Font size for UI elements in pixels.
Font weight for UI elements (100-900).
OpenType font features for UI text.
Editor
Cursor and Selection
Whether the cursor blinks in the editor.
Shape of the cursor in the editor.
"bar": Vertical bar"block": Block surrounding the character"underline": Underscore along the character"hollow": Box around the character
When to hide the mouse cursor in an editor.
"never": Never hide"on_typing": Hide only when typing"on_typing_and_movement": Hide on typing and cursor movement
How to highlight the current line.
"none": No highlight"gutter": Highlight gutter area"line": Highlight editor area"all": Highlight full line
Whether to highlight all occurrences of selected text.
Whether text selections have rounded corners.
Code Intelligence
Show completions menu automatically while typing.
Display inline and alongside documentation in completions menu.
Show method signatures automatically when inside parentheses.
Show signature help after completing or inserting bracket pairs.
Show code action button at start of buffer lines.
Show informational hover box when moving mouse over symbols.
Delay in milliseconds before showing hover popover.
Inlay hint configuration.
Editing Behavior
Automatically add matching closing characters when typing opening parentheses, brackets, braces, or quotes.
Automatically surround selected text when typing opening parentheses, brackets, braces, or quotes.
Adjust indentation based on context while typing.
Adjust indentation of pasted content based on context.
When true, skip over and auto-remove closing characters regardless of how they were inserted.
Configure drag and drop text selection.
enabled: Enable drag and dropdelay: Delay in milliseconds before drag is allowed
Use LSP on-type formatting after trigger characters.
Display
When to show tabs and spaces in the editor.
"selection": Show only in selected text"none": Never show"all": Always show"boundary": Show only at boundaries"trailing": Show only trailing whitespace
Characters used to render whitespace.
Show vertical rulers at specified character counts.
Character counts at which to show wrap guides.
Enable rainbow bracket coloring. Colors are defined by theme’s
accents.How to sort snippets relative to other completions.
"top": Place at top"inline": Normal placement"bottom": Place at bottom"none": Don’t show in completions
File Management
When to automatically save edited buffers.
"off": Never auto-save"on_window_change": Save when focus leaves window"on_focus_change": Save when focus leaves buffer{"after_delay": {"milliseconds": 500}}: Save after idle delay
Whether to format buffers before saving.
"on": Always format"off": Never format
How to format buffers.
"auto": Use Prettier if applicable, fallback to LSP"language_server": Use current language server{"language_server": {"name": "ruff"}}: Use specific LSP{"external": {"command": "prettier", "arguments": ["--stdin-filepath", "{buffer_path}"]}}: Use external command"prettier": Use Prettier integration{"code_action": "source.fixAll.eslint"}: Use code action[...]: Array of format steps to apply in order
Remove trailing whitespace from lines before saving.
Ensure file ends with a single newline when saving.
Start new line with comment when previous line is a comment.
Continue markdown lists when pressing enter.
Indent list items when pressing tab after a list marker.
Layout and Navigation
What to restore when starting Glass.
"last_session": Restore all workspaces from last session"last_workspace": Restore last workspace"none": Start fresh
Restore file state (selections, folds, scroll) when reopening files.
Direction for horizontal pane splits.
Direction for vertical pane splits.
Centered layout padding configuration.
Layout mode for bottom dock.
"contained": Contained within panes"full": Full width"left_aligned": Aligned left"right_aligned": Aligned right
Scrollbar
Scrollbar configuration.
Minimap
Minimap configuration.
show:"never","auto", or"always"display_in:"active_editor"or"all_editors"
Gutter
Gutter configuration.
Indent guide configuration.
Search
Default search options.
Whether search results wrap around file ends.
When to populate search with text under cursor.
"always": Always use word under cursor"selection": Only when text is selected"never": Never populate
Automatically adjust case sensitivity based on query (uppercase = case-sensitive).
Terminal
Terminal configuration. See detailed options:
Git Integration
Git integration settings.
Project Panel
Project panel configuration.
Language Servers
Use language servers for code intelligence.
Language servers to use for all languages. Typically customized per-language.
LSP-specific settings keyed by server name.
Common language server settings.
Agent (AI Assistant)
Agent panel configuration. Extensive options available:
Edit Predictions
Edit prediction (code completion) settings.
mode:"eager"(show when no LSP completions) or"subtle"(show when holding modifier)
Show edit predictions immediately (true) or manually (false).
File Scanning
Files/globs excluded from file scans, searches, and project tree.
Files/globs to include even when ignored by git.
Globs for files considered “hidden” (toggleable in project panel).
Tabs
Tab bar settings.
Individual tab settings.
Preview tabs configuration (temporary tabs that close automatically).
Per-Language Settings
Language-specific settings override global settings.
Indentation
Use tab characters instead of spaces for indentation.
Number of columns a tab character occupies.
Column at which to soft-wrap lines (when soft-wrap is enabled).
How to soft-wrap long lines.
"none": No wrapping"editor_width": Wrap at editor width"preferred_line_length": Wrap at preferred line length"bounded": Wrap at smaller of editor width or preferred line length
Advanced
Telemetry settings.
Automatically update Glass (may be ignored on Linux with package managers).
Base keybinding set to use.Options:
"VSCode", "Atom", "JetBrains", "SublimeText", "TextMate", "None"Node.js configuration for language servers.
How to load direnv configuration.
"direct": Usedirenv export json"shell_hook": Use shell hook (POSIX shells and fish)"disabled": Don’t load direnv