
WezTerm 配置最简指南5 步把默认终端调成自己的样子【免费下载链接】weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust项目地址: https://gitcode.com/GitHub_Trending/we/weztermWezTerm 是一款 GPU 加速的跨平台终端模拟器和多路复用器用 Rust 编写所有定制都集中在一个 Lua 配置文件里。这篇 WezTerm 配置教程面向刚接触 WezTerm 的新手和想进一步定制配置的普通用户从最小可用配置开始依次完成外观、快捷键、跨平台适配和排错读完你会得到一个能直接用的.wezterm.lua。 先跑起来创建最小 Lua 配置文件在用户主目录Windows 上是%USERPROFILE%新建.wezterm.lua写入下面 6 行。config_builder()负责构建配置最后必须return给 WezTerm。local wezterm require wezterm local config wezterm.config_builder() config.initial_cols 120 config.initial_rows 28 return config保存后重启 WezTerm新窗口就会按 120 列 × 28 行启动。注意一个细节如果配置文件解析失败WezTerm 会显示错误并回退到默认配置所以看到配置没生效时先回终端顶部找报错。配置文件查找逻辑的完整说明见 官方配置文档。 三行代码换掉默认外观接下来改配色、字体和窗口透明度。color_scheme只接受内置方案名WezTerm 自带几十套Catppuccin Mocha是其中偏柔和的暗色方案font_with_fallback按顺序回退字体第一个字体缺的字形由后面的补上——WezTerm 内置了 JetBrains Mono 和 Noto Color Emoji仓库 assets/fonts/ 下就能看到字体文件所以下面这组直接可用。config.color_scheme Catppuccin Mocha config.font wezterm.font_with_fallback({ JetBrains Mono, Noto Color Emoji }) config.font_size 13.0 config.window_background_opacity 0.95前三行负责换脸最后一行把窗口背景压到 95% 不透明配合系统合成器的模糊能出半透明效果。更多内置方案名可以在 color_scheme 文档 和 font_with_fallback 说明 里查。顺手加个状态栏状态栏用事件钩子实现下面这个例子每帧在窗口右侧显示当前时间是了解wezterm.on事件机制的最小样例wezterm.on(update-status, function(window, pane) window:set_right_status(wezterm.format({ { Foreground { Color #ffffff } }, { Text wezterm.strftime(%H:%M:%S) }, })) end)wezterm.strftime支持常见的时间格式符后面可以扩展成显示当前目录、CPU 占用等。⌨️ 把窗格操作练成肌肉记忆WezTerm 自带的默认快捷键已经能覆盖分屏和切换但如果你想要 Vim 式的左手操作可以引入 Leader 键先按住一个组合键再按一个字母触发动作timeout_milliseconds决定两段按键之间允许间隔多久。config.leader { key a, mods CTRL, timeout_milliseconds 1000 } config.keys { { key h, mods LEADER, action wezterm.action.ActivatePaneDirection Left }, { key j, mods LEADER, action wezterm.action.ActivatePaneDirection Down }, { key k, mods LEADER, action wezterm.action.ActivatePaneDirection Up }, { key l, mods LEADER, action wezterm.action.ActivatePaneDirection Right }, { key |, mods LEADER|SHIFT, action wezterm.action.SplitHorizontal {} }, { key -, mods LEADER, action wezterm.action.SplitVertical {} }, }config.keys只是追加映射不会清掉默认按键所以放心加。常用操作对照如下按键序列动作Ctrla 然后h/j/k/l向左 / 下 / 上 / 右切换窗格Ctrla 然后\|水平分割窗格左右并排Ctrla 然后-垂直分割窗格上下堆叠标签页和窗格共用同一份配置切好快捷键后可以顺手加一个wezterm.action.ActivateTabRelative { index 1 }循环切标签。️ 用一套配置适配不同系统同一份.wezterm.lua要跟着你走三台机器的话用wezterm.target_triple做分支。它是标识当前平台的三元组字符串具体取值见 target_triple 文档。if wezterm.target_triple:find(windows) then config.window_background_opacity 1.0 elseif wezterm.target_triple:find(apple) then config.window_background_opacity 0.92 config.macos_window_background_blur 20 else config.enable_wayland true end思路很简单Windows 上毛玻璃由系统提供透明度拉满macOS 用 WezTerm 的模糊参数Linux 优先启用 Wayland。每个分支只放真正需要差异化的项其余公共配置照常写在分支外面。️ 出问题先查这里配置不生效时按这个顺序排查基本能覆盖 90% 的情况先看终端报错。配置文件解析失败时 WezTerm 会打印错误并使用默认配置Lua 语法错误常见于少写一个逗号基本都会在这里暴露。调高日志级别。把config.log_level DEBUG写进配置日志会写到终端的输出里字体加载、GPU 初始化等过程都能看到。确认按键绑定。在终端里运行wezterm show-keys它会列出当前所有按键绑定能直接验证你的config.keys是否被加载、有没有被别的绑定抢占。改完配置想立即生效加一个重载快捷键最方便{ key r, mods CTRL|SHIFT, action wezterm.action.ReloadConfiguration },默认快捷键的完整清单在 默认按键表 里排查冲突时可以对照。接下来建议做三件事把.wezterm.lua提交进 git 仓库配置就是代码回滚和跨机器同步都靠它用wezterm ls-fonts列出系统可用字体确认回退链里的字体确实存在定期看一眼 更新日志WezTerm 迭代很快不少配置项的新能力都记在那里。【免费下载链接】weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust项目地址: https://gitcode.com/GitHub_Trending/we/wezterm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考