Skip to content

内置终端

Peach Commander 可以在自己的窗口内运行一个真正的 shell,位于底部一条名为“坞”的横条中。它就是你的登录 shell——$SHELL 指向的那个,如果不可用则为 /bin/zsh——所以你的 PATH、别名和函数都在,和在“终端”里一模一样。

这和在此打开终端不是一回事:那个会在当前文件夹启动 Apple 的“终端”应用,留给你两个窗口。内置的这个留在你的文件所在之处,并且知道它们。

它是一个插件:不想要就在配置 ▸ 插件…中关闭或移除,坞也随之消失。

停靠在两个文件面板下方的内置终端 (图:外壳在活动面板所显示的文件夹中运行。)

打开与切换

按 Ctrl 加上“1”左边的那个键,把键盘在文件面板和终端之间移动。该快捷键绑定的是键的位置而非字符,所以无论你的布局称它为什么,都是同一个物理按键:美式键盘上是反引号,德式是 ^,法式是 @。

其余的都在终端菜单里:

操作 作用
显示终端 把它折起来,再展开;标签页以及其中正在运行的东西都保持原样
在面板与终端之间切换 移动键盘焦点,不改变其他任何东西
新建终端标签页 在同一文件夹再开一个 shell
关闭终端标签页 关闭它——会先询问;若其中仍有东西在运行,会说出它的名字
拆分终端 同一标签页中并排两个 shell
转到面板的文件夹 在终端里 cd 到活动面板所在之处
插入所选文件名 在提示符处键入选中的名称,带引号
在终端中运行命令行 把你在命令行里输入的内容发给 shell,而不是不可见地执行

只要终端处于焦点,功能键就归它,不归文件面板——终端里文本编辑器中的 F5 必须抵达那个编辑器。功能键条会这样说明,而不是显示一些不会触发的键。

输入 @、~ 和花括号

在美国以外的大多数键盘上,@、~、|、\ 和花括号都用 Option 键输入。这些按键会以键面上印着的字符送达 shell。

  • 另一种做法是把 Option 当作 Meta 键,这正是 Alt+B、Alt+F 和 Emacs 键绑定所需要的:终端此时会在按键之前发送 Esc,而不是发送该字符。可在配置 ▸ 插件 ▸ 终端中用将 Option 键用作 Meta 键打开它。
  • 更改立即生效,已经打开的终端也一样,而不只是新开的。

回到面板的桥

在终端输出中 Cmd-点按一个路径,面板就会前往那里。ls 列出的文件、编译错误里的路径、git status 中的名称——一次点按,你就在看它了。

只有当指针下的词确实对应某个存在的东西时才会生效。对普通文字 Cmd-点按不会做任何事,而不是导航到某个随意的地方;普通点按依然像从前一样选择文本。

把文件拖放到终端上,它们的路径会带引号落在提示符处,正好接上你输入到一半的命令。

让面板跟随 shell

默认关闭:你在终端里 cd 到别处时,面板留在原处。在终端的设置页中打开让活动面板跟随终端,它就会跟着走。

这需要你的 shell 配合,因为 shell 不会宣告自己去了哪里。设置页会显示一小段要加进 ~/.zshrc 的代码和一个复制按钮;它让 zsh 在每次提示符之前报告自己的工作目录(OSC 7 转义序列)。没有这段代码,设置是开着的却什么也不会跟随——所以这段代码就放在它旁边。

搜索与回滚

Cmd+F 在终端已打印的内容中搜索。

终端默认保留 5,000 行回滚——足够翻回一次编译的开头。可在设置页更改。非常大的数值会被限制,因为五千万行的回滚是一个从外面看不出原因的内存问题。

它在哪里

终端在底部的坞中打开,因为那正是它需要的形状:shell 需要宽度,而侧栏在默认的 300 点下约容纳 44 列,1200 点宽窗口的底部则容纳 176 列。

你仍然可以移动它。如果那样更合适,就把它拖到侧栏,或使用 插件 中说明的位置控制;移动会把同一个 shell 重新挂上而不是启动新的,所以正在运行的东西继续运行。 终端菜单里的命令会跟着它:在它所在的位置把它唤出来,而不是打开底部区域。

再次启动应用时标签页会回来,回到它们原先所在的文件夹。其中正在运行的东西不会——重启会结束那些进程,任何终端都是如此。 退出时它是开着还是关着,也一样会回来。

退出时

关闭应用会关闭这些 shell。其中仍在运行的东西会被结束,就像关闭一个“终端”窗口会结束其中的内容一样。关闭单个标签页同样会先询问,并在有东西在运行时说出它的名字——标签页里还存着 shell 输出过的一切,而 ✕ 就紧挨着下一个标签页。