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

Материал из Rosalab Wiki
Перейти к: навигация, поиск
м (обновление данных)
Строка 1: Строка 1:
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже, но kde4 — RIP) есть такая крутая функция, как «'''Действия'''», которая позволяет расширять функциональность с помощью скриптов, а значит всё, что мы можем делать с содержимым буфера ограничивается лишь нашей фантазией. Ниже будут приведены несколько простых примеров.<br />
+
У буфера обмена пятых кед (у четвертых, если не ошибаюсь, тоже) есть такая крутая функция, как «'''Действия'''», которая позволяет расширять функциональность с помощью скриптов. Ниже приведены несколько простых примеров.<br />
  
 
== Преобразование текста ==
 
== Преобразование текста ==
Строка 36: Строка 36:
 
==== Перевести текст в верхний регистр. ====
 
==== Перевести текст в верхний регистр. ====
 
-----
 
-----
Если действие «'''Конвертация текста'''» текста уже существует, то кликаем по нему и жмем кнопку «'''Изменить действие'''», далее «'''Добавить команду'''».<br />
+
Если действие «'''Конвертация текста'''» уже существует, то кликаем по нему и жмём кнопку «'''Изменить действие'''», в открывшемся окне жмякаем «'''Добавить команду'''».<br />
 
В окне «'''Свойства команды'''» указываем:
 
В окне «'''Свойства команды'''» указываем:
 
     Команда: TEXT="%s" && echo -n "${TEXT^^}"
 
     Команда: TEXT="%s" && echo -n "${TEXT^^}"
Строка 42: Строка 42:
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
  
Если действие «'''Конвертация текста'''» ещё не существует, то выполняем то же, что и в разделе «'''Перевести текст в нижний регистр'''», только нужно будет указать команду и описание из этого раздела.<br />
+
Если действие «'''Конвертация текста'''» ещё не существует, то выполняем то же, что и в разделе «'''Перевести текст в нижний регистр'''» в начале этой страницы, только нужно будет указать команду и описание из этого раздела.<br />
  
 
-----
 
-----
Строка 52: Строка 52:
 
=== Используя sed ===
 
=== Используя sed ===
 
-----
 
-----
 +
 
==== Перевести текст в нижний регистр ====
 
==== Перевести текст в нижний регистр ====
 
-----
 
-----
Строка 67: Строка 68:
 
-----
 
-----
 
   Свойства команды:
 
   Свойства команды:
     Команда: TEXT="%s" && echo "$TEXT" | sed "s/.*/\L&/; s/[a-zа-я']*/\u&/g"
+
     Команда: TEXT="%s" && echo -n "$TEXT" | sed "s/.*/\L&/; s/[a-zа-я']*/\u&/g"
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
  
Строка 74: Строка 75:
 
Скачиваем этот скрипт: [[File:text-processing.zip]]<br />
 
Скачиваем этот скрипт: [[File:text-processing.zip]]<br />
 
Кладем его, например, в '''~/.local/bin/'''.<br />
 
Кладем его, например, в '''~/.local/bin/'''.<br />
Далее, если есть действие "'''Конвертация текста'''" жмём "'''Изменить действие'''" и добавляем команды, если такого действия нет - добавляем по инструкции в начале этой страницы.<br />
+
Далее, если есть действие «'''Конвертация текста'''» жмём «'''Изменить действие'''» и добавляем команды, если такого действия нет — добавляем по инструкции в начале этой страницы.<br />
  
 
==== Перевести текст в нижний регистр. ====
 
==== Перевести текст в нижний регистр. ====
Строка 94: Строка 95:
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
 
     Выходные данные команды: "Заменить текущее содержимое буфера обмена".
  
==== Перевести символы нижнего регистра в верхний, а верхнего – в нижний ====
+
==== Перевести символы нижнего регистра в верхний, а верхнего — в нижний ====
 
-----
 
-----
 
   Свойства команды:
 
   Свойства команды:
Строка 113: Строка 114:
 
     Включить во всплывающем меню авто действий: Нет
 
     Включить во всплывающем меню авто действий: Нет
 
   Свойства команды:
 
   Свойства команды:
     Команда: echo -n '%s' | kwrite -i -l 1 -c 1
+
     Команда: echo '%s' | kwrite -i -l 1 -c 1
 
     Описание: "Открыть в kwrite".
 
     Описание: "Открыть в kwrite".
 
     Выходные данные команды: Игнорировать
 
     Выходные данные команды: Игнорировать

Версия 20:04, 23 ноября 2023

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

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

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


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


Жмём пкм по значку буфера обмена на панели -> «Настроить буфер обмена» -> «Настройка действий».

2023-11-21 1.png

Жмём «Добавить действие».
В открывшемся окне поле «Шаблон соответствия» оставляем пустым, так как мы хотим, чтобы действие выполнялось для любого текста;
В описании пишем, например, «Конвертация текста».
Отключим флажок «Включить во всплывающем меню авто действий».
Жмякаем «Добавить команду».
2023-11-21 2.png

В окне «Свойства команды» указываем:

Команда: TEXT="%s" && echo -n "${TEXT,,}"
Описание: "Перевести в нижний регистр". 
Выходные данные команды: Активируем "Заменить текущее содержимое буфера обмена".

2023-11-21 3.png

Жмем «Ок». В предыдущем окне тоже «Ок». Далее «Применить».
Проверяем:

2023-11-21 4.png

2023-11-23 5.png

2023-11-21 6.png

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

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


Если действие «Конвертация текста» уже существует, то кликаем по нему и жмём кнопку «Изменить действие», в открывшемся окне жмякаем «Добавить команду».
В окне «Свойства команды» указываем:

   Команда: TEXT="%s" && echo -n "${TEXT^^}"
   Описание: "Перевести в верхний регистр".
   Выходные данные команды: "Заменить текущее содержимое буфера обмена".

Если действие «Конвертация текста» ещё не существует, то выполняем то же, что и в разделе «Перевести текст в нижний регистр» в начале этой страницы, только нужно будет указать команду и описание из этого раздела.


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

2023-11-23 0.png

Используя 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".
   Выходные данные команды: Игнорировать


Где klipper сохраняет пользовательские действия

klipper сохраняет пользовательские действия в файле ~/.config/plasmashellrc в разделах «[Action_№]» и «[Action_№/Command_№]».