Zellij 入门速查

2026-05-14

Zellij 是一个终端工作台(terminal workspace),类似 tmux 但开箱即用、自带布局系统和 WebAssembly 插件机制。

开箱体验

zellij                    # 启动(自动进入一个 session)
# Ctrl+g 锁住(按键透传),再按 Ctrl+g 解锁
# Ctrl+p 进入 pane 模式,用 h/j/k/l 切换窗格
# Ctrl+s 滚屏,Ctrl+t 标签页,Ctrl+n 调整大小

安装

# 任意平台一键试用(退出时问是否永久安装)
bash <(curl -L https://zellij.dev/launch)

# macOS
brew install zellij

# Linux
sudo snap install zellij   # Ubuntu
sudo pacman -S zellij      # Arch

# 或用 Cargo
cargo install --locked zellij

基础概念

Zellij 的层级很简单:Session → Tab → Pane

  • Session(会话):最顶层,一个 session 包含多个 tab。可以断开再重连,进程不中断
  • Tab(标签页):一组 pane 的集合,每个 tab 有自己的布局,Ctrl+t 进入 tab 模式后用 h/l 切换
  • Pane(窗格):基本工作单元。可以是 shell、一条命令、一个编辑器、或者一个 WebAssembly 插件

Zellij 还有模式系统(类似 vim):不同模式下快捷键做不同的事。默认 normal 模式,Ctrl+p 进 pane 模式用 h/j/k/l 导航,Ctrl+g 进 locked 模式把按键全还给终端。当前模式会显示在界面底部。

记住这几件事就能开始用

快捷键含义
Ctrl+g锁住/解锁,开关快捷键透传
Ctrl+p 然后 h/j/k/l在窗格之间移动
Alt+n新建一个窗格
Alt+方向键在窗格之间跳转
Ctrl+s 然后 e编辑回滚缓冲区

速查表

Pane(窗格)— 最高频

快捷键操作
Alt+n新建窗格
Alt+方向键Ctrl+p h/j/k/l切到相邻窗格
Ctrl+p x关闭窗格
Ctrl+p f全屏/还原
Alt+f浮动窗格切换
Alt+f 后再 Alt+n浮动窗格创建

Tab(标签页)

快捷键操作
Ctrl+t n新建标签页
Ctrl+t h / Ctrl+t l上一个 / 下一个
Ctrl+t N(比如 Ctrl+t 1切到 N 号标签页
Ctrl+t r重命名标签页

Session(会话)

快捷键命令
Ctrl+o d断开会话
Ctrl+o w启动会话管理器
zellij attach重连最近会话
zellij attach my-session重连指定会话
zellij list-sessions列出会话
zellij -s my-session新会话

模式切换

模式进入用途
normal默认所有快捷键
lockedCtrl+g按键全透传,Zellij 不拦截
paneCtrl+ph/j/k/l 导航窗格
tabCtrl+th/j/k/l 管理标签页
resizeCtrl+n方向键调整窗格大小
scrollCtrl+s翻页、搜索、编辑回滚
moveCtrl+h方向键移动窗格

配置

Zellij 会自动生成配置,首次启动后查看:

ls ~/.config/zellij/config.kdl

手动导出:

zellij setup --dump-config > ~/.config/zellij/config.kdl

常用配置项:

// 简化界面
pane_frames: false
default_layout "compact"

// 用 vim 而不是 vi 编辑回滚
scrollback_editor "/usr/bin/vim"

// 复制命令
copy_command: "xclip -selection clipboard"  // X11
// copy_command: "wl-copy"                  // Wayland
// copy_command: "pbcopy"                   // macOS

典型工作流:一键启动开发环境

创建一个布局文件 ~/.config/zellij/layouts/dev.kdl

layout {
    pane split_direction="vertical" {
        pane size="60%"
        pane command="cargo" {
            args "test" "--watch"
        }
    }
    pane command="cargo" {
        args "build"
    }
}

然后每次只需:

zellij --layout dev -s my-project

左边写代码,右边是测试(自动重跑)和构建,一目了然。

更多

参考

https://blog.logfun.xyz/blog/feed.xml