Despacer
我每天都在终端里和 Claude Code、Codex 一起工作,而它们都会自己折行。它们不让终端去折行,而是在长命令里写入真正的换行和两个空格的缩进。所以我复制一条命令去运行时,粘贴出来的是零散的几段,根本跑不起来。
Despacer 是一款小巧的菜单栏应用,专门解决这个问题。只要它在运行,你像平常一样在终端里复制命令,粘贴出来就是它本该是的那一条完整命令。它免费且开源。
在 GitHub 上查看 ↗
照常复制粘贴
不需要学任何新东西。在终端里选中一条命令,按 Cmd+C,然后粘贴到需要的地方。等你粘贴时,通常只需几百分之一秒,Despacer 就已经把它重新拼好了。
- 从终端复制的内容会被检查,必要时修复。
- 从其他任何应用复制的内容一律不看。
- 本来就没有断开的文本,比如一条短命令或普通的终端输出,会保持原样。
- 如果某次修复不是你想要的,在菜单栏选择“撤销上次修复”,即可把内容恢复成你复制时的样子。
先精确匹配,再用折行规则
终端从来看不到智能体原本的换行位置,所以任何终端设置都无法挽回。Despacer 分两步修复复制的内容。第一步立即进行:去掉缩进,并把折行造成的每个换行重新接上;判断依据是下一个词能否放进上一行。其他换行,以及以反斜杠结尾的行,都会保留。
片刻之后,它会忽略空格和换行,在 Claude Code 和 Codex 保存在你 Mac 上的会话历史中查找复制的文本。一旦找到,就把智能体写下的原始命令原样放到剪贴板。大多数命令单靠折行规则就能修好;对于无法区分的情况,比如从一行中间开始的选择,则由精确匹配来确定。
适用于你正在用的终端
Despacer 开箱即支持 Terminal、iTerm2、Ghostty、Warp、kitty、Alacritty、WezTerm、Hyper、Tabby 和 Rio。你还可以添加任何其他用来复制命令的应用,比如内置终端的代码编辑器,也可以取消勾选不想让它监视的应用。它只处理这些应用位于最前面时你复制的文本。
不联网,什么都不留
Despacer 不发起任何网络连接,没有账户、分析或跟踪。它会读取你 Mac 上 Claude Code 和 Codex 的会话文件,但从不修改、复制或上传,而且你可以关闭这项匹配。最近十次修复只保存在内存中,方便你撤销,Despacer 退出后就会消失。
系统要求与安装
Despacer 支持 macOS 14 Sonoma 或更高版本,采用 MIT 许可证免费提供,支持九种语言。目前需要用一个脚本从源代码构建安装,大约一分钟;GitHub 上的 README 详细介绍了安装步骤和每项设置。同一个修复引擎也可以作为命令行过滤器,在脚本中使用。