# vim: set filetype=toml :
# ============================================
# Ghostty Terminal Configuration
# ============================================
# File: ~/.config/ghostty/config
# Reload: Cmd+Shift+,
# View options: ghostty +show-config --default --docs

# --- Typography ---
font-family = "JetBrainsMono Nerd Font Mono"
font-size = 13
font-thicken = true
adjust-cell-height = 2

# --- Theme and Colors ---
theme = "Catppuccin Mocha"

# --- Window and Appearance ---
background-opacity = 0.9
background-blur-radius = 20
macos-titlebar-style = transparent
window-padding-x = 10
window-padding-y = 8
window-save-state = always
window-theme = auto

# --- Cursor ---
cursor-style = bar
cursor-style-blink = true
cursor-opacity = 0.8

# --- Mouse ---
mouse-hide-while-typing = true
copy-on-select = clipboard

# --- Quick Terminal (Quake-style dropdown) ---
quick-terminal-position = top
quick-terminal-screen = mouse
quick-terminal-autohide = true
quick-terminal-animation-duration = 0.15

# --- Security ---
clipboard-paste-protection = true
clipboard-paste-bracketed-safe = true

# --- Shell Integration ---
shell-integration = detect

# --- Keybindings ---
keybind = cmd+t=new_tab
keybind = cmd+alt+h=previous_tab
keybind = cmd+alt+l=next_tab
keybind = cmd+w=close_surface

keybind = cmd+d=new_split:right
keybind = cmd+shift+d=new_split:down
keybind = cmd+shift+h=goto_split:left
keybind = cmd+shift+j=goto_split:bottom
keybind = cmd+shift+k=goto_split:top
keybind = cmd+shift+l=goto_split:right

keybind = global:cmd+ctrl+grave_accent=toggle_quick_terminal
keybind = cmd+shift+e=equalize_splits
keybind = cmd+shift+f=toggle_split_zoom
keybind = cmd+shift+comma=reload_config

keybind = cmd+plus=increase_font_size:1
keybind = cmd+minus=decrease_font_size:1
keybind = cmd+zero=reset_font_size

# --- Performance ---
scrollback-limit = 25000000

confirm-close-surface = false
