Как скопировать текст в буфер обмена при использовании Wayland?

18

Существует ли утилита Wayland cli, которая копирует текст в буфер обмена?

Я хочу быть в состоянии сделать что-то вроде этого:

echo "some" > clipboard

Что-то эквивалентное xclip.

тк-cbon
источник
1
Мне было бы очень интересно увидеть ответ на этот вопрос тоже. Судя по тому, что я использовал gnome-wayland, у меня много ограничений на доступ к буферу обмена. Например, если вы скопируете что-либо в программе A и закроете это, буфер обмена автоматически очистится. Нет ограничений на копирование в буфер обмена для xclip, но кажется, что вставка будет работать, только если вы скопировали что-то в терминале, но не где-либо еще. с другой стороны, ctrl-v / shift-ctrl-v не имеет ограничений, пока открыто оригинальное приложение ...
thebunnyrules
Обсуждение относительно Wayland + буфер обмена - wiki.gnome.org/Initiatives/Wayland/PrimarySelection . Согласно этому билету, это звучит так, как будто оно было реализовано - github.com/swaywm/sway/issues/1012 .
Slm
спасибо за ссылки, однако это не помогло мне. может быть, я что-то пропустил
mh-cbon

Ответы:

12

wl-буфер обмена bugaevc - это утилиты копирования / вставки для Wayland:

В этом проекте реализованы две маленькие утилиты Wayland для буфера обмена, wl-copy и wl-paste, которые позволяют легко копировать данные между буфером обмена и конвейерами Unix, сокетами, файлами и так далее.

Использование так же просто, как:

# copy a simple text message
$ wl-copy Hello world!

# copy the list of files in Downloads
$ ls ~/Downloads | wl-copy

# copy an image file
$ wl-copy < ~/Pictures/photo.png

# paste to a file
$ wl-paste > clipboard.txt

# grep each pasted word in file source.c
$ for word in $(wl-paste); do grep $word source.c; done

# copy the previous command
$ wl-copy "!!"

# replace the current selection with the list of types it's offered in
$ wl-paste --list-types | wl-copy

Хотя wl-copy и wl-paste особенно оптимизированы для обычного текста и других текстовых форматов контента, они полностью поддерживают контент произвольных типов MIME. wl-copy автоматически определяет тип копируемого содержимого, выполняя для него xdg-mime (1). wl-paste старается выбрать тип для вставки на основе списка предлагаемых типов MIME и расширения файла, в который он вставляет. Если вы не удовлетворены выбранным типом или не хотите полагаться на этот неявный вывод типа, вы можете явно указать тип для использования с параметром --type.

adabru
источник
выглядит действительно круто! но я встретился с src/meson.build:1:0: ERROR: Dependency "wayland-client" not found, tried pkgconfig and cmakeво время установки. Я уверен, что это глупая ошибка от меня. это ? Я бегал sudo dnf i meson -yдо попытки сборки.
MH-Cbon
1
@ mh-cbon На своей странице github написано: The only mandatory dependency is the wayland-client library (try package named wayland-devel or libwayland-dev). Может быть, установка одного из упомянутых пакетов поможет? В качестве альтернативы, возможно, пакет можно найти в официальных репозиториях пакетов.
Адабру
он отлично работает после того, как я установил wayland-develпакет. Благодарность!
MH-Cbon
4

wclip - это инструмент буфера обмена для Wayland, который очень похож на xclip.

Использование заключается в следующем:

$ wclip i < my_text_file

$ wclip o contents of my text file $

Отказ от ответственности: я автор.

Дж. Ван
источник