8 个版本

0.4.1 2023年10月31日
0.4.0 2023年3月23日
0.3.1 2021年11月6日
0.3.0 2021年10月26日
0.1.1 2020年9月8日

文本处理 中排名 551

Download history 365/week @ 2024-04-23 290/week @ 2024-04-30 214/week @ 2024-05-07 273/week @ 2024-05-14 250/week @ 2024-05-21 311/week @ 2024-05-28 266/week @ 2024-06-04 250/week @ 2024-06-11 246/week @ 2024-06-18 231/week @ 2024-06-25 193/week @ 2024-07-02 235/week @ 2024-07-09 276/week @ 2024-07-16 242/week @ 2024-07-23 334/week @ 2024-07-30 305/week @ 2024-08-06

每月下载量 1,206
用于 11 crate(9 个直接使用)

MIT 许可证

17KB
311 代码行

terminal-clipboard

CI MIT Latest Version Chat on Miaou

terminal-clipboard 是一个专注于终端应用程序字符串复制和粘贴的跨平台剪贴板库

  • 它在 Linux、Windows 和 Android (Termux) 上进行了测试
  • 它只处理字符串类型,不处理其他类型
  • 它不处理非 UTF8 字符串

使用方法

terminal_clipboard::set_string("test").unwrap();
assert_eq!("test", terminal_clipboard::get_string().unwrap());

支持的平台

当前实现是从编译目标的 "target_os" 部分选择的。

Android (Termux)

当前的实现将回退到 Termux API 功能以访问 Android 剪贴板,如果运行时 Termux API 不可用,则不会工作。

如果您知道在没有 Termux 的情况下访问 Android 剪贴板的方法,请提出问题。

Linux

如果检测到类 Unix 目标且未启用 "termux" 功能,terminal-clipboard 将使用 x11-clipboard crate。

您需要 libxcb 来编译。

在 Debian 和 Ubuntu 上,您可以使用以下命令安装它们

sudo apt install libxcb1-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev -y

Fedora、Centos、Red Hat

sudo dnf install libxcb -y

openSUSE

sudo zypper --non-interactive install xorg-x11-util-devel libxcb-composite0 libxcb-render0 libxcb-shape0 libxcb-xfixes0

Arch Linux

sudo pacman -Syu --noconfirm libxcb

Alpine 不受支持。对于 Alpine,您必须使用 musl 而不是 gnu,并提供替代行为。

#[cfg(not(target_env = "musl"))]
{
  terminal_clipboard::set_string(answer_text).unwrap();
  assert_eq!(*answer_text, terminal_clipboard::get_string().unwrap());
  println!("Text '{answer_text}' was copied to your clipboard")
}
#[cfg(target_env = "musl")]
{
  println!("{}", answer_text);
}

Windows

如果编译目标是 "windows",terminal-clipboard 将使用 clipboard-win crate。如果您只对这一平台感兴趣,您应直接使用此 crate。

依赖项

~0–1.5MB
~30K SLoC