Επεξεργασία μενού χρηστών και συγχώνευση μενού

Μπορείτε να χρησιμοποιήσετε τις ακόλουθες εφαρμογές της επιφάνειας εργασίας GNOME για να επεξεργαστείτε τα μενού των χρηστών:

  • Επεξεργαστής μενού GNOME

Οι χρήστες έχουν στη διάθεσή τους ένα απλό εργαλείο επεξεργασίας μενού. Για περισσότερες πληροφορίες, δείτε το Χρήση μενού στον Οδηγό χρήστη GNOME. Εναλλακτικά, μπορείτε να δημιουργήσετε και να επεξεργαστείτε ένα αρχείο μενού χρήστη με μη αυτόματο τρόπο.

Για να δημιουργήσετε με μη αυτόματο τρόπο ένα προσαρμοσμένο μενού για κάποιον χρήστη, θα πρέπει να υφίσταται το αρχείο $XDG_CONFIG_HOME/menus/applications.menu. Αν δεν έχει οριστεί τιμή για το $XDG_CONFIG_HOME, χρησιμοποιείται ο προεπιλεγμένος κατάλογος ~/.config. Εφόσον αυτή είναι η πρώτη τοποθεσία που σαρώνεται προκειμένου να βρεθεί το αρχείο applications.menu, έχει προτεραιότητα έναντι των υπολοίπων αρχείων μενού.

Τα μενού χρηστών μπορούν να περιέχουν όλα τα στοιχεία που περιγράφονται στην Ενότητα 2.2 ― Αρχεία ορισμού μενού. Για να δείτε την πλήρη λίστα των στοιχείων που επιτρέπονται, ανατρέξτε στις XDG menu specification.

Επειδή τα αρχεία των μενού χρηστών έχουν προτεραιότητα έναντι του αρχείου του μενού συστήματος, αντικαθιστούν πλήρως το μενού συστήματος, εκτός αν προβλέπουν ρητώς τη συγχώνευσή του. Για πληροφορίες σχετικά με τη συγχώνευση των μενού, δείτε τις υποενότητες που ακολουθούν.

2.6.1. Συγχώνευση μενού συστήματος

Συχνά, ο χρήστης ενδιαφέρεται να προσθέσει ή να διαγράψει καταχωρήσεις χρησιμοποιώντας ως βάση το κλασικό μενού συστήματος. Για τέτοιες μεμονωμένες αλλαγές, συνιστάται η χρήση του στοιχείου <MergeFile> μαζί με το γνώρισμα type="parent" στο αρχείο applications.menu του χρήστη.

Το στοιχείο <MergeFile> επιτρέπει τη συγχώνευση ενός μενού με τα περιεχόμενα του αρχείου μενού του χρήστη. Η χρήση του γνωρίσματος type="parent" σημαίνει ότι τα περιεχόμενα του στοιχείου <MergeFile> αγνοούνται. Έτσι, χρησιμοποιείται το επόμενο αρχείο applications.menu στον κατάλογο $XDG_CONFIG_DIRS/menus για τη συγχώνευση.

Παλαιότερες προδιαγραφές

Οι παλαιότερες προδιαγραφές δεν συμπεριελάμβαναν το γνώρισμα type. Το μόνο που απαιτούσαν ήταν να περιέχεται η τοποθεσία του προς συγχώνευση αρχείου μενού στο στοιχείο <MergeFile>. Για αυτόν το λόγο, είναι πιθανόν να δείτε στοιχεία <MergeFile> που περιέχουν τοποθεσία, ακόμη και αν υπάρχει το γνώρισμα type="parent".

Η συγχώνευση επιτυγχάνεται ως εξής:

  • Τα θυγατρικά στοιχεία του γονικού στοιχείου <Menu> του αρχείου συγχωνευμένου μενού1 αντικαθιστούν το στοιχείο <MergeFile> του βασικού αρχείου μενού.
  • Όλα τα θυγατρικά στοιχεία <Menu> που φέρουν το ίδιο όνομα ενοποιούνται σε ένα μόνο στοιχείο <Menu>. Αυτό επιτυγχάνεται ως εξής: Όλα τα θυγατρικά στοιχεία των στοιχείων <Menu> που φέρουν το ίδιο όνομα προσαρτώνται στο τελευταίο στοιχείο μενού.

Στο Παράδειγμα 2-3 ένα αρχείο μενού χρήστη συγχωνεύει ρητώς το αρχείο του μενού συστήματος.

Παράδειγμα 2-3Συγχώνευση μενού συστήματος
<!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. Συγχώνευση οποιωνδήποτε μενού

Οποιοδήποτε αρχείο μενού μπορεί να συγχωνευθεί με τον ίδιο περίπου τρόπο που συγχωνεύονται και τα μενού συστήματος. Η μόνη διαφορά είναι ότι το γνώρισμα type πρέπει να έχει οριστεί ως path ή να έχει εξαιρεθεί από το στοιχείο <MergeFile>, για να επιτευχθεί η συγχώνευση.

Η συγχώνευση γίνεται κατά τον ίδιο τρόπο, μόνο που η τοποθεσία του αρχείου συγχωνευμένου μενού προσδιορίζεται εντός του στοιχείου <MergeFile>.

1

Ο όρος αρχείο συγχωνευμένου μενού αναφέρεται στο επόμενο αρχείο applications.menu στον κατάλογο $XDG_CONFIG_DIRS/menus.