Добавляем действия в буфер обмена (klipper) plasma5
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже, но kde4 - RIP) есть такая крутая функция, как "Действия", которая позволяет расширять функциональность с помощью скриптов, а значит всё, что мы можем делать с содержимым буфера ограничивается лишь нашей фантазией. Ниже будут приведены несколько простых примеров.
Перевести текст в нижний регистр.
Жмем пкм по значку ножниц на панели -> Настроить буфер обмена -> Действия.
Жмем "Добавить действие".
В открывшемся окне в "Свойствах действия" оставим поле для регулярного выражения пустым, так как мы хотим, чтоб действие выполнялось для любого текста; отключим флажок "Автоматически". Описание здесь не обязательно, его все равно не видно, когда действие выбираешь.
Далее - добавим команду.
Команда: 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