#clipboard

copypasta

copypasta is a cross-platform library for getting and setting the contents of the OS-level clipboard

7 releases

0.7.1 Oct 3, 2020
0.7.0 May 20, 2020
0.6.3 Mar 9, 2020
0.6.2 Jan 11, 2020
0.0.1 Oct 8, 2016

#5 in #clipboard

Download history 4152/week @ 2020-11-06 4017/week @ 2020-11-13 3462/week @ 2020-11-20 2740/week @ 2020-11-27 2979/week @ 2020-12-04 2671/week @ 2020-12-11 2979/week @ 2020-12-18 2550/week @ 2020-12-25 3413/week @ 2021-01-01 3817/week @ 2021-01-08 3130/week @ 2021-01-15 3080/week @ 2021-01-22 3688/week @ 2021-01-29 3429/week @ 2021-02-05 3375/week @ 2021-02-12 3098/week @ 2021-02-19

9,896 downloads per month
Used in 44 crates (13 directly)

MIT/Apache

17KB
258 lines

copypasta

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.

Example

extern crate copypasta;

use copypasta::ClipboardContext;

fn example() {
    let mut ctx = ClipboardContext::new().unwrap();
    println!("{:?}", ctx.get_contents());
    ctx.set_contents("some string".to_owned()).unwrap();
}

API

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).

License

rust-clipboard is dual-licensed under MIT and Apache2.

Dependencies

~0–600KB
~11K SLoC