LXDE : modifier le menu

Pour modifier la disposition du menu sous lxde de façon graphique, on peut installer lxmed. Cela permet pas mal d'opérations basiques : cacher certains items, réassigner les catégories, si elles sont dans celles par défaut de lxmed. Mais Lxmed n'ayant pas été mis à jour depuis longtemps, il souffre de certains bugs qui peuvent poser des soucis. Ne supprimez aucune entrée par son biais.

Il est donc tout aussi fiable d'éditer les fichiers à la main.

Les *desktop dans les dossiers systèmes (/usr/share/* et /etc/xdg/menus/ sont écrasés lors des mises à jour. Il vaut mieux faire ses modifications sur la partie utilisateur, dans /home/<user>, car cela ne sera pas affecté par les mises à jours. Le système regardera des deux côtés.

  • /etc/xdg/menus/ devient /home/<user>/.config/menus
  • /usr/share/applications devient /home/<user>/.local/share/applications
  • /usr/share/desktop-directories devient /home/<user>/.local/share/desktop-directories

Le plus simple étant de copier les fichiers *.desktop dans sa partie home, puis de les modifier si besoin. Ces fichiers ont généralement déjà des mots-clés alternatifs (tel que “WebBrowser”) et on peut donc se baser sur ça pour recatégoriser.

Ajouter une catégorie

Pour ajouter une catégorie, copiez /etc/xdg/menus/lxde-applications.menu en /home/<user>/.config/menus/lxde-applications.menu, puis éditez ce fichier et copier puis modifier un de ses items.

nano /home/<user>/.config/menus/lxde-applications.menu
	<!-- Security -->
	<Menu>
		<Name>Security</Name>
		<Directory>lxde-security.directory</Directory>
		<Include>
			<And>
				<Category>Security</Category>
			</And>
		</Include>
	</Menu>	 <!-- End Security -->

On peut directement modifier /usr/share/desktop-directories/lxde-security.directory mais il vaut mieux faire ça dans le dossier local :

nano /home/<user>/.local/share/desktop-directories/lxde-security.directory

Paramétrez ensuite ce fichier afin d'afficher la traduction, de spécifier le type de contenu et de mettre une icône.

[Desktop Entry]
Name=Security
Name[fr]=Sécurité
Name[en_CA]=Security
Name[en_GB]=Security
Icon=application-certificate
Type=Directory

L'îcone doit se trouver dans votre thème d'îcone actuel, dans un dossier categories, par exemple

/home/user/.icons/Baku/24x24/categories

Ou

/usr/share/icons/Adwaita/24x24/categories

Ou alors indiquez un chemin complet.

En principe le menu se met à jour dès qu'un item est enregistré, mais si vous avez des doutes sur le fait que le menu a été rafraichi :

lxpanelctl restart

Ajouter un sous-menu

Pour ma catégorie “Internet”, entre ma dizaine de navigateurs web et mon autre dizaine de clients de chat, j'ai du mal à trouver Transmission. Allons faire des sous-catégories !

On rouvre /home/<user>/.config/menus/lxde-applications.menu et on rajoute une section “menu” avec le nom de notre sous-menu. Au passage, on va indiquer juste avant la catégorie “Webbrowser” comme ne devant pas être listée dans le premier menu “internet”, avec les balises “”<not>“” : cela évitera de dupliquer les entrées.

	<!-- Internet -->
	<Menu>
		<Name>Internet</Name>
		<Directory>lxde-network.directory</Directory>
		<Include>
			<And>
				<Category>Network</Category>
				<Not><Category>WebBrowser</Category></Not>
			</And>
		</Include>
		<!-- Ajout du sous-menu -->
		<Menu>
			<Name>Web</Name>
			<Directory>lxde-network-web.directory</Directory>
				<Include>
					<And>
					<Category>WebBrowser</Category>
					</And>
				</Include>
		</Menu>
	</Menu>	 <!-- End Internet -->

Penser à créer /home/<user>/.local/share/desktop-directories/lxde-network-web.directory

[Desktop Entry]
Name=Web
Name[fr]=Web
Name[en_CA]=Web
Name[en_GB]=Web
Icon=applications-internet
Type=Directory

Modifier une entrée d'application

Il suffit de créer un fichier en .desktop dans /home/<user>/.local/share/applications puis de remplir ce qui nous semble nécessaire. On peut aussi copier l'item présent dans /usr/share/applications dans son dossier local et le modifier.

Il suffit généralement de modifier la partie “Categories” dans le .desktop, par exemple en ajoutant “WebBrowser” dans les applications qu'on veut dans le sous-menu.

Exemple pour /home/<user>/.local/share/applications/palemoon.desktop

[Desktop Entry]
Name=Open Palemoon
Name[fr]=Palemoon
GenericName=Palemoon Web Browser
GenericName[fr]=Palemoon
Comment=Browse the World Wide Web
Comment[fr]=Navigateur web bis
Exec=palemoon
Terminal=false
Type=Application
Icon=palemoon
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
StartupNotify=true
Actions=NewTab;NewWindow;
NoDisplay=false
Categories=WebBrowser;

Voir aussi

CC Attribution-Noncommercial-Share Alike 4.0 International Driven by DokuWiki
pratique/informatique/lxde_menu.txt · Dernière modification : 30/11/2020 10:36 de 127.0.0.1