opencode在Ubuntu下无法复制

opencode 的剪贴板复制逻辑:先试试终端的 OSC52 转义序列,不行的话调用系统工具 xsel,再不行还有内置的fallback 二进制。

问题出在调用系统工具这步。

大多数 Ubuntu 最小化安装,系统里根本不装 xsel 这类东西。opencode 尝试调用它,失败了,虽然内置了 fallback 二进制,但在 SSH 远程环境下 OSC52 能不能用完全看本地终端给不给面子------很多终端模拟器对 OSC52 的支持并不完整。

所以表面上显示复制成功,实际上内容可能根本没进到你能用的剪贴板里。

说白了就是:系统工具缺失 + SSH 环境 OSC52 支持不完整 = 以为复制了但实际并没有。

解决方法其实就一行命令:

sudo apt install xsel

如果你用的是 Wayland 桌面环境:

sudo apt install wl-clipboard

装完之后,opencode 的复制功能马上就能用了,不需要改任何配置。

还有个坑:如果在 tmux 里跑 opencode,tmux 默认会拦截 OSC52 序列,导致复制功能完全失效。

解决方法是在 ~/.tmux.conf 里加一行:

set -g allow-passthrough on

然后 tmux source-file ~/.tmux.conf 重新加载配置。

这个问题的本质是 opencode 没有做好容错------检测到剪贴板工具不存在的时候,至少应该给个警告,而不是假装复制成功了事。毕竟用户看到"已复制成功"的提示,正常人都会以为真的复制进去了。

作者:用户129114974081

链接:https://juejin.cn/post/7618791105741176878

来源:稀土掘金

相关推荐
资深电气设计23 分钟前
TPO卷材研发常见问题:强度与柔韧性为何难兼顾?埃克森美孚威达美™6102的技术参考
运维·物联网·创业创新·业界资讯
优化Henry29 分钟前
光路异常告警排查实战:LTE室分与5G小区两个案例解析
运维·网络·学习·5g·tdd
Apipi*39 分钟前
30天速通Linux 第九章Linux网络编程
linux·运维·网络
报错小能手1 小时前
Channel面试题。Sync面试题
linux·服务器·windows
天远数科1 小时前
零信任架构实战:基于天远风控经营异常预警构建自动化电子签章前置合规网关
运维·人工智能·架构·自动化
xiaoqiMikko1 小时前
Linux 实战(五):DNS、hosts、CLOSE-WAIT、SSH 权限与改端口 —— 三台真机实测
linux·centos
Linux-lucky1 小时前
43-Linux学习之旅之Shell 脚本(二)
linux·运维·学习·ubuntu·dash
yv798an1 小时前
从 OpenSBI 引导到 C++17 异步运行时:自制 RISC-V 嵌入式专有 NAS 踩坑全记录
linux
不悔哥2 小时前
Linux系统编程多线程程序如何安全退出
linux
Fcy6482 小时前
Linux下 数据链路层详解(从以太网到ARP协议)
linux·mac·以太网·数据链路层·arp