WezTerm:GPU加速跨平台终端模拟器快速上手指南
【免费下载链接】weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust项目地址: https://gitcode.com/GitHub_Trending/we/wezterm
终端字体大、日志长就卡顿?WezTerm 是一个用 Rust 编写、GPU 加速的跨平台终端模拟器与多路复用器,支持 Windows、macOS、Linux 和 FreeBSD。它除了渲染快,还自带标签与窗格管理、远程多路复用和终端内图片显示,全部用一个 Lua 文件配置。这篇文章带你从零把 WezTerm 装起来、跑起来,并讲清最高频的用法。
刚装好启动后的样子——底部是标签栏,每个标签里可以再切分出窗格:
⚡ 亮点速览
先建立整体印象:WezTerm 值得记住的能力就这五条。
- GPU 加速渲染,大字体、长回滚也不掉帧
- 内置多路复用器,标签和窗格原生管理,
wezterm cli还能从任意终端外部操控 - 多路复用域 + SSH,连到远程机器后界面和本地完全一致
- 全部功能用一个 Lua 配置文件改完,保存后热重载生效
- 真彩色、彩色表情符号、连字、字体回退,以及终端内图片显示(imgcat)
从零到第一次运行:安装、启动、最小配置
这一节把 WezTerm 从"没装"带到"配好",只需三步。
一条命令装完(按平台选)
按你的系统选一行执行即可:
# macOS (Homebrew) brew install --cask wezterm # Windows (winget) winget install wez.wezterm # Linux (flatpak) flatpak install flathub org.wezfurlong.wezterm各平台还有 zip 便携版等更多方式,见 安装文档。想从源码构建的话,git clone https://gitcode.com/GitHub_Trending/we/wezterm后执行cargo build --release即可。
首次启动与快捷键自查
安装完成后直接执行wezterm,主窗口就出来了,无需任何额外参数。想摸清默认快捷键,在任意终端跑wezterm show-keys,它会列出所有动作对应的键位;加--lua参数还能直接输出可复制进配置的片段。
最小配置:只建一个文件
WezTerm 的配置就是家目录下的一个 Lua 文件:~/.wezterm.lua(Windows 为%USERPROFILE%\.wezterm.lua)。新建文件放入以下内容:
local wezterm = require 'wezterm' local config = wezterm.config_builder() config.font_size = 12 -- 字体大小 config.color_scheme = 'Dracula' -- 内置配色方案名 config.initial_cols = 120 -- 新窗口初始列数 config.initial_rows = 30 -- 新窗口初始行数 return config保存后在窗口里按Ctrl+Shift+R(macOS 为Super+R)热重载,改动立即生效,不用重启终端。
高频场景实战:分屏、命令面板、远程复用
跑起来之后最常干的就是下面三件事。
一键分屏窗格与打开新标签
场景:两个目录并排看,或跑个长任务又不想挡住当前 shell。常用两条命令:
wezterm cli split-pane --left --percent 30 # 左侧新开一个窗格,占 30% 宽度 wezterm cli spawn -- top # 开一个新标签并运行 top wezterm cli list # 列出当前 pane id,供后续定向操作wezterm cli在任意终端里执行即可,不用切到 WezTerm 窗口。预期效果:split-pane输出新窗格 id,窗口左侧出现占三成的新窗格;spawn输出新 pane id,顶部新增一个标签。对应默认键位是Ctrl+Shift+Alt+`` 水平切分、Ctrl+Shift+Alt+%` 垂直切分。
命令面板里搜出任意操作
场景:忘了某个功能的快捷键。按Ctrl+Shift+P打开命令面板,输入动作名首几个字母即可模糊搜索,分屏、换标签、搜索、复制等全部动作都能找到并执行。
一条 connect 命令远程复用
场景:日常挂在远程服务器上,又不想 ssh 断开会话就全丢。先在.wezterm.lua里配置:
config.ssh_domains = { { name = 'my.server', -- 域名,connect 时用 remote_address = '192.168.1.1', -- 远程地址 username = 'wez', -- 远程用户名 }, }然后执行wezterm connect my.server。前提是远端也装了 WezTerm。预期效果:远端起一个复用器守护进程,你创建的标签和窗格活在远端;断线重连后现场原样恢复,详见 多路复用文档。
进阶与避坑:配置查找顺序与热重载
这一节解决新手问得最多的两个问题:配置为什么不生效、改的到底是不是被加载的那份。
坑:文件存在但配置不生效
最常见原因是改错了文件。WezTerm 的查找顺序大致是:命令行--config-file参数 > 环境变量WEZTERM_CONFIG_FILE> 家目录的~/.wezterm.lua(Windows 还会检查 wezterm.exe 同目录下的wezterm.lua)。另一个坑:候选文件存在但解析失败时,新版本不会静默忽略,而是报错回退到默认配置——所以启动看到 Lua 报错要先修语法,别急着继续加配置。完整规则见 配置文件文档。
自定义键位并用 show-keys 验证
改键位就是在配置里往keys列表追加条目:
config.keys = { { key = 'T', mods = 'CTRL|SHIFT', action = wezterm.action.SpawnTab('CurrentPaneDomain') }, }改完不要凭感觉验证,再跑一次wezterm show-keys确认新绑定已注册。想完全从零规划键位,先把disable_default_key_bindings设为true,再显式注册你需要的全部绑定。
生态与替代:tmux、Alacritty、zellij 怎么选
WezTerm 处在"纯终端"和"终端复用器"的中间地带,选型时值得对比这三个:
- tmux:经典终端复用器,跑在服务器端,配任何终端都能用;远端机器太老装不了 WezTerm 时,它仍是首选
- Alacritty:纯 GPU 终端,定位极致简单快速,没有标签/窗格管理,也不支持连字,配置是 TOML
- zellij:新一代 Rust 复用器,插件式布局,理念上和 WezTerm 的复用域最接近
WezTerm 的学习成本其实只有一个:知道去哪查配置字段。下一步建议把wezterm show-keys跑一遍,再对照 docs/config 目录下的字段参考,把字体、配色和键位改成自己的习惯,它就是你的了。
【免费下载链接】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),仅供参考