Hi,

If I rename my ezgo-applications.menu to kf5-applications.menu (since
overwrote the original one) the menu would be shown as I expected.
Therefore I think that the kservice in kf5 didn't honor the xdg menu spec.

I studied at kservice as Xuetian suggested, but not any luck so far.  Any
idea?


Franklin



2016-01-17 0:50 GMT+08:00 Weng Xuetian <[email protected]>:

> Just FYI, related code can be found via:
> https://lxr.kde.org/search?_filestring=&_string=XDG_MENU_PREFIX
>
> On Sat, Jan 16, 2016 at 8:36 AM, Franklin Weng
> <[email protected]> wrote:
> > Hi,
> >
> >
> > Again, when developing new version of ezgo, which is based on Kubuntu
> 15.10,
> > I got the same problem:
> >
> > With the following environment variables  set:
> >
> > XDG_MENU_PREFIX=ezgo-
> > XDG_CONFIG_DIRS=/etc/xdg
> >
> XDG_DATA_DIRS=/usr/share:/usr/share/kde-plasma:/usr/share/ezgo/ezgo-menu:/usr/local/share
> >
> > In Kubuntu 15.10 live, the menu behavior is:
> >  - Main menu layout and desktop-directories followed
> > /etc/xdg/menus/kf5-applications.menu
> >  - The desktop files were read from
> /usr/share/ezgo/ezgo-menu/applications
> > (which I defined in the /etc/xdg/menus/ezgo-applications.menu, and the
> zh_TW
> > name in this folder were changed)
> >  - If I define the ezgo-*.directory file in kf5-applications.menu without
> > specifying any new <AppDir>, it still works.  That means the
> > ezgo-applications.menu were read, but seemed to be overwritten by
> > kf5-applications.menu.
> >
> > In the XDG menu spec v1.1-draft (same in v1.0) it said,
> >
> > <XDG_MENU_SPEC>
> > $XDG_CONFIG_DIRS/menus/${XDG_MENU_PREFIX}applications.menu
> >
> > This file contains the XML definition of the main application menu
> layout.
> > The first file found in the search path should be used; other files are
> > ignored. This implies that if the user has their own
> > ${XDG_MENU_PREFIX}applications.menu, it replaces the system wide one.
> > (Though the user's menu may explicitly merge the system wide one.)
> >
> > Systems that offer multiple desktop environments and that want to use
> > distinct menu layouts in the different environments can use differently
> > prefixed .menu files. In this case the$XDG_MENU_PREFIX environment
> variable
> > must be set by the system to reflect the .menu file that is being used.
> >
> > For example if a system contains both the GNOME and the KDE desktop
> > environments it can decide to use gnome-applications.menu as the menu
> layout
> > in GNOME sessions and kde-applications.menu as the menu layout in KDE
> > sessions. To correctly reflect this, it should set the $XDG_MENU_PREFIX
> > environment variable to "gnome-" respectively "kde-".
> > </XDG_MENU_SPEC>
> >
> > Any idea about the XDG menu spec implementation in kf5 or plasma5?  Any
> help
> > will be very appreciated.
> >
> >
> > Thanks,
> > Franklin
> >
> >
> >
> >>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
> unsubscribe
> >>> <<
> >
>
> >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
> unsubscribe <<
>
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<

Reply via email to