次の内容のファイル〜/ .local/share/mime/packages/graphml + xml-mime.xmlを作成して、カスタムmimetype(text/graphml + xml)を作成しようとしました。
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="text/x-graphml+xml">
<comment>GraphML file</comment>
<acronym>GraphML</acronym>
<expanded-acronym>Graph Modelling Language</expanded-acronym>
<sub-class-of type="text/xml"/>
<glob pattern="*.graphml"/>
</mime-type>
</mime-info>
そして、適切なアイコンをインストールしました:
xdg-icon-resource-resourse install --context mimetype --novendor --size ${size} --mode user text-x-graphml+xml.png
次に、データベースを更新しました
update-mime-database ~/.local/share/mime
しかし、my.graphmlファイルのアイコンはnautilusには表示されません(これはDebianの最小限のgnomeシステムです)。
〜/ .local/share/icon/hicolor/$ {size} x $ {size} /mimetype/text-x-graphml+xml.pngのアイコンは存在します。
gio info my.graphmlのコメント:
...
standard::icon: text-x-graphml+xml, text-x-generic, text-x-graphml+xml-symbolic, text-x-generic-symbolic
standard::content-type: text/x-graphml+xml
standard::fast-content-type: text/x-graphml+xml
...
それをダブルクリックすると、ファイルがyedで開かれます(必要に応じて、〜/ .local/share/applicationns/yed.desktopファイルを作成しました)
しかし、アイコンはありません! :-(
代わりに、次のXMLファイルを使用してください。
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="application/x-graphml+xml">
<comment>GraphML file</comment>
<acronym>GraphML</acronym>
<expanded-acronym>Graph Modelling Language</expanded-acronym>
<glob pattern="*.graphml"/>
<icon name="x-graphml+xml"/>
</mime-type>
</mime-info>
xdg-icon-resource
をで実行していることを確認してください
--context mimetypes
ない
--context mimetype
そうしないと、間違ったフォルダに移動します。
たとえば、アイコンが48x48の場合、インストールコマンドは次のようになります。
xdg-mime install --mode user graphml+xml-mime.xml
xdg-icon-resource install --context mimetypes --size 48 text-x-graphml+xml.png x-graphml+xml
update-mime-database ~/.local/share/mime
update-icon-caches ~/.local/share/icons
これは奇妙なものです。難しさは、mimetypeが
text/x-graphml+xml
の代わりに
application/x-graphml+xml
デフォルトでは、一般的なテキストアイコンになります。ただし、これはファイルマネージャとデスクトップに依存しているようです。
これはバグですか?あなたが決める!