我想知道在我的系统上创建和注册新的自定义mime 类型的完整步骤。如果重要的话,我在 Arch Linux 上运行 KDE。
这些步骤应包括编写 XML 文件并将图标与文件类型相关联以及我需要做的任何其他事情。我更喜欢只使用xdg-mime
命令行实用程序。
我希望了解为 1)我的用户帐户以及 2)系统范围添加此 mime 关联。
例如,假设我想使用自定义应用程序打开证书文件,我将调用 MyCertInspector。我相信 XML 应该看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="text/publickey">
<glob-deleteall/>
<glob pattern="*.crt"/>
<glob pattern="*.cert"/>
</mime-type>
</mime-info>
据我了解,当包含glob-deleteall
在用户本地定义中时,它会删除任何现有的系统范围的 mime 关联。我想确认我的理解是正确的。
我还了解到,此过程的第一步是检查是否存在具有我计划使用的文件扩展名的 mime 类型。我不确定如何在 Arch 上执行此操作,因为 Arch 上没有/usr/share/applications/defaults.list并且(至少在我的系统上)没有系统范围的mimeapps.list
文件。
对于答案,我希望有一个分步指南,涵盖每个需要的步骤,并提到 Arch Linux 系统上应该放置的特定目录。
从我目前的研究来看,我相信一般步骤是:
- 检查是否存在具有我计划使用的文件扩展名的 mime 类型
- 为我想要的 mime 类型创建一个 XML 文件。
- 使用注册我的 XML 文件
sudo xdg-mime install [options]
(我们应该同时处理系统模式和本地用户模式。 - 将新的 mime 类型与用于打开它的应用程序相关联。
- 注册 mime 类型的图标。
- 其他任何事情(例如一个人应该做的检查和验证步骤)
我的目标是,任何阅读此问题答案的人都将能够掌握在他们的系统上创建和安装自定义 mime 类型的所有完整过程。
我将首先引用示例部分
man xdg-mime
来自同一
man
页面是的,glob-deleteall 用于覆盖 mimetype 定义的 glob 部分,但不仅限于系统范围。两者都取决于模式
系统模式将安装到
/usr/share/mime/
. 用户模式和.local/share/mime
文件列表是:毕竟跑
激活配置。