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

Mac 上有哪款粘贴板记录管理软件,可以实现像 Ditto 那样,使用一个快捷键就可以完成显示、选择、粘贴的操作

  •  
  •   BeyondReach · 2024-03-05 10:02:29 +08:00 · 3843 次点击
    这是一个创建于 373 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Ditto 只需要使用一个快捷键:按一次出现复制的历史记录列表,再按就从第一个记录往下选择,放开快捷键就将选择到的记录粘贴到当前光标处

    Mac 上免费的 Maccy ,无法实现这样的设置,默认要使用 ctrl+shift+C 调出复制历史记录表,使用 ctrl+1 ,ctrl+2 选择第一第二位置的记录,要不停地切换快捷键,麻烦得很

    第 1 条附言  ·  2024-03-05 23:22:51 +08:00

    多谢大家提到的各种软件~~ 但是大家可能没注意到我的问题,我想找的是可以只使用一个快捷键,就打开复制历史记录面板,然后可以在历史记录中往下选择的软件

    我试了一下大家提到的Paste和Alfred,它们只是实现了粘贴板历史记录的功能,没有能实现我想要的功能。

    如果用过windows下的Ditto,应该能理解我想实现的这个功能的意思

    52 条回复    2024-08-12 04:03:19 +08:00
    huangzhe8263
        1
    huangzhe8263  
       2024-03-05 10:07:24 +08:00
    现在用的是 raycast 的 clipboard ,快捷键呼出,搜索或者上下键选择,回车复制或者粘贴。
    似乎也做不到一个快捷键
    Achieve7
        2
    Achieve7  
       2024-03-05 10:08:58 +08:00
    paste 有个 Stack 模式 可以复制完一次性粘贴
    fruitmonster
        3
    fruitmonster  
       2024-03-05 10:12:01 +08:00
    uTools 的剪切板,可以用 utools 快捷键调出剪切板之后,上下键选择历史,回车选择

    A555
        4
    A555  
       2024-03-05 10:13:33 +08:00
    用的 fastclip
    BeyondReach
        5
    BeyondReach  
    OP
       2024-03-05 10:16:29 +08:00
    @fruitmonster 这个操作还是比 ditto 的麻烦很多

    ditto 上整个过程,左手都不需要更换任何按键,而 utools 要按快捷键,上下键,回车,麻烦太多
    EricFuture
        6
    EricFuture  
       2024-03-05 10:17:08 +08:00
    用了一圈,我现在用得 utools 的剪切板
    neoC
        7
    neoC  
       2024-03-05 10:21:09 +08:00
    alfred 就有这功能
    x4gz
        8
    x4gz  
       2024-03-05 10:31:46 +08:00 via iPhone
    虽然 mac 有很多剪切板 app 但应该没有这种一个快捷键完成所有功能的 要不用 hammerspoon 自己撸一个吧
    zeroFans
        9
    zeroFans  
       2024-03-05 10:41:37 +08:00
    utools ,raycast 都有这样的功能,但是我觉得打磨的最好的还是 pasteNow
    wilsonsui
        10
    wilsonsui  
       2024-03-05 11:02:21 +08:00
    wilsonsui
        11
    wilsonsui  
       2024-03-05 11:04:54 +08:00
    忽略回复 没看到 op 发了
    UxwVI042kEc5pNx6
        12
    UxwVI042kEc5pNx6  
       2024-03-05 11:20:02 +08:00
    Pin
    goodryb
        13
    goodryb  
       2024-03-05 11:24:27 +08:00
    目前用的是 Alfred 的剪贴板管理, 快捷键呼出,上下选择,回车粘贴
    cnjs
        14
    cnjs  
       2024-03-05 14:03:00 +08:00
    @neoC +1 使用好几年了,很丝滑。alfred 使用最多的一个功能
    yangxiaopeipei
        15
    yangxiaopeipei  
       2024-03-05 14:24:21 +08:00
    hapigo 还是需要选择
    xxmym
        16
    xxmym  
       2024-03-05 14:35:34 +08:00   ❤️ 1
    xxmym
        17
    xxmym  
       2024-03-05 14:41:26 +08:00
    @xxmym command+shift+v 按住呼出,再按 v 切换下一个,松手粘贴,最多记录 99 条。
    缺点是功能比较简洁,只能复制文本,也不能搜索什么的,我一般和 iCopy 结合者用。
    038666
        18
    038666  
       2024-03-05 18:24:18 +08:00
    paste
    BeyondReach
        19
    BeyondReach  
    OP
       2024-03-05 21:51:24 +08:00
    @Achieve7 这个模式并不是是我想要实现的功能
    sinotw
        20
    sinotw  
       2024-03-05 22:06:16 +08:00
    我记得以前用过一个软件,使用 cmd +vv 呼出历史剪贴板,在屏幕下方列出,同时按住 cmd 不放,不停按 v 就在各条中切换,选中后就放开 cmd ,就贴上了,但是当时这个软件就很久不更新了,和现在的系统肯定是不兼容了
    sinotw
        21
    sinotw  
       2024-03-05 22:07:55 +08:00
    @sinotw 这个从操作上应该是最符合 op 要求的,手就没离开过 cmd 和 v ,但是我忘了叫什么名字了,知道的兄弟贴上来
    zcf0508
        22
    zcf0508  
       2024-03-05 22:09:01 +08:00 via Android
    BeyondReach
        23
    BeyondReach  
    OP
       2024-03-05 23:28:34 +08:00
    @xxmym #17 感谢,这款软件确实比较符合我的想法。不过它有一个缺点,不能一眼看到所有的复制记录,你不知道你想找的复制记录在哪一条
    BeyondReach
        24
    BeyondReach  
    OP
       2024-03-05 23:32:46 +08:00
    @zeroFans pasteNow 并不能实现我的想法,和其他兄弟提到的软件一样,它也不能把显示复制记录面板,和选择下一条复制记录设置成同一个快捷键
    imokkkk
        25
    imokkkk  
       2024-03-06 10:15:33 +08:00
    之前在 win 上用 ditto 确实很方便,后来换了 mac 用的 maccy ,还是差了点意思
    OneMan
        26
    OneMan  
       2024-03-06 12:12:29 +08:00
    快一点慢一点无所谓,生活和工作依然波澜不惊
    iX8NEGGn
        27
    iX8NEGGn  
       2024-03-06 13:54:43 +08:00 via iPhone
    CopyQ 可以,我用它替代了所有 Ditto 功能,不过要自己写脚本
    BeyondReach
        28
    BeyondReach  
    OP
       2024-03-06 15:42:08 +08:00
    @imokkkk 确实。关于剪贴板历史记录软件,大家日常基本用不到太多的复制的功能。但是最普通的显示复制历史记录面板,选择历史记录,使用频率相当大。如果在这里能节省操作步骤,对日常的使用体验提升非常大。

    我很喜欢 Ditto 的一个快捷键实现两个功能的逻辑
    BeyondReach
        29
    BeyondReach  
    OP
       2024-03-06 15:50:14 +08:00
    @iX8NEGGn 麻烦能说具体一点吗? 我下载了软件,在里面不能把 “显示\隐藏主窗口”和“复制下一项”设置为同一个快捷键
    iX8NEGGn
        30
    iX8NEGGn  
       2024-03-06 16:04:54 +08:00
    [Commands]
    1\Name=\x663e\x793a/\x9690\x85cf\x7a97\x53e3\x6216\x5faa\x73af\x7c98\x8d34\xff08\x9012\x589e\xff09
    1\Command="
    copyq:

    const selectedTabOption = 'cycleItemsSelectedTab';
    const selectedRowOption = 'cycleItemsSelectedRow';

    if (focused() && length() > 0) {
    settings(selectedTabOption, selectedTab());

    const sel = ItemSelection().current();
    const rows = sel.rows();
    const row = rows.length > 0 ? (rows[0] + 1) % length() : 0;
    settings(selectedRowOption, row);

    selectItems(row);
    } else {
    settings(selectedRowOption, -1);
    showAt();

    // Wait for shortcut modifiers to be released.
    while (queryKeyboardModifiers().length > 0) {
    sleep(20);
    }

    const row = settings(selectedRowOption)
    if (row != -1) {
    tab(settings(selectedTabOption));
    select(row);
    hide();
    paste();
    }
    }

    // \x6709 bug\xff0c\x4f1a\x81ea\x52a8\x590d\x5236\x6761\x76ee"
    1\InMenu=true
    1\IsGlobalShortcut=true
    1\Icon=\xf15b
    1\GlobalShortcut=ctrl+`
    2\Name=\x5141\x8bb8\x91cd\x590d\x6dfb\x52a0(\x5168\x90e8)
    2\Command="
    global.saveData = function() {
    var bug = str(data(mimeWindowTitle)).endsWith(\"- CopyQ\")
    if(bug) abort()

    var formats = dataFormats()
    if (formats.length !=0){
    var item = {}
    for(var i=0; i<formats.length; i++){
    var mime = formats[i]
    if(!mime.startsWith(\"application/x-copyq\")){
    item[mime] = data(mime)
    }
    }
    add(item)
    }
    }

    global.onClipboardUnchanged = function() {
    if(str(data(mimeOwner))==\"\"){
    onClipboardChanged()
    }
    }"
    2\IsGlobalShortcut=true
    2\IsScript=true
    2\Icon=\xf15b
    2\GlobalShortcut=ctrl+alt+w
    size=2


    复制以上文本导入 CopyQ ,包含两个脚本,一个是允许添加重复文本,另一个是像 Ditto 一样,按 Ctrl + ` 就显示面板,连续按可以下一条,松手将选择的文本粘贴。

    CopyQ 可以通过脚本实现几乎所有功能,就是它的文档太复杂了,不过我已经摸透,有其他需求可以继续追问。
    BeyondReach
        31
    BeyondReach  
    OP
       2024-03-06 16:10:06 +08:00
    @iX8NEGGn 我在 CopyQ 的 github 里找到有人有类似的需求,有人提供的脚本。我试了一下,确实可以实现我想要的效果了。就是显示的复制历史记录界面太繁琐了,不如 ditto 的简洁。
    [Cycle items and paste with single hotkey · Issue #1948 · hluk/CopyQ]( https://github.com/hluk/CopyQ/issues/1948)
    BeyondReach
        32
    BeyondReach  
    OP
       2024-03-06 16:13:13 +08:00
    @iX8NEGGn #30 非常感谢~~

    我现在用这个脚本实现了:[copyq-commands/Global/cycle-items.ini at master · hluk/copyq-commands]( https://github.com/hluk/copyq-commands/blob/master/Global/cycle-items.ini)

    不知道效果和你贴的是不是一样
    iX8NEGGn
        33
    iX8NEGGn  
       2024-03-06 16:20:06 +08:00
    @BeyondReach ,界面可以设置的,我只显示一个面板,所有图标都不显示,很简洁
    iX8NEGGn
        34
    iX8NEGGn  
       2024-03-06 16:29:20 +08:00
    #32 我看了下,差不多一样,我当初应该也是复制这个脚本,然后改了一下满足我的需求
    BeyondReach
        35
    BeyondReach  
    OP
       2024-03-06 16:39:17 +08:00
    @iX8NEGGn #34 我简化后只能这个样子,还有 windows 窗口的窗口,最大化最小化图标,不如 ditto 的简洁

    BeyondReach
        36
    BeyondReach  
    OP
       2024-03-06 16:42:05 +08:00
    @iX8NEGGn #34 设置成复制内容显示为一行,终于感觉有点刻意了,就是头部的地方去不掉

    iX8NEGGn
        37
    iX8NEGGn  
       2024-03-06 16:49:22 +08:00
    差不多了,不过我还把单行显示开启了,更简洁些,窗体边框、最小化图标等貌似没法关闭。可以尝试去提下 Feature ,或 Fork 一份修改,Windows 上倒是挺好改的,我之前因为它的循环粘贴有 bug 自己改过一次,刚看了好像在 7.10 中修复了。
    BeyondReach
        38
    BeyondReach  
    OP
       2024-03-06 16:53:18 +08:00
    @iX8NEGGn #37 嗯,我也找到单行显示的设置了,这样的基本可以了。
    BeyondReach
        39
    BeyondReach  
    OP
       2024-03-09 12:38:33 +08:00
    QGlYOE5FR0duICMzNyAKCk1hYyBtaW5pIE0y5LiK6KOF5LqGQ29weVHvvIzlpI3liLbnmoTml7blgJnmj5DnpLrplJnor6/vvJoKTm90ZSBbMjAyNC0wMy0wOSAxMjozNDo1OC43OTFdIDxTZXJ2ZXItMjc5Nj46ICAgIC0tLSBiYWNrdHJhY2UgLS0tCk5vdGUgWzIwMjQtMDMtMDkgMTI6MzQ6NTguNzkxXSA8U2VydmVyLTI3OTY+OiAgICBAZXZhbCBjb2RlOjMKTm90ZSBbMjAyNC0wMy0wOSAxMjozNDo1OC43OTFdIDxTZXJ2ZXItMjc5Nj46ICAgICVlbnRyeUBldmFsIGNvZGU6NQpOb3RlIFsyMDI0LTAzLTA5IDEyOjM0OjU4Ljc5MV0gPFNlcnZlci0yNzk2PjogICAgZXZhbDpvbkNsaXBib2FyZENoYW5nZWQoKQpOb3RlIFsyMDI0LTAzLTA5IDEyOjM0OjU4Ljc5MV0gPFNlcnZlci0yNzk2PjogICAgZXZhbChhcmd1bWVudHNbMF0pKCkKTm90ZSBbMjAyNC0wMy0wOSAxMjozNDo1OC43OTFdIDxTZXJ2ZXItMjc5Nj46ICAgIC0tLSBlbmQgYmFja3RyYWNlIC0tLQpOb3RlIFsyMDI0LTAzLTA5IDEyOjM2OjMwLjE1OV0gPFNlcnZlci0yNzk2PjogRXhjZXB0aW9uIGluIGNvbW1hbmQ6IFNjcmlwdEVycm9yOiBSZWZlcmVuY2VFcnJvcjogendsWiBpcyBub3QgZGVmaW5lZApOb3RlIFsyMDI0LTAzLTA5IDEyOjM2OjMwLjE1OV0gPFNlcnZlci0yNzk2PjogICAgCgoK5ZyoZ2l0aHVi5LiK55yL5Yiw6L+Z5Liq77yaCjcuMS4wIExhdGVzdApOT1RFOiBtYWNPUyByZWxlYXNlIGlzIGN1cnJlbnRseSBibG9ja2VkIHVudGlsICMyNDUwIGlzIHJlc29sdmVkLgpbUmVsZWFzZSA3LjEuMCDCtyBobHVrL0NvcHlRXShodHRwczovL2dpdGh1Yi5jb20vaGx1ay9Db3B5US9yZWxlYXNlcy90YWcvdjcuMS4wKQoKCuaYr+S4jeaYr01hY+eOsOWcqOaXoOazleeUqOi/meS4qui9r+S7tuS6hu+8nwoK
    BeyondReach
        40
    BeyondReach  
    OP
       2024-03-09 12:40:06 +08:00
    @BeyondReach #38

    @iX8NEGGn #37 Mac mini M2 上装了 CopyQ ,复制的时候提示错误:
    Note [2024-03-09 12:38:48.785] <Server-2796>: --- backtrace ---
    Note [2024-03-09 12:38:48.785] <Server-2796>: @eval code:3
    Note [2024-03-09 12:38:48.785] <Server-2796>: %entry@eval code:5
    Note [2024-03-09 12:38:48.785] <Server-2796>: eval:onClipboardChanged()
    Note [2024-03-09 12:38:48.785] <Server-2796>: eval(arguments[0])()
    Note [2024-03-09 12:38:48.785] <Server-2796>: --- end backtrace ---
    Note [2024-03-09 12:38:48.988] <Server-2796>: Exception in command: ScriptError: ReferenceError: zwlZ is not defined
    Note [2024-03-09 12:38:48.988] <Server-2796>:


    在 github 上看到这个:7.1.0 LatestNOTE: macOS release is currently blocked until #2450 is resolved.
    [Release 7.1.0 · hluk/CopyQ]( https://github.com/hluk/CopyQ/releases/tag/v7.1.0)


    是不是 Mac 现在无法用这个软件了?
    iX8NEGGn
        41
    iX8NEGGn  
       2024-03-09 17:00:03 +08:00 via iPhone
    @BeyondReach 下 7.0 呗,不过可能循环复制粘贴时有 bug ,粘贴之后有时会错误的把粘贴的内容又复制到 CopyQ ,或下 6.5 之前的没这个 bug
    BeyondReach
        42
    BeyondReach  
    OP
       2024-03-10 16:12:48 +08:00
    @iX8NEGGn #41 安装了 6.4.0 版本,没有错误提示了,但是复制的内容就是不显示在程序里
    Ozonated
        43
    Ozonated  
       360 天前
    @OneMan 好一个波澜不惊
    BeyondReach
        44
    BeyondReach  
    OP
       360 天前
    @sinotw #21 兄弟,你以前用过,现在不用了么😁
    BeyondReach
        45
    BeyondReach  
    OP
       360 天前
    @goodryb 能用,但是操作太复杂了,ditto 只用一个组合键 ctrl+~就实现你说的这些功能了(不过只能往下选择)
    BeyondReach
        46
    BeyondReach  
    OP
       356 天前
    @iX8NEGGn #27 我用了这个脚本,只能通过快捷键显示复制条目,选择条目,但松开快捷键的时候,并不会在光标处粘贴该条目
    iX8NEGGn
        47
    iX8NEGGn  
       356 天前
    @BeyondReach #46 比如我的快捷键是 “Ctrl + `”,按住 “Ctrl” 不放,然后按下 “`”,这时显示界面,然后再按下 “`”,这时会自动选择下一条,然后松手就粘贴当前条了。

    你应该是只按 “Ctrl + `” 然后松手,如果弄成这样的逻辑的话,改下脚本代码也行,但这岂不是每次按下 “Ctrl + `” 都必须粘贴,有时候只是想调出界面,然后从某一条开始粘贴(不一定是从第一条),之后再循环粘贴。

    所以现在的脚本逻辑是这样的,第一下先按 “Ctrl + `” 调出界面,然后鼠标选择从哪一条开始执行循环粘贴,双击它粘贴这一条,之后每次按住 “Ctrl” 不放,然后按下 “`”,然后再按下 “`”,然后松手就粘贴下一条了。
    BeyondReach
        48
    BeyondReach  
    OP
       356 天前
    @iX8NEGGn #47 我的操作应该和你是一样的,也就是 windows 上 Ditto 的操作逻辑:快捷键是 “Ctrl + `”,按住 “Ctrl” 不放,然后按下 “`”,这时显示界面,然后再按下 “`”,这时会自动选择下一条,然后松手就粘贴当前条了。

    也就是使用 Ctrl+`,显示页面,按住 Ctrl 不放,按下“`”来向下选择条目,当选择到想要粘贴的条目后,放开 Ctrl+`,这样该条目就会粘贴到鼠标光标所有的位置

    请问你的脚本,或者我在 github 上找到的脚本,也是我这样的操作逻辑吗?
    iX8NEGGn
        49
    iX8NEGGn  
       355 天前
    @BeyondReach 是的,是这样的逻辑
    iX8NEGGn
        50
    iX8NEGGn  
       355 天前
    https://copyq.readthedocs.io/en/latest/known-issues.html#known-issue-macos-paste-after-install
    https://github.com/hluk/CopyQ/issues/1030
    https://github.com/hluk/CopyQ/issues/1245

    在 macOS 上,CopyQ 在安装/更新后不会粘贴:

    CopyQ 不是签名应用程序,您需要在安装或更新时再次授予可访问性。

    要解决此问题,请尝试以下步骤:

    转到系统偏好设置 -> 安全和隐私 -> 隐私 -> 辅助功能(或仅搜索“允许应用程序使用辅助功能”)。

    单击解锁按钮。

    从列表中选择 CopyQ 并将其删除(使用“-”按钮)。
    BeyondReach
        51
    BeyondReach  
    OP
       355 天前
    @iX8NEGGn #50 这软件也太麻烦了,其他的剪贴板管理软件都没这毛病。

    我用了你提示的方法,已经可以粘贴了。之前我只是点击授权的圆圈,没想到要删除后再授权

    现在还有一个问题,我复制的内容,好像不会出现在 CopyQ 里了,之前还能正常显示复制的内容的,忽然就不行了
    monkeybape
        52
    monkeybape  
       213 天前 via iPhone
    一直也在找 Mac 上的替代
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3780 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 10:24 · PVG 18:24 · LAX 03:24 · JFK 06:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.