xde-menu

XDE-MENU(1)                      User Commands                     XDE-MENU(1)



NAME
       xde-menu - XDG compliant menus for XDE

SYNOPSIS
        xde-menu [ COMMAND ] [ OPTIONS ]
        xde-menugen [ OPTIONS ]
        xde-menu-popmenu [ OPTIONS ]
        xde-menu-monitor [ OPTIONS ]
        xde-menu-replace [ OPTIONS ]
        xde-menu-refresh [ OPTIONS ]
        xde-menu-restart [ OPTIONS ]
        xde-menu-quit [ OPTIONS ]

DESCRIPTION
       xde-menu is a command-line program that can be used to generate an XDG
       compliant menu in a number of formats to support configuration of the
       root menu for light-weight window managers.  It is a menu generator,
       system tray menu, and pop-up menu that can be used to both generate XDG
       compliant menus for a number of popular light-weight window managers as
       well as providing a system tray and pop-up menu.

       xde-menu is capable of generating either a complete menu for a number
       of well-known window managers, or for generating a sub-menu that can be
       included in the root menu of those window managers.

OPTIONS
       xde-menu uses getopt_long_only(3), so non-ambiguous option
       abbreviations are permitted.  xde-menu recognizes the following
       options:

   COMMAND OPTIONS
       Command options affect the primary operating mode of the program.  Only
       one command option can be specified.  xde-menu recognizes the following
       command options:

       [--menugen, -G]
           Specifies that xde-menu is to generate a window manager root-menu
           and then exit.  No new instance is created: only the root-menu is
           generated and then the program exits.  This option does not cause
           an error when an instance of xde-menu is running (or not).  This is
           the default when xde-menu is invoked as xde-menugen, or when no
           command option is specified.

           xde-menu is typically used with the --menugen option to generate an
           initial window manager root menu as part of the initialization
           sequence of a particular window manager or panel.  The --wmname,
           --format, --output and --die-on-error options are normally
           specified in this case.

       --monitor, -g
           Specifies that xde-menu is not to exit after successfully
           generating the menu, but to monitor pertinent directories for
           changes, and regenerate the menu when changes are detected.  This
           option implies the --output option, without an argument (i.e. the
           default or detected menu file will be used).

           When changes are detected in the application database, the menu is
           regenerated after an interval of no changes.  When changes are
           detected to the active window manager, the menu is regenerated, to
           the location and in the format of the new window manager, after an
           interval of no changes.

           Runs a new instance of xde-menu and specifies that the program is
           to monitor pertinent directories for changes and regenerate all
           menus (root, system tray and pop-up) when changes are detected.
           This option implies the --output option.  This option normally
           requires libinotify(3).  This option causes an error when another
           instance of xde-menu is already running.  (See the --replace
           option, below.)  This is the default when xde-menu is invoked as
           xde-menu-monitor(1).

           When performing background operation with the --monitor command
           option, the program will add a status icon to the system tray.  The
           status icon will be able to be used to pop up the menu.  Addition
           of a status icon to the system tray can be avoided using the
           --notray option.  The status icon can also be removed using the
           status icon pop-up configuration menu.

           xde-menu is typically invoked as an XDG autostart item with the
           --monitor command option at startup of the X11 session.  The
           --wmname and --format options can often be unspecified.  An XDG
           autostart .desktop file is installed when the package installs that
           will invoke xde-menu and add a status icon to the system tray.

       --popmenu, -P
           Specifies that xde-menu is to request a running instance to pop-up
           a menu.  The menu to pop up, the location and invocation of the
           pop-up is controlled by additional general options.  Depending on
           the setting of the --button option, this will either pop up the
           menu at the current pointer position, or will pop up the menu at
           the centre of the screen.  When multiple monitors are present, the
           menu will pop up at the centre of the monitor in which the pointer
           currently resides (which is used by most tiling window managers as
           the "current" monitor).  This option does not cause an error when
           no current instance of xde-menu is running.  This is the default
           when xde-menu is invoked as xde-menu-popmenu(1).

           For pop-up menu operation, an background instance of xde-menu can
           be asked to pop up an applications or other menu using the
           --popmenu command option.  The major use of this operation is to
           pop a menu from another program (such as a panel), or to pop a menu
           as a result of a button click or button press using window manager
           bindings.

       --refresh, -E
           Asks a running instance of xde-menu to refresh the menu.  This is
           normally not required when xde-menu is run with the --monitor
           option, as xde-menu then detects when .desktop files, icons, theme
           files or window managers have changed and automatically refreshes
           the menus in response.  This option causes an error when no current
           instance of xde-menu is running.  This is the default when xde-menu
           is invoked as xde-menu-refresh(1).

       --restart, -S
           Asks a running instance of xde-menu to restart (re-execute itself
           with the same options and arguments).  This is useful when the xde-
           menu executables have been upgraded.  This option causes an error
           when no current instance of xde-menu is running.  This is the
           default when xde-menu is invoked as xde-menu-restart(1).

       --replace, -R
           Replace a currently running instance (that was invoked with the
           --monitor option).  It is not an error if no other instance is
           running.  Runs a new instance of xde-menu and specifies that the
           program is to monitor pertinent directories for changes and
           regenerate all menus when changes are detected.  This option
           implies the --output and --monitor option.  This option normally
           requires libinotify(3).  This option (unlike --monitor) does not
           cause an error when another instance of xde-menu is already
           running, and simply replaces all other instances.  This is the
           default when xde-menu is invoked as xde-menu-replace(1).

       --quit, -q
           Ask a currently running instance (that was invoked with the
           --monitor option) to quit.  It is not an error if no other instance
           is running.  This is the default when xde-menu is invoked as
           xde-menu-quit(1).

       --help, -h, -?, --?
           Print usage information, including the current values of option
           defaults, and exit.

       --version, -V
           Print version information and exit.

       --copying, -C
           Print copying information and exit.

   GENERAL OPTIONS
       --display DISPLAY
           Specify the display to use (overriding the "DISPLAY" environment
           variable).  The default is the value of the "DISPLAY" environment
           variable.

       --filename, -c FILENAME
           Use a different configuration file from the default.  The default
           is the file $XDG_CONFIG_HOME/xde-menu/rc.  Any resources not
           present in the configuration file will be taken from from the
           /usr/share/X11/app-defaults/XDE-Menu resource file.  Resources
           present in the display's RESOURCE_MANAGER property will take
           precedence over any setting in these files.

       --notray
           Run without installing the menu in the system tray.  This is the
           default when the program in invoked as xde-menu-generate(1) or when
           the --menugen option is specified.

           This option can be set with the resource xde-menu.systray.

       --nogenerate
           Do not generate window manager root menus.  This option is invalid
           when no command option is specified, or when the program is invoked
           as xde-menugen.  When combined with the --notray option, the
           program will background itself and service --popmenu requests only.

       -x, --exit
           When running in the foreground and generating window manager root
           menus, exit the main process immediately after generating menus.
           This permits window manager root menus to be generated before
           launching the window manager, but not waiting longer than
           necessary.  The default is to run in the foreground and continue to
           run in the foreground, even after generating window manager root
           menus.

       --verbose[=LEVEL], -v[LEVEL]
           When generating output, generate more verbose output.  Increments
           or sets the output verbosity to LEVEL.  The default level is 1.
           Normal output is printed to standard output.  This option may be
           repeated.

       --debug[=LEVEL], -D[LEVEL]
           Print debugging information to standard error during operation.
           Increments or sets the debug verbosity to LEVEL.  The default level
           is 0.  Debugging output is printed to standard error.  This option
           may be repeated.

   MENU FORMAT OPTIONS
       The following options affect the formatting and output of the window
       manager root window menu, system tray menu and pop-up menu.  Not all
       options affect the system tray and pop-up menus.

       --wmname, -w WMNAME
           Specifies the name of the window manager for which menus are to be
           generated.  Currently recognized window managers are as follows:

           2bwm(1), adwm(1), aewm(1), aewm++(1), afterstep(1), awesome(1),
           blackbox(1), bspwm(1), ctwm(1), cwm(1), dtwm(1), dwm(1),
           echinus(1), etwm(1), failsafewm(1), fluxbox(1), flwm(1), fvwm(1),
           glasswm(1), goomwwm(1), herbstluftwm(1), i3(1), icewm(1), jwm(1),
           larswm(1), matwm2(1), metacity(1), mvwm(1), mwm(1), openbox(1),
           pekwm(1), spectrwm(1), twm(1), uwm(1), vtwm(1), waimea(1), wind(1),
           wm2(1), wmaker(1), wmii(1), wmx(1), xdwm(1) and yeahwm(1).

           When unspecified, or when a window manager change is detected, the
           setting of the "_XDE_WM_NAME" property on the root window (or the
           "WM_NAME" or "_NET_WM_NAME" property on the window manager check
           window, or on the window owning the window manager selection,
           "WM_S%d") is examined to determine the window manager name.  This
           is accomplished by converting the value of either property to all
           lowercase.  See also, "ENVIRONMENT" and "PROPERTIES".

           When the program is running in monitor mode for the active window
           manager, the window manager name need not be specified explicitly.
           However, when using the program in --menugen mode to simply
           generate a root menu without a "DISPLAY" environment variable, this
           option (or the --format option) must be specified explicitly.

       --format, -f FORMAT
           Specify the output format.  Recognized output formats are as
           follows:

           2bwm(1), adwm(1), aewm(1), aewm++(1), afterstep(1), awesome(1),
           blackbox(1), bspwm(1), ctwm(1), cwm(1), dtwm(1), dwm(1),
           echinus(1), etwm(1), failsafewm(1), fluxbox(1), flwm(1), fvwm(1),
           glasswm(1), goomwwm(1), herbstluftwm(1), i3(1), icewm(1), jwm(1),
           larswm(1), matwm2(1), metacity(1), mvwm(1), mwm(1), openbox(1),
           pekwm(1), spectrwm(1), twm(1), uwm(1), vtwm(1), waimea(1), wind(1),
           wm2(1), wmaker(1), wmii(1), wmx(1), xdwm(1), yeahwm(1).

           When unspecified, the setting or implied setting of the --wmname
           option is used.  If the --wmname option is also unspecified, or
           when a window manager change is detected, the setting of the
           "_XDE_WM_NAME" property on the root window (or the "WM_NAME" or
           "_NET_WM_NAME" property on the window manager check window, or on
           the window owning the window manager selection, "WM_S%d") is
           examined to determine the window manager name.  This is
           accomplished by converting the first word in the value of either
           property to all lowercase.  See also, "ENVIRONMENT" and
           "PROPERTIES".

           When the program is running in monitor mode for the active window
           manager, the format need not be specified explicitly.  However,
           when using the program in --menugen mode to simply generate a root
           menu without a "DISPLAY" environment variable, this option (or the
           --wmname option) must be specified explicitly.

           Note that openbox(1) and wmaker(1) support both an old and new menu
           format.  The old formats are only selected when explicitly
           specified as "openboxold" or "wmakerold".

           Note also that perlpanel(1) format is not associated with a
           specific window manager; however, the --wmname option is used to
           determine which entries to place in the perl panel output and the
           --desktop option is used to determine which application or system
           entries to include.

       --fullmenu, -F, --nofullmenu, -l
           When specified, output a full menu and not only the application
           sub-menu, or not.  The default is to output a full menu.  This also
           affects the system tray menu and pop-up menus accordingly.

       --desktop, -d DESKTOP
           Specify the desktop name for "NotShowIn" and "OnlyShowIn"
           comparisons.  The default is the all uppercase string corresponding
           to the window manager name, (or the desktop name explicitly
           specified for the window manager and format), unless the
           "XDG_CURRENT_DESKTOP" environment variable is defined.

       --root-menu, -r MENU
           Specify the location of the root menu file.  The default is
           calculated using XDG environment variables (see "ENVIRONMENT"), and
           defaults to the file ${XDG_MENU_PREFIX}applications.menu in the
           $XDG_CONFIG_HOME:$XDG_CONFIG_DIRS search path.  Note, however, that
           xde-menu supports both "applications" and "system" menus using the
           --menu option.

       --output, -o [FILENAME]
           Write the window manager root menu output to the file, FILENAME.
           This is particularly useful with option --die-on-error as the
           output will not be written at all if an error is encountered.  If
           the FILENAME is not specified, the setting of the "_XDE_WM_MENU"
           property on the root window is examined to determine the location
           of the menu file.  When the property is not set or not available,
           the default menu location for the current --wmname or --format will
           be used.

           Note that not all light-weight window managers support a root menu.
           Note also that at startup, xde-menu will wait several seconds for a
           window manager to appear if one is not present at initialization
           and neither the --wmname nor --format options are specified.

       --icons, --noicons, -I
           Include or do not include icons in the generated menu files.  This
           option has no effect when it is not possible to generate icons for
           the menu format.  That is, when the --format is one such as
           blackbox(1), or waimea(1), it is not possible to place icons in the
           root menu and this option is therefore ignored.  The default is to
           place icons in icon capable generated menus.

           This option affects system tray menus and pop-up menus as well.
           The default for system tray and pop-up menus is to only place icons
           in the generated menus when the --format also supports icons (to
           mimic the behaviour of the underlying window manager).  When the
           window manager --format does not support a root menu, (e.g.
           dwm(1)), icons will be added to the menu.

       --theme THEME
           Specify the theme name to use when displaying menus.  The default
           is to obtain the theme name from the default locations (such as the
           $HOME/.gtkrc-2.0 file).

       --icon-theme, -t THEME
           Specify the icon theme name to use when generating icons.  The
           default is to obtain the icon theme name from the default locations
           (such as the $HOME/.gtkrc-2.0 file).

       --launch, -L, --nolaunch, -0
           Specifies whether to use xdg-launch(1) to launch the desktop files
           directly or not.  This option will only be honoured when the
           xdg-launch(1) program is available and accessible.  Also, some
           window managers (e.g. openbox(1)) provide their own desktop startup
           launching and some don't.  So, the default setting may depend on
           the active window manager.

           When specified and available, rather than launching programs
           itself, xde-menu will pass the appropriate command to
           xdg-launch(1).  Note that if a terminal emulation program was also
           specified with environment variables or X resources, these
           preferences will be passed to xdg-launch(1) in environment
           variables.

       --style, -s STYLE
           Specify which format of window manager menu specification output to
           generate.  STYLE can be one of the following:

           fullmenu
               The default: output a full menu suitable for use as the root
               menu specification for the window manager.

           appmenu
               Output a complete menu; however, only output the applications
               portion of the menu (no styles, window manager controls,
               logout, etc.), suitable to reference as an "Applications" menu.

           entries
               Only output the entries for the menu but not the enclosing menu
               itself: this is useful for some pipe menu commands.

           This option does not affect the system tray nor pop-up menus.

       --menu, -M MENUNAME
           Specifies the filename stem of the root menu filename.  This
           defaults to "applications."  Another useful value is "system."
           Other possible values include "information" and "settings."  The
           special value "all" specifies that menus are to be generated for
           all known stems.  This option only affects the automatic
           determination of the root menu file.  When the root menu file is
           specified with the --root-menu option, the filename is determined
           verbatim.

       --excluded
           Include applications that are otherwise excluded in the menu
           specification.  This option will normally make applications that
           specify multiple categories appear in all categories rather than
           just the one category.

       --nodisplay
           Include applications that are marked no-display.  Applications that
           are marked no-display are typically marked thus because they only a
           mime type for the mime type database, or because they are only to
           be displayed by applications that understand them (e.g. some window
           manager applications).

       --unallocated
           Include applications that would be excluded because they were
           previously allocated a location in the menu.

       --empty
           Include empty sub-menus.  This is not a particularly useful feature
           for generation of the pop-up menu.  For window manager root menus,
           it typically does not matter, as most window managers suppress
           empty sub-menus.

       --separators
           Include all separators in the generated menu, whether required or
           not.  This option is the only way to achieve multiple separators
           between items.  Without this option, only one separator will occur
           between any two items, and no separator will occur at the beginning
           or end of a menu.

       --sort
           Sort the entries by display name instead of name.

       --actions
           Provide a sub-menu for selecting actions for an application in
           those applications that have actions.

       --tooltips
           Include verbose tool-tips for application menu items.

   POP-UP MENU OPTIONS
       The following options are only valid when the --popmenu command option
       has been specified or implied.  These options only affect the pop-up
       menu.

       --screen SCREEN
           Specify the screen number, SCREEN, to use when positioning the
           menu.  The default is either specified by the "DISPLAY" environment
           variable (when that variable specifies a screen); otherwise, all
           screens will be considered, and the screen containing the selected
           monitor will be used.

       --Monitor MONITOR
           Specify the monitor number, MONITOR, to use when positioning the
           menu.

       --timestamp, -T TIMESTAMP
           Provides the X11 server time stamp of the event that caused the
           pop-up.  This is the X11 server time stamp of the button or key
           press that invoked the pop-up.  When the program is launched with
           startup notification, the time stamp will be take from the
           DESKTOP_STARTUP_ID environment variable.

       --button, -b BUTTON
           Specifies the button that was used to invoke the pop-up.  Defaults
           to "Button3" (3).  This should be the button that was used to pop
           the menu.  A window manager that invokes this command in response
           to a button press should release its passive grab on the button
           before invoking the pop-up menu so that the popped up menu can grab
           the button.  A BUTTON of zero (0) means that the program was
           invoked with a key press instead of a button.

       --keypress, -k KEYSPEC
           Specifies the key specification that was used to invoke the pop-up.
           Defaults to none.  This should be the key that was used to pop the
           menu.  A window manager that invokes this command in response to a
           key press should release its passive grab on the key before
           invoking the pop-up menu so that the popped up menu can grab the
           keyboard.  A KEYSPEC of none means that the program was invoked
           with an unknown key press.

       --pointer, -p
           An alternate way of specifying --button=1.

       --keyboard, -K
           An alternate way of specifying --keypress with no option argument.

       --which, -i {active|focused|pointer|MONITOR}
           Specifies the monitor on which to pop the menu.  The default is to
           determine the monitor based on other options (such as the --button
           option).  The option argument can be one of the following (case
           insensitive, may be abbreviated):

           "default"
               When unspecified or specified as "default", the default monitor
               selection algorithm is used as follows:

               1.  When the --button or --pointer option is specified and non-
                   zero, select the monitor containing the pointer.

               2.  When neither --button nor --pointer option is specified, or
                   --button is specified as zero, or --keypress or --keyboard
                   is specified, select the monitor with the keyboard focus.

               3.  When there is no monitor with the keyboard focus, select
                   the monitor with the active window.

               4.  When there is no active window and no window with the
                   keyboard focus, select the monitor containing (or nearest
                   to) the pointer.

           "active"
               Use the monitor containing the active client.

           "focused"
               Use the monitor containing the window with the keyboard focus
               (focused client).

           "pointer"
               Use the monitor containing (or closest to) the pointer.

           MONITOR
               Use the specified monitor number, MONITOR, indexed from zero
               (0), specifying the screen and monitor on which to pop the
               menu.  When there is one screen and multiple monitors (typical
               case for Xinerama or RANDR multi-head setups), MONITOR
               specifies the monitor, indexed from zero (0).  When there are
               multiple screens, the --screen option specifies the screen and
               MONITOR specifies the monitor.

       --where, -W {default|pointer|center|topleft|bottomright|WHERE}
           Specifies the position for the pop-up menu.  This can be one of the
           following values (case insensitive, may be abbreviated):

           "default"
               Place the menu automatically based on other information, such
               as the button or key pressed to invoke the menu.  This is the
               default when unspecified.  The default placement algorithm is
               as follows:

               1.  If --button is specified and non-zero, or --pointer is
                   specified, place the menu at the pointer regardless of the
                   screen and monitor currently containing the pointer.  If
                   the pointer is positioned outside an active monitor, fall
                   back to the behaviour as if --button or --pointer was not
                   specified.

               2.  If --button is unspecified or zero (0), or --keyboard is
                   specified, place the menu in the centre (considering work
                   area) of the screen and monitor which currently contains
                   the keyboard focus or active window.

           "pointer"
               Place the northwest corner of the menu under the mouse pointer.
               This will always succeed.  This is the default when --button is
               specified and non-zero.

           "center"
               Place the menu in the centre of the root window on the current
               screen and monitor.  This is the default when --button is
               unspecified or zero, or --keyboard is specified.

           "topleft"
               Place the menu in the top-left corner of the current screen and
               monitor work area (considering panels and docks).

           "bottomright"
               Place the menu in the bottom-right corner of the current screen
               and monitor work area (considering panels and docks).

           WHERE
               Place the menu at the location specified by WHERE, which should
               be a string containing a screen geometry that can be parsed by
               XParseGeometry(3).  This is useful when the menu is launched
               from a menu button in an external program and the menu should
               be positioned adjacent to the button.  The geometry should be
               the geometry of the widget against which the menu should be
               placed.  When the width and height of the geometry are zero (or
               unspecified), it describes the point at which the menu should
               be placed.

   WORKSPACE OPTIONS
       Often, light-weight window managers will have a workspace and window
       menu as part of their root menus (e.g. blackbox(1), fluxbox(1),
       openbox(1)).  This provides the same mechanism for the GTK2 menu for
       window managers that do not support a root menu, or for those that
       would simply like a consistent look and feel in the root menu.  The
       following options affect how work spaces and clients are shown in such
       a menu:

       --order, -O ORDER
           Specifies the order, ORDER, in which clients are shown, as follows:

           "client"
               Clients are listed in client order.  This is the same order
               that it presented in the "_NET_CLIENT_LIST" property on the
               root window of EWMH compliant window managers.

           "stacking"
               Clients are listed in stacking order.  This is the same order
               that is presented in the "_NET_CLIENT_LIST_STACKING" property
               on the root window of EWMH compliant window managers.

           When unspecified, the default is client order (or whichever order
           is supported when the window manager does not support both).

           This option can be set with the resource xde-menu.order.

       --normal, -n
           This option can be set with the resource xde-menu.normal.

       --hidden, -H
           When listing clients, also list hidden clients.  The default is to
           skip hidden clients or clients that have the skip-window-list
           attribute.

           This option can be set with the resource xde-menu.hidden.

       --minimized, -m
           When listing clients, also list minimized clients.  The default is
           to skip minimized clients or clients that have the skip-window-list
           attribute.

           This option can be set with the resource xde-menu.minimized.

       --all-monitors, -a
           When listing clients, also list clients displayed on monitors other
           than the current one.  This includes clients on workspaces that are
           currently visible on a monitor.

           This option can be set with the resource xde-menu.allmonitors.

       --all-workspaces, -A
           When list clients, also list clients displayed on workspaces other
           than the current one.  As clients are listed, the current workspace
           may change as clients from other workspaces are listed.

           This option can be set with the resource xde-menu.allworkspaces.

       --noactivate, -N
           When selecting clients, do not activate them.  The default is to
           activate the selected client.  When neither --raise nor --focus are
           specified, this results in linly highlighting the menu selection.
           Activation of the window will still occur; however, when the window
           is selected (e.g. a modifier key is released).

           This option can be set with the resource xde-menu.activate.

       --raise, -U
           When selecting clients, raise the window.  The default is to only
           activate the selected client and not to explicitly raise it.  Some
           window managers raise windows when activated (others do not).  This
           provides a modicum of control.

           This option can be set with the resource xde-menu.raise.

   SESSION MANAGEMENT OPTIONS
       X session management options are not used by another user other than
       the X11 Session Manager.  The following options are used by X session
       management:

       -clientId CLIENTID
           Specifies the X Session Management client identifier, CLIENTID, of
           the previously running session of xde-menu.

       -restore SAVEFILE
           Specifies the X Session Management file name of a file, SAVEFILE,
           to which to session information was saved for restoration.

