Menu Policy: различия между версиями
Нет описания правки |
|||
Строка 22: | Строка 22: | ||
Если с WM/DE в комплекте идет свое оригинальное меню, предлагаемое разработчиками,то WM/DE должен выносить свое оригинальное меню, предлагаемое разработчиками, в отдельный подпакет либо вообще отключать его. Также, WM/DE не должен явно требовать свое оригинальное меню. Вместо этого он должен иметь зависимость на виртуальный пакет {{pkg|<NAME>-freedesktop-menu}} | Если с WM/DE в комплекте идет свое оригинальное меню, предлагаемое разработчиками,то WM/DE должен выносить свое оригинальное меню, предлагаемое разработчиками, в отдельный подпакет либо вообще отключать его. Также, WM/DE не должен явно требовать свое оригинальное меню. Вместо этого он должен иметь зависимость на виртуальный пакет {{pkg|<NAME>-freedesktop-menu}} | ||
== | === порядок слияния подменю в Адаптированное общесистемное меню для WM/DE === | ||
Адаптированное меню {{path|/etc/xdg/menus/<WM/DE name>-applications.menu}} должно осуществлять слияние подменю в следующем порядке: | Адаптированное меню {{path|/etc/xdg/menus/<WM/DE name>-applications.menu}} должно осуществлять слияние подменю в следующем порядке: | ||
Строка 33: | Строка 33: | ||
* явно сливается персональный каталог подменю, обычно {{path|/etc/xdg/menus/<WM/DE name>-applications-merged}}. Исключение -- KDE4, где в качестве персонального каталога подменю используется каталог {{path|/etc/xdg/kde4/menus/applications-merged}}. | * явно сливается персональный каталог подменю, обычно {{path|/etc/xdg/menus/<WM/DE name>-applications-merged}}. Исключение -- KDE4, где в качестве персонального каталога подменю используется каталог {{path|/etc/xdg/kde4/menus/applications-merged}}. | ||
== Настройка и брендинг общесистемного меню в WM/DE == | |||
* настройки, действующие на все WM/DE, должны размещаться в общесистемном каталоге подменю {{path|/etc/xdg/menus/applications-merged}}. | |||
* настройки, специфические для конкретного WM/DE, должны размещаться в персональном каталоге подменю для конкретного WM/DE, обычно {{path|/etc/xdg/menus/<WM/DE name>-applications-merged}}. Исключение -- KDE4, где в качестве персонального каталога подменю используется каталог {{path|/etc/xdg/kde4/menus/applications-merged}}. | |||
== Подход к построению меню == | == Подход к построению меню == |
Версия от 20:41, 4 мая 2011
общесистемное меню
- В системе может быть несколько вариантов общесистемного меню,выбираемых через альтернативу /etc/xdg/menus/altlinux-applications.menu.
- Каждый вариант общесистемного меню должен быть совместим с меню GNOME по внутренним идентификаторам подменю. Это необходимо для совместимости со сторонними приложениями.
- По стандартному пути /etc/xdg/menus/applications.menu находится неспецифическое (generic) меню по умолчанию, которым может пользоваться любой WM/DE в отсутствие своего родного меню.
Адаптированное общесистемное меню для WM/DE
Наличие родных приложений, настроек и т.д. является поводом, чтобы создать для WM/DE адаптированное общесистемное меню. Рекомендуется размещать адаптированное меню по пути /etc/xdg/menus/<WM/DE name>-applications.menu. Чтобы WM/DE нашел свое меню по этому пути обычно достаточно указать в start<DE>
export XDG_MENU_PREFIX="<WM/DE name>-"
Адаптированное общесистемное меню для WM/DE должно предоставлять виртуальный пакет <NAME>-freedesktop-menu.
WM/DE должен иметь зависимость на виртуальный пакет <NAME>-freedesktop-menu. Это позволяет при необходимости установить для WM/DE вместо имеющегося адаптированного общесистемного меню произвольное другое меню.
Если с WM/DE в комплекте идет свое оригинальное меню, предлагаемое разработчиками,то WM/DE должен выносить свое оригинальное меню, предлагаемое разработчиками, в отдельный подпакет либо вообще отключать его. Также, WM/DE не должен явно требовать свое оригинальное меню. Вместо этого он должен иметь зависимость на виртуальный пакет <NAME>-freedesktop-menu
порядок слияния подменю в Адаптированное общесистемное меню для WM/DE
Адаптированное меню /etc/xdg/menus/<WM/DE name>-applications.menu должно осуществлять слияние подменю в следующем порядке:
- явно сливается общесистемное меню /etc/xdg/menus/altlinux-applications.menu, выбираемое через альтернативу.
- явно сливается общесистемный каталог подменю /etc/xdg/menus/applications-merged
- накладываются настройки меню, описанные собственно в адаптированном меню
- явно сливается персональный каталог подменю, обычно /etc/xdg/menus/<WM/DE name>-applications-merged. Исключение -- KDE4, где в качестве персонального каталога подменю используется каталог /etc/xdg/kde4/menus/applications-merged.
Настройка и брендинг общесистемного меню в WM/DE
- настройки, действующие на все WM/DE, должны размещаться в общесистемном каталоге подменю /etc/xdg/menus/applications-merged.
- настройки, специфические для конкретного WM/DE, должны размещаться в персональном каталоге подменю для конкретного WM/DE, обычно /etc/xdg/menus/<WM/DE name>-applications-merged. Исключение -- KDE4, где в качестве персонального каталога подменю используется каталог /etc/xdg/kde4/menus/applications-merged.
Подход к построению меню
Нейтральность
.desktop файл позволяет указывать, в меню каких оконных менеджеров их показывать. Поэтому общесистемное меню должно быть оконно нейтральным, а для специфических примочек надо выделять отдельный набор .desktop файлов с указанием OnlyShowIn=БлаБла. Не нужно злоупотреблять OnlyShowIn= и NotShowIn=. Обычно,использование NotShowIn= не приносит пользы.
См. тж. [1]
Дополнительные поддерживаемые категории
Категория | описание | Дополнительно указывать |
---|---|---|
X-Typing | Обучение набору клавиатуры | Education; |
X-Desktop | Утилиты рабочего стола, не являющиеся апплетами (Applet;) | Utility; |
X-ALTLinux-VideoSettings | Настройки монитора, видеокарты, Х-сервера... | Settings;HardwareSettings; |
X-PersonalSettings | Настройки персональные | Settings; |
Ссылки
- 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