Crates.io | copypasta |
lib.rs | copypasta |
version | 0.10.1 |
source | src |
created_at | 2016-10-08 18:33:14.247952 |
updated_at | 2024-02-05 13:03:32.242135 |
description | copypasta is a cross-platform library for getting and setting the contents of the OS-level clipboard. |
homepage | |
repository | https://github.com/alacritty/copypasta |
max_upload_size | |
id | 6787 |
size | 51,322 |
copypasta is a rust-clipboard fork, adding support for the Wayland clipboard.
rust-clipboard is a cross-platform library for getting and setting the contents of the OS-level clipboard.
extern crate copypasta;
use copypasta::{ClipboardContext, ClipboardProvider};
fn main() {
let mut ctx = ClipboardContext::new().unwrap();
let msg = "Hello, world!";
ctx.set_contents(msg.to_owned()).unwrap();
let content = ctx.get_contents().unwrap();
println!("{}", content);
}
The ClipboardProvider
trait has the following functions:
fn get_contents(&mut self) -> Result<String, Box<Error>>;
fn set_contents(&mut self, String) -> Result<(), Box<Error>>;
ClipboardContext
is a type alias for one of {WindowsClipboardContext
, OSXClipboardContext
, X11ClipboardContext
, NopClipboardContext
}, all of which implement ClipboardProvider
. Which concrete type is chosen for ClipboardContext
depends on the OS (via conditional compilation).
rust-clipboard
is dual-licensed under MIT and Apache2.