USAGE
       xde-menu currently uses libwnck+ or libwnck both to identify the window
       manager and to provide the window manager actions menu.  The range and
       format of window manager actions provided by libwnck+ is superior to
       libwnck.  This use means that xde-menu does not currently provide any
       support for window managers that do not have a modicum of compliance to
       the EWMH/NetWM specifications.  That may change in the future.

       To locate the menu under a button that was pressed in, for example, an
       external panel, where the button has geometry "55x20+30+0", specify the
       "--where='55x20+30+0'" option.  This will properly position the menu
       under the button.

   WINDOW MANAGERS
       The following window managers and menu environments are supported by
       xde-menu:

       --wmname=2bwm --format=2bwm
           Like dwm(1), 2bwm(1) does not provide a root menu; however, it does
           provide a mechanism for invoking an external root menu.  This can
           be used to invoke the GTK+ version of the root menu (i.e.  pop-up
           menu).

           2bwm(1) does not provide a user-settable style mechanism.
           Therefore, theme sub-menus provide only for the selection of XDE
           themes.

       --wmname=adwm --format=adwm
           Like dwm(1), adwm(1) does not provide a root menu; however, it does
           provide a mechanism for invoking an external root menu.  This can
           be used to invoke the GTK+ version of the root menu (i.e.  pop-up
           menu).

           adwm(1) provides a user-settable style mechanism.  Therefore, both
           style and theme sub-menus can be generated.

       --wmname=aewm --format=aewm
           aewm(1) is not tested, but should work fine.

       --wmname=aewm++ --format=aewm++
           aemw++(1) is barely ICCCM compliant and will likely not work well.

       --wmname=afterstep --format=afterstep
           No support has yet been included for afterstep(1).  Only generic
           applications menu and XDE theme sub-menus will currently be
           generated.  The afterstep(1) root menu is not supported.

       --wmname=awesome --format=awesome
           No support has yet been included for awesome(1).  Only generic
           applications menu and XDE theme sub-menus will currently be
           generated.  The awesome(1) root menu is not supported.

       --wmname=blackbox --format=blackbox
           blackbox(1) provides a root menu that is formatted similar to
           fluxbox(1) and the older openbox(1) ("openboxold") menu style.  The
           primary difference is that blackbox(1) does not support the display
           of icons.

           Sub-menus of user-settable blackbox(1) styles and corresponding XDE
           themes can be generated.

       --wmname=bspwm --format=bspwm
           bspwm(1) has fairly good EWMH/NetWM support and should work fine,
           but is untested.

       --wmname=ctwm --format=ctwm
           ctwm(1) provides a root menu that is formatted similar to twm(1).
           This root menu format does not support the display of icons.

           ctwm(1) when launched with XDE configuration files supports user-
           settable styles.  Sub-menus of user-settable ctwm(1) styles and
           corresponding XDE themes can be generated.

       --wmname=cwm --format=cwm
           cwm(1) only provides a rudimentary root menu (with no ability to
           generate sub-menus); however, it has the ability to specify command
           actions in response to key bindings or mouse buttons and can easily
           be configured to launch the GTK+ menu.

           cwm(1) does not really have a user-settable style system; however,
           the colors of some things can be changed using the configuration
           file and the window manager can be restarted.  xde-style(1) does
           not fully support cwm(1) yet, so sub-menus of user-settable cwm(1)
           styles are not generated; however, XDE themes are.

       --wmname=dtwm --format=dtwm
           dtwm(1) provides a root menu that is formatted similar to twm(1).
           This root menu format does not support the display of icons.

           dtwm(1) does not really have a user-settable style system.  Current
           support is only for setting XDE themes.

       --wmname=dwm --format=dwm
           dwm(1) does not provide a root menu; however, it does provide a
           mechanism for invoking an external root menu.  This is used to
           invoke the GTK+ version of the root menu.

       --wmname=echinus --format=echinus
           Like dwm(1), echinus(1) does not provide a root menu; however, it
           does provide a mechanism for invoking an external root menu.  This
           is used to invoke the GTK+ version of the root menu.

       --wmname=etwm --format=etwm
           etwm(1) provides a root menu that is formatted similar to twm(1).
           This root menu format does not support the display of icons.

       --wmname=failsafewm --format=failsafewm
           failsafewm(1) is not supported.

       --wmname=fluxbox --format=fluxbox
           fluxbox(1) provides a root menu that is formatted similar to
           blackbox(1).  This root menu, however, provides additional support
           for the display of icons.

       --wmname=flwm --format=flwm
           flwm(1) uses a directory of executables instead of a file format in
           the identical fashion to the wmx(1) window manager on which it is
           based.  It does not support the use of icons in menu items.  In
           fact, this is an alias for wmx as the two formats are completely
           compatible and interoperable.

       --wmname=fvwm --format=fvwm
           fvwm(1) provides a root menu using its own unique menu format.
           Although at one time fvwm(1) used a dtwm(1)-like menu format, it
           now uses its own unique perl(1) interface.  fvwm(1) supports the
           use of icons in menu items.

       --wmname=glasswm --format=glasswm
           glasswm(1) provides only some ICCCM support and is not supported.

       --wmname=goomwwm --format=goomwwm
           goomwwm(1) provides EWMH/NetWM support and should work well, but is
           untested.

       --wmname=herbstluftwm --format=herbstluftwm
           herbstluftwm(1) provides EWMH/NetWM support and should work well,
           but is untested.

       --wmname=i3 --format=i3
           i3(1) provides EWMH/NetWM support and should work well, but is
           untested.

       --wmname=icewm --format=icewm
           icewm(1) provides a programs menu using its own unique menu format.
           It support the display of icons in menu items.  icewm(1) does not
           provide the ability to specify the entire root menu: some items in
           the root menu are fixed by window manager and do not appear in the
           menu file.

       --wmname=jwm --format=jwm
           jwm(1) provides a root menu using its own XML-based menu format.
           It support the display of icons in menu items.  jwm(1) recently had
           a rework of its configuration files.  Unless you are on the most
           current versions, your mileage may vary.

       --wmname=larswm --format=larswm
           larswm(1) is barely ICCCM compliant and is, therefore, not
           supported.

       --wmname=matwm2 --format=matwm2
           Like dwm(1), matwm2(1) does not provide a root menu; however, it
           does provide a mechanism for invoking an external root menu.  This
           is used to invoke the GTK+ version of the root menu.

       --wmname=metacity --format=metacity
           metacity(1) does not provide a root menu; however, it has ample
           facility for launching the GTK+ menu.

       --wmname=mvwm --format=mvwm
           mvwm(1) is a derivative of fvwm(1) and should work well.

       --wmname=mwm --format=mwm
           mwm(1) is the old pre-openmotif window manager that was intended on
           providing the capabilities of the dtwm(1) OSF/Motif/CDE window
           manager.  It provides a root menu following a similar configuration
           file format to twm(1), ctwm(1), etwm(1) and vtwm(1).  It does not
           have the ability to display icons in menu items.

           Like dtwm(1), mwm(1) does not really have a user-settable style
           system.  Current support is only for setting XDE themes.

       --wmname=openbox --format=openbox or --format=openboxold
           Two formats are supported for the openbox(1) window manager: the
           newer openbox-3 XML format (openbox) and the older fluxbox(1)-like
           menu format (openboxold). The default for the openbox(1) window
           manager is the newer style; however, it still supports both
           formats.  Both formats support the use of icons in menu items.

       --wmname=pekwm --format=pekwm
           pekwm(1) provides a root menu that is formatted using its own file
           format.  It supports dynamic menus and provides support for
           displaying icons in menu elements.

       --format=perlpanel
           perlpanel(1) can read a fluxbox(1) or blackbox(1) style menu and
           generate a GTK+ menu from it.  This format generates a
           fluxbox(1)-like menu for use by perlpanel(1).  (Note that this
           format can be specified in addition to other formats, in which
           case, this format will be generated as well.)  The menu file is
           typically stored in ~/.perlpanel/menu, ~/.config/perlpanel/menu or
           /usr/share/perlpanel/menu, independent of which window manager is
           currently running.

       --wmname=spectrwm --format=spectrwm
           Like dwm(1), spectrwm(1) does not provide a root menu; however, it
           does provide a mechanism for invoking an external root menu.  This
           is used to invoke the GTK+ version of the root menu.

       --wmname=twm --format=twm
           twm(1) provides a root menu that uses its own format.  ctwm(1),
           etwm(1) and vtwm(1) share this format.  The format does not support
           the display of icons in the root menu.

       --wmname=uwm --format=uwm
           uwm(1) provides a root menu that uses its own format.  The format
           supports the use of icons in menu items.

       --wmname=vtwm --format=vtwm
           vtwm(1) provides a root menu that is formatted similar to twm(1).
           This root menu format does not support the display of icons.

       --wmname=waimea --format=waimea
           waimea(1) provides a root menu that is formatted similar to
           blackbox(1).  As with blackbox(1), this root menu does not support
           the display of icons.

       --wmname=wind --format=wind
           wind(1) does not have a root menu: it doesn't have any menus at
           all.  wind(1) window manager is difficult to support: the window
           manager has no mechanism for launching a menu.  However, an
           external key-binder such as bbkeys(1) can be used to launch the
           menu.  Also, it appears that wind(1) does not grab button clicks on
           the root window.

       --wmname=wm2 --format=wm2
           wm2(1) uses a directory of executables instead of a file format in
           the identical fashion to flwm(1) (which as based on wmx(1), a
           derivative of wm2(1)).  It does not support the use of icons in
           menu items.  In fact, this is an alias for flwm as the two formats
           are completely compatible and interoperable.

           However, wm2(1) barely provides ICCCM support and is, therefore,
           poorly supported.  Use its EWMH compliant derivative, wmx(1), or
           its derivative flwm(1).

       --wmname=wmaker --format=wmaker or --format=wmakerold
           Two formats are supported for the wmaker(1) window manager: the
           newer window maker lisp-based menu (wmaker) and the older line-
           based menu (wmakerold).  The default for the wmaker(1) window
           manager is the newer style; however, it still supports both
           formats.  Neither format supports the use of icons in menu items.

       --wmname=wmii --format=wmii
           wmii(1) provides EWMH/NetWM support and should work well, but is
           currently untested.

       --wmname=wmx --format=wmx
           wmx(1) uses a directory of executables instead of a file format in
           the identical fashion to flwm(1) (which was based on wmx(1)).  It
           does not support the use of icons in menu items.  In fact, this is
           an alias for flwm as the two formats are completely compatible and
           interoperable.

       --wmname=xdwm --format=xdwm
           xdwm(1) provides EWMH/NetWM support and should work well, but is
           currently untested.

       --wmname=yeahwm --format=yeahwm
           yeahwm(1) does not have a root menu: it doesn't have any menus at
           all.  Therefore, the GTK+ menu must be used.   yeahwm(1) is another
           window manager that is difficult to support without an external key
           binder (such as bbkeys(1)).  Mouse button clicks on the root window
           are intercepted by the window manager.  Support is unlikely.

   TERMINAL PROGRAMS
       For desktop entries that set "Terminal=true", when they may also set
       "StartupWMClass" to a class name specific to the program being
       executed.  Most terminal programs (and xterm(1) specifically) can set
       the "WMCLASS" name and class to something other than that of the
       terminal program (i.e. instead of "xterm.XTerm").  When the desktop
       entries do so, xde-menu will set the name attribute on the terminal to
       the name specified when the terminal is launched, if possible.  This
       also permits, for terminal emulation programs such as xterm(1), the
       ability to set special terminal resources by application.  Because not
       many desktop entry files do this, when no "StartupWMClass" is
       specified, the "APPID" or "BINARY" will be used instead and
       "StartupWMClass" will be automatically populated.

       This procedure provides additional assistance to window managers when
       terminal emulation programs do not properly observe startup
       notification.  (For example, xterm(1) does not properly observe startup
       notification, even though it properly observes X11 Session Management,
       whereas many other terminal emulators support both.)

       It is possible to change the default terminal emulation program used
       when these applications are launched by using environment variables
       (see "ENVIRONMENT") or X resources (see "X RESOURCES").

       Terminal programs that are known to xde-menu are: uxterm(1), xterm(1),
       st(1), aterm(1), rxvt(1), alacritty(1), which do not support startup
       notification, but do support setting the resource name; pterm(1),
       Eterm(1), urxvt(1), urxvt-tabbed(1), termit(1), gnome-terminal(1),
       termite(1), mate-terminal(1), terminology(1), kitty(1), which do
       support startup notification and do support setting the resource name;
       roxterm(1), lxterminal(1), xfce4-terminal(1), lilyterm(1), tilix(1),
       guake(1), terminator(1), which do support startup notification but do
       not support setting the resource name; x-terminal-emulator(1),
       deepin-terminal(1), tilda(1), which do support startup notification but
       do not support setting the resource name, nor setting the window title;
       qterminal(1), konsole(1), which do not support startup notification,
       nor setting the resource name, nor setting the window title; and
       koi8rxterm(1) which is language specific.

       When the TERMINAL environment variable is set to one of these terminals
       (a terminal known to xde-menu), it will automatically determine the
       corresponding XDG_TERMINAL and XDG_TERMRESN commands when they are not
       specified.  See "X RESOURCES" and "ENVIRONMENT" below.  When no
       terminal environment variables are specified, terminal programs will be
       detected in the user's PATH in the order specified above.  Note that
       terminix(1) and hyper(1) are currently unknown.  XDG_TERMINAL and
       XDG_TERMRESN must currently be specified to use those or other unknown
       terminals.

       See "X RESOURCES" and "ENVIRONMENT" below for more information on
       selecting the terminal to use for launching applications that need one.

X RESOURCES
       Most values that affect the look and feel of xde-menu may also be
       specified as X resources in the RESOURCE_MANAGER database associated
       with the X server.  All of these resources can have the specific
       resource name and class (xde-menu, XDE-Menu).  xde-menu specific
       resource defaults are contained in the
       /usr/share/X11/app-defautls/XDE-Menu file, in accordance with the
       convention for naming applications defaults files after their resource
       class.  See also "FILES".

       xde-menu uses a standard X11 resource file for runtime configuration.
       xde-menu uses the following X11 Resource Manager resources (note that
       the window manager name, WMNAME, can optionally be specified before the
       resource, where indicated, to alter behaviour for only a given window
       manager):

       xde-menu[.WMNAME].debug: INTEGER
           Same values as --debug option: an integer between zero (0) and
           six(6), inclusive.

       xde-menu[.WMNAME].verbose: INTEGER
           Same values as --verbose option: an integer between zero (0) and
           six (6), inclusive.

       xde-menu[.WMNAME].timeout: TIME
           Specifies the amount of time for the pop-up to persist in
           milliseconds.  Not used.  No option equivalent.

       xde-menu[.WMNAME].iconsize: UNSIGNED INTEGER
           Specifies the size of icons.  Not used.  No option equivalent.

       xde-menu[.WMNAME].fontsize: DOUBLE
           Specifies the point size of fonts.  Not used.  No option
           equivalent.

       xde-menu[.WMNAME].border: INTEGER
           Specifies the border around the pop-up in pixels.  Not used.  No
           option equivalent.

       xde-menu[.WMNAME].rootmenu: PATH
           Same values as --root-menu option: path to the root menu file.

       xde-menu[.WMNAME].fileout: {true|false}
           Truth value specifying whether to output the window manager root
           menu.

       xde-menu[.WMNAME].menufile: PATH
           Same values as --output option: path to the window manager root
           menu file.

       xde-menu[.WMNAME].filename: PATH
           Same values as --filename option: path to the configuration file to
           use.

       xde-menu[.WMNAME].noicons: {true|false}
           Truth value specifying whether to include icons in the applications
           and window list menus.

       xde-menu[.WMNAME].theme: NAME
           Same values as --theme option: name of the XDE (GTK2+) theme name.
           This resource should not be specified in a resource file and will
           not be written by a save operation.

       -xde-menu[.WMNAME].icontheme: NAME
           Same values as --icon-theme option: name of the XDE (GTK2+) icon
           theme name.  This resource should not be specified in a resource
           file and will not be written by a save operation.

       xde-menu[.WMNAME].launch: {true|false}
           Truth value specifying whether to use xdg-launch(1), if available.
           Same as the --launch and --nolaunch options.

       xde-menu[.WMNAME].runhist: PATH
           Specifies the location of the run history file.  The default is
           $XDG_CONFIG_HOME/run-history.

       xde-menu[.WMNAME].recapps: PATH
           Specifies the location of the recent applications file.  The
           default is $XDG_CONFIG_HOME/recent-applications.

       xde-menu[.WMNAME].recently: PATH
           Specifies the location of the recently used files list.  The
           default is $XDG_DATA_HOME/recently-used, and if that file does not
           exist, $HOME/.recently-used.

       xde-menu[.WMNAME].recent: PATH
           Specifies the location of the recently used applications list.  The
           default is $XDG_DATA_HOME/recent-applications, and if that file
           does not exist, $HOME/.recent-applications.

       xde-menu[.WMNAME].maximum: INTEGER
           Same as the --maximum option to xde-recent(1): specifies the
           maximum number of recent applications or files to display in the
           recent files and applications menus.  The minimum value is one, and
           the maximum is 100.  The default value when unspecified is 50.
           Specified as zero (0) when there is no limit on the number to
           display.

       xde-menu[.WMNAME].menu: FILESTEM
           Specifies the stem name of the menu used when determining the root
           menu file for which to build the menu.  The default is
           "applications".  This resource should typically not be used in the
           resource file and will not be written by a save operation.

       xde-menu[.WMNAME].button: UNSIGNED INTEGER
           Same as the --button and --pointer options: specifies the button
           that was pressed to launch the menu (or zero (0) when no button was
           pressed to launch the menu).  This resource should not be used in a
           resource file and will not be written by a save operation.

       xde-menu[.WMNAME].keypress: KEYSPEC
           Same as the --keypress and --keyboard options: specifies that the
           menu was launched as a result of a key press instead of a button
           click.  This resource should not be used in a resource file and
           will not be written by a save operation.

       xde-menu[.WMNAME].which: {default|active|focused|pointer|SCREEN}
           Same as the --which option: specifies which screen to use when
           posting the menu.  This resource should not be used in a resource
           file and will not be written by a save operation.

       xde-menu[.WMNAME].where:
       {default|pointer|center|topleft|bottomright|GEOMETRY}
           Same as the --where option: specifies where on the screen to post
           the menu.  This resource should not be used in a resource file and
           will not be written by a save operation.

       xde-menu[.WMNAME].normal: {true|false}
           Truth value specifying whether to include normal windows in client
           lists.

       xde-menu[.WMNAME].hidden: {true|false}
           Truth value specifying whether to include hidden windows in client
           lists.

       xde-menu[.WMNAME].minimized: {true|false}
           Truth value specifying whether to include minimized windows in
           client lists.

       xde-menu[.WMNAME].allmonitors: {true|false}
           Truth value indicating whether to include windows from all monitors
           in client lists.

       xde-menu[.WMNAME].allworkspaces: {true|false}
           Truth value indicating whether to include windows from all work
           spaces in client lists.

       xde-menu[.WMNAME].activate: {true|false}
           Truth value specifying whether to activate selected windows from
           client lists.

       xde-menu[.WMNAME].raise: {true|false}
           Truth value specifying whether to raise selected windows from
           client lists.

       xde-menu[.WMNAME].systray: {true|false}
           Truth value specifying whether to install a status icon in the
           system tray.

       xde-menu[.WMNAME].generate: {true|false}
           Truth value specifying whether to generate window manager root
           menus when supported.

       xde-menu[.WMNAME].excluded: {true|false}
           Truth value specifying whether to include excluded applications in
           the applications menu.

       xde-menu[.WMNAME].nodisplay: {true|false}
           Truth value specifying whether to include no-display applications
           in the applications menu.

       xde-menu[.WMNAME].unallocated: {true|false}
           Truth value specifying whether to include unassigned applications
           in the applications menu.

       xde-menu[.WMNAME].separators: {true|false}
           Truth value specifying whether to include all separators in the
           applications menus.

       xde-menu[.WMNAME].sort: {true|false}
           Truth value specifying whether to sort applications by display name
           in the applications menu.

       xde-menu[.WMNAME].tooltips: {true|false}
           Truth value specifying whether to include verbose tooltips for
           applications in the applications menu.

       xde-menu[.WMNAME].actions: {true|false}
           Truth value specifying whether to offer desktop actions in the
           applications menu for applications that provide actions.

       xde-menu[.WMNAME].exit: {true|false}
           Truth value specifying whether to exit once the window manager root
           window has been generated.

       xde-menu[.WMNAME].termname: TERMINAL-NAME
           Word specifying the name of the terminal emulation program
           executable to be used to launch, or pass to xdg-launch(1), for
           applications that need terminals.

       xde-menu[.WMNAME].terminal: EXEC-COMMAND
           String specifying the terminal emulation program command to be used
           to launch, or pass to xdg-launch(1), for applications that need
           terminals.  This command can contain "Exec" line substitutions.

       xde-menu[.WMNAME].termresn: EXEC-COMMAND
           String specifying the terminal emulation program command to be used
           when a resource name is available and can be set to launch, or pass
           to xdg-launch(1), for applications that need terminals.  This
           command can contain "Exec" line substitutions; however, their "%"
           must be escaped with an additional "%", and somewhere in the
           command line there must appear a printf(3) style unescaped %s
           expression to be substituted with the resource name.

ENVIRONMENT
       The following environment variables are significant to the operation of
       xde-menu:

       $XDG_CURRENT_DESKTOP
           Specifies the current desktop.  When the --format is not specified,
           the format defaults to the value of this environment variable
           converted to lower-case.  When the --desktop is not specified, the
           desktop defaults to the value of this environment variable.

       $XDG_MENU_PREFIX
           Specifies the prefix to apply to the default menu name to derive
           the root menu unless specified with the --root-menu option.  When
           unspecified, this variable defaults to a null string.

           xde-menu finds the root menu using the following logic:

           1.  If a file name is specified using the --root-menu option, (and
               the window manager has not changed since xde-menu was
               launched), that file name is used as the root menu.

           2.  If the window manager has changed since xde-menu was launched,
               any --root-menu option that was specified at launch is ignored.

           3.  If the file specified by --root-menu is not found or
               unspecified, the file name ${XDG_MENU_PREFIX}applications.menu
               is sought in each of the sub-directories name menu in the path
               $XDG_CONFIG_HOME:$XDG_CONFIG_DIRS in accordance with the XDG
               menu specification.

               Note that the stem applications can be changed using the --menu
               option.

           4.  If not found, the file name applications.menu is sought in each
               of the menu sub-directories in the path
               $XDG_CONFIG_HOME:$XDG_CONFIG_DIRS in accordance with the XDG
               menu specification.

               Note that the stem applications can be changed using the --menu
               option.

       $XDG_CONFIG_HOME
           Specifies the user XDG configuration directory.  When unspecified,
           defaults to $HOME/.config in accordance with XDG specifications.

       $XDG_CONFIG_DIRS
           Specifies the system XDG configuration directories.  When
           unspecified, defaults to /etc/xdg in accordance with XDG
           specifications.

       $XDG_DATA_HOME
           Specifies the user XDG data directory.  When unspecified, defaults
           to $HOME/.local/share in accordance with XDG specifications.

       $XDG_DATA_DIRS
           Specifies the system XDG data directory search path.  When
           unspecified, defaults to /usr/local/share:/usr/share in accordance
           with XDG specifications.

       $XDG_ICON_THEME
           Specifies the name of the icon theme.  When not specified, the icon
           theme will be determined from configuration sources (e.g. the
           $HOME/.gtkrc-2.0 file).

       $XDG_TERMINAL
           Used by xde-menu, or passed to xdg-launch(1), as the command to
           prefix to the "Exec" line of terminal applications to launch
           applications within a terminal.

       $XDG_TERMRESN
           Used by xde-menu, or passed to xdg-launch(1), as the command to
           prefix to the exec line of terminal applications to launch
           applications within a terminal when a resource name is available to
           be set on the terminal.  (Not necessarily defined for all terminal
           types).

       $TERMINAL
           Use by xde-menu, or passed to xdg-launch(1), as the name of the
           preferred terminal program to run.  If this terminal is known to
           xde-menu, it will automatically determine the corresponding
           XDG_TERMINAL and XDG_TERMRESN commands when they are not specified.
           See "TERMINAL PROGRAMS", above, for a list of known terminal
           emulation programs.

PROPERTIES
       The following X11 window properties are significant to the operation of
       xde-menu:

       "_XDE_WM_NAME"
           When available and set on the root window, specifies the window
           manager name used to derive the --wmname and --format options when
           the options are unspecified or when the window manager has changed
           since the xde-menu command was launched.

       "_NET_WM_NAME"
           When "_XDE_WM_NAME" is unavailable, and this property is set
           properly on the window manager EWMH/NetWM check window, the first
           word of the property will be used to derive the --wmname and
           --format options when the options are unspecified or when the
           window manager has changed since the xde-menu command was launched.

       "_XDE_WM_STYLE"
           When set on the root window, or XDE check window, used to determine
           the location of the window manager style file.

       "_XDE_WM_STYLENAME"
           When set on the root window, or XDE check window, used to determine
           the name of the style set for the window manager.

       "_XDE_WM_THEME"
           When set on the root window, or XDE check window, used to determine
           the name of the theme set for XDE.

       "_XDE_WM_THEMEFILE"
           When set on the root window or XDE check window, used to determine
           the file to use for the theme set for XDE.

FILES
       Resources for configuration and tweaking the run-time operation of xde-
       menu are looked up in the order, below.  Resources that are read later
       only have an effect if the resource was not already set by some
       previous file.  The locations are as follows:

       RESOURCE_MANAGER
           The first place that resource configuration is examined is from the
           RESOURCE_MANAGER property on the root window of the screen on which
           the menu is to be displayed.

       $XDG_CONFIG_HOME/xde-menu/WMNAME/rc
           The location of the window-manager specific user configuration
           file.  The window manager name component, WMNAME, in the path,
           above, is the all uppercase window manager name.  This location is
           used when there is no user file specified.

       $XDG_CONFIG_HOME/xde-menu/rc
           The default location of the generic user configuration file.  This
           is used when there is no user file specified.

       /usr/share/X11/app-defaults/XDE-Menu
           The default location of the generic system configuration file.
           This is used when there is no user file available or to provide
           defaults when one is available.

       The following file locations are scanned for recent files and
       applications:

       $XDG_CONFIG_HOME/xde/recent-applications
           This is the location of a simple recent applications file
           maintained by the xde-app(1) launcher application.

       $XDG_DATA_HOME/recently-used
       $HOME/.recently-used
           These are the locations (in order of preference) of a simple XML
           formatted recently used files list maintained by legacy
           applications (as well as xdg-launch(1)).

       $XDG_DATA_HOME/recent-applications
       $HOME/.recent-applications
           These are the locations (in order of preference) of a simple XML
           formatted recently used applications list maintained by legacy
           applications (as well as xdg-launch(1)).

       $XDG_DATA_HOME/recently-used.xbel
           This is the location of the current XBEL formatted recently used
           files list maintained by current applications (as well as
           xdg-launch(1)).

       $XDG_DATA_HOME/recent-applications.xbel
           This is the location of the current XBEL formatted recently used
           applications lists maintained by current applications (as well as
           xdg-launch(1)).

HISTORY
       xde-menu was written for a number of reasons:

       1.  Existing lightweight menu generators that read XDG .desktop files
           (e.g. fbmenugen(1), menutray(1)) do not conform to the XDG menu
           generation specifications and in particular are incapable of
           merging menus.

           Many existing light-weight window manager generators that read XDG
           .desktop files do not conform to the XDG menu generation
           specifications and, in particular, are incapable of merging menus.

       2.  Existing XDG menu generators (such as the SuSE xdg_menu(1) "perl"
           script) do not properly merge default merge directories and do not
           observe "<Layout>" commands.  Also, they are poor at including
           icons in the generated menus.  They, of course, do not generate
           system tray nor pop-up menus either.

       3.  Existing XDG menu generators run once and keep cache information,
           or have a "regenerate" command placed in the menu.  They do not
           monitor XDG directories for changes and update menus on changes.

       4.  The lxpanel(1) and pcmanfm(1) menu generators do not have any of
           the above deficiencies; however, they do not create window manager
           specific sub-menus.  Also, they are buggy and generally fail to
           display a menu at all when they have a problem.  They do not handle
           the "<FileName>" tag within a "<Layout>" tag.

       5.  None of the menu-generating facilities that I have found can handle
           an NFS-mounted home directory.  I find this annoying: XDG menus are
           host specific.

       This program largely incorporates the perl versions of the
       xdg-traymenu(1p) and xdg-menugen(1p) programs.  The reason for
       incorporating both together was to reduce the amount of time that is
       taken to read and cache .desktop file information.

AUTHOR
       Brian Bidulock <mailto:bidulock@openss7.org>.

SEE ALSO
       xde-style(1), xde-menugen(1), xdg-traymenu(1p), xdg-menugen(1p),
       xde-identify(1), inotify(7).



xde-menu 0.11                     2019-09-05                       XDE-MENU(1)