13 releases
Uses old Rust 2015
0.5.0 | Sep 22, 2018 |
---|---|
0.4.6 | Feb 22, 2018 |
0.4.2 | Sep 26, 2017 |
0.4.0 | Jun 19, 2017 |
0.1.0 | Nov 30, 2015 |
#1005 in Unix APIs
6,918 downloads per month
Used in 185 crates
(151 directly)
15KB
188 lines
rust-clipboard
rust-clipboard is a cross-platform library for getting and setting the contents of the OS-level clipboard.
It has been tested on Windows, Mac OSX, GNU/Linux, and FreeBSD.
It is used in Mozilla Servo.
Prerequisites
On Linux you need the x11 library, install it with something like:
sudo apt-get install xorg-dev
Example
extern crate clipboard;
use clipboard::ClipboardProvider;
use clipboard::ClipboardContext;
fn example() {
let mut ctx: ClipboardContext = ClipboardProvider::new().unwrap();
println!("{:?}", ctx.get_contents());
ctx.set_contents("some string".to_owned()).unwrap();
}
API
The ClipboardProvider
trait has the following functions:
fn new() -> Result<Self, Box<Error>>;
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–330KB