Ubuntu 默认 docx 解析器

Ubuntu 默认 docx 解析器

我刚刚安装了 Recoll 来索引我的文本文件。它运行良好,但令我惊讶的是,它能够默认索引 docx,而要求安装 antiword 来索引 doc 文件。我知道 doc 和 docx 具有不同的 MIME 类型,但它们都可以通过 Libre 轻松打开。

我想了解的是:为什么 docx 文件可以直接解析,而 doc 文件却需要额外的应用程序 (antiword)?要么是 Lible 默认仅用于 docx(我对此表示怀疑,因为当我在 Nautilus 中浏览我的文件时,doc 和 docx 都被识别为 LibleOffice 文件),要么是 Ubuntu 有其他我不知道的文档解析器?

无论如何,我很惊讶地发现更复杂的 Win Office 文件比更简单的文件得到更好的支持。

更新: 刚刚用 xdg-mine 检查了这两种 MIME 类型。我的问题仍然存在。为什么默认情况下没有索引 doc 文件?

yuranos@yuranos-XPS-15-9550:~/development$ xdg-mime query default application/msword
libreoffice-writer.desktop
yuranos@yuranos-XPS-15-9550:~/development$ xdg-mime query default application/vnd.openxmlformats-officedocument.wordprocessingml.document
libreoffice-writer.desktop

答案1

docx 文件基于 XML,并由 Recoll 使用简单的 xslt 转换进行解析。根据 Recoll 版本,这只需要安装 xsltproc 或 Python libxml2/libxslt。这些是常见的依赖项,它们可能由于其他原因存在于您的系统中。

旧的 .doc 格式是二进制格式,不能直接由 recoll 处理,而是使用 antiword 来提取文本。

相关内容