Clipmenu 是一个简单的剪贴板管理器,使用 dmenu (或带有CM_LAUNCHER=rofi
的 rofi )和 xsel。
启动clipmenud
,然后运行clipmenu
以选择要放入剪贴板的内容。对于 systemd 用户,名为clipmenud
的用户服务被打包为项目的一部分。
对于那些使用 systemd 单元并且不使用自动执行此操作的桌面环境的用户,您必须导入$DISPLAY
以便clipmenud
知道要使用哪个 X 服务器。例如,在启动 Clipmenud 之前在~/.xinitrc
中执行此操作:
systemctl --user import-environment DISPLAY
您可能希望在窗口管理器中绑定一个快捷方式来启动clipmenu
。
传递给 Clipmenu 的所有参数都透明地分派给 dmenu。也就是说,如果您通常使用 args 调用 dmenu 来设置颜色和其他属性,则可以以完全相同的方式调用 Clipmenu 以获得相同的效果,如下所示:
clipmenu -i -fn Terminus:size=8 -nb '#002b36' -nf '#839496' -sb '#073642' -sf '#93a1a1'
有关clipmenud可以采用的环境变量的完整列表,请参阅clipmenud --help
。
可以通过环境变量自定义clipmenud
的行为。尽管只有 <300 行,但 Clipmenu 具有许多有用的功能,包括:
clipctl disable
暂时禁用剪辑收集,使用clipctl enable
检查clipmenud --help
以查看所有可能的环境变量及其作用。如果您使用systemd
管理clipmenud
,则可以使用systemctl --user edit clipmenud
来覆盖默认值以生成覆盖文件。
任何符合 dmenu 的应用程序都可以工作,但以下是已知可以工作的CM_LAUNCHER
配置:
dmenu
(默认)fzf
rofi
rofi-script
, 用于 rofi 的脚本模式包括 Arch 和 Nix 在内的多个发行版都提供了 Clipmenu 作为名为clipmenu
官方包。
如果您的发行版未提供软件包,您可以使用make install
手动安装(或者更好的是,为您的发行版创建一个软件包!)。您将需要安装xsel
和clipnotify
,还需要dmenu
除非您打算使用不同的启动器。
Clipmenud 少于 300 行,clipmenu 少于 100 行,所以希望它应该是相当不言自明的。然而,在最基本的层面上:
clipmenud
使用clipnotify 等待新的剪贴板事件。clipmenud
检测到剪贴板内容发生更改,它将它们写入缓存目录和使用哈希作为文件名的索引。 clipmenu
读取索引以查找所有可用的剪辑。dmenu
是为了允许用户选择剪辑。