快捷键与命令
文档编写中
部分内容可能尚不完整。
ThinkTerm 自己加的快捷键很少。键位表是 WezTerm 的,原封未动;ThinkTerm 在终端周围加的东西 —— Space、Thread、Live Overview、远程主机 —— 大多靠鼠标、命令面板,或者在 macOS 上靠菜单栏来用。这些命令都可以在配置文件里绑上按键。
ThinkTerm 加的快捷键
| 操作 | macOS | Linux 和 Windows |
|---|---|---|
| 打开设置 | ⌘, | Ctrl+Shift+, |
| 打开或关闭命令面板 | ⌘⇧P | Ctrl+Shift+P |
其余都是 WezTerm 的默认键位,列在 WezTerm 的 Default Key Assignments 页面上:⌘T 新建标签,⌘W 关闭标签,⌘C 和 ⌘V,调整字号的那几个键,等等。在 macOS 上 Ctrl+Shift+P 同样能打开命令面板,和 WezTerm 里一样。
thinkterm show-keys 打印实际生效的键位表,你自己加的键也合在里面。设置 disable_default_key_bindings = true 会把 ThinkTerm 的这两个快捷键连同 WezTerm 的一起去掉 —— 只有在设置里选的命令面板快捷键例外,它照样有效,见下文。
没有快捷键的那些
切换 Space、Project 或 Thread,开关侧边栏,打开 Live Overview,都没有默认按键。要用的话,走这些地方:
| 想要 | 用 |
|---|---|
| 跳到任意 Space 里的任意 Thread | 侧边栏底部的 查找线程,或命令面板里的 查找线程 组 |
| 切换 Space | 侧边栏顶部的 Space 菜单,或命令面板里的 切换空间 组 |
| 新建 Space | Space 菜单 › 新建空间 |
| 打开 Live Overview | 侧边栏底部它的按钮,macOS 上的 Shell › Live Overview,或命令面板里的 Live Overview |
| 打开远程主机 | 侧边栏底部它的按钮,macOS 上的 Shell › Remote Hosts...,或命令面板 |
| 显示或隐藏侧边栏 | 标签栏里的侧边栏按钮 |
| 重命名标签 | 标签右键菜单里的 重命名标签页… |
Live Overview、远程主机、新建 Space 和重命名标签,都有可以绑到按键上的动作 —— 见 绑定 ThinkTerm 的动作。跳到某个具体的 Thread 或 Space 没有专门的动作,但命令面板能让你只用键盘到达:打开它,输入名字里的几个字,只要 搜索组内条目 开着(默认就是开的),搜索就会深入 查找线程 和 切换空间 两个组。没有任何办法用键盘显示或隐藏侧边栏,因为根本没有这样的动作。
命令面板
⌘⇧P(Linux 和 Windows 上是 Ctrl+Shift+P)打开命令面板,macOS 上的 Edit › Activate Command Palette 也一样。它列出 ThinkTerm 和 WezTerm 的全部命令,有按键的连按键一起显示,随着输入逐步收窄。再按一次快捷键、按 Escape、按 Ctrl+G,或在面板外点一下,都会关掉它。
另有两个地方会直接打开到某一组里。侧边栏底部的 查找线程 按钮打开时就在 查找线程 组里;在 设置 › 外观 里点 当前配色方案,打开时就在 更换主题 里。从这两处退出来,回到的都是完整列表。
选择它的快捷键
设置 › 命令面板 有四行:
| 设置 | 作用 |
|---|---|
快捷键 | 打开和关闭命令面板的组合键:⌘ ⇧ P(默认)、⌘ P、⌘ K 或 ⌃ ⇧ P |
显示行数 | 列表滚动之前显示多少条结果。默认的 自动 按窗口大小来定,否则为 1 到 30 |
字体大小 | 面板里文字的大小,8 到 32 磅。重置后回到配置里的 command_palette_font_size |
搜索组内条目 | 在顶层搜索时,是否也列出几个组内的匹配。默认开启 |
在 macOS 以外,这些标签里的 ⌘ 指的是 Super 键,只有默认那项例外:在那里 ⌘ ⇧ P 是 Ctrl+Shift+P,因为桌面环境通常把 Super 留给自己用。
这里选的组合键会在查键位表之前就被截下,所以它压过这个组合键原本的作用。⌘ K 是要留意的那个:在 WezTerm 的键位里 ⌘K 是清空回滚,选了 ⌘ K 之后它改为打开命令面板。清空回滚仍然留在命令面板里,名为 Clear scrollback。默认的组合键属于键位表,不属于这项设置,所以不管你选哪个,⌘⇧P 和 Ctrl+Shift+P 都照常有效。也正因为这个选择不在键位表里,thinkterm show-keys 不会列出它。
命令面板里的按键
| 按键 | 作用 |
|---|---|
| ↑ ↓,或 Ctrl+P 和 Ctrl+N | 移动选中项 |
| Page Up、Page Down | 选中项移动一页 |
| Home、End | 搜索框为空时,跳到第一项或最后一项;否则移动光标 |
| Enter | 运行选中的命令,或打开选中的组 |
| Tab | 打开选中的组 |
| Backspace | 在组内且搜索框为空时,退出这个组,并恢复你离开时的搜索内容和选中项 |
| Ctrl+U | 清空搜索 |
| Escape、Ctrl+G 或命令面板快捷键 | 关闭命令面板 |
| ⌘A、⌘C、⌘X、⌘V | 在搜索框里全选、复制、剪切、粘贴。Linux 和 Windows 上是 Ctrl |
| ⌘← ⌘→、⌘⌫ | 光标到开头或结尾、删除到开头。仅 macOS |
| ⌥← ⌥→、⌥⌫ | 按词移动或删除。Linux 和 Windows 上是 Ctrl |
组
成批的同类命令会被收进组里,免得上千个配色方案把其余命令淹没。组像文件夹一样打开。
| 组 | 里面有什么 |
|---|---|
查找线程 | 每个 Space 里每个保存下来的 Thread,归在各自的 Project 下,右侧标出所属的 Space。置顶的 Thread 排在最前,已归档 Project 的 Thread 排在最后,标着 (已归档)。搜索会匹配 Thread、它的 Project、它的 Space,以及文件夹路径。选中一个时,如有需要会先切换 Space |
更换主题 | 全部配色方案,包括内置的和你配置里 color_schemes 定义的,最上面是 使用配置默认值。移动选中项时,每个方案都会在窗口上预览;按 Enter 则应用到所有窗口并记住它。以其他任何方式关掉命令面板,颜色都会还原 |
切换空间 | 这个窗口可以显示的 Space。有三个或更多时才出现 |
切换工作区 | WezTerm 自己的多路复用器工作区,当前所在的除外 |
在域中新建标签页、连接域、断开域 | 多路复用器的域,和 WezTerm 里一样 |
启动 | 你的 launch_menu 里的条目 |
后五个只有在条目达到三个或更多时才收成组;不足三个时,它们的命令直接留在主列表里。搜索内容达到两个字符后,每个组内最多三个匹配会列在直接匹配之后,所以输入一个配色方案的名字,不必先打开 更换主题 也能找到它。搜索组内条目 可以关掉这一行为。
查找线程 是唯一能列出当前 Space 以外的 Thread、以及已归档 Thread 的地方;侧边栏一次只显示一个 Space。
最近使用
命令面板会记住你运行过什么。常用、近用的命令排在命令列表顶部(在各个组下面),更换主题 里你选过的方案也会以同样的方式往前排。这份记录是 ThinkTerm 数据目录里的 recent-commands.json —— 数据目录在哪里见 配置 —— 最多保留 200 条,满了先丢最少用的。
你自己的命令可以用 WezTerm 的 augment-command-palette 事件加进来,和在 WezTerm 里一样。
macOS 菜单
ThinkTerm 自己的命令和 WezTerm 的一起放在 macOS 菜单栏里:
| 菜单 | 菜单项 | 按键 |
|---|---|---|
| ThinkTerm | About ThinkTerm | |
| ThinkTerm | Check for Updates... —— 打开 设置 › 软件更新 | |
| ThinkTerm | Reload configuration | ⌘R |
| ThinkTerm | Settings... | ⌘, |
| ThinkTerm | Hide Application | ⌘H |
| ThinkTerm | Quit ThinkTerm | ⌘Q |
| ThinkTerm | Quit and Stop Session Server —— 退出,并结束后台会话服务器里的每个终端 | |
| Shell | Live Overview | |
| Shell | Remote Hosts... | |
| Shell | Add Remote Host... —— 打开远程主机,并新建一个空白主机 | |
| Edit | Activate Command Palette | ⌘⇧P |
Linux 和 Windows 没有菜单栏。在那里,同样的命令以同样的名字出现在命令面板里,About ThinkTerm、Hide Application 和 Quit ThinkTerm 除外。
有几个命令只在命令面板里,既没有菜单项也没有按键:
| 命令 | 作用 |
|---|---|
Archive Active Workspace | 归档你所在的 Project:关闭它的 pane,保留它的 Thread 和布局 |
Show Archived Workspaces | 在侧边栏底部显示已归档的 Project,直到再运行一次或窗口关闭 |
查找线程、更换主题 和 切换空间 这几个组 | 见上文 |
这两个命令名里的「workspace」指的是 Project,也就是侧边栏菜单里的叫法。切换工作区 组则是另一回事:那是 WezTerm 的多路复用器工作区。菜单栏和命令面板里的命令名不管界面语言是什么都是英文;命令面板的组名会跟着界面语言走。归档的细节见 Space、Project 与 Thread。
绑定 ThinkTerm 的动作
按键在配置文件的 keys 表里设置,和 WezTerm 完全一样 —— 见 WezTerm 的 Key Binding 页面。ThinkTerm 在 wezterm.action 里加了这些动作:
| 动作 | 作用 |
|---|---|
OpenSettings | 打开设置 |
CheckForUpdates | 打开设置里的软件更新页 |
QuitAndStopSessionServer | 退出 ThinkTerm 并停止后台会话服务器,其中每个终端都会结束 |
ToggleLiveOverview | 打开或关闭 Live Overview |
OpenSshHosts | 打开或关闭远程主机 |
AddRemoteHost | 打开远程主机,并新建一个空白主机 |
CreateSpace | 新建一个 Space,把窗口切过去,并让它的名字进入编辑状态 |
ArchiveActiveProject | 归档你所在的 Project,同 Archive Active Workspace |
ToggleShowArchivedProjects | 在侧边栏里显示或隐藏已归档的 Project |
PromptRenameTab | 让当前标签的名字进入编辑状态 |
SpawnTabToRight | 在当前标签右侧紧挨着新开一个标签,开在指定的域里 |
SetColorScheme | 按名字切换终端配色方案,同 更换主题,并记住它 |
local wezterm = require 'wezterm'
local act = wezterm.action
local config = wezterm.config_builder()
config.keys = {
{ key = 'o', mods = 'CMD|SHIFT', action = act.ToggleLiveOverview },
{ key = 'n', mods = 'CMD|ALT', action = act.CreateSpace },
{ key = 'r', mods = 'CMD|ALT', action = act.PromptRenameTab },
{ key = 't', mods = 'CMD|ALT', action = act.SpawnTabToRight 'CurrentPaneDomain' },
{ key = 'd', mods = 'CMD|ALT', action = act.SetColorScheme 'Dracula' },
}
return config你绑上的动作会在命令面板里显示它的按键;默认不在命令面板里的动作,比如 PromptRenameTab,一旦有了按键也会出现在里面。
Escape 与 Enter
在 Live Overview 里,Escape 关闭它。如果某张卡片正在询问是否关闭它的终端,第一次按 Escape 是回答「否」,再按一次才关闭总览。
就地重命名时 —— Space、Project、Thread、标签,或者文件面板里的文件 —— 名字打开时已经全部选中。Enter 保留新名字,Escape 放弃。点击别处或切到别的应用,也会像 Enter 一样保留。名字里的复制、粘贴和光标按键,与命令面板搜索框里的相同。
快捷键页
设置 › 快捷键 目前还没有任何控件:只有一行说明,没有可改的东西。按键在配置文件里设置,见上文。
其他地方的按键
相关
- Space、Project 与 Thread —— 命令面板里的 Space 和 Thread 命令作用的对象
- 窗口 —— 侧边栏、Live Overview 和标签栏
- 配置 ——
keys表所在的配置文件 - 命令行 ——
thinkterm show-keys
