Добавляем действия в буфер обмена (klipper) plasma5

Материал из Rosalab Wiki

Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Перейти к: навигация, поиск

У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже, но kde4 — RIP) есть такая крутая функция, как «Действия», которая позволяет расширять функциональность с помощью скриптов, а значит всё, что мы можем делать с содержимым буфера ограничивается лишь нашей фантазией. Ниже будут приведены несколько простых примеров.

Преобразование текста

Используя возможности bash

Перевести текст в нижний регистр.

Жмем пкм по значку ножниц на панели -> Настроить буфер обмена -> Действия.
Screenshot 1.png

Жмем «Добавить действие».
В открывшемся окне в «Свойствах действия» оставим поле для регулярного выражения пустым, так как мы хотим, чтоб действие выполнялось для любого текста; отключим флажок «Автоматически». Описание здесь не обязательно, его все равно не видно, когда действие выбираешь.
Далее — добавим команду.

 Команда: string="%s" ; echo -n "${string,,}"
 Вывод команды: тыкаем два раза лкм по "Игнорировать" и выбираем "Скопировать в буфер обмена".
 Описание: "Convert to lowercase", ну, или можно ввести "Перевести в нижний регистр".

Screenshot 2.png
Жмем «Ок». В предыдущем окне тож «Ок».
Проверяем:
Screenshot 3.png

Screenshot 4.png

Screenshot 5.png

Если текст из буфера пропал после выполнения действия, то скорее всего была допущена ошибка в команде.

Перевести текст в верхний регистр.

Нужно проделать то же, что и в предыдущем примере, только указать другую команду и описание.

 Свойства действия:
   Регулярное выражение: отсутствует
   Автоматически: Нет
   Описание: отсутствует
 Команда для действия:
   Команда: string="%s" ; echo -n "${string^^}"
   Вывод команды: Сохранить в буфер
   Описание: "Convert to uppercase". Или "Перевести в верхний регистр".

Screenshot 6.png

Каждое слово начинается с большой буквы

 Свойства действия:
   Регулярное выражение: отсутствует
   Автоматически: Нет
   Описание: отсутствует
 Команда для действия:
   Команда: string="%s" ; string=($string) ; string="${string[@]^}" ; echo -n "$string"
   Вывод команды: Сохранить в буфер
   Описание: "Convert to titlecase".

Screenshot 7.png
Тут есть один нюанс. Если текст в буфере в верхнем регистре, то его нужно сначала перевести в нижний, а потом уже в titlecase. Иначе не сработает.


Окно настройки действий с добавленными командами:

Screenshot 8.png


Прочее

Открыть скопированный текст в kwrite

 Свойства действия:
   Регулярное выражение: отсутствует
   Автоматически: Нет
   Описание: отсутствует
 Команда для действия:
   Команда: echo -n %s | kwrite -i -l 1 -c 1
   Вывод команды: Игнорировать
   Описание: "Open at kwrite".