Добавляем действия в буфер обмена (klipper) plasma5
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже, но kde4 — RIP) есть такая крутая функция, как «Действия», которая позволяет расширять функциональность с помощью скриптов, а значит всё, что мы можем делать с содержимым буфера ограничивается лишь нашей фантазией. Ниже будут приведены несколько простых примеров.
Содержание
Преобразование текста
Используя возможности bash
Перевести текст в нижний регистр.
Жмем пкм по значку ножниц на панели -> Настроить буфер обмена -> Действия.
Жмем «Добавить действие».
В открывшемся окне в «Свойствах действия» оставим поле для регулярного выражения пустым, так как мы хотим, чтоб действие выполнялось для любого текста; отключим флажок «Автоматически». Описание здесь не обязательно, его все равно не видно, когда действие выбираешь.
Далее — добавим команду.
Команда: string="%s" ; echo -n "${string,,}" Вывод команды: тыкаем два раза лкм по "Игнорировать" и выбираем "Скопировать в буфер обмена". Описание: "Convert to lowercase", ну, или можно ввести "Перевести в нижний регистр".
Жмем «Ок». В предыдущем окне тож «Ок».
Проверяем:
Если текст из буфера пропал после выполнения действия, то скорее всего была допущена ошибка в команде.
Перевести текст в верхний регистр.
Нужно проделать то же, что и в предыдущем примере, только указать другую команду и описание.
Свойства действия: Регулярное выражение: отсутствует Автоматически: Нет Описание: отсутствует Команда для действия: Команда: string="%s" ; echo -n "${string^^}" Вывод команды: Сохранить в буфер Описание: "Convert to uppercase". Или "Перевести в верхний регистр".
Каждое слово начинается с заглавной буквы
Свойства действия: Регулярное выражение: отсутствует Автоматически: Нет Описание: отсутствует Команда для действия: Команда: string="%s" ; string=($string) ; string="${string[@]^}" ; echo -n "$string" Вывод команды: Сохранить в буфер Описание: "Convert to titlecase".
Тут есть один нюанс. Если текст в буфере в верхнем регистре, то его нужно сначала перевести в нижний, а потом уже в titlecase. Иначе не сработает.
Окно настройки действий с добавленными командами:
Используя скрипт на python3
Скачиваем этот скрипт: File:text-processing.zip
Кладем его, например, в ~/.local/bin/.
Далее, добавляем новые действия.
Перевести текст в нижний регистр.
Свойства действия: Регулярное выражение: отсутствует Автоматически: Нет Описание: отсутствует Команда для действия: Команда: python3 ~/.local/bin/text-processing -l -n -i '%s' Вывод команды: Сохранить в буфер Описание: "Convert to lowercase with python script.".
Перевести текст в верхний регистр.
Все тоже, что и в примере выше, только другое описание и команда.
Команда: python3 ~/.local/bin/text-processing -u -n -i '%s'
Каждое слово начинается с заглавной буквы
Команда: python3 ~/.local/bin/text-processing -t -n -i '%s'
Сделать инверсию
Символы в верхнем регистре перевести в нижний, а в нижнем - в верхний.
Команда: python3 ~/.local/bin/text-processing -s -n -i '%s'
Пример:
HeLlO WoRlD. hElLo wOrLd.
Прочее
Открыть скопированный текст в kwrite
Свойства действия: Регулярное выражение: отсутствует Автоматически: Нет Описание: отсутствует Команда для действия: Команда: echo -n '%s' | kwrite -i -l 1 -c 1 Вывод команды: Игнорировать Описание: "Open at kwrite".
Где klipper сохраняет пользовательские действия
klipper сохраняет пользовательские действия в файле ~/.config/plasmashellrc в разделах "[Action_№]" и "[Action_№/Command_№]".