我已经在 AskUbuntu 上提出了一个相关问题(如何以不同的方式打开 *.htm 而不是 *.html?),但还没有兴趣,所以我用一个更基本的问题来解决同样的问题。
我找不到在 GNOME 中如何以及在何处text/html
分配 MIME 类型,通常(但不总是)分配给网页文件(*.html
和*.htm
)。至少有两条规则在起作用:它与文件扩展名以及文件开头的可变数量的字符部分相关(在 GNOME 3.28.2 / Ubuntu 18.04 上测试):
$ ls -l empty.html
-rw-r--r-- 1 rphair rphair 0 2019-08-02 16:26 empty.html
$ gio info empty.html | grep standard::content-type
standard::content-type: text/plain
$ cat less-than.html
<
$ gio info less-than.html | grep standard::content-type
standard::content-type: text/html
$ mv less-than.html less-than.junk
$ gio info less-than.junk | grep standard::content-type
standard::content-type: text/plain
$ echo '<html' > less-than.junk
$ gio info less-than.junk | grep standard::content-type
standard::content-type: text/html
我需要知道这个 MIME 类型是在哪里定义的,所以我可以更改该定义。(这有点超出了这个问题的范围,但我的目标是将具有相同 MIME 分类的 *.htm 文件与 Web 编辑器而不是浏览器相关联。)
已安装包的现有 MIME 类型在
/usr/share/mime/packages
. 普遍接受的 MIME 类型freedesktop.org.xml
在此目录中定义。此数据库的内容在此处定义(freedesktop.org > Specifications > shared-mime-info-spec)以及添加或修改标准 MIME 类型的过程。自定义 MIME 类型可以通过根据以下条件放置文件来定义:
/usr/share/mime/packages
~/.local/share/mime/packages
如何覆盖标准 MIME 类型(对于有问题的系统,在 package 中定义
shared-mime-info
),特别text/html
是对相关问题的回答,所以我将在另一个论坛的链接线程中解决它。