Skip to content

快捷键与命令 ​

文档编写中

部分内容可能尚不完整。

ThinkTerm 自己加的快捷键很少。键位表是 WezTerm 的,原封未动;ThinkTerm 在终端周围加的东西 —— Space、Thread、Live Overview、远程主机 —— 大多靠鼠标、命令面板,或者在 macOS 上靠菜单栏来用。这些命令都可以在配置文件里绑上按键。

ThinkTerm 加的快捷键 ​

操作macOSLinux 和 Windows
打开设置⌘,Ctrl+Shift+,
打开或关闭命令面板⌘⇧PCtrl+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 菜单,或命令面板里的 切换空间 组
新建 SpaceSpace 菜单 › 新建空间
打开 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 菜单栏里:

菜单菜单项按键
ThinkTermAbout ThinkTerm
ThinkTermCheck for Updates... —— 打开 设置 › 软件更新
ThinkTermReload configuration⌘R
ThinkTermSettings...⌘,
ThinkTermHide Application⌘H
ThinkTermQuit ThinkTerm⌘Q
ThinkTermQuit and Stop Session Server —— 退出,并结束后台会话服务器里的每个终端
ShellLive Overview
ShellRemote Hosts...
ShellAdd Remote Host... —— 打开远程主机,并新建一个空白主机
EditActivate 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按名字切换终端配色方案,同 更换主题,并记住它
lua
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 一样保留。名字里的复制、粘贴和光标按键,与命令面板搜索框里的相同。

快捷键页 ​

设置 › 快捷键 目前还没有任何控件:只有一行说明,没有可改的东西。按键在配置文件里设置,见上文。

其他地方的按键 ​

  • TUI 有一套自己的键位,以 Ctrl-b 为前缀 —— 见 TUI。
  • 浏览器页面有自己的按键和自己的搜索快捷键 —— 见 网页访问。
  • 笔记编辑器的按键见 文件与笔记。

相关 ​