配置
文档编写中
部分内容可能尚不完整。
ThinkTerm 用一个 Lua 文件配置,方式与 WezTerm 相同。配置项名称、模块名和语法都没有改动 —— ThinkTerm 的配置文件开头依然是:
local wezterm = require 'wezterm'不同的只是文件从哪里读、数据往哪里写。
配置文件的读取顺序
ThinkTerm 会加载它找到的第一个文件,顺序如下:
$THINKTERM_CONFIG_FILE$WEZTERM_CONFIG_FILE- 可执行文件同目录下的
thinkterm.lua—— 仅 Windows - 可执行文件同目录下的
wezterm.lua—— 仅 Windows ~/.config/thinkterm/thinkterm.lua~/.config/thinkterm/wezterm.lua~/.thinkterm.lua
$THINKTERM_CONFIG_DIR 和 $WEZTERM_CONFIG_DIR 不参与这个搜索。它们是 ThinkTerm 在配置加载完成之后写出的 —— 指向配置文件所在的目录,供你启动的程序读取。自己设置它们并不能选中某份配置。
那两条仅限 Windows 的规则是有意为之:配置文件放在可执行文件旁边时优先级最高,这样 ThinkTerm 可以装在 U 盘里带走,在一台没有自己配置、或者装着别人配置的机器上运行。
其中的 wezterm.lua 文件名也不是遗留物:它让一份现成的 WezTerm 配置可以直接放进 ThinkTerm 的目录,不必改名。
ThinkTerm 会从 WezTerm 安装里取用什么
你的 WezTerm 配置文件不会被加载。上面所有位置都不指向 ~/.config/wezterm/wezterm.lua,ThinkTerm 也从不写入它。
但这个隔离并不彻底,有两条通路值得知道。
WEZTERM_CONFIG_FILE 会被遵循。 它排在上面的搜索顺序里,所以如果你的环境里导出了这个变量(如果你当初就是这样配置 WezTerm 的,很可能就是如此),ThinkTerm 会加载它指向的文件。设置 THINKTERM_CONFIG_FILE,或者取消那个 WezTerm 的变量,就能让两套安装互不干扰。
WezTerm 的配置目录仍会被搜索 Lua 模块和配色方案。 ~/.config/wezterm/ 和 ~/.wezterm/ 位于 Lua 的 package.path 上,~/.config/wezterm/colors/ 也会被搜索配色方案。所以在 ThinkTerm 配置里写 require 'mymodule',会找到你为 WezTerm 写的模块。被隔离的是配置文件本身,不是整个目录。
从 WezTerm 导入
设置 › 从 WezTerm 导入 会读取一份现有的 WezTerm 配置,并把你勾选的字段复制进 ThinkTerm 自己的文件。这是一次性复制 —— 复制完成后两个文件相互独立,不会共享任何实时状态。
可导入的字段共十五个:
color_scheme、window_background_opacity、macos_window_background_blur、inactive_pane_hsb、font、font_size、line_height、cell_width、default_prog、default_cwd、front_end、window_decorations、disable_default_key_bindings、keys、key_tables
这个列表限定的是导入器替你复制的范围,不是 ThinkTerm 支持的范围。其他任何 WezTerm 配置项,手写进 ThinkTerm 的配置文件里同样有效。
数据存放位置
macOS
- 配置文件 ——
~/.config/thinkterm/ - 工作区数据 ——
~/Library/Application Support/ThinkTerm/ - 终端状态 ——
~/Library/Application Support/thinkterm/ - 缓存 ——
~/Library/Caches/thinkterm/
Linux
- 配置文件 ——
~/.config/thinkterm/ - 工作区数据 ——
~/.local/share/ThinkTerm/ - 终端状态 ——
~/.local/share/thinkterm/ - 缓存 ——
~/.cache/thinkterm/
Windows
- 配置文件 ——
%USERPROFILE%\.config\thinkterm\ - 工作区数据 ——
%APPDATA%\ThinkTerm\ - 终端状态 ——
%APPDATA%\thinkterm\ - 缓存 ——
%LOCALAPPDATA%\thinkterm\
上面有两点容易踩坑。
配置路径不遵循各平台惯例。 所有操作系统上都使用 ~/.config/thinkterm/,Windows 也不例外 —— 不是 %APPDATA%。因此配置与数据在每个平台上都是分开存放的,Linux 也一样 —— 那里配置在 ~/.config 下,数据在 ~/.local/share 下。
有两个仅大小写不同的数据目录。 工作区数据 —— Space、Project 与 Thread 结构,SSH 主机簿,片段,以及加密密钥 —— 写在 ThinkTerm/。终端与多路复用状态写在 thinkterm/。macOS 和 Windows 的文件系统默认对大小写不敏感,两者通常会合并成同一个目录 —— 但在大小写敏感的 APFS 卷上不会。在 Linux 上它们始终是独立的两个目录。无论落在哪里,两者都属于 ThinkTerm。
笔记库不存放在上述任何一处。它是你自己选定的目录,里面是普通的 Markdown 文件;ThinkTerm 只记录这个绑定关系。
配置项参考
绝大多数配置项都原样来自 WezTerm,因此参考文档在上游:
两点提醒。ThinkTerm 于 2026 年 3 月 31 日从 WezTerm 分叉,此后上游新增的配置项这里可能尚未提供。另外 ThinkTerm 有自己新增的配置项,上游文档里查不到:
| 配置项 | 控制什么 |
|---|---|
agent_status_detection | 是否运行会话状态检测 |
note_spellcheck_enabled | Markdown 编辑器中的拼写检查 |
note_remote_images_enabled | 笔记中是否加载远程 URL 图片 |
note_reading_max_width | 笔记的阅读宽度 |
right_sidebar_search_respects_gitignore | 文件搜索是否跳过被忽略的文件 |
