Bagaimana cara menambahkan item khusus ke menu konteks di Dolphin di KDE 5?

12

Saya sudah mencari di Google, tetapi sepertinya tidak dapat menemukan tutorial atau dokumentasi yang konsisten yang menjelaskan cara melakukan ini (dalam kasus saya, di Kubuntu 15.10). Saya ingin menambahkan skrip khusus ke menu konteks di Dolphin (ala nautilus-scriptsuntuk Nautilus). Untuk beberapa alasan, ketika saya mengikuti instruksi yang saya temukan, saya hanya dapat membuat menu konteks muncul ketika mengklik kanan .desktopfile yang relevan . Bagaimana saya bisa memecahkan masalah ini?

JesseTG
sumber

Jawaban:

14

Menu Layanan KDE

Dalam KDE-speak "servicemenu" adalah entri khusus yang muncul di menu konteks (atau antarmuka berbasis konteks lainnya) untuk file (atau untuk direktori), tergantung pada jenis file yang dipilih.

Menciptakan (Konqueror) Menu Layanan KDE: https://techbase.kde.org/Development/Tutorials/Creating_Konqueror_Service_Menus

Menu Layanan dengan Dolphin: https://www.kubuntuforums.net/showthread.php?25740-Layanan-Menus-with-Dolphin -> KF5 Menu Layanan: https://www.kubuntuforums.net/showthread.php?25740 -Layanan-Menu-dengan-Dolphin & p = 367207 & viewfull = 1 # post367207

Menu Layanan Hilang: https://forum.kde.org/viewtopic.php?f=223&t=128621

Jalan

KDE Frameworks 5 mencari layanan dari:

kf5-config --path services

Mengeksekusi:

$ kf5-config --path services
/home/user26687/.local/share/kservices5/:/usr/share/kservices5/

Itu adalah:

Servicemenus pengguna adalah:

$HOME/.local/share/kservices5/ServiceMenus/

Sistem servis berada di

/usr/share/kservices5/ServiceMenus/

File desktop

Servicemenus didefinisikan menggunakan file .desktop. Spesifikasi Entri Desktop: https://standards.freedesktop.org/desktop-entry-spec/latest/

Gambar: Spesifikasi Entri Desktop memiliki arti kunci / kode Gambar: Contoh kunci / kode Spesifikasi Entri Desktop

Contoh - layanan sederhana dengan jalur file:

Pembuatan: $ HOME / .local / share / kservices5 / ServiceMenus / myFirstServiceMenu.desktop

Jika direktori tidak ada, pengguna dapat membuatnya!

[Desktop Entry]
Type=Service
Icon=smiley-shape
X-KDE-ServiceTypes=KonqPopupMenu/Plugin
MimeType=all/allfiles;
Actions=helloWorld;
Encoding=UTF-8

[Desktop Action helloWorld]
Name=Hello with path information
Icon=smiley-shape
Exec=kdialog --msgbox "Path is %f"

Gambar: seorang prajurit di tempat yang tepat. Gambar: seorang prajurit di tempat yang tepat.

Menutup semua jendela Dolphin dan memulai yang baru. Saat mengklik kanan file:

Gambar: contoh aksi servicemenu

pengguna26687
sumber
Silakan tambahkan bagian yang relevan dari jawaban di sini dan berikan tautan hanya untuk referensi.
Anwar
3

Berikut ini berfungsi untuk saya di Ubuntu 16.04

tempatkan skrip di direktori ~/.local/share/kservices5/ServiceMenus/

Lari kbuildsycoca5

skrip akan terlihat dalam contoh lumba-lumba baru.

bbbb
sumber
1

Pada Ubuntu 16.04 dengan KDE (Kubuntu) satu direktori yang sesuai untuk file * .desktop adalah/usr/share/kservices5/ServiceMenus/

(bandingkan keluaran dpkg -L arkuntuk menemukan lokasi file yang serupa tentang bahtera submenu)

cucujoidea
sumber