读完全文至少有两个收获,第一个,Windows下好用的文本编辑软件,Linux下也有,而且功能更强劲;第二个,满足Linux下想自定义桌面快捷方式的需求,从不知道如何添加或删除桌面图标到信手拈来制作图标一个质的飞跃。
notepad–是一个使用C++编写的国产跨平台、轻量级的文本编辑器,简称ndd,可以支持Window/Mac/Linux操作系统平台。notepad–的目标,致力于国产软件的可替代。是替换notepad++的一种选择。其内置强劲的代码对比功能,让你丢掉付费的beyond compare。(下载地址:
https://gitee.com/cxasm/notepad–)
以银河麒麟桌面操作系统,兆芯芯片(x86)的电脑为例:选择下载
com.hmja.notepad_2.9.0.0_amd64.deb。
安装流程:双击安装包,点击一键安装,输入密码,等待安装成功即可。
明明安装成功了,但是桌面和开始菜单里面都找不到notepad–的图标,安装到哪里去了呢?
从从相亲对象认识国产信创桌面操作系统中介绍过,/opt( 存放可选择安装的文件和程序, 主要是第三方开发者用于安装他们的软件包),那我们在 /opt 下面找找,果然在 /opt/apps 下发现了com.hmja.notepad。
进到
/opt/apps/com.hmja.notepad/files 下,双击Notepad–,选择直接运行,这个时候终于见到了它的庐山真面目。
每次使用它都这么麻烦,怎么破?能不能像Windows那样,可以鼠标右键发送到桌面快捷方式,发现可以,就是图标有点丑,不符合我们的审美。得改造一下。
快捷方式是 Windows 提供的一种快速开启程序、打开文件或文件夹的方法,拓展名为.lnk。Linux 提供类似功能,叫做桌面入口(Desktop Entry),拓展名为.desktop。
01 文件名
- 一般桌面入口(快捷方式)文件(类型为 Application 和 Link 的文件)使用.desktop 扩展名。Type 键为 Directory 的文件使用 .directory 扩展名。
- 文件名以 ASCII 字母开头,后续字符可以使用 ASCII 字母[a-zA-Z]、数字[0-9]、下划线(_)、短划线(-)、点(.)。
- 提议使用反域名格式。例如:cn.kylinos.desktop。
- 提议用程序作者控制的域名字段加应用程序名称对文件进行命名。域名字段为小写。应用程序名为大驼峰。例如:域名字段为 example.org,应用程序名为 fooViewer。文件名为 org.example.FooViewer.desktop。
- 不提议使用破折号。
02 文件存储位置
Linux下,桌面条目(快捷方式)文件一般存储在“/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/
05 有了以上知识后,开始制作notepad–的桌面图标
- 在“/usr/share/applications”目录下,打开终端。
输入sudo vim com.hmja.notepad.desktop,回车,
打开vim编辑器,使用i或Insert键进入编辑模式
根据04 示例,将需要的键输入,见下图:
输入完成后,
按下Esc键: 从插入模式切换到命令模式
使用 :wq 命令: 保存并退出文件或使用 :wq! 命令: 保存并强制退出文件
- 新建的桌面图标文件:com.hmja.notepad.desktop(文件名称为com.hmja.notepad,拓展名为.desktop),就出目前“/usr/share/applications”目录下了。
- 图标ICON可以根据个人喜好选择图标,将图标放到对应的路径下即可。其他应用软件的图标原理一样,照猫画虎即可。
暂无评论内容