Можно ли добавить новые элементы в контекстное меню в Dolphin (KDE Plasma), если я щелкну правой кнопкой мыши по чему-нибудь?
Я хотел бы сделать скрипт под названием Переместить в приложения , который покажет только , если я щелкну правой кнопкой мыши по файлу .desktop , а затем он переместит его в папку / usr / share / Applications / . Или есть более быстрый способ перемещения файлов .desktop в папку / usr / share / Applications / .
Можно создать Сервисное меню, чтобы сделать то, что Вы хотите.
Вставьте следующее содержание в move.desktop
[Desktop Action move-file]
Exec=/usr/lib/x86_64-linux-gnu/libexec/kf5/kdesu mv "%U" /usr/share/applications
Name=Move file
Icon=document-send
[Desktop Entry]
Actions=move-file
MimeType=application/x-desktop;
ServiceTypes=KonqPopupMenu/Plugin
Type=Service
X-KDE-Priority=TopLevel
Использование MimeType=application/x-desktop;
гарантирует, что эта запись контекстного меню будет замечена только, когда конечный файл будет .desktop файлом.
Это - изображение контекстного меню дельфина прежде, чем создать сервисное меню:
В следующем снимке экрана, сделанном после создания сервисного меню, Вы будете видеть дополнительную запись, файл Перемещения:
Нажатие на файл Move предложит Вам Ваш пароль, потому что Вы хотите переместить файл в/usr/share/applications.
После обеспечения Вашего пароля выбранный файл будет перемещен в/usr/share/applications:
Обратите внимание, что владелец уже не является тем же как .desktop файлы там. Необходимо будет зафиксировать это однако, Вы выбираете:
В случае, если необходимо изменить владение/полномочия, Вы могли изменить Exec=
строка как это (для изменения владения):
Exec=printf %U | xsel -b -i && /usr/lib/x86_64-linux-gnu/libexec/kf5/kdesu mv "%U" /usr/share/applications && cd /usr/share/applications && /usr/lib/x86_64-linux-gnu/libexec/kf5/kdesu chown root:root $( basename $(xsel -b -o) )
Дополнительные шаги включают использование printf и xsel для помещения пути файла в буфер обмена и затем использование базового имени для снятия изоляции со всего кроме имени файла. Конечно, Вам будет нужно kdesu
снова! Я не знаю, существует ли более короткий путь!
В KDE Plasma самым простым решением может быть добавление новой записи «открыть с помощью». Для этого перейдите в Настройка рабочего стола (системные настройки5
) > Приложения > Связи файлов.
Затем выберите соответствующий тип файла с помощью поля поиска; Это даст результаты как для имен mimetype, так и для фильтров расширений файлов. Ввод .kdelnk
или .desktop
вызовет mime-тип application/x-desktop
.
На панели Порядок выбора приложений
нажмите кнопку + Добавить, чтобы настроить новую программу. По умолчанию новые записи выбираются в качестве программы по умолчанию; Вы захотите переместить сценарий в более подходящее место в заказе.