Создать новый тип файла с существующим расширением
Я сделал приложение 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
Приложение должно открыть ваш файл.