2025-06-27 02:31:23 +01:00

96 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📋 nu_plugin_clipboard
A [nushell](https://www.nushell.sh/) plugin for interacting with the clipboard, allowing you to copy/paste text, objects, and tables.
## ✨ Features
- **`clipboard copy`**: Copies input text to the clipboard.
- **Daemon Behavior:** Since version **0.105.2**, using env variables will try to detect display server.
This config will override this behavior, if you need to override this please report and issue:
```bash
$env.config.plugins.clipboard.NO_DAEMON = true
```
- To make this setting permanent, add it to your `config env`.
- **`clipboard paste`**: Retrieves the current clipboard content.
## ⚠️ Important
If you face the error `Error: × Clipboard Error: The clipboard contents were not available in the requested format...`
Try disabling the daemon mode, as mentioned in [#20](https://github.com/FMotalleb/nu_plugin_clipboard/issues/20).
## 📌 Usage Examples
### Copying a string (supports only strings for now)
```bash
echo "test value" | clipboard copy
```
### Using clipboard content
```bash
clipboard paste | echo $in
```
### Copying tables and objects
- Tables and objects are internally converted to **JSON**.
- When pasting, `clipboard paste` tries to parse JSON into a table or object.
- If parsing fails, the content is returned as a string.
```bash
$env | clipboard copy
clipboard paste
ps | clipboard copy
clipboard paste
```
## 🔧 Installation
### 🚀 Recommended: Using [nupm](https://github.com/nushell/nupm)
This method automatically handles dependencies and features:
```bash
git clone https://github.com/FMotalleb/nu_plugin_clipboard.git
nupm install --path nu_plugin_clipboard -f
```
### ⚙️ Supported Features
- **`use-wayland`**: Prioritizes the Wayland API, but falls back to X11 if needed.
- **`enforce-daemon`**: _(Deprecated)_ Now always enabled on Linux. Disable with:
```bash
$env.config.plugins.clipboard.NO_DAEMON = true
```
### 🛠️ Manual Compilation
```bash
git clone https://github.com/FMotalleb/nu_plugin_clipboard.git
cd nu_plugin_clipboard
cargo build -r
plugin add target/release/nu_plugin_clipboard
```
### 📦 Install via Cargo (using git)
```bash
cargo install --git https://github.com/FMotalleb/nu_plugin_clipboard.git
plugin add ~/.cargo/bin/nu_plugin_clipboard
```
### 📦 Install via Cargo (crates.io) _Not Recommended_
- Since I live in Iran and crates.io won't let me update my packages like a normal person, most of the time crates.io is outdated.
```bash
cargo install nu_plugin_clipboard
plugin add ~/.cargo/bin/nu_plugin_clipboard
```