WindTerm 快捷键修改
WindTerm 快捷键修改
WindTerm 是一款偏工程向的 SSH / 终端客户端,免费、开源,支持多会话、分屏、同步输入、文件传输等。快捷键体系比较灵活,几乎所有菜单动作都能重新绑定。
界面能不能改?
目前没有图形化的快捷键设置页。官方提过后续会做,但到现在还是靠改配置文件。
改完后需要重启 WindTerm才会生效。
改哪里
安装目录下:
| 文件 | 作用 |
|---|---|
global/wind.keymaps | 快捷键绑定 |
global/wind.actions | 动作定义(查 action 名用) |
改之前建议先备份一份,比如复制成wind.keymaps.bak。
怎么改
在wind.keymaps里加一条,或改已有条目,格式大致是:
{"keys":"<Ctrl+F1>","modes":"local, remote","action":"Window.DuplicateView"}字段说明:
keys:按键,写成<Ctrl+F1>、<Shift+Tab>、<Alt+]>这种modes:在哪些模式下生效。终端里常用local, remote;编辑器用normalaction:要执行的动作名when:可选,限定作用范围,比如只在终端里生效:window.isScope('terminal.*')
不确定动作名时,打开wind.actions,按菜单中文/英文搜,例如搜Duplicate View/复制视图,对应就是Window.DuplicateView。
常见改法
1. 切换 Tab
默认大致是:
Alt+[/Alt+]:上一个 / 下一个Ctrl+PgUp/Ctrl+PgDown:上一个 / 下一个(normal、local)
想改成浏览器习惯可以加:
{"keys":"<Ctrl+Tab>","modes":"local, remote","action":"Window.ActivateNextView"},{"keys":"<Ctrl+Shift+Tab>","modes":"local, remote","action":"Window.ActivatePreviousView"}对应动作:
Window.ActivateNextView:下一个 TabWindow.ActivatePreviousView:上一个 Tab
方向反了的话,把两条的action对调即可。
不建议用Shift+Tab:绑了之后远端 shell 的反向补全就没了。Ctrl+Tab/Ctrl+Shift+Tab默认一般没占用,更合适。
2. 复制 SSH 通道 / 复制视图
对应动作:Window.DuplicateView
默认快捷键:Ctrl+Shift+D
绑到Ctrl+F1示例:
{"keys":"<Ctrl+F1>","modes":"local, remote","when":"window.isScope('terminal.*')","action":"Window.DuplicateView"}3. 复制 / 粘贴
| 操作 | action | 常见默认键 |
|---|---|---|
| 复制 | Text.Copy | Ctrl+Shift+C(终端) |
| 粘贴 | Text.Paste | Ctrl+Shift+V |
| 粘贴选中文本 | Terminal.PasteSelectedText | Ctrl+Shift+Insert一类 |
终端里慎改Ctrl+C,容易和中断进程冲突。
4. 分屏
| 操作 | action | 默认大致键位 |
|---|---|---|
| 水平分屏 | Window.SplitViewHorizontally | Alt+WAlt+H |
| 垂直分屏 | Window.SplitViewVertically | Alt+WAlt+V |
5. 关闭 / 重开 Tab
| 操作 | action | 默认大致键位 |
|---|---|---|
| 关闭当前视图 | Window.CloseActiveView | Ctrl+W/Ctrl+Shift+W |
| 重开刚关的 | Window.ReopenClosedView | Ctrl+Shift+T |
6. 按序号切到第 N 个 Tab
默认Alt+1~Alt+5,Alt+0切到最后一个。实现类似:
{"keys":"<Alt+1>","script":"() => { window.activeKit.activateView(1) }"}排错
- 改完必须重启
- 键位被系统或其他软件占用时,WindTerm 收不到
- JSON 写错会导致整段 keymap 加载异常,改前先备份
- 同一按键多条规则时,看
modes/when是否互相抢;编辑器和终端可以分开绑