3 个不稳定版本
0.2.0 | 2020年2月13日 |
---|---|
0.1.1 | 2020年2月13日 |
0.1.0 | 2020年2月13日 |
#851 in Unix API
每月 70 次下载
用于 2 crates
32KB
340 代码行
rust-clipboard-ext
为 rust-clipboard
库提供有用扩展的剪贴板库。
我对 rust-clipboard
感到越来越烦恼,因为按照X11的设计,当你的应用程序退出时,Linux/X11平台上的剪贴板将被清除。维护者不想实现解决方案(有正当理由)。这个 clipboard-ext
包提供了额外的剪贴板上下文,可以解决这个问题,还有一些其他添加。
以下是其中一些添加:
X11ForkClipboardProvider
: 分叉进程并设置剪贴板,退出后保持内容X11BinClipboardProvider
: 调用xclip/
xsel
来设置剪贴板,退出后保持内容Osc52ClipboardContext
: 使用OSC 52转义序列来设置剪贴板内容CombinedClipboardProvider
: 组合两个提供者,使用不同的提供者来获取/设置剪贴板
示例
获取和设置剪贴板内容。通过分叉进程,在退出后保持X11剪贴板内容。在非X11平台上回退到标准剪贴板提供者。有关详细信息,请参阅x11_fork
模块。
use clipboard_ext::prelude::*;
use clipboard_ext::x11_fork::ClipboardContext;
fn main() {
let mut ctx = ClipboardContext::new().unwrap();
println!("{:?}", ctx.get_contents());
ctx.set_contents("some string".into()).unwrap();
}
获取和设置剪贴板内容。通过调用 xclip/
xsel
,在退出后保持X11剪贴板内容。在非X11平台上回退到标准剪贴板提供者。有关详细信息,请参阅x11_bin
模块。
use clipboard_ext::prelude::*;
use clipboard_ext::x11_bin::ClipboardContext;
fn main() {
let mut ctx = ClipboardContext::new().unwrap();
println!("{:?}", ctx.get_contents());
ctx.set_contents("some string".into()).unwrap();
}
要求
- Rust 1.40或更高版本
- 与
rust-clipboard
的要求相同 - 特定剪贴板上下文模块中注明的需求
特别感谢
- 致
aweinstock314
,感谢他为构建rust-clipboard
所做的贡献 - 致所有参与使用所有crate依赖的人
许可证
本项目采用MIT和Apache2许可证双授权。
依赖
~0–1MB
~16K SLoC