 gestion des menus sous kde but de ce document ce document me sert de mémo pour comprendre le fonctionnement des menus sous kde personnalisation des menus de kde kmenuedit permet de personnaliser les menus de kde les modifications dans les menus sont enregistrées dans le dossier suivant config menus applicationskmenueditmenu updatemenus permet de mettre à jour les menus après l installation d un programme ce programme est spécifique à debian pour remettre à un utilisateur le menu par défaut il faut supprimer le fichier   config menus applicationskmenueditmenu  et lancer updatemenus chaque entrée de menu est un fichier desktop enregistré dans local share applications les menus de kde sont configurés dans local share applications usr share applications exemple de fichier desktop desktop entry categories qt kde texteditor docpath kate indexhtml encoding utf8 exec kate u genericname editeur de texte avancé icon kate initialpreference 6 mimetype text plain application xdesktop name kate path terminal false type application xdcopservicetype multi xkdehastempfileoption true xkdestartupnotify true un fichier desktop permet de créer une entrée de menu dans le menu k mais également dans le menu contextuel si le mimetype correspond au fichier sélectionné si pour le mimetype il n y a qu un programme l entrée sera sous le menu principale sinon elle sera dans le sousmenu ouvrir avec  les menu de freedesktop il faut trois types de fichiers pour créer des menus suivant la norme  freedesktop  les fichiers desktop décrivent les entrées de menus les fichiers menu décrive l arborescence des menus les fichiers directory permettent d ajouter des icônes et de traduire l arborescence dans différentes langues la configuration de kde pour l utilisateur est dans kde et pour tous les utilisateurs elle est dans usr chaque dossier et sousdossier contient un fichier directory indiquant entreautre le nom du menu et l icône de celuici le fichier   config menus applicationskmenueditmenu  permet de déplacer d ajouter ou d enlever des menus à l arborescence par défaut cet exemple montre comment supprimer l entrée debian debian  exemple d entrée de menu ajoutée à la racine du menu k  usr share applications as400desktop local share applications as400desktop desktop entry comment exec konsole profile profilas400 genericname icon alevt name as400 path startupnotify false terminal 0 terminaloptions type application xkdesubstituteuid false xkdeusername categories qt kde core onlyshowin kde  actualisation des modifications en fonction du type de la modification le résultat est immédiat ou apparaît seulement à la prochaine connexion de kde pour éviter de se déconnecter il faut lancer les commandes suivantes en tant que simple utilisateur updatemenus kbuildsycoca informations sur kbuildsycoca  http developerkdeorg documentation library kdeqt kde3arch ksycocahtml ajout d un nouveau menu pour ajouter un menu pour tous les utilisateurs il faut placer le fichier testmenu cidessous dans l un des dossiers suivants etc xdg menus applicationsmerged config menus applications test menu testmenudirectory testmenu  astuce  pour créer ce fichier automatiquement il est possible d utiliser kmenuedit est de créer le menu kmenuedit va créer ou modifier le fichier config menus qu il suffira de déplacer dans etc xdg menus applicationsmerged pour qu il soit valable pour les utilisateurs supprimer une entrée de menu pour supprimer par exemple l entrée science et mathématiques il faut placer le fichier testmenu cidessous dans l un des dossiers suivants etc xdg menus applicationsmerged config menus science  ajouter un nouveau menu et supprimer un menu existant le fichier cidessous est la combinaison des deux fichiers précédents applications test menu testmenudirectory testmenu science  création du menu programmes et déplacement des menus science et office à l intérieur  programmes science programmes science office programmes office la même chose en plus court et plus lisible mes programmes science mes programmes science office mes programmes office création de deux sousmenus et déplacement de deux menus mes programmes autres programmes science mes programmes science office autres programmes office  structure des menus avant kde 32 cette structure de fichiers utilisé par kde avant la version 32 n est pas normalisée par freedesktop mais elle est toujours utilisable pour des raisons de compatibilités avec les anciennes applications la définition des entrées de ces menu est dans kde share applnk ou usr share applnk  remarque  le menu placé dans l arborescence utilisateur à priorité sur le menu général en cas de conflit autrement les deux arborescences se complètent voici la structure des menus usr share applnk hidden contient les entrèes des menus cachés dossier 1 menu 1 directory définition du menu application1desktop définiton de l entrèe de menu pour application1 application2desktop définiton de l entrèe de menu pour application2 dossier 2 menu 2 dés qu un fichier ou un dossier est créé dans cette arborescence la mise à jour est immédiate par contre en cas de modification d un fichier existant il est nécessaire de lancer cette commande pour voire les modifications kbuildsycoca remarques  ces entrées de menus n ont pas besoins de fichier menu pour fonctionner a priori ce mode de création des menus est peu ou plus utilisé par les nouvelles applications recherche de fichiers l une des principales difficultés rencontré pour configurer les fichiers est de retrouver le bon fichier desktop directory ou menu sachant que le nom du fichier peutêtre différent du nom du menu pour cela il est utile de connaître quelques commandes de recherches liste des fichiers dont le contenu contient le motif indiqué dans le dossier indiqué grep ril pdf usr share rechercher un fichier se terminant par desktop dans le dossier indiqué find usr share iname desktop rechercher dans la base de données initialisée par updatedb les fichiers contenant desktop locate i desktop recherche les fichiers contenant tous les termes indiqués locate i a desktop pdf autre lien les menu de freedesktop  http standardsfreedesktoporg menuspec menuspeclatesthtml historique des modifications version date commentaire 01 230606 création par tony galmiche 03 220608 mise en ligne gestion des menus sous kde tony passionnant tous ces articles sur kde j avais pas été si loin a la fin du tuto ce lien là est n existe plus  http artisankarmalabnet fr node 28 et celuici a un peu changé dans le nom runtime en plus  http docskdeorg stable en kdebaseruntime userguide kdemenuhtml merci du tuto gestion des menus sous kde merci claude pour toutes tes relectures  freedesktop  