Cross platform node system clipboard work with text, image, files
npm install clipboard-sys!Tested
!Released
!Supported node LTS versions
> Access the system clipboard
- copy/paste text
- copy/paste image
- copy/paste files
Cross-platform!
Supports:
- Windows
- Linux (xclip supporting systems) should be installed xclip (sudo apt-get install xclip)
- MacOS
``nodejs`
npm install clipboard-sys
`typescript
import { clipboard } from './index';
import fs from 'fs';
async function readWriteText() {
await clipboard.writeText('some text');
console.log('text from clipboard:', await clipboard.readText());
}
readWriteText();
async function readWriteImage() {
await clipboard.writeImage('./source.png');
await clipboard.readImage('./destination.png');
await clipboard.writeImage(fs.readFileSync('./source.png')); //buffer
return await clipboard.readImage(); //buffer
}
readWriteImage();
async function copyFiles() {
await clipboard.writeFiles('./source1.txt', './source2.png');
console.log(await clipboard.readFiles());
}
copyFiles();
async function pasteFiles() {
await clipboard.pasteFiles('Copy', './destinationFolder', './source1.png', './source2.png');
await clipboard.pasteFiles('Cut', './destinationFolder', './source1.png', './source2.png');
}
pasteFiles();
`
`typescript``
export interface SysClipboard {
readText(): Promise
writeText(text: string): Promise
readImage(file?: string): Promise
writeImage(file: string | Buffer): Promise
readFiles(): Promise
pasteFiles(action: 'Copy' | 'Cut', destinationFolder: string, ...files: Array
writeFiles(...files: Array
}
#### Contribution
Opened for contribution