Menu Policy
Полиси по добавлению приложений в меню
TODO: Это полиси еще не существует. Пишите!
Подход к построению меню.
1. Определенность.
1.1 Явный список поддерживаемых категорий.
Как известно, .desktop файл может содержать что угодно и любую чепуху, она будет молча проигнорирована. И на глаз не очевидно, что будет, а что не будет проигнорировано, на первый взгляд категория может выглядеть как стандартная, но в списке ее не окажется :(
В СТУДИЮ нужен явный список поддерживаемых стандартных (например, в Mandriva 2007 никакие стандартные не поддерживаются :)) и Alt — специфических категорий.
1.2. Явная структура нового меню
полный список всех папок.
Для каждой папки указать канонический набор категорий, указав который, гарантированно получим нужный пункт меню.
2. Сбалансированность.
принцип построения меню
если в подпапках, то в подпапках.
Весьма желательно. чтобы папка содержала либо подпапки, либо приложения, но не оба вместе.
Для этого при необходимости ввести категории
X-ALTLinux-БлаБлаБла-Other
как очень мудро было сделано в старом меню.
3. Преемственность.
Поддержка папок из старого меню. Для каждой папки из старого меню указать ее образ в новом меню, при необходимости создав новую категорию. Пример. Configuration-Printing можно указать HardwareSettings;Settings. Хотя из соображений преемственности и usability лучше ввести специальную категорию X-ALTLinux-Configuration-Printing.
4. Нейтральность.
.desktop файл позволяет указывать, в меню каких оконных менеджеров их показывать. Поэтому общесистемное меню должно быть оконно нейтральным, а для специфических примочек надо выделять отдельный набор .desktop файлов с указанием OnlyShowIn=БлаБла.
Примером, почему это важно служит текущая сборка KDE. Так, как там — делать нельзя. Там во всяких KDE’шных примочках меню стоит NotShowIn=GNOME. В результате на пользователей всех других оконных менеджеров (не KDE. и не GNOME) высыпается гора мусора. Чего стоит только одна надпись «Запуск терминала KDE в режиме суперпользователя» внутри промежуточного меню «Настройки» в IceWM, которая растягивает его на пол-экрана…
Вспоминается «Ужасное зрелище. Душераздирающее зрелище.» (с) ослик Иа.
О конверсии
Старое меню ALTLinux |
соответствие freedesktop.org |
Amusement/Adventure |
AdventureGame;Game; |
Amusement/Arcade |
ArcadeGame;Game; |
Amusement/Boards |
BoardGame;Game; |
Amusement/Cards |
CardGame;Game; |
Amusement/Puzzles |
LogicGame;Game; |
Amusement/Sports |
SportGame;Game; |
Amusement/Strategy |
StrategyGame;Game; |
Amusement/Toys |
KidsGame;Game;Amusement; |
Amusement/Other |
Game;Amusement; |
Applications/Accessibility |
Accessibility;Utility; |
Applications/Archiving |
Utility;Archiving; |
Applications/Archiving/Compression |
Utility;Archiving;Compression; |
Applications/Archiving/Cd burning |
DiscBurning;AudioVideo; |
Applications/Archiving/Backup |
Utility;Archiving; |
Applications/Archiving/Other |
Utility;Archiving; |
Applications/Communications |
|
Applications/Databases |
Database;[ choose Office or Development or AudioVideo ] |
Applications/Development |
|
Applications/Development/Interpreters |
|
Applications/Development/Code generators |
|
Applications/Development/Development environments |
|
Applications/Development/Tools |
|
Applications/Editors |
|
Applications/Emulators |
|
Applications/File tools |
|
Applications/Finances |
|
Applications/Monitoring |
|
Applications/Publishing |
|
Applications/Sciences |
|
Applications/Sciences/Astronomy |
|
Applications/Sciences/Biology |
|
Applications/Sciences/Chemistry |
|
Applications/Sciences/Computer science |
|
Applications/Sciences/Geosciences |
|
Applications/Sciences/Mathematics |
|
Applications/Sciences/Physics |
|
Applications/Sciences/Other |
|
Applications/Shells |
|
Applications/Text tools |
|
Chinese |
|
Configuration/Boot and Init |
|
Configuration/Hardware |
|
Configuration/Networking |
|
Configuration/Packaging |
|
Configuration/Printing |
|
Configuration/Other |
|
Documentation |
|
Edutainment/Languages |
|
Edutainment/Mathematics |
|
Edutainment/Science |
|
Edutainment/Tools |
|
Edutainment/Other |
|
Multimedia/Graphics |
|
Multimedia/Sound |
|
Multimedia/Video |
|
Networking/Chat |
|
Networking/IRC |
|
Networking/Instant messaging |
|
Networking/File transfer |
|
Networking/Mail |
|
Networking/News |
|
Networking/Remote access |
|
Networking/WWW |
|
Networking/Other |
|
Office/Accessories |
|
Office/AddressBooks |
ContactManagement; |
Office/Graphs |
Chart; |
Office/PDA |
PDA; |
Office/Presentations |
Presentation; |
Office/Spreadsheets |
Spreadsheet; |
Office/Tasks management |
ProjectManagement; |
Office/Time management |
Clock;Calendar; |
Office/Wordprocessors |
WordProcessor; |
Session |
|
Session/Windowmanagers |
|
Terminals |
|
Amusement |
|
Applications |
|
Configuration |
|
Edutainment |
|
Multimedia |
|
Networking |
|
Office |
Ссылки
- ftp://ftp.altlinux.ru/pub/people/zerg/menu/menu-packaging-howto-current.txt
- ftp://ftp.altlinux.ru/pub/people/zerg/menu/menu-policy-current.txt
- http://standards.freedesktop.org/menu-spec/menu-spec-latest.html
- http://mdv.vmlinuz.ca/Development/Howto/XDGMenuSystem
- http://fedora.redhat.com/docs/developers-guide/ch-menus.html