Ubuntu парсер docx по умолчанию

Я только что установил Recoll для индексирования моих текстовых файлов. Он работает как шарм, но что меня удивило, так это то, что он мог индексировать docx по умолчанию, в то время как ему предлагалось установить антислово для индексирования файлов doc. Я знаю, что doc и docx имеют разные типы MIME, но они оба могут быть легко открыты Libre.

Что я хочу понять: почему файлы docx были проанализированы "из коробки", в то время как для файлов doc требовалось дополнительное приложение (antiword)? Либо Lible используется по умолчанию только для docx (что я сомневаюсь, потому что при навигации по моим файлам в Nautilus и doc, и docx распознаются как файлы LibleOffice), или в Ubuntu есть какой-то другой анализатор документов, о котором я не знаю?

В любом случае, я удивлен, увидев, что более сложные файлы Win Office поддерживаются лучше, чем более простые.

ОБНОВЛЕНИЕ: только что проверил оба типа MIME с помощью xdg-mine. Мой вопрос остается в силе. Почему файлы 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, который вместо этого использует антислово для извлечения текста.

Другие вопросы по тегам