比如我要将eclipse添加到菜单中,那么只需要在~/.local/share/applications/下新建一个.desktop文件,我命名为eclipse.desktop
#sudo vi eclipse.desktop
然后将下面的文本拷贝进去,修改自己的执行路径和名字就可以了
[Desktop Entry]
Version = 1.0
Encoding = UTF-8
Name = Eclipse
GenericName = Eclipse
Comment = An IDE for Java and C/C++
Exec = /usr/local/eclipse/eclipse
Icon = /usr/local/eclipse/icon.xpm
Terminal = false
Type = Application
Categories = GNOME;Application;Development;
Name[zh_CN] = Eclipse
Comment[zh_CN] = 一款开发Java和C/C++的集成环境
GenericName[zh_CN] = Eclipse

下面简单介绍下各个字段的意思:
关键字"Version":[可选] 该数值指定了当前 Desktop Entry 文件所遵循的 Desktop Entry 文件标准版本。
关键字"Encoding":[1.0 版本不推荐使用] 该数值指定了当前 Desktop Entry 文件中特定字符串所使用的编码方式。尽管Desktop Entry 文件标准 1.0 不再推荐使用该关键字,但由于历史原因该关键字仍然广泛出现在现有的 Desktop Entry 文件中。
关键字"Name":[必选]该数值指定了相关应用程序的名称。比如在清单1中关键字"Name"的数值是"Eclipse"。打开文件浏览器,进入"/usr/share/applications"目录,就可以看见"eclipse.desktop"文件所定义的快捷方式的显示样式。其中,快捷方式的显示名称由关键字"Name"的数值所决定,快捷方式所使用的图标由下文中将要介绍的关键字"Icon"的数值来决定
关键字"GenericName":[可选]该数值指定了相关应用程序的通用名称。比如在清单1中关键字"GenericName"的数值是"Eclipse"。打开应用程序浏览器,就可以看见字符串"User Tutorial"被显示在图标的右侧
关键字"Comment":[可选]该数值是对当前Desktop Entry的简单描述。
关键字"Type":[必选]关键字"Type"定义了Desktop Entry文件的类型。常见的"Type"数值是"Application"和"Link"。"Type = Application"表示当前Desktop Entry文件指向了一个应用程序;而"Type = Link"表示当前Desktop Entry文件指向了一个URL (Uniform Resource Locator)。
关键字"Exec":[可选]关键字"Exec"只有在"Type"类型是"Application"时才有意义。"Exec"的数值定义了启动指定应用程序所要执行的命令,在此命令是可以带参数的。在本例中,关键字"Exec"的数值是字符串"/usr/local/eclipse/eclipse"。在shell中输入该字符串并按回车键同样可以启动指定应用程序。
关键字"URL":[可选]关键字"URL"只有在"Type"类型是"Link"时才有意义。"URL"的数值定义了该Desktop Entry文件指向的URL
关键字"Icon":[可选]该数值定义了当前Desktop Entry文件在应用程序浏览器或是在文件浏览器中所显示的图标。如果关键字"Icon"的数值是以绝对路径的格式给出,那么其数值所指定图标文件将被使用;反之,Linux系统将使用"Icon Theme Specification"在系统指定图标目录下定位所需要使用的图标文件。比如在本例中关键字"Icon"的数值是"/usr/local/eclipse/icon.xpm".
关键字"StartupNotify":[可选]关键字"StartupNotify"的数值是布尔值(true 或是 false)。该关键字只有在"Type"类型是"Application"时才有意义。其数值的含义由规范"Startup Notification Protocol Specifications"定义,在此不再详述。
关键字"Terminal":[可选]和"StartupNotify"一样,关键字"StartupNotify"的数值也是布尔值,并且该关键字只有在"Type"类型是"Application"时才有意义。其数值指出了相关应用程序(即关键字"Exec"的数值)是否需要在终端窗口中运行。
关键字"Categories":[可选]关键字"Categories"只有在"Type"类型是"Application"时才有意义。"Categories"的数值指出了相关应用程序在菜单中显示的类别。比如本例中将eclipse分类在应用程序->编程子菜单中。具体菜单分类由规范"Desktop Specification Menu"具体定义。
关键字"OnlyShowIn"和"NotShowIn":[可选]这两个关键字分别定义了当前Desktop Entry是否在特定Linux 桌面系统(例如:Linux GNOME 或 Linux KDE)下显示(由"OnlyShowIn"定义),或不显示(由"NotShowIn"定义)。
关键字"X-SuSE-translate":[SUSE Linux特有]关键字"X-SuSE-translate"是SUSE Linux(http://www.novell.com/linux/)特有的。"X-SuSE-translate"符合SUSE RPM Package风格。"X-SuSE-translate"数值表示是否要对关键字"Name"和"GenericName"进行翻译。
本地化关键字"[LOCALE]"根据"Desktop Entry Specification"规范,在关键字后加上字符串"[LOCALE]"就可以对该关键字进行特定的本地化定义。"LOCALE"的合法取值为:LOCALE= lang_COUNTRY.ENCODING@MODIFIER
在此,域"_COUNTRY",".ENCODING"和"@MODIFIER"是可以被忽略的。当指定Desktop Entry文件被解析时,解析器应当根据当前POSIX locale来正确获取本地化的关键字数值。
其余关键字:除了出现的关键字外,"Desktop Entry Specification"还定义了"Hidden","TryExec","MimeType"等可选关键字。用户可以根据需要进行选取。
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