copypasta

Crates.iocopypasta
lib.rscopypasta
version0.10.1
sourcesrc
created_at2016-10-08 18:33:14.247952
updated_at2024-02-05 13:03:32.242135
descriptioncopypasta is a cross-platform library for getting and setting the contents of the OS-level clipboard.
homepage
repositoryhttps://github.com/alacritty/copypasta
max_upload_size
id6787
size51,322
Publishers (github:alacritty:publishers)

documentation

https://docs.rs/copypasta

README

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, 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);
}

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.

Commit count: 39

cargo fmt