Создать новый тип файла с существующим расширением
Я сделал приложение Qt, давайте назовем его "альфа", которое открывает и генерирует .zip файлы. Так что в основном мои файлы, созданные приложением, имеют расширение .alpha но они в основном .zip файлы. Как я могу связать .alpha файлы с моим "альфа" приложением? В настоящее время по умолчанию .alpha файлы открываются с помощью менеджера архивов (потому что система видит их как .zip файлы).
Я посмотрел на множество возможных решений, но безуспешно. Я попробовал следующие методы:
Я создал
alpha.xmlфайл в/usr/share/mime/packages<?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'> <mime-type type="application/alpha"> <comment>ALPHA File</comment> <glob pattern="*.alpha"/> </mime-type> </mime-info>Теперь, когда я нажимаю
abc.alphaфайл, я получаю сообщение об ошибке:Could not display "abc.alpha". There is no application installed for "ALPHA File" files.Я редактировал
/etc/mime.typesфайл для включения следующей строки:application/alpha zipЯ создал файл
alpha.desktop- это прекрасно работает, так как ALPHA теперь отображается как "открытый с другими приложениями". Однако я все еще не могу дважды щелкнуть.alphaфайл, чтобы открыть его в моей программе.
Как мне это решить? Заранее спасибо.
1 ответ
Из стандартных приложений Archlinux:
Создайте свой XML-файл в
~/.local/share/mime/packages(Я думаю что/usr/share/mime/packagesтоже нормально, но не проверял)mkdir -p ~/.local/share/mime/packages touch ~/.local/share/mime/packages/application-alpha.xmlредактировать
application-alpha.xml:<?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="application/alpha"> <comment>alpha file</comment> <glob-deleteall/> <glob pattern="*.alpha"/> </mime-type> </mime-info>Теперь создайте файл рабочего стола
~/.local/share/applications/alpha.desktop:[Desktop Entry] Name=Alpha Exec=/PATH/TO/YOUR/alpha MimeType=application/alpha Terminal=false Type=Applicationдобавьте правильный путь exec к вашему альфа-приложению, и если это консольное приложение, измените Terminal на true.
Теперь обновите приложения и базу данных MIME:
update-desktop-database ~/.local/share/applications update-mime-database ~/.local/share/mime
Теперь, если вы дважды щелкните файл abc.alpha /PATH/TO/YOUR/alpha Приложение должно открыть ваш файл.