Editer le menu application lxqt

Bonjour

Je cherche une solution pour modifier le menu des applications :

  • regrouper les categories existantes dans un dossier/categorie unique
  • creer des nouvelles categories
  • ajouter des lanceurs dans les nouvelles categories

J’ai essayé avec menulibre alacarte et kmenuedit mais aucun ne fonctionne (confirmé sur differents sites)

Il n’y a sans doute pas encore d’editeur graphique pour les menu LXQT. Quelqu’un pourrait il confirmer ?

Je peux modifier a la main tous les fichiers .desktop dans
/usr/share/applications et /home/user/.local/applications
pour les changer de catégorie par contre je ne vois pas comment modifier le fichier
/etc/xdg/menus/lxqt-applications.menu
pour regrouper ce qui existe et ajouter des categories.

J’ai trouvé une doc mais meme avec ca c’est pas lumineux…
https://specifications.freedesktop.org/menu-spec/menu-spec-0.9.html#desktop-entry-extensions-examples

Any Help ? :crazy_face: :woozy_face: :dizzy_face:

La machine sur laquelle je souhaite faire les modifs :
Distro : Ubuntu 20.04.2 LTS Focal Fossa
Desktop : LXQt 0.14.1
Kernel : 5.4.0.65 generic x86-64

1 Like

J’ai modifie le le fichier :
/etc/xdg/menus/lxqt-applications.menu
de maniere a ne pas toucher aux fichiers .desktop

:white_check_mark: regrouper le menu original dans une seule categorie
:white_check_mark: copier des categories existantes et les modifier avec la balise “Not”
:x: Creer une categorie Mise a Jour avec uniquement 3 lanceurs avec la balise “Filename” (comme la categorie screensaver qui elle fonctionne)
:x: Modifier la partie “Layout” pour que les categories “MenuOriginal” et “Miseajour” soient bien separees du reste

Est ce que quelqu’un saurait me dire comment faire les deux dernieres modifs ?
:roll_eyes:

Le fichier modifie qui fonctionne presque comme je veux :

<Name>Applications</Name>
<Directory>lxde-menu-applications.directory</Directory>

<!-- Read standard .directory and .desktop file locations -->
<DefaultAppDirs/>
<DefaultDirectoryDirs/>

<!-- Read in overrides and child menus from applications-merged/ -->
<DefaultMergeDirs/>

<!-- Dans cette partie je conserve les categories qui conviennent et exclue les applications non souhaitees-->
<!-- Accessories -->
<Menu>
	<Name>Accessories</Name>
	<Directory>lxde-utility.directory</Directory>
	<Include>
		<And>
			<Category>Utility</Category>
		 <!-- Accessibility spec must have either the Utility or Settings
		 category, and we display an accessibility submenu already for
		 the ones that do not have Settings, so don't display accessibility
		 applications here -->
			<Not><Category>Accessibility</Category></Not>
			<Not><Category>System</Category></Not>
			<!-- Les applications que je ne souhaite pas dans la rubrique accessoires -->
			<Not><Filename>qtpass.desktop</Filename></Not>
			<Not><Filename>info.desktop</Filename></Not>
			<Not><Filename>compton.desktop</Filename></Not>
			<Not><Filename>vim.desktop</Filename></Not>
			
		</And>
	</Include>
</Menu> <!-- End Accessories -->

<!-- Accessibility submenu -->
<!-- End Accessibility -->

<!-- Development Tools -->
<!-- End Development Tools -->

<!-- Education -->
<Menu>
	<Name>Education</Name>
	<Directory>lxde-education.directory</Directory>
	<Include>
		<And>
			<Category>Education</Category>
			<!-- Les applications qui sont deja dans la categorie Office ne doivent pas apparaitre ici -->
			<Not><Category>Office</Category></Not>
		</And>
	</Include>
</Menu> <!-- End Education -->

<!-- Games -->
<Menu>
	<Name>Games</Name>
	<Directory>lxde-game.directory</Directory>
	<Include>
		<And>
			<Category>Game</Category>
		</And>
	</Include>
</Menu> <!-- End Games -->

<!-- Graphics -->
<Menu>
	<Name>Graphics</Name>
	<Directory>lxde-graphics.directory</Directory>
	<Include>
		<And>
			<Category>Graphics</Category>
			<Not><Category>Utility</Category></Not>
		</And>
	</Include>
</Menu> <!-- End Graphics -->

<!-- Internet -->
<Menu>
	<Name>Internet</Name>
	<Directory>lxde-network.directory</Directory>
	<Include>
		<And>
			<Category>Network</Category>
			<!-- Les applications que je ne souhaite pas dans la rubrique internet -->
			<Not><Filename>org.kde.bluedevilsendfile.desktop</Filename></Not>
			<Not><Filename>org.kde.bluedevilwizard.desktop</Filename></Not>
		</And>
	</Include>
</Menu>	 <!-- End Internet -->

<!-- LXQt-About -->
<!-- End LXQt-About -->

<!-- Multimedia -->
<Menu>
	<Name>Multimedia</Name>
	<Directory>lxde-audio-video.directory</Directory>
	<Include>
		<And>
			<Category>AudioVideo</Category>
		</And>
	</Include>
</Menu>	 <!-- End Multimedia -->

<!-- Office -->
<Menu>
	<Name>Office</Name>
	<Directory>lxde-office.directory</Directory>
	<Include>
		<And>
			<Category>Office</Category>
		</And>
	</Include>
</Menu> <!-- End Office -->

<!-- System Tools-->
<!-- End System Tools -->

<!-- Other -->
<!-- End Other -->

<!-- Settings -->
<!-- End Settings -->

<!-- Leave -->
<Menu>
	<Name>X-Leave</Name>
	<Directory>lxqt-leave.directory</Directory>
	<Include>
		<And>
			<Category>X-Leave</Category>
		</And>
	</Include>
</Menu>	 <!-- End Leave -->

<!-- Screensaver -->
<Menu>
	<Name>Screensaver</Name>
	<Include>
	<Filename>lxqt-lockscreen.desktop</Filename>
	</Include>
</Menu> <!-- End Screensaver -->

<!-- CATEGORIE POUR MISE A JOUR ET INSTALLATION NOUVEAUX LOGICIELS -->
<Menu>
	<Name>Z MISE A JOUR</Name>
	<Directory>z-miseajour.directory</Directory>
	<Include>
	<Filename>upg-apply.desktop</Filename>
	<Filename>org.kde.discover.desktop</Filename>
	<Filename>org.kde.muon.desktop</Filename>		
	</Include>
</Menu> <!-- End Z Mise a jour -->



<!-- CATEGORIE QUI REGROUPE LE MENU ORIGINAL LXQT -- INDENTATION AUGMENTEE DE 2 POUR PLACER LA NOUVELLE CATEGORIE ZZZ ADMIN -->
<!-- RIEN D AUTRE DE MODIFIER ICI -->
<Menu>
	<Name>ZZZ ADMIN</Name>
	<Directory>zzz-admin-lxqt-original.directory</Directory>
	
        <!-- Accessories submenu -->
        <Menu>
        	<Name>Accessories</Name>
        	<Directory>lxde-utility.directory</Directory>
        	<Include>
        		<And>
        			<Category>Utility</Category>
        		 <!-- Accessibility spec must have either the Utility or Settings
        		 category, and we display an accessibility submenu already for
        		 the ones that do not have Settings, so don't display accessibility
        		 applications here -->
        			<Not><Category>Accessibility</Category></Not>
        			<Not><Category>System</Category></Not>
        		</And>
        	</Include>
        </Menu> <!-- End Accessories -->

        <!-- Accessibility submenu -->
        <Menu>
        	<Name>Universal Access</Name>
        	<Directory>lxde-utility-accessibility.directory</Directory>
        	<Include>
        		<And>
        			<Category>Accessibility</Category>
        			<Not><Category>Settings</Category></Not>
        		</And>
        	</Include>
        </Menu> <!-- End Accessibility -->

        <!-- Development Tools -->
        <Menu>
        	<Name>Development</Name>
        	<Directory>lxde-development.directory</Directory>
        	<Include>
        		<And>
        			<Category>Development</Category>
        		</And>
        		<Filename>emacs.desktop</Filename>
        	</Include>
        </Menu> <!-- End Development Tools -->

        <!-- Education -->
        <Menu>
        	<Name>Education</Name>
        	<Directory>lxde-education.directory</Directory>
        	<Include>
        		<And>
        			<Category>Education</Category>
        		</And>
        	</Include>
        </Menu> <!-- End Education -->

        <!-- Games -->
        <Menu>
        	<Name>Games</Name>
        	<Directory>lxde-game.directory</Directory>
        	<Include>
        		<And>
        			<Category>Game</Category>
        		</And>
        	</Include>
        </Menu> <!-- End Games -->

        <!-- Graphics -->
        <Menu>
        	<Name>Graphics</Name>
        	<Directory>lxde-graphics.directory</Directory>
        	<Include>
        		<And>
        			<Category>Graphics</Category>
        			<Not><Category>Utility</Category></Not>
        		</And>
        	</Include>
        </Menu> <!-- End Graphics -->

        <!-- Internet -->
        <Menu>
        	<Name>Internet</Name>
        	<Directory>lxde-network.directory</Directory>
        	<Include>
        		<And>
        			<Category>Network</Category>
        		</And>
        	</Include>
        </Menu>	 <!-- End Internet -->

        <!-- LXQt-About -->
        <Menu>
        	<Name>LXQt-About</Name>
        	<Include>
        	<Filename>lxqt-about.desktop</Filename>
        	</Include>
        </Menu> <!-- End LXQt-About -->

        <!-- Multimedia -->
        <Menu>
        	<Name>Multimedia</Name>
        	<Directory>lxde-audio-video.directory</Directory>
        	<Include>
        		<And>
        			<Category>AudioVideo</Category>
        		</And>
        	</Include>
        </Menu>	 <!-- End Multimedia -->

        <!-- Office -->
        <Menu>
        	<Name>Office</Name>
        	<Directory>lxde-office.directory</Directory>
        	<Include>
        		<And>
        			<Category>Office</Category>
        		</And>
        	</Include>
        </Menu> <!-- End Office -->

        <!-- System Tools-->
        <Menu>
        	<Name>System</Name>
        	<Directory>lxde-system-tools.directory</Directory>
        	<Include>
        		<And>
        			<Category>System</Category>
        			<Not><Category>Settings</Category></Not>
        			<Not><Category>PackageManager</Category></Not>
        			<Not><Category>X-Leave</Category></Not>
        			<Not><Category>Screensaver</Category></Not>
        			<Not><Filename>lxqt-about.desktop</Filename></Not>
        		</And>
        	</Include>
        </Menu>	 <!-- End System Tools -->

        <!-- Other -->
        <Menu>
        	<Name>Other</Name>
        	<Directory>lxde-other.directory</Directory>
        	<OnlyUnallocated/>
        	<Include>
        		<And>
        			<Not><Category>Core</Category></Not>
        			<Not><Category>Settings</Category></Not>
        			<Not><Category>Screensaver</Category></Not>
        		</And>
        	</Include>
        	</Menu> <!-- End Other -->

        <!-- Settings -->
        <Menu>
        	<Name>DesktopSettings</Name>
        	<Directory>lxde-settings.directory</Directory>
        	<Menu>
        		<Name>LXQtSettings</Name>
        		<Directory>lxqt-settings.directory</Directory>
        		<Include>
        			<And>
        				<Category>LXQt</Category>
        				<Or>
        					<Category>Settings</Category>
        					<Category>PackageManager</Category>
        				</Or>
        			</And>
        			<!-- Include some optional components here -->
        			<Filename>obconf-qt.desktop</Filename>
        			<Filename>compton-conf.desktop</Filename>
        			<Filename>pcmanfm-qt-desktop-pref.desktop</Filename>
        		</Include>
        		<Layout>
        			<Filename>lxqt-config.desktop</Filename>
        			<Separator/>
        			<Merge type="menus"/>
        			<Merge type="files"/>
        		</Layout>
        	</Menu>
        	<OnlyUnallocated/>
        	<Include>
        		<Or>
        			<Category>Settings</Category>
        			<Category>PackageManager</Category>
        		</Or>
        	</Include>
        	<Exclude>
        		<Or>
        			<Filename>lxqt-config.desktop</Filename>
        		</Or>
        	</Exclude>
        	<Layout>
        		<Merge type="menus"/>
        		<Merge type="files"/>
        	</Layout>
        </Menu> <!-- End Settings -->

        <!-- Leave -->
        <Menu>
        	<Name>X-Leave</Name>
        	<Directory>lxqt-leave.directory</Directory>
        	<Include>
        		<And>
        			<Category>X-Leave</Category>
        		</And>
        	</Include>
        </Menu>	 <!-- End Leave -->

        <!-- Screensaver -->
        <Menu>
        	<Name>Screensaver</Name>
        	<Include>
        	<Filename>lxqt-lockscreen.desktop</Filename>
        	</Include>
        </Menu> <!-- End Screensaver -->
        

        
        <Layout>
        	<Merge type="files"/>
        	<Merge type="menus"/>
        	<Separator/>
        	<Menuname>DesktopSettings</Menuname>
        	<Menuname show_empty="false" inline="true">LXQt-About</Menuname>
        	<Separator/>
        	<Menuname show_empty="false">X-Leave</Menuname>
        	<Menuname show_empty="false" inline="true">Screensaver</Menuname>
        </Layout>
        
        
        
</Menu> <!-- End ZZZ ADMIN-->

<Layout>
	<Merge type="files"/>
    <Merge type="menus"/>
    <Separator/>
    <Menuname show_empty="false">Z MISE A JOUR</Menuname>
    <Separator/>
    <Menuname show_empty="false">ZZZ ADMIN</Menuname>
    <Separator/>
    <Menuname show_empty="false">X-Leave</Menuname>
    <Menuname show_empty="false" inline="true">Screensaver</Menuname>
</Layout>
1 Like

Apres le redemarrage du pc un message d’erreur :
Error parsing file line 162 column 57
Le menu ne fonctionnait plus du tout : completement vide

J’ai réédité le fichier et corrigé l’erreur (les 2 tirets dans le commentaire) puis enregistré à nouveau … et tout fonctionne meme le menu mise a jour et les séparations … :crazy_face: :grin:

:white_check_mark: regrouper le menu original dans une seule categorie
:white_check_mark: copier des categories existantes et les modifier avec la balise “Not”
:white_check_mark: Creer une categorie Mise a Jour avec uniquement 3 lanceurs
:white_check_mark: Modifier la partie “Layout” pour que les categories “MenuOriginal” et “Miseajour” soient bien separees du reste

[Résolu]

1 Like

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.