Window Size and Position
Initial Window Size
Both
window-width and window-height must be set to take effect. If only one is set, it’s ignored.Can I set window size in pixels?
Can I set window size in pixels?
Not currently. Window size is specified in terminal grid cells. Pixel-based sizing may be added in the future.
What's the minimum window size?
What's the minimum window size?
Windows smaller than 10 columns by 4 rows are not allowed.
Window Position
- macOS
- Linux/GTK
Position is relative to the top-left corner of the visible screen area (below the menu bar if visible).✅ Supported
Both
window-position-x and window-position-y must be set to take effect.Maximize and Fullscreen
These settings apply to all new windows, not just the first one.
Window Decorations
Control window chrome (titlebar, borders, etc.):- macOS
- Linux
Only
none and auto/true are meaningful:none: Removes titlebar and borders, disables tabsauto/true: Standard macOS window
macos-titlebar-style = hidden to hide titlebar while keeping borders.Toggle decorations at runtime with the
toggle_window_decorations keybind action.Window Padding
Horizontal and Vertical Padding
Padding changes at runtime only affect new terminals (windows, tabs, splits).
Padding Balance
Padding Color
When does 'extend' disable?
When does 'extend' disable?
On primary screen applications (not alternate screen like Vim), vertical extension is disabled if:
- Nearest row has default background color cells
- Nearest row is a prompt (requires shell integration)
- Nearest row contains powerline characters
Window Behavior
VSync (macOS)
Changing
window-vsync at runtime only affects new terminals.Step Resize (macOS)
Working Directory Inheritance
Inheritance requires shell integration. Without it, the default
working-directory is used.Font Size Inheritance
false, new windows use the configured font-size.
Window Title
Fixed Title
When set, Ghostty ignores all title change escape sequences from programs.
How do I get the default title back after changing it?
How do I get the default title back after changing it?
Reload config with
title unset or removed. The next title change escape sequence will be honored, but you may need to restart programs (like Neovim) to trigger it.Window Subtitle (GTK)
GTK only (since 1.1.0)
Title Font (macOS)
Tabs
Tab Visibility (GTK)
Currently only supported on Linux (GTK).
Tab Position
Splits
Split Appearance
Preserve Zoom
Control zoom behavior when navigating splits:By default, any operation changing focus or layout unzooms. With
navigation, the zoomed state moves to the newly focused split.Available since 1.3.0.Resize Overlay
When to Show
Overlay Position
Overlay Duration
Window State
Save and Restore (macOS)
What does 'default' do?
What does 'default' do?
On macOS:
- Saves state if app is forcibly terminated
- Saves state if configured systemwide in Settings.app
Window Theme
On macOS with
macos-titlebar-style = tabs or transparent, window theme is automatically determined by background luminosity.Titlebar Colors (GTK)
Linux/GTK-Specific
Application Class
X11 Instance Name
Only affects X11. No effect on Wayland.
macOS-Specific
Titlebar Style
What are the differences between titlebar styles?
What are the differences between titlebar styles?
- native: Standard macOS titlebar matching window theme
- transparent: Native but transparent, shows background color
- tabs: Custom titlebar integrating tab bar, matches terminal background
- hidden: Removes titlebar but keeps rounded corners and borders
hidden style: Window can’t be dragged by titlebar. Use
option+click on resizable frame areas to drag (standard macOS behavior).Window Buttons (macOS)
No effect when
window-decoration = none or macos-titlebar-style = hidden (buttons always hidden).Changing at runtime only affects new windows. Since 1.2.0.Proxy Icon (macOS)
Changes at runtime apply to all windows, but only take effect after their working directory changes again (e.g.,
cd to another directory).Window Shadow (macOS)
Non-Native Fullscreen (macOS)
What's the difference between native and non-native?
What's the difference between native and non-native?
- Native: Uses macOS spaces with animations (slower)
- Non-native: Instant fullscreen without animations (faster)
padded-notch prevents window from being obscured by the notch on applicable devices.Initial Window
Resources
Appearance
Colors and visual customization
Terminal Behavior
Terminal-specific settings
Keybindings
Window and split navigation keybinds
Shell Integration
Working directory inheritance