| Index: third_party/xdg-utils/scripts/html/xdg-desktop-menu.html
|
| ===================================================================
|
| --- third_party/xdg-utils/scripts/html/xdg-desktop-menu.html (revision 0)
|
| +++ third_party/xdg-utils/scripts/html/xdg-desktop-menu.html (revision 0)
|
| @@ -0,0 +1,334 @@
|
| +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xdg-desktop-menu</title><meta name="generator" content="DocBook XSL Stylesheets V1.69.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><a name="xdg-desktop-menu"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>xdg-desktop-menu — command line tool for (un)installing desktop menu items</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">xdg-desktop-menu</code> install [<code class="option">--noupdate</code>] [<code class="option">--novendor</code>] [<code class="option">--mode <em class="replaceable"><code>mode</code></em></code>] <em class="replaceable"><code>directory-file(s)</code></em> <em class="replaceable"><code>desktop-file(s)</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">xdg-desktop-menu</code> uninstall [<code class="option">--noupdate</code>] [<code class="option">--mode <em class="replaceable"><code>mode</code></em></code>] <em class="replaceable"><code>directory-file(s)</code></em> <em class="replaceable"><code>desktop-file(s)</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">xdg-desktop-menu</code> forceupdate [<code class="option">--mode <em class="replaceable"><code>mode</code></em></code>]</p></div><div class="cmdsynopsis"><p><code class="command">xdg-desktop-menu</code> { <code class="option">--help</code> | <code class="option">--manual</code> | <code class="option">--version</code> }</p></div></div><div class="refsect1" lang="en"><a name="description"></a><h2>Description</h2><p>
|
| + The xdg-desktop-menu program can be used to install new menu entries
|
| + to the desktop's application menu.
|
| + </p><p>
|
| + The application menu works according to the
|
| + XDG Desktop Menu Specification at
|
| + http://www.freedesktop.org/Standards/menu-spec
|
| + </p></div><div class="refsect1" lang="en"><a name="commands"></a><h2>Commands</h2><div class="variablelist"><dl><dt><span class="term">install</span></dt><dd><p>
|
| + Install one or more applications in a submenu of
|
| + the desktop menu system.
|
| + </p><p><em class="replaceable"><code>desktop-file</code></em>:
|
| + A desktop file represents a single menu entry in the menu.
|
| + Desktop files are defined by the freedesktop.org Desktop Entry
|
| + Specification. The most important aspects of *.desktop
|
| + files are summarized below.
|
| + </p><p>
|
| + Menu entries can be added to the menu system in two different
|
| + ways. They can either be added to a predefined submenu in the
|
| + menu system based on one or more category keywords, or they can
|
| + be added to a new submenu.
|
| + </p><p>
|
| + To add a menu entry to a predefined submenu the desktop file
|
| + that represents the menu entry must have a Categories= entry
|
| + that lists one or more keywords. The menu item will be included
|
| + in an appropriate submenu based on the included keywords.
|
| + </p><p>
|
| + To add menu items to a new submenu the desktop-files must be
|
| + preceded by a directory-file that describes the submenu.
|
| + If multiple desktop-files are specified, all entries will
|
| + be added to the same menu. If entries are installed to a menu
|
| + that has been created with a previous call to
|
| + <span><strong class="command">xdg-desktop-menu</strong></span> the entries will be
|
| + installed in addition to any already existing entries.
|
| + </p><p><em class="replaceable"><code>directory-file</code></em>:
|
| + The *.directory file indicated by
|
| + <em class="replaceable"><code>directory-file</code></em> represents a submenu.
|
| + The directory file provides the name and icon for a submenu. The
|
| + name of the directory file is used to identify the submenu.
|
| + </p><p>
|
| + If multiple directory files are provided each file will
|
| + represent a submenu within the menu that preceeds it, creating
|
| + a nested menu hierarchy (sub-sub-menus).
|
| + The menu entries themselves will be added to the last submenu.
|
| + </p><p>
|
| + Directory files follow the syntax defined by the freedesktop.org
|
| + Desktop Entry Specification.
|
| + </p></dd><dt><span class="term">uninstall</span></dt><dd><p>
|
| + Remove applications or submenus from the desktop menu system
|
| + previously installed with <span><strong class="command">xdg-desktop-menu install</strong></span>.
|
| + </p><p>
|
| + A submenu and the associated directory file is only removed
|
| + when the submenu no longer contains any menu entries.
|
| + </p></dd><dt><span class="term">forceupdate</span></dt><dd><p>
|
| + Force an update of the menu system.
|
| + </p><p>
|
| + This command is only useful if the last call to
|
| + xdg-desktop-menu included the <code class="option">--noupdate</code> option.
|
| + </p></dd></dl></div></div><div class="refsect1" lang="en"><a name="options"></a><h2>Options</h2><div class="variablelist"><dl><dt><span class="term"><code class="option">--noupdate</code></span></dt><dd>
|
| + Postpone updating the menu system. If multiple updates to the
|
| + menu system are made in sequence this flag can be used to
|
| + indicate that additional changes will follow and that it is not
|
| + necassery to update the menu system right away.
|
| + </dd><dt><span class="term"><code class="option">--novendor</code></span></dt><dd><p>
|
| + Normally, xdg-desktop-menu checks to ensure that any *.directory
|
| + and *.desktop files to be installed has a vendor prefix.
|
| + This option can be used to disable that check.
|
| + </p><p>
|
| + A vendor prefix consists of alpha characters ([a-zA-Z]) and is
|
| + terminated with a dash ("-").
|
| + Companies and organizations are encouraged to use a word
|
| + or phrase, preferably the organizations name, for which they hold
|
| + a trademark as their vendor prefix.
|
| + The purpose of the vendor prefix is to prevent name conflicts.
|
| + </p></dd><dt><span class="term"><code class="option">--mode</code> <em class="replaceable"><code>mode</code></em></span></dt><dd><p><em class="replaceable"><code>mode</code></em> can be
|
| + <span class="emphasis"><em>user</em></span> or <span class="emphasis"><em>system</em></span>.
|
| + In user mode the file is (un)installed for the current user
|
| + only. In system mode the file is (un)installed for all users
|
| + on the system. Usually only root is allowed to install in
|
| + system mode.
|
| + </p><p>
|
| + The default is to use system mode when called by root
|
| + and to use user mode when called by a non-root user.
|
| + </p></dd><dt><span class="term"><code class="option">--help</code></span></dt><dd>
|
| + Show command synopsis.
|
| + </dd><dt><span class="term"><code class="option">--manual</code></span></dt><dd>
|
| + Show this manualpage.
|
| + </dd><dt><span class="term"><code class="option">--version</code></span></dt><dd>
|
| + Show the xdg-utils version information.
|
| + </dd></dl></div></div><div class="refsect1" lang="en"><a name="desktopfiles"></a><h2>Desktop Files</h2><p>
|
| + An application item in the application menu is represented by a
|
| + *.desktop file. A *.desktop file consists of a
|
| + <span class="emphasis"><em>[Desktop Entry]</em></span> header followed by several
|
| + <em class="replaceable"><code>Key</code></em>=<em class="replaceable"><code>Value</code></em> lines.
|
| + </p><p>
|
| + A *.desktop file can provide a name and description for an application
|
| + in several different languages. This is done by adding a language
|
| + code as used by LC_MESSAGES in square brackets behind the
|
| + <em class="replaceable"><code>Key</code></em>. This way one can specify different
|
| + values for the same <em class="replaceable"><code>Key</code></em> depending on the
|
| + currently selected language.
|
| + </p><p>
|
| + The following keys are often used:
|
| + </p><div class="variablelist"><dl><dt><span class="term">Value=1.0</span></dt><dd>
|
| + This is a mandatory field to indicate that the *.desktop file
|
| + follows the 1.0 version of the specification.
|
| + </dd><dt><span class="term">Type=Application</span></dt><dd>
|
| + This is a mandatory field that indicates that the *.desktop file
|
| + describes an application launcher.
|
| + </dd><dt><span class="term">Name=<em class="replaceable"><code>Application Name</code></em></span></dt><dd>
|
| + The name of the application.
|
| + For example <span class="emphasis"><em>Mozilla</em></span>
|
| + </dd><dt><span class="term">GenericName=<em class="replaceable"><code>Generic Name</code></em></span></dt><dd>
|
| + A generic description of the application.
|
| + For example <span class="emphasis"><em>Web Browser</em></span>
|
| + </dd><dt><span class="term">Comment=<em class="replaceable"><code>Comment</code></em></span></dt><dd>
|
| + Optional field to specify a tooltip for the application.
|
| + For example <span class="emphasis"><em>Visit websites on the Internet</em></span>
|
| + </dd><dt><span class="term">Icon=<em class="replaceable"><code>Icon File</code></em></span></dt><dd>
|
| + The icon to use for the application. This can either be
|
| + an absolute path to an image file or an icon-name.
|
| + If an icon-name is provided an image lookup by name is done
|
| + in the user's current icon theme. The <span><strong class="command">xdg-icon-resource</strong></span>
|
| + command can be used to install image files into icon themes.
|
| + The advantage of using an icon-name instead of an absolute
|
| + path is that with an icon-name the application icon can be
|
| + provided in several different sizes as well as in several
|
| + differently themed styles.
|
| + </dd><dt><span class="term">Exec=<em class="replaceable"><code>Command Line</code></em></span></dt><dd>
|
| + The command line to start the application. If the application
|
| + can open files the %f placeholder should be specified. When
|
| + a file is dropped on the application launcher the %f is replaced
|
| + with the file path of the dropped file. If multiple files
|
| + can be specified on the command line the %F placeholder should
|
| + be used instead of %f. If the application is able to open URLs
|
| + in addition to local files then %u or %U can be used instead
|
| + of %f or %F.
|
| + </dd><dt><span class="term">Categories=<em class="replaceable"><code>Categories</code></em></span></dt><dd><p>
|
| + A list of categories separated by semi-colons. A category is
|
| + a keyword that describes and classifies the application.
|
| + By default applications are organized in the application menu
|
| + based on category. When menu entries are explicitly assigned
|
| + to a new submenu it is not necassery to list any categories.
|
| + </p><p>
|
| + When using categories it is recommended to include
|
| + one of the following categories:
|
| + AudioVideo, Development, Education, Game, Graphics, Network,
|
| + Office, Settings, System, Utility.
|
| + </p><p>
|
| + See Appendix A of the XDG Desktop Menu Specification
|
| + for information about additional categories.
|
| + http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html
|
| + </p></dd><dt><span class="term">MimeType=<em class="replaceable"><code>Mimetypes</code></em></span></dt><dd>
|
| + A list of mimetypes separated by semi-colons. This field is
|
| + used to indicate which file types the application is able to
|
| + open.
|
| + </dd></dl></div><p>
|
| + For a complete oveview of the *.desktop file format please
|
| + visit http://www.freedesktop.org/wiki/Standards/desktop-entry-spec
|
| + </p></div><div class="refsect1" lang="en"><a name="directoryfiles"></a><h2>Directory Files</h2><p>
|
| + The appearance of submenu in the application menu is
|
| + provided by a *.directory file. In particular it provides the title
|
| + of the submenu and a possible icon. A *.directory file consists of a
|
| + <span class="emphasis"><em>[Desktop Entry]</em></span> header followed by several
|
| + <em class="replaceable"><code>Key</code></em>=<em class="replaceable"><code>Value</code></em> lines.
|
| + </p><p>
|
| + A *.directory file can provide a title (name) for the submenu
|
| + in several different languages. This is done by adding a language
|
| + code as used by LC_MESSAGES in square brackets behind the
|
| + <em class="replaceable"><code>Key</code></em>. This way one can specify different
|
| + values for the same <em class="replaceable"><code>Key</code></em> depending on the
|
| + currently selected language.
|
| + </p><p>
|
| + The following keys are relevqnt for submenus:
|
| + </p><div class="variablelist"><dl><dt><span class="term">Value=1.0</span></dt><dd>
|
| + This is a mandatory field to indicate that the *.directory file
|
| + follows the 1.0 version of the Desktop Entry specification.
|
| + </dd><dt><span class="term">Type=Directory</span></dt><dd>
|
| + This is a mandatory field that indicates that the *.directory file
|
| + describes a submenu.
|
| + </dd><dt><span class="term">Name=<em class="replaceable"><code>Menu Name</code></em></span></dt><dd>
|
| + The title of submenu.
|
| + For example <span class="emphasis"><em>Mozilla</em></span>
|
| + </dd><dt><span class="term">Comment=<em class="replaceable"><code>Comment</code></em></span></dt><dd>
|
| + Optional field to specify a tooltip for the submenu.
|
| + </dd><dt><span class="term">Icon=<em class="replaceable"><code>Icon File</code></em></span></dt><dd>
|
| + The icon to use for the submenu. This can either be
|
| + an absolute path to an image file or an icon-name.
|
| + If an icon-name is provided an image lookup by name is done
|
| + in the user's current icon theme.
|
| + The <span><strong class="command">xdg-icon-resource</strong></span>
|
| + command can be used to install image files into icon themes.
|
| + The advantage of using an icon-name instead of an absolute
|
| + path is that with an icon-name the submenu icon can be
|
| + provided in several different sizes as well as in several
|
| + differently themed styles.
|
| + </dd></dl></div></div><div class="refsect1" lang="en"><a name="env_vars"></a><h2>Environment Variables</h2><p>
|
| + xdg-desktop-menu honours the following environment variables:
|
| + </p><div class="variablelist"><dl><dt><span class="term">XDG_UTILS_DEBUG_LEVEL</span></dt><dd>
|
| + Setting this environment variable to a non-zero numerical value
|
| + makes xdg-desktop-menu do more verbose reporting on stderr.
|
| + Setting a higher value increases the verbosity.
|
| + </dd><dt><span class="term">XDG_UTILS_INSTALL_MODE</span></dt><dd>
|
| + This environment variable can be used by the user or
|
| + administrator to override the installation mode.
|
| + Valid values are <span class="emphasis"><em>user</em></span> and
|
| + <span class="emphasis"><em>system</em></span>.
|
| + </dd></dl></div></div><div class="refsect1" lang="en"><a name="exitcodes"></a><h2>Exit Codes</h2><p>
|
| + An exit code of 0 indicates success while a non-zero exit code
|
| + indicates failure. The following failure codes can be returned:
|
| + </p><div class="variablelist"><dl><dt><span class="term"><code class="option">1</code></span></dt><dd>
|
| + Error in command line syntax.
|
| + </dd><dt><span class="term"><code class="option">2</code></span></dt><dd>
|
| + One of the files passed on the command line did not exist.
|
| + </dd><dt><span class="term"><code class="option">3</code></span></dt><dd>
|
| + A required tool could not be found.
|
| + </dd><dt><span class="term"><code class="option">4</code></span></dt><dd>
|
| + The action failed.
|
| + </dd><dt><span class="term"><code class="option">5</code></span></dt><dd>
|
| + No permission to read one of the files passed on the command
|
| + line.
|
| + </dd></dl></div></div><div class="refsect1" lang="en"><a name="seealso"></a><h2>See Also</h2><p><span class="citerefentry"><span class="refentrytitle">xdg-desktop-icon</span>(1)</span>,
|
| + <span class="citerefentry"><span class="refentrytitle">xdg-icon-resource</span>(1)</span>,
|
| + <span class="citerefentry"><span class="refentrytitle">xdg-mime</span>(1)</span>
|
| + </p></div><div class="refsect1" lang="en"><a name="examples"></a><h2>Examples</h2><p>
|
| + The company ShinyThings Inc. has developed an application named
|
| + "WebMirror" and would like to add it to the application menu.
|
| + The company will use "shinythings" as its vendor id.
|
| + In order to add the application to the menu there needs to be a
|
| + .desktop file with a suitable <span class="emphasis"><em>Categories</em></span> entry:
|
| +</p><pre class="programlisting">
|
| +shinythings-webmirror.desktop:
|
| +
|
| + [Desktop Entry]
|
| + Encoding=UTF-8
|
| + Type=Application
|
| +
|
| + Exec=webmirror
|
| + Icon=webmirror
|
| +
|
| + Name=WebMirror
|
| + Name[nl]=WebSpiegel
|
| +
|
| + Categories=Network;WebDevelopment;
|
| +</pre><p>
|
| + </p><p>Now the xdg-desktop-menu tool can be used to add the
|
| + shinythings-webmirror.desktop file to the desktop application menu:
|
| +</p><pre class="programlisting">
|
| +xdg-desktop-menu install ./shinythings-webmirror.desktop
|
| +</pre><p>
|
| + </p><p>
|
| + Note that for the purpose of this example the menu items are available
|
| + in two languages, English and Dutch.
|
| + The language code for Dutch is nl.
|
| + </p><p>
|
| + In the next example the company ShinyThings Inc. will add its own
|
| + submenu to the desktop application menu consisting of a
|
| + "WebMirror" menu item and a "WebMirror Admin Tool" menu item.
|
| + </p><p>
|
| + First the company needs to create two .desktop files that describe
|
| + the two menu items. Since the items are to be added to a new submenu
|
| + it is not necassery to include a Categories= line:
|
| +</p><pre class="programlisting">
|
| +shinythings-webmirror.desktop:
|
| +
|
| + [Desktop Entry]
|
| + Encoding=UTF-8
|
| + Type=Application
|
| +
|
| + Exec=webmirror
|
| + Icon=shinythings-webmirror
|
| +
|
| + Name=WebMirror
|
| + Name[nl]=WebSpiegel
|
| +
|
| +
|
| +shinythings-webmirror-admin.desktop:
|
| +
|
| + [Desktop Entry]
|
| + Encoding=UTF-8
|
| + Type=Application
|
| +
|
| + Exec=webmirror-admintool
|
| + Icon=shinythings-webmirror-admintool
|
| +
|
| + Name=WebMirror Admin Tool
|
| + Name[nl]=WebSpiegel Administratie Tool
|
| +</pre><p>
|
| + </p><p>
|
| + In addition a .directory file needs to be created to provide a title and icon
|
| + for the sub-menu itself:
|
| +</p><pre class="programlisting">
|
| +shinythings-webmirror.directory:
|
| +
|
| + [Desktop Entry]
|
| + Encoding=UTF-8
|
| +
|
| + Icon=shinythings-webmirror-menu
|
| +
|
| + Name=WebMirror
|
| + Name[nl]=WebSpiegel
|
| +</pre><p>
|
| + </p><p>
|
| + These file can now be installed with:
|
| +</p><pre class="programlisting">
|
| +xdg-desktop-menu install ./shinythings-webmirror.directory \
|
| + ./shinythings-webmirror.desktop ./shinythings-webmirror-admin.desktop
|
| +</pre><p>
|
| + </p><p>
|
| + The menu entries could also be installed one by one:
|
| +</p><pre class="programlisting">
|
| +xdg-desktop-menu install --noupdate ./shinythings-webmirror.directory \
|
| + ./shinythings-webmirror.desktop
|
| +xdg-desktop-menu install --noupdate ./shinythings-webmirror.directory \
|
| + ./shinythings-webmirror-admin.desktop
|
| +xdg-desktop-menu forceupdate
|
| +</pre><p>
|
| + </p><p>
|
| + Although the result is the same it is slightly more efficient to
|
| + install all files at the same time.
|
| + </p><p>
|
| + The *.desktop and *.directory files reference icons with the names
|
| + webmirror, webmirror-admin and webmirror-menu which should also be
|
| + installed. In this example the icons are installed in two different
|
| + sizes, once with a size of 22x22 pixels and once with a size
|
| + of 64x64 pixels:
|
| +</p><pre class="programlisting">
|
| +xdg-icon-resource install --size 22 ./wmicon-22.png shinythings-webmirror
|
| +xdg-icon-resource install --size 22 ./wmicon-menu-22.png shinythings-webmirror-menu
|
| +xdg-icon-resource install --size 22 ./wmicon-admin-22.png shinythings-webmirror-admin
|
| +xdg-icon-resource install --size 64 ./wmicon-64.png shinythings-webmirror
|
| +xdg-icon-resource install --size 64 ./wmicon-menu-64.png shinythings-webmirror-menu
|
| +xdg-icon-resource install --size 64 ./wmicon-admin-64.png shinythings-webmirror-admin
|
| +</pre><p>
|
| + </p></div></div></body></html>
|
|
|