V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dearrrfish
V2EX  ›  macOS

OS X 有 2 个系统剪贴板?

  •  
  •   dearrrfish · 2014-08-14 02:02:19 +08:00 · 4684 次点击
    这是一个创建于 3787 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近在做一个Alfred workflow for KeePass,在拷贝密码的时候发现一个问题,有时候不同程序之间的拷贝并不互通,稍微dig了一下发现貌似OS X存在两套(或者更多)剪贴板:

    - Finder 里 Show clipboard 可以观察到的剪贴板,我管它叫 系统剪贴板
    - pbcopy/pbpaste 可以操控的剪贴板,我管它叫 文本剪贴板

    话说这个问题蛮头疼的,比如我发现 chrome 里用的 文本剪贴板 而 Safari/Firefox 用的 系统剪贴板。

    总之这个问题挺尴尬的,也不是没有办法解决,就是感觉同样一个 cmd+c,切换不同程序拷贝失败的时候还得思考一下究竟是剪贴板用的不一样还是没拷贝成功……

    在不考虑第三方剪贴板软件的情况下有什么好的处理方法吗?
    5 条回复    2014-08-29 01:11:54 +08:00
    geeti
        1
    geeti  
       2014-08-14 02:19:29 +08:00
    我的无论是从哪用cmd+c复制的,还是pbcopy复制的,都会显示在finder的剪切板里边
    hewigovens
        2
    hewigovens  
       2014-08-14 08:15:24 +08:00   ❤️ 1
    lz可以看下 [Pasteboard Programming Guide](https://developer.apple.com/library/mac/documentation/cocoa/Conceptual/PasteboardGuide106/Articles/pbConcepts.html#//apple_ref/doc/uid/TP40008101-SW3) 系统默认是提供了多个剪贴板, 比如 NSGeneralPboard/NSRulerPboard/NSFontPboard/NSFindPboard/NSDragPboard 用途不同, 用的最多的是NSGeneralPboard, 而它又支持多种数据格式, pbcopy/pbpaste应该是只支持文本. 剪贴板基本上是个公共区域, 大家都可以去读写
    douniwan5788
        3
    douniwan5788  
       2014-08-25 23:40:58 +08:00
    我也遇到这个问题了,记得之前pbcopy的东西可以cmd + v在其他地方粘贴的,今天不知道怎么就不行了,只能pbpaste
    douniwan5788
        4
    douniwan5788  
       2014-08-25 23:54:34 +08:00
    我发现把应用关掉重开一遍剪贴板就跟pbcopy统一了,貌似是什么bug导致某个时间生成了一个新的剪贴板实例,就变成新旧两个剪贴板了
    dearrrfish
        5
    dearrrfish  
    OP
       2014-08-29 01:11:54 +08:00
    @douniwan5788 是的,有时候重启应用就能统一剪贴板。不过很烦啊,像iTerm,Chrome,MacVim这种常驻开启的应用,重启一次很麻烦。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3559 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 04:42 · PVG 12:42 · LAX 20:42 · JFK 23:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.