尝试在Linux中为.maff文件创建处理程序

问题描述

MAFF文件只是zip文件。我试图在Linux中为.maff创建一个处理程序,以便当我单击它们或键入xdg-open x.maff时,它将调用我的处理程序,而不是默认值,即在nautilus中打开目录。我创建了一个application-x-maff.xml文件,其中包含:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="application/x-maff">
    <comment>maff type</comment>
    <magic priority="100">
        <match offset="0" type="string" value="PK\x03\x04" />
    </magic>
    <glob pattern="*.maff"/>
  </mime-type>
</mime-info>

并保存在〜/ .local / share / mime / packages中。还创建了一个包含以下内容的〜/ .local / share / applications / maffapplication.desktop

[Desktop Entry]
Type=Application
MimeType=application/x-maff
Name=Maff Handler
Exec=<my home path>/bin/linux/maffHandler

并执行

% update-mime-database ~/.local/share/mime/packages/
% update-desktop-database ~/.local/share/applications

如果我愿意

% gio info x.maff (filtered)
 standard::content-type: application/x-maff
 standard::fast-content-type: application/x-maff

如果我愿意

% gio mime application/x-maff 
Registered applications:
        maffapplication.desktop
Recommended applications:
        maffapplication.desktop

一切似乎都是正确的...但是xdg-open x.maff无法正常工作,仍然调用nautilus ...如果我愿意的话,更糟

% xdg-mime query filetype x.maff 
 application/zip

我确定我丢失了某些东西……某种程度上,我需要覆盖.maff文件之间的这种关联,而这种关联以与zip文件相同的魔力开始无济于事……我尝试了各种修改xml文件,带有或不带有魔术,没有任何作用

如果我愿意的话

% maffHandler x.maff 

它可以完美工作并在firefox中打开maff文件,如果有人感兴趣,我愿意分享该文件的C ++代码

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)