Добавляем действия в буфер обмена (klipper) plasma5 — различия между версиями
Noname (обсуждение | вклад) (обновление данных) |
Noname (обсуждение | вклад) (дополнение) |
||
(не показано 7 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
− | У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже | + | У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже) есть такая крутая функция, как «'''Действия'''», которая позволяет расширять функциональность с помощью скриптов. Ниже приведены несколько простых примеров.<br /> |
== Преобразование текста == | == Преобразование текста == | ||
Строка 8: | Строка 8: | ||
==== Перевести текст в нижний регистр. ==== | ==== Перевести текст в нижний регистр. ==== | ||
----- | ----- | ||
− | Жмём '''пкм по значку буфера обмена''' на панели -> '''Настроить буфер обмена''' -> '''Настройка действий'''.<br /> | + | Жмём '''пкм по значку буфера обмена''' на панели -> «'''Настроить буфер обмена'''» -> «'''Настройка действий'''».<br /> |
− | [[File:2023-11-21_1.png||400px]]<br /> | + | :[[File:2023-11-21_1.png||400px]]<br /> |
Жмём «'''Добавить действие'''».<br /> | Жмём «'''Добавить действие'''».<br /> | ||
− | В открывшемся окне поле | + | В открывшемся окне поле «'''Шаблон соответствия'''» '''оставляем пустым''', так как мы хотим, чтобы действие выполнялось для любого текста;<br /> |
− | В описании пишем, например, | + | В описании пишем, например, «'''Конвертация текста'''».<br /> |
− | '''Отключим''' флажок | + | '''Отключим''' флажок «'''Включить во всплывающем меню авто действий'''».<br /> |
− | Жмякаем | + | Жмякаем «'''Добавить команду'''».<br /> |
− | [[File:2023-11-21_2.png||400px]]<br /> | + | :[[File:2023-11-21_2.png||400px]]<br /> |
− | В окне | + | В окне «'''Свойства команды'''» указываем: |
Команда: TEXT="%s" && echo -n "${TEXT,,}" | Команда: TEXT="%s" && echo -n "${TEXT,,}" | ||
Описание: "Перевести в нижний регистр". | Описание: "Перевести в нижний регистр". | ||
Выходные данные команды: Активируем "Заменить текущее содержимое буфера обмена". | Выходные данные команды: Активируем "Заменить текущее содержимое буфера обмена". | ||
− | [[File:2023-11-21_3.png||400px]] | + | :[[File:2023-11-21_3.png||400px]] |
− | Жмем «'''Ок'''». В предыдущем окне тоже «'''Ок'''». | + | Жмем «'''Ок'''». В предыдущем окне тоже «'''Ок'''». Далее «'''Применить'''».<br /> |
Проверяем:<br /> | Проверяем:<br /> | ||
− | [[File:2023-11-21_4.png||400px]]<br /><br /> | + | :[[File:2023-11-21_4.png||400px]]<br /><br /> |
− | [[File:2023-11- | + | :[[File:2023-11-23_5.png||400px]]<br /><br /> |
− | [[File:2023-11-21_6.png||400px]]<br /> | + | :[[File:2023-11-21_6.png||400px]]<br /> |
Если текст из буфера пропал после выполнения действия, то скорее всего была допущена ошибка в команде и следует всё перепроверить.<br /> | Если текст из буфера пропал после выполнения действия, то скорее всего была допущена ошибка в команде и следует всё перепроверить.<br /> | ||
Строка 36: | Строка 36: | ||
==== Перевести текст в верхний регистр. ==== | ==== Перевести текст в верхний регистр. ==== | ||
----- | ----- | ||
− | + | Если действие «'''Конвертация текста'''» уже существует, то кликаем по нему и жмём кнопку «'''Изменить действие'''», в открывшемся окне жмякаем «'''Добавить команду'''».<br /> | |
− | + | В окне «'''Свойства команды'''» указываем: | |
− | + | Команда: TEXT="%s" && echo -n "${TEXT^^}" | |
− | + | Описание: "Перевести в верхний регистр". | |
− | + | Выходные данные команды: "Заменить текущее содержимое буфера обмена". | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Если действие «'''Конвертация текста'''» ещё не существует, то выполняем то же, что и в разделе «'''Перевести текст в нижний регистр'''» в начале этой страницы, только нужно будет указать команду и описание из этого раздела.<br /> | |
− | |||
----- | ----- | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Окно настроек действий с добавленными командами:<br /> | |
+ | :[[File:2023-11-23_0.png||400px]] | ||
+ | |||
+ | === Используя 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 === | === Используя скрипт на python3 === | ||
Строка 72: | Строка 75: | ||
Скачиваем этот скрипт: [[File:text-processing.zip]]<br /> | Скачиваем этот скрипт: [[File:text-processing.zip]]<br /> | ||
Кладем его, например, в '''~/.local/bin/'''.<br /> | Кладем его, например, в '''~/.local/bin/'''.<br /> | ||
− | Далее, добавляем | + | Далее, если есть действие «'''Конвертация текста'''» жмём «'''Изменить действие'''» и добавляем команды, если такого действия нет — добавляем по инструкции в начале этой страницы.<br /> |
==== Перевести текст в нижний регистр. ==== | ==== Перевести текст в нижний регистр. ==== | ||
----- | ----- | ||
− | + | Свойства команды: | |
− | + | Команда: 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 === | ||
− | + | Свойства действия: | |
− | + | Шаблон соответствия: отсутствует | |
− | + | Описание: "Открыть в 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" | ||
+ | Описание: Мир | ||
+ | Выходные данные команды: "Дописать в буфер обмена" | ||
+ | |||
+ | :[[File:2023-11-23_09.png||400px]] | ||
+ | |||
+ | Ну а дальше, если буфер не пуст, то после нажатия '''Ctrl+Alt+R''', появится такое окно: | ||
+ | |||
+ | :[[File:2023-11-23_10.png]] | ||
+ | |||
+ | При выборе любой карты её номер тут же будет скопирован в буфер и можно будет его вставить куда-нибудь с помощью ctrl+v. | ||
+ | |||
+ | === Скопировать в буфер внешний ip === | ||
+ | Свойства команды: | ||
+ | Команда: curl ifconfig.me | ||
+ | Выходные данные команды: "Дописать в буфер обмена" | ||
+ | |||
+ | === Скопировать в буфер базовую информацию о системе выданную neofetch === | ||
Свойства команды: | Свойства команды: | ||
− | + | Команда: neofetch --stdout | |
− | + | Выходные данные команды: "Дописать в буфер обмена" | |
− | + | ||
+ | Данные в буфер добавляются с небольшой паузой. | ||
+ | |||
+ | === Скопировать в буфер всю информацию о системе выданную inxi === | ||
+ | Свойства команды: | ||
+ | Команда: inxi -Fc 0 | ||
+ | Выходные данные команды: "Дописать в буфер обмена" | ||
+ | Данные в буфер добавляются с небольшой паузой. | ||
=== Где klipper сохраняет пользовательские действия === | === Где klipper сохраняет пользовательские действия === | ||
− | klipper сохраняет пользовательские действия в файле '''~/.config/plasmashellrc''' в разделах | + | klipper сохраняет пользовательские действия в файле '''~/.config/plasmashellrc''' в разделах «'''[Action_№]'''» и «'''[Action_№/Command_№]'''». |
Текущая версия на 14:39, 24 ноября 2023
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже) есть такая крутая функция, как «Действия», которая позволяет расширять функциональность с помощью скриптов. Ниже приведены несколько простых примеров.
Содержание
Преобразование текста
Используя возможности 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.
Скопировать в буфер внешний ip
Свойства команды: Команда: curl ifconfig.me Выходные данные команды: "Дописать в буфер обмена"
Скопировать в буфер базовую информацию о системе выданную neofetch
Свойства команды: Команда: neofetch --stdout Выходные данные команды: "Дописать в буфер обмена"
Данные в буфер добавляются с небольшой паузой.
Скопировать в буфер всю информацию о системе выданную inxi
Свойства команды: Команда: inxi -Fc 0 Выходные данные команды: "Дописать в буфер обмена"
Данные в буфер добавляются с небольшой паузой.
Где klipper сохраняет пользовательские действия
klipper сохраняет пользовательские действия в файле ~/.config/plasmashellrc в разделах «[Action_№]» и «[Action_№/Command_№]».