Edició dels menús d'usuari i combinació de menús

Podeu utilitzar les aplicacions de l'escriptori del GNOME següents per a editar els menús per als usuaris:

  • Editor de menús del GNOME

Un simple editor de menú està disponible per als usuaris per a editar els seus menús. Per a obtenir més informació, vegeu Treballar amb els menús en la Guia d'usuari del GNOME. De manera alternativa, podeu crear i editar manualment un fitxer de menú d'usuari.

Per a crear manualment un menú personalitzat per a un usuari, el $XDG_CONFIG_HOME/menus/applications.menu ha d'existir. En el cas que $XDG_CONFIG_HOME no s'ha establert, s'utilitza el directori predeterminat ~/.config. Ja que aquesta és la primera ubicació on es cerca el fitxer applications.menu, té preferència sobre la resta de fitxers de menú.

Els menús d'usuari poden contenir tots els elements descrits a la Secció 2.2 ― Fitxers de definició de menú. Per a una llista completa dels elements permesos, vegeu l'Especificació de menú XDG.

Atès que els fitxers de menú d'usuari tenen preferència sobre el fitxer de menú del sistema, aquests substituiran completament el menú del sistema a no ser que explícitament es combini el menú del sistema. Trobareu més informació sobre la combinació de menús a les subseccions següents.

2.6.1. Combinació del menú del sistema

Sovint, un usuari només vol afegir o suprimir elements de menú als elements existents del sistema de menú estàndard. Per a admetre canvis individuals com aquests, es recomana que utilitzeu l'element <MergeFile> amb l'atribut type="parent" amb el fitxer d'usuari applications.menu.

L'element <MergeFile> permet que un menú es combini amb els continguts d'un fitxer de menú d'usuari. Quan especifiqueu l'atribut type="parent", s'ignoraran els continguts de l'element <MergeFile> i el fitxer applications.menu següent en el directori $XDG_CONFIG_DIRS/menus s'utilitzarà per a combinar.

Especificacions antigues

Les especificacions antigues no inclouen l'atribut type i simplement es requereix la ubicació del fitxer de menú a combinar amb el contingut de l'element <MergeFile>. Per això, pot ser que encara vegeu una ubicació especificada en els continguts de <MergeFile>, fins i tot quan type="parent".

La combinació es realitza de la manera següent:

  • Els fills de l'element arrel <Menu> en el fitxer de menú combinat 1 se substitueixen per l'element <MergeFile> en el fitxer de menú base.
  • Tots els elements <Menu> fill amb el mateix nom es consoliden en un sol element <Menu>. Això es realitza afegint tots els elements fill de cada element <Menu> que tenen el mateix nom a l'última ocurrència de l'element de menú.

L'Exemple 2-3 és un exemple d'un fitxer de menú d'usuari explícitament combinat amb el fitxer de menú del sistema.

Exemple 2-3Combinació del menú del sistema
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
 "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">

<Menu>
  <Name>Applications</Name>
  <MergeFile type="parent">/etc/xdg/menus/applications.menu</MergeFile>
  <Menu>
    <Name>Accessibility</Name>
    <Exclude>
      <Filename>dasher.desktop</Filename>
    </Exclude>
  </Menu>
</Menu>

2.6.2. Combinació de menús arbitraris

Qualsevol fitxer de menú arbitrari es pot combinar de manera molt semblant als menús del sistema. La diferència és que l'atribut type s'ha d'establir a path o s'ha d'excloure de l'element <MergeFile> per a poder realitzar aquest tipus de combinació.

La combinació es realitza de la mateixa manera excepte que la ubicació del fitxer de menú combinat s'especifica en el contingut de l'element <MergeFile>.

1

El fitxer de menú combinat fa referència al applications.menu següent en el directori $XDG_CONFIG_DIRS/menus.