乐于分享
好东西不私藏

Ghostty–命令行终端使用的神器(五)

Ghostty–命令行终端使用的神器(五)

新手学习 AI应用 相关知识,更新技能与时代为舞,希望能一起入门不断进步 [碱基比特]

4.8 Key Table

在 Ghostty 里,Key Tables(按键表本质上是一个“按键映射的分组系统(类似多套键盘配置档案)

Key Table = 一整套“键盘快捷键方案”,可以按场景切换

这个设计的逻辑是如果只有一套keybind:

  • Vim 模式需要一套快捷键
  • Shell 模式需要另一套

Ghostty将键盘映射拆成多个”表””

Key Table
用途
default
默认终端
vim_mode
模拟 Vim
copy_mode
复制/选择文本
search_mode
搜索历史

4.9 Key-remap

在 Ghostty 里“重新定义 Ctrl / Alt / Cmd 这些修饰键的角色”,但不影响系统本身

key-remap = 在 Ghostty 内部“换按键身份”,但不改系统键盘布局

# 在 Ghostty 里,Ctrl 键 = Super(Cmd / Win)
key-remap = ctrl=super
  • 单向替换 ctrl=super,只能是ctrl=super
  • 不传递(non-transitive)

4.10 Windows设置

  1. windows-padding-x

控制终端内容和窗口左右边框之间的空白距离,单位是points(pt),主要是提升阅读体验,文字不贴边更舒服

单位
特点
px
固定大小
pt
跟屏幕缩放走
# 左右都一样
window-padding-x = 10

# 左右不同
window-padding-x = 2,4
  1. windows-padding-y

window-padding-y = 控制终端内容和窗口上下边框之间的空白距离

用法是相同的和x,控制的上下

  1. window-padding-balance

window-padding-balance

它的目的是让终端“空白边缘”在四周分布的更加均匀,终端是“网格(grid)渲染”的,会剩下一点点“多余空间”(subpixel remainder)

window-padding = true
  1. window-padding-color

这个选项决定了当终端窗口大小改变,或者内容没有填满整个窗口时,多出来的空白区域(内边距)显示什么颜色。

  • “background” (默认): 使用你在配置中设置的 background 颜色。这是最稳妥的选择,通常与终端背景色一致
  • “extend”: 智能延伸。尝试延伸最近一行网格单元的背景色到空白处
  • “extend-always”: 强制延伸。同 “extend”,但忽略所有上述的智能启发式规则。无论当前行是什么内容(即使是提示符或默认色),都强制将背景色延伸到窗口边缘。
  1. window_vsync (垂直同步)

选项控制终端渲染是否与屏幕的刷新率同步

  • true (默认): 开启垂直同步.
    • 消除画面撕裂(Tearing),重绘与屏幕刷新对齐,视觉更流畅
  • false: 关闭垂直同步
    • 最大化重绘频率,理论上能降低输入延迟,适合对延迟极度敏感的竞技场景
  1. Working Directory Inheritance

新建窗口时,是否继承上一个聚焦窗口的当前路径,你正在 /project/src 目录下工作,按下快捷键打开一个新窗口

  • true: 新窗口直接打开在 /project/src
  • false: 新窗口打开在默认目录(通常是用户主目录 ~ 或配置的 working_directory)
  1. tab_inherit_working_directory

新建标签页 (Tab) 时,是否继承上一个聚焦标签页的当前路径,你在 /var/log 查看日志,想开个新标签页跑个命令

  • true: 新标签页直接在 /var/log
  • false: 新标签页回到主目录 ~
  1. split_inherit_working_directory

新建分屏 (Split Pane) 时,是否继承上一个聚焦分屏的当前路径,你将屏幕分为左右两半,左边在编译代码 (/build),右边在编辑文件。如果你在左边按快捷键再分出一个屏

  • true: 新分屏也在 /build
  • false: 新分屏回到主目录
  1. window-decoration

Ghostty(一个现代化的终端模拟器)中关于 窗口装饰 (Window Decorations) 的配置选项 window-decoration.窗口装饰指的是操作系统为窗口提供的标题栏、边框、最小化/最大化/关闭按钮等元素

含义
适用场景/效果
auto

 (默认)
自动决策。根据当前的操作系统和桌面环境,自动选择“客户端装饰”或“服务端装饰”。
推荐大多数用户。能让 Ghostty 在不同系统上看起来最“原生”。
(等同于 true)
none
完全禁用。不显示标题栏、边框等任何装饰。
适合追求极致极简主义、使用平铺式窗口管理器 (如 i3, sway) 或想要自定义全部 UI 的用户。
macOS 注意:设为 none 会强制禁用标签页 (Tabs),因为 macOS 系统要求标签页必须依附于标题栏。
(等同于 false)
client
优先客户端装饰 (CSD)。由 Ghostty 应用程序自己绘制标题栏和边框。
适合想要统一视觉风格,或者在某些 Linux 桌面环境下解决服务端装饰渲染问题的用户。
(v1.1.0+)
server
优先服务端装饰 (SSD)。由窗口管理器/合成器绘制标题栏和边框。
仅限 Linux (GTK, X11, 或支持特定协议的 Wayland 合成器,如 KDE Plasma)。
如果环境不支持,会自动回退到客户端装饰。
(v1.1.0+)
  1. 窗口初始大小

控制新窗口打开时的默认尺寸。单位:终端网格单元格 (Grid Cells),即“列数 x 行数”,而不是像素

必须同时设置 window-width 和 window-height。如果只设其中一个,会被忽略

窗口初始位置 (window-position-x, window-position-y), 控制新窗口出现在屏幕上的坐标

  1. window-save-state

控制 Ghostty 退出时是否保存当前的窗口布局(位置、大小、标签页、分屏、工作目录等),以便下次启动时恢复。

  • default (默认):遵循系统默认行为。macOS:仅在应用被强制终止(如崩溃、杀进程)或系统在“设置”中配置了全局保存时才保存。正常点击关闭通常不保存。
  • never:从不保存状态。每次启动都是全新的空白窗口。
  • always:每次退出(无论是正常关闭还是强制终止)都保存状态。下次启动时完全恢复现场。
  1. resize-overlay

当你拖动窗口边缘改变终端大小时,屏幕上会短暂显示一个浮层(Overlay),告诉你当前的终端尺寸(例如 120×45)。这三个选项控制这个浮层何时出现、出现在哪以及停留多久

  • resize-overlay:控制调整大小提示框的触发时机

    • always (默认): 总是显示
    • never: 从不显示
    • after-first (默认): 首次创建时不显示,后续调整时显示
  • resize-overlay-duration (显示时长)

  1. focus-follows-mouse

这个配置项 focus-follows-mouse 控制的是 在分屏(Split Panes)模式下,鼠标悬停是否自动切换焦点

当你的终端窗口被分割成多个部分(例如左右分屏或上下分屏)时:

  • true (开启):只要你的鼠标光标移动并悬停在某个分屏区域上,该分屏就会立即获得焦点(变成活动状态,可以接收键盘输入)。
  • false (默认/关闭):鼠标悬停不会改变焦点。你必须点击某个分屏,它才会获得焦点。
本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » Ghostty–命令行终端使用的神器(五)

猜你喜欢

  • 暂无文章