Добавляем действия в буфер обмена (klipper) plasma5
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже) есть такая крутая функция, как «Действия», которая позволяет расширять функциональность с помощью скриптов. Ниже приведены несколько простых примеров.
Содержание
Преобразование текста
Используя возможности bash
Перевести текст в нижний регистр.
Жмём пкм по значку буфера обмена на панели -> «Настроить буфер обмена» -> «Настройка действий».
Жмём «Добавить действие».
В открывшемся окне поле «Шаблон соответствия» оставляем пустым, так как мы хотим, чтобы действие выполнялось для любого текста;
В описании пишем, например, «Конвертация текста».
Отключим флажок «Включить во всплывающем меню авто действий».
Жмякаем «Добавить команду».
В окне «Свойства команды» указываем:
Команда: TEXT="%s" && echo -n "${TEXT,,}" Описание: "Перевести в нижний регистр". Выходные данные команды: Активируем "Заменить текущее содержимое буфера обмена".
Жмем «Ок». В предыдущем окне тоже «Ок». Далее «Применить».
Проверяем:
Если текст из буфера пропал после выполнения действия, то скорее всего была допущена ошибка в команде и следует всё перепроверить.
Перевести текст в верхний регистр.
Если действие «Конвертация текста» уже существует, то кликаем по нему и жмём кнопку «Изменить действие», в открывшемся окне жмякаем «Добавить команду».
В окне «Свойства команды» указываем:
Команда: TEXT="%s" && echo -n "${TEXT^^}" Описание: "Перевести в верхний регистр". Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Если действие «Конвертация текста» ещё не существует, то выполняем то же, что и в разделе «Перевести текст в нижний регистр» в начале этой страницы, только нужно будет указать команду и описание из этого раздела.
Окно настроек действий с добавленными командами:
Используя sed
Перевести текст в нижний регистр
Свойства команды: Команда: TEXT="%s" && echo -n "$TEXT" | sed -e 's/\(.*\)/\L\1/' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Перевести текст в верхний регистр
Свойства команды: Команда: TEXT="%s" && echo -n "$TEXT" | sed -e 's/\(.*\)/\U\1/' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Сделать первую букву каждого слова большой (titlecase)
Свойства команды: Команда: TEXT="%s" && echo -n "$TEXT" | sed "s/.*/\L&/; s/[a-zа-я']*/\u&/g" Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Используя скрипт на python3
Скачиваем этот скрипт: Файл:Text-processing.zip
Кладем его, например, в ~/.local/bin/.
Далее, если есть действие «Конвертация текста» жмём «Изменить действие» и добавляем команды, если такого действия нет — добавляем по инструкции в начале этой страницы.
Перевести текст в нижний регистр.
Свойства команды: Команда: python3 ~/.local/bin/text-processing -l -n -i '%s' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Перевести текст в верхний регистр.
Свойства команды: Команда: python3 ~/.local/bin/text-processing -u -n -i '%s' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Сделать первую букву каждого слова большой (titlecase)
Свойства команды: Команда: python3 ~/.local/bin/text-processing -t -n -i '%s' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Перевести символы нижнего регистра в верхний, а верхнего — в нижний
Свойства команды: Команда: python3 ~/.local/bin/text-processing -s -n -i '%s' Выходные данные команды: "Заменить текущее содержимое буфера обмена".
Пример:
HeLlO WoRlD. hElLo wOrLd.
Прочее
Открыть скопированный текст в kwrite
Свойства действия: Шаблон соответствия: отсутствует Описание: "Открыть в kwrite" Включить во всплывающем меню авто действий: Нет Свойства команды: Команда: echo '%s' | kwrite -i -l 1 -c 1 Описание: "Открыть в kwrite". Выходные данные команды: "Игнорировать"
Скопировать в буфер важные данные
В действиях можно хранить любые данные, например, номера банковских карт:
Свойства действия: Шаблон соответствия: отсутствует Описание: "Номера банковских карт" Включить во всплывающем меню авто действий: Нет
Свойства команды: Команда: echo -n "0000 0000 0000 0000" Описание: Visa Выходные данные команды: "Дописать в буфер обмена"
Свойства команды: Команда: echo -n "1111 1111 1111 1111" Описание: MasterCard Выходные данные команды: "Дописать в буфер обмена"
Свойства команды: Команда: echo -n "2222 2222 2222 2222" Описание: Мир Выходные данные команды: "Дописать в буфер обмена"
Ну а дальше, если буфер не пуст, то после нажатия Ctrl+Alt+R, появится такое окно:
При выборе любой карты её номер тут же будет скопирован в буфер и можно будет его вставить куда-нибудь с помощью ctrl+v.
Где klipper сохраняет пользовательские действия
klipper сохраняет пользовательские действия в файле ~/.config/plasmashellrc в разделах «[Action_№]» и «[Action_№/Command_№]».