Dolphin/Konqueror 错误文件类型识别

Dolphin/Konqueror 错误文件类型识别

在 Dolphin/Konqueror 中,应该具有“未知”文件类型的文件的类型为“Microsoft Help Attribute Definition File”。

这也会影响没有扩展名但包含特殊符号的文件(例如我在 .xsession-errors 开头看到的 ^[[2J^[[0;0f)、交换文件、软链接(指向这些文件 + 悬空链接)。

在系统设置/文件关联中“Microsoft 帮助属性定义文件”是“application/octet-stream”类型的描述(参见下面的 octet-stream.xml)。

似乎他们将其用作某种后备或默认条目,因为当我进入目录时,所有文件(不是目录)在几分钟内都具有这种类型(无法识别?)。问题特定于那些文件浏览器,我安装了 Thunar、Tux Commander、Double Commander,它们运行良好。文件本身没问题:

[ ~]$ file .xsession-errors
.xsession-errors: UTF-8 Unicode text, with very long lines, with CRLF, LF line terminators, with escape sequences
[ ~]$ file --mime-type .xsession-errors
.xsession-errors: text/plain
[ ~]$ file link
link: broken symbolic link to 43399594

尝试发现这种类型的文件,在 ~/.local/share/mime/ 中发现了一些,但任何更改(随后的 update-desktop-database update-mime-database 调用甚至重新启动)都没有任何反应。

认为这可能是由于 wine office 2010 安装导致的,因此删除了 wine mime、desktop 和 so 文件(链接限制,您可以在 wine FAQ 页面的“4.3. 如何清理打开方式列表?”下找到它),但无济于事。然后删除了 wine 前缀 - 结果相同。也无法使用 google 找到任何内容(那里的大多数问题与错误的应用程序启动有关,而不是文件类型识别)。

在新用户上测试 - 一切顺利。从那时起,我的 .xsession 错误类型为“未知”

根据错误 337708似乎与 shared-mime-info 有关。没有找到任何具体信息。

octet-stream.xml

<?xml version="1.0" encoding="utf-8"?>
<mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="application/octet-stream">
  <!--Created automatically by update-mime-database. DO NOT EDIT!-->
  <comment>Microsoft Help Attribute Definition File</comment>
  <glob-deleteall/>
  <glob pattern="*.bin"/>
  <glob pattern="*.hxd"/>
  <glob pattern="*.hxh"/>
  <glob pattern="*.hxi"/>
  <glob pattern="*.hxq"/>
  <glob pattern="*.hxr"/>
  <glob pattern="*.hxs"/>
  <glob pattern="*.hxw"/>
</mime-type>

文件夹加载时使用 dolphin、thunar、master-fast-print-screen 拍摄的一些图片

[ ~]$ uname -a
Linux Erefan 3.17.6-1-ARCH #1 SMP PREEMPT Sun Dec 7 23:43:32 UTC 2014 x86_64 GNU/Linux KDE 
[ ~]$ dolphin --version
Qt: 4.8.6
KDE Development Platform: 4.14.3
Dolphin: 4.14.3

ps .xsession-errors 仅用作示例,实际上许多文件都存在错误类型。


编辑1:在对新用户进行额外测试后,我得出结论,这与 wine office 2010 安装有关。具体来说,此安装将新的 octet-stream.xml 文件放在 ~/.local/share/mime/application/ 中,它将覆盖 /usr/share/mime/application/ 中的原始文件。实际上,安装在 packages 文件夹中提供了 application-octet-stream.xml,然后 update-mime-database 使用它来生成 octet-stream.xml。原始文件实际上定义了“未知”类型的文件。我不太熟悉语法,但看起来没有什么特别的。所以我手动修改了 application-octet-stream.xml 以符合原始 + 添加的图标(见下文)。到目前为止,一切正常。

因此如果您想尝试,步骤如下:

自己检查一下,如果发生任何事情,你就是罪魁祸首。

1. modify ~/.local/share/mime/packages/application-octet-stream.xml (see below).

2. run "update-mime-database ~/.local/share/mime/".

3. probably restart current session.

应用程序八位字节流.xml

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
    <mime-type type="application/octet-stream">
        <comment>unknown</comment>
        <icon name="unknown"/>
        <glob pattern="*.hxd"/>
        <glob pattern="*.hxh"/>
        <glob pattern="*.hxi"/>
        <glob pattern="*.hxq"/>
        <glob pattern="*.hxr"/>
        <glob pattern="*.hxs"/>
        <glob pattern="*.hxw"/>
    </mime-type>
</mime-info>

下一步 - xml 文件有丑陋的 Windows 图标(似乎是办公室安装造成的),我想知道为什么它不能通过正常的文件关联设置来改变。

相关内容