干货分享|教你如何编写桌面快捷方式文件

原创
2021/11/29 15:15
阅读数 588
AI总结

关注优麒麟,更多干货在等你!

导读

快捷方式是 Windows 提供的一种快速开启程序、打开文件或文件夹的方法,拓展名为*.lnk。

Linux 提供类似功能,叫做桌面入口(Desktop Entry),拓展名为*.desktop。本文将结合优麒麟操作系统,对桌面条目(快捷方式)协议进行详细介绍。

01 文件名


  1. 一般桌面入口(快捷方式)文件(类型为 Application 和 Link 的文件)使用.desktop 扩展名。Type 键为 Directory 的文件使用 .directory 扩展名。

  2. 文件名以 ASCII 字母开头,后续字符可以使用 ASCII 字母[a-zA-Z]、数字[0-9]、下划线(_)、短划线(-)、点(.)。

  3. 建议使用反域名格式。例如:cn.kylinos.desktop。

  4. 建议用程序作者控制的域名字段加应用程序名称对文件进行命名。域名字段为小写。应用程序名为大驼峰。例如:域名字段为 example.org,应用程序名为 fooViewer。文件名为 org.example.FooViewer.desktop。

  5. 不建议使用破折号。

02 文件存储位置


在优麒麟操作系统下,桌面条目(快捷方式)文件一般存储在“/usr/share/applications”目录下。

03 文件格式


(1)文件编码格式为:UTF-8。

(2)文件内容每一行以换行符分隔。

(3)使用“#”可进行单行注释。

(4)大小写敏感。

(5)组头:

  • 当组名为 groupname,组头为[groupname]。

  • 组后面的键值对都是属于该组的。

(6)项:

  • 文件中项是“键值对”格式。

  • 键=值应忽略等号前后的空格。“=”符号是实际的分隔符。

  • 键名中只能使用 ASCII 字符或数字或短划线。

  • 同一组中的键不能同名。

(7)项中值的类型:

  • 项中的值类型有 string、localestring、iconstring、boolean、numeric。

  • string:除控制字符以外的所有 ASCII 字符。

  • localestring:本地化字符串。

  • iconstring:图标字符串。

  • boolean:布尔值,只能是 true 或 false。

  • numeric:浮点值。

(8)键本地化:

  • 值类型为 localestring 和 iconstring 对应的键可本地化,即键可以后缀[LOCALE]。

  • LOCALE 必须为 lang_COUNTRY@MODIFIER、lang_COUNTRY、lang@MODIFIER、lang 中的一种。

  • 如果出现后缀键,则没有后缀的相同键也必须存在。

  • 本地化键格式为 Key[Locale]。

  • Locale 的优先级从高到低分为 lang_COUNTRY@MODIFIER、lang_COUNTRY、lang@MODIFIER、lang、默认值。

  • 例子:依据优先级有后缀的键只有 sr_YU 被优先使用

    Name=Foo

    Name[sr_YU]=...

    Name[sr@Latn]=...

    Name[sr]=...

(9)关键字键

  • 有些键是可选的,有些键是必须的。

  • 某些键需要另一些键被设为特定值时才有意义。例如 Terimnal 键在 Type 键为 Application 时才能使用。

  • 某些键存在,则另一些键必须存在。例如 Type 键为 Link 时,URL 键必须存在。

(10)Exec 键详情:

  • Exec 键必须包含命令行。

  • 命令行由可选的可执行程序组成,包含一个或多个参数。

  • 可执行程序可以指定其完整路径或仅包含可执行文件的名称。

  • 如果没有提供完整路径,可在 $PATH 环境变量中查找可执行文件桌面环境。

  • 可执行程序的名称或路径不能包含相等的符号(“=”)。

  • 参数用空格分隔。

  • 可识别的域代码如下:

04 示例:桌面条目(快捷方式)文件


该桌面条目示例文件实现了通过浏览器自动打开指定网页的功能。

[Desktop Entry]

#指定使用的协议版本

Version=1.0

#设置需要调用的信息类型

Type=Application

#默认情况下,desktop 在桌面或菜单栏出现的名字

Name=app.web.baidu.naotu

#在中文_中国环境下,desktop 在桌面或菜单栏出现的名字

Name[zh_CN]=百度脑图网页版

#desktop 图标的位置

Icon=/usr/share/icons/kylin-auto-web/app.web.baidu.naotu.png

#在中文_中国环境下,对这个 desktop 的介绍。

Comment[zh_CN]=便捷的脑图编辑工具 - 控制创意,如此简单。让您在线上直接创建、保存并分享你的思路。免安装、云存储易分享、体验舒适、功能丰富

#检查是否有 xdg-open 程序

TryExec=xdg-open

#调用 xdg-open 程序并输入网址参数

Exec=xdg-open https://naotu.baidu.com/

#设置不打开终端

Terminal=false

#设置这个 desktop 所属分类,在开始菜单中,可以依据此分类找到图标

Categories=Development;Network;

以上就是关于桌面快捷方式规范协议的全部内容,关于如何更好地编写桌面条目(快捷方式)文件,大家可以参考制定该协议的官网:https://specifications.freedesktop.org/

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
AI总结
返回顶部
顶部