Cross-platform clipboard utilities supporting both binary and text data.
Project description
PyClip
Cross-platform clipboard utilities supporting both binary and text data.
Some key features include:
- A cross-platform API (supports MacOS, Windows, Linux)
- Can handle arbitrary binary data
- On Windows, some additional clipboard formats are supported
Installation
Requires python 3.7+
pip install pyclip
Usage
pyclip can be used in Python code
import pyclip
pyclip.copy("hello clipboard") # copy data to the clipboard
cb_data = pyclip.paste() # retrieve clipboard contents
print(cb_data) # b'hello clipboard'
cb_text = pyclip.paste(text=True) # paste as text
print(cb_text) # 'hello clipboard'
pyclip.clear() # clears the clipboard contents
assert not pyclip.paste()
Or a CLI
# paste clipboard contents to stdout
python -m pyclip paste
# load contents to the clipboard from stdin
python -m pyclip copy < myfile.text
# same as above, but pipe from another command
some-program | python -m pyclip copy
Installing via pip also provides the console script pyclip
:
pyclip copy < my_file.txt
This library implements functionality for several platforms and clipboard utilities.
- MacOS
- Windows
- Linux on x11 (with
xclip
) - Linux on wayland (with
wl-clipboard
)
If there is a platform or utility not currently listed, please request it by creating an issue.
Platform specific notes/issues
Windows
- On Windows, the
pywin32
package is installed as a requirement. - On Windows, additional clipboard formats are supported, including copying from a file (like if you right-click copy from File Explorer)
MacOS
MacOS has support for multiple backends. By default, the pasteboard
package is used.
pbcopy
/pbpaste
can also be used as a backend, but does not support arbitrary binary data, which may lead to
data being lost on copy/paste. This backend may be removed in a future release.
Linux
Linux on X11 requires xclip
to work. Install with your package manager, e.g. sudo apt install xclip
Linux on Wayland requires wl-clipboard
to work. Install with your package manager, e.g. sudo apt install wl-clipboard
Acknowledgements
Big thanks to Howard Mao for donating the PyClip project name on PyPI to this project.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pyclip-0.7.0.tar.gz
.
File metadata
- Download URL: pyclip-0.7.0.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57602047a4ceab709bdcd42f3dde6449a3349b95c16154cfdce27376a2072491 |
|
MD5 | 6f03fc99b9885686b8868798e027fd8e |
|
BLAKE2b-256 | 658a98ed02d81dea4b2211a4746724d7a271264b701c991fed503c246de52864 |
File details
Details for the file pyclip-0.7.0-py3-none-any.whl
.
File metadata
- Download URL: pyclip-0.7.0-py3-none-any.whl
- Upload date:
- Size: 18.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7b7ea2cfad2dd61e86a529af588d006070d3eb0bd32981afaee5215f4604fec |
|
MD5 | 608a174777858ef9dd737b040745ccd1 |
|
BLAKE2b-256 | 7d4f4b02e2c232ddf694bca0baea3049b886eeb80ee3d89c415067f5191596c1 |