Ghostty 的配置文件允许用户自定义终端的各种行为和外观。以下是对配置文件的详细说明,涵盖了字体、样式、颜色、窗口行为、快捷键绑定等多个方面:
字体配置
font-family: 设置主要的字体系列。可以重复使用此配置来指定当主字体中没有请求的码位时使用的后备字体。font-family-bold, font-family-italic, font-family-bold-italic: 分别设置粗体、斜体和粗斜体字体的字体系列。如果未设置样式,则将搜索常规样式(font-family)的样式变体。如果找不到样式变体,Ghostty 将使用常规样式。font-style: 设置每个请求的终端字体样式的命名字体样式。例如,“Iosevka Heavy"的样式为“Heavy”。font-style-bold, font-style-italic, font-style-bold-italic: 设置粗体、斜体和粗斜体的字体样式。可以设置为false以禁用字体样式,如果程序请求禁用的字体样式,则会使用常规字体样式。font-synthetic-style: 控制 Ghostty 是否应合成样式。可以设置为false或true来禁用或启用所有合成样式。也可以使用no-bold, no-italic和no-bold-italic来禁用特定样式。默认情况下,启用合成样式。font-feature: 应用字体特性。可以重复使用此配置来启用多个字体特性。可以用-作为前缀来禁用字体特性.font-size: 以磅为单位设置字体大小。font-variation, font-variation-bold, font-variation-italic, font-variation-bold-italic: 为可变字体设置一个或多个字体变化值。可变字体包含可配置的轴,如粗细、倾斜等。font-codepoint-map: 强制一个或一系列 Unicode 码位映射到特定的字体。font-thicken: 如果支持,则用更粗的笔画绘制字体。目前仅在 macOS 上支持。字体调整
adjust-cell-width: 调整单元格宽度。adjust-cell-height: 调整单元格高度。字体将垂直居中于单元格中。adjust-font-baseline: 设置从单元格底部到文本基线的距离。adjust-underline-position: 设置从单元格顶部到下划线顶部的距离。adjust-underline-thickness: 设置下划线的粗细。adjust-strikethrough-position: 设置从单元格顶部到删除线顶部的距离。adjust-strikethrough-thickness: 设置删除线的粗细。adjust-overline-position: 设置从单元格顶部到上划线顶部的距离。adjust-overline-thickness: 设置上划线的粗细。adjust-cursor-thickness: 设置光标的粗细。adjust-cursor-height: 设置光标的高度。adjust-box-thickness: 设置框图字符的粗细。grapheme-width-method: 设置用于计算字形簇单元格宽度的方法。有效值为unicode和legacy。freetype-load-flags: 设置 FreeType 加载标志。仅适用于使用 FreeType 的 Ghostty 构建,通常仅适用于 Linux 构建。主题和颜色
theme: 设置使用的主题。可以是内置主题名称、自定义主题名称或自定义主题文件的绝对路径。可以为浅色和深色模式指定不同的主题,格式为light:theme-name,dark:theme-name。background: 设置窗口的背景颜色。foreground: 设置窗口的前景色。selection-foreground, selection-background: 设置选中文本的前景色和背景色。selection-invert-fg-bg: 交换选择的单元格的前景色和背景色。minimum-contrast: 设置前景色和背景色之间的最小对比度。palette: 设置 256 种颜色的调色板。格式为N=HEXCODE,其中N为 0 到 255。cursor-color: 设置光标的颜色。cursor-invert-fg-bg: 交换光标下的单元格的前景色和背景色。cursor-opacity: 设置光标的不透明度。cursor-style: 设置光标的样式。有效值为 block, bar, underline, 和 block_hollow。cursor-style-blink: 设置光标的默认闪烁状态。cursor-text: 设置光标下文本的颜色。鼠标和剪贴板
cursor-click-to-move: 启用通过 alt+click 或 option+click 在提示符处移动光标的功能。mouse-hide-while-typing: 在键入时立即隐藏鼠标。mouse-shift-capture: 确定运行的程序是否可以检测到鼠标单击时按下的 shift 键。有效值为true、false、always和never。mouse-scroll-multiplier: 设置鼠标滚轮的滚动距离的倍数。clipboard-read: 控制是否允许程序读取系统剪贴板。有效值为 ask、allow 和 deny。clipboard-write: 控制是否允许程序写入系统剪贴板。有效值为 ask、allow 和 deny。clipboard-trim-trailing-spaces: 裁剪复制到剪贴板的数据中的尾随空格。clipboard-paste-protection: 在粘贴看起来不安全的文本之前需要确认。clipboard-paste-bracketed-safe: 如果为 true,则带括号的粘贴被认为是安全的。copy-on-select: 设置是否自动将选定的文本复制到剪贴板。click-repeat-interval: 设置两次单击之间的时间间隔,以考虑单击重复。窗口和界面
background-opacity: 设置背景的不透明度。background-blur-radius: 当background-opacity小于 1 时,启用背景模糊。unfocused-split-opacity: 设置未聚焦拆分的不透明度。unfocused-split-fill: 设置用于暗化未聚焦拆分的颜色。window-padding-x: 设置水平窗口填充。window-padding-y: 设置垂直窗口填充。window-padding-balance: 设置是否平衡额外的填充。window-padding-color: 设置填充区域的颜色。window-vsync: 设置是否与屏幕刷新率同步渲染。window-inherit-working-directory: 设置新窗口和标签是否继承之前窗口的工作目录。window-inherit-font-size: 设置新窗口和标签是否继承之前窗口的字体大小。window-decoration: 设置窗口是否有本机装饰,例如标题栏和边框。window-title-font-family: 设置用于窗口和选项卡标题的字体。window-theme: 设置窗口的主题。有效值为 auto, system, light, dark, 和 ghostty。window-colorspace: 设置终端窗口的颜色空间。window-height, window-width: 设置初始窗口大小。window-save-state: 设置是否启用保存和恢复窗口状态。有效值为default, never和always。window-step-resize: 设置是否以单元格大小的离散增量调整窗口大小。window-new-tab-position: 设置新选项卡的创建位置。有效值为 current 和 end。resize-overlay: 设置何时显示调整大小的覆盖。有效值为 always、never和 after-first。resize-overlay-position: 设置调整大小覆盖的位置。resize-overlay-duration: 设置调整大小覆盖在屏幕上可见的时间。focus-follows-mouse: 设置焦点是否跟随鼠标。命令和启动
command: 设置要运行的命令,通常是 shell。initial-command: 与command相同,但仅适用于 Ghostty 启动时创建的第一个终端。wait-after-command: 设置在命令退出后是否保持终端打开。abnormal-command-exit-runtime: 设置进程退出被认为是异常的最小运行时。scrollback-limit: 设置回滚缓冲区的大小(以字节为单位)。link-url: 启用 URL 匹配。fullscreen: 设置是否在新窗口中全屏启动。title: 设置窗口的标题。class: 设置应用程序类值。x11-instance-name: 设置 X11 实例名称。working-directory: 设置启动命令后要更改的目录。键绑定
keybind: 设置键盘快捷键。格式为 trigger=action。触发器可以是单个键或带修饰键的组合,也可以是按键序列。动作可以是内置操作或发送文本/转义序列等。可以使用 all:, global:, unconsumed: 前缀来更改键绑定的行为。keybind=clear:清除所有已设置的键盘快捷键。其他
image-storage-limit: 设置每个终端屏幕可用于图像数据的总字节数。config-file: 设置要读取的其他配置文件。config-default-files: 设置是否加载默认的配置文件路径。confirm-close-surface: 设置是否在关闭之前确认关闭。quit-after-last-window-closed: 设置在最后一个窗口关闭后是否退出。quit-after-last-window-closed-delay: 设置在最后一个窗口关闭后 Ghostty 保持运行的时间。initial-window: 设置是否在 Ghostty 运行时创建初始窗口。quick-terminal-position: 设置快速终端窗口的位置。quick-terminal-screen: 设置快速终端应显示的屏幕。quick-terminal-animation-duration: 设置快速终端进入和退出动画的持续时间。quick-terminal-autohide: 设置当焦点转移到其他窗口时是否自动隐藏快速终端。shell-integration: 设置是否启用 shell 集成自动注入。有效值为 none, detect, bash, elvish, fish, 和 zsh。shell-integration-features: 设置启用 shell 集成后要启用的 shell 集成功能。有效值为 cursor, sudo和 title。osc-color-report-format: 设置 OSC 序列的报告格式。有效值为 none、8-bit 和 16-bit。vt-kam-allowed: 设置是否允许在终端中使用“KAM”模式(ANSI 模式 2)。custom-shader: 设置自定义着色器文件路径。custom-shader-animation: 设置自定义着色器动画循环是否在终端聚焦时运行。有效值为 true, false和 always。macos-non-native-fullscreen: 设置 macOS 全屏模式是否使用非本机全屏。有效值为 visible-menu, true和 false。macos-titlebar-style: 设置 macOS 标题栏的样式。有效值为native、transparent、tabs和hidden。macos-titlebar-proxy-icon: 设置 macOS 标题栏中的代理图标是否可见。有效值为visible和hidden。macos-option-as-alt: 设置 macOS 上的 Option 键是否应视为 Alt 键。macos-window-shadow: 设置是否启用 macOS 窗口阴影。macos-auto-secure-input: 设置在检测到密码提示时,是否自动启用“安全输入”功能。macos-secure-input-indication: 设置是否在启用安全输入时显示图形指示。macos-icon: 设置 macOS 应用程序图标。有效值为 official 和 custom-style。macos-icon-frame: 设置 macOS 应用图标的框架材质。macos-icon-ghost-color: 设置 macOS 应用图标中幽灵的颜色。macos-icon-screen-color: 设置 macOS 应用图标中屏幕的颜色。linux-cgroup: 设置是否将每个表面放入专用的 Linux cgroup 中。有效值为 never, always 和 single-instance。linux-cgroup-memory-limit: 设置任何单个终端进程的内存限制(以字节为单位)。linux-cgroup-processes-limit: 设置任何单个终端进程的进程数限制。linux-cgroup-hard-fail: 设置是否允许 cgroup 初始化失败。gtk-single-instance: 设置 GTK 应用程序是否以单实例模式运行。有效值为desktop,true和false。gtk-titlebar: 设置是否显示完整的 GTK 标题栏。gtk-tabs-location: 设置 GTK 选项卡栏将粘附在屏幕的哪一侧。adw-toolbar-style: 设置在使用 Adwaita 选项卡栏时,顶部和底部栏的外观。有效值为 flat、raised 和 raised-border。gtk-wide-tabs: 设置 GTK 选项卡是否为“宽”选项卡。gtk-adwaita: 设置是否启用 Adwaita 主题支持。desktop-notifications: 设置终端中运行的应用程序是否可以使用某些转义序列显示桌面通知。bold-is-bright: 设置粗体文本是否使用亮色调色板。term: 设置 TERM 环境变量。enquiry-response: 设置当收到来自正在运行的命令的 ENQ (0x05) 时要发送的字符串。auto-update: 设置 Ghostty 的自动更新功能。有效值为 off、check 和 download。auto-update-channel: 设置自动更新的发布渠道。有效值为 stable 和 tip。