← Electerm 博客

Electerm 启动时到底会打开什么:默认标签、书签,还是一整个工作区

2026-10-02
启动设置书签工作区本地终端效率

Electerm 启动时到底会打开什么:默认标签、书签,还是一整个工作区

打开 electerm,东西已经在那儿了:一个本地终端标签,停在你的主目录里,等着你。这就是开箱即用的行为,对很多人来说刚刚好。

对其他人来说,这是每天一次的小烦。如果你打开 electerm 是为了连四台生产机,那个你从来不用的本地 shell 就是白占的一个标签和多余的一次按键。反过来,如果你打开它是为了在本机敲一条命令,那"什么都没有"更糟。

这些都能配,三个开关分布在两个地方。上面的横幅就是这个决定的一整个循环:先是默认本地标签,然后是什么都没有,最后是一个存好的工作区。

1. 三个开关

设置项 位置 默认 作用
open default tab when app start 设置 → setting 开 当没有配置别的东西时,启动打开一个默认标签
open bookmarks on startup 设置 → setting 空 启动时打开指定的一组书签(或一个工作区)
start directory:local 设置 → terminal 空 SFTP 窗格里本地一侧的起始路径

其中两个在同一屏设置里,一前一后:open bookmarks on startup 选择器靠上,open default tab when app start 开关在下面那一列通用开关里。

2. 启动链路

整个决定归根到底就是一个问题:启动时到底有没有配东西? electerm 按固定顺序检查,第一个匹配上的分支就是结果。

  1. 选了工作区 → 加载它。布局、窗格、会话原样回来。默认标签不会打开。
  2. 选了书签 → 逐个打开。默认标签不会打开。
  3. 什么都没选 → 打开默认标签,但前提是 open default tab when app start 开着。
  4. 什么都没选、开关也关着 → 什么都不开,窗口显示空状态。

注意这里缺了什么:没有任何一处是"而且"。这些是替代关系,不是叠加。选了书签就压掉默认标签;选了工作区就把两者都压掉。

3. 关掉默认的本地终端

这是大家真正来找的那个开关。在 设置 → setting 里找到 open default tab when app start,关掉。

启动后你得到的是一扇空窗口加"无会话"面板:顶部一排按钮(new tab、new bookmark,如果配了 AI 还有 create bookmark by AI),中间是 electerm 的 logo,下面是你的连接历史。没有任何连接,没有 shell 被占着,你点的第一下就是你真想要的那个东西。

关于这个开关有两点值得知道:

  • 它只管默认标签。如果你已经配了启动书签或启动工作区,这个开关就无关了——electerm 根本走不到看它的那一步。
  • 它是存在配置里的按机器设置,所以如果你用数据同步,它也会跟着同步。

4. 启动时打开书签

还是在 设置 → setting,标题为 open bookmarks on startup 的那一节自带两个标签:bookmarks 和 Workspaces。

bookmarks 标签是你书签树上的一个树形多选,可以勾——勾单个书签,或者勾一整个分组把里面的都带上。存下来的是一个个书签组成的扁平列表,而不是你勾的那个分组:勾一个分组,存的是它的内容。

这一点在实际使用中很重要,也是选择器里显示叶子的原因。以后重命名或挪动那个分组,启动列表照样能用,因为它指向的是书签本身,不是分组。

这就是下面那个视频讲的东西,也是当你的启动集合是几个彼此独立的会话时该用的方案。如果你在意每个会话落在哪个窗格里,那你要的是工作区。

5. 启动时打开一个工作区

同一节,切到 Workspaces 标签,从下拉里挑一个。配置就这么多。

两个标签是互斥的,这是设计如此,来回切换会清空另一边。electerm 的启动只能走两条分支中的一条,所以它不允许你同时配两样——选好工作区,之前勾过的书签就被丢掉了,反过来也一样。

如果 Workspaces 标签里是空的,说明你还没存过工作区——那个操作在标签栏的布局下拉里,不在设置里。见 Electerm 工作区。

6. "默认标签"不总是一个标签

一个会让用分屏的人意外的细节:默认标签是按窗格创建的。

所以如果你上次用的是 2x2 网格,开着默认标签启动 electerm 会给你四个本地终端,一个窗格一个——不是一个。

布局 窗格数
c1 单窗格 1
c2 两列 2
c3 三列 3
r2 两行 2
r3 三行 3
c2x2 网格 4
c1r2 右两行 3
r1c2 下两列 3

如果启动就来四个本地 shell 不是你想要的,那这是另一个理由去显式配启动会话——或者先切回 c1,布局以后再还原。

7. 本地终端究竟从哪开始

本地 shell 并不从你配置的目录开始,它从主目录开始,因为进程就是这么启动的。

要让它开在别的地方,electerm 会往 shell 里敲一条 cd,作为第一个启动脚本。三个来源能提供这个路径,按这个顺序:

来源 由谁设置
恢复的工作目录 只在开了 restore terminal session on reload 时
书签自己的起始目录 书签的 start directory:remote 字段
命令行指定的目录 -d / --init-folder 参数

所以命令行参数才是改默认本地终端起始位置的那个:

electerm -d ~/code/my-project

关于这个参数有两个注意点:

  • 配了启动会话时它会被跳过。 只有当启动时没有任何东西要打开、并且默认标签开着时,这个参数才会被采纳。配了启动书签或启动工作区,-d 就会悄悄不再作用于默认标签。
  • 它是有意不限于本地的。 -d 当初就是作为"ssh/本地终端的初始目录"加的,事实也确实如此:同一个 cd 会被排给任何没有自己起始目录的标签——包括 SSH 标签。它只是一条 cd,远端不存在的路径会无害地失败、shell 继续跑。由于这个值从不被清空,之后打开的那些没有自己起始目录的标签也会继承它。

另外那个 start directory:local 设置是另一个值。它被读作 SFTP 窗格本地一侧的起始路径,同时也是 -d 参数写进命令行打开的会话里的值。本地终端挑 cd 时并不看它。

8. 三个会咬你的点

配好的启动列表会静默压过一切。 一旦配了启动书签或启动工作区,默认标签和 -d 就都不再起作用。如果启动 electerm 不再打开你的本地 shell,先去查那个选择器。

工作区里被删掉的书签会开出一个空位。 启动走的是和手动点击工作区完全相同的加载路径——指向一个已不存在书签的条目什么都不会打开,也不提示。工作区还原后少了一个窗格,原因就在这里。

这个启动设置装着两种不同的值。 一个列表意味着书签,一个单独的工作区 id 意味着工作区。这就是选择器两个标签互相清空的原因,也是为什么手工把工作区 id 塞进列表里,得到的会是一个一个标签都没有的启动,而不是一个工作区。

接下来看