web-dev-qa-db-ja.com

XFCE(Thunar)でファイルタイプアイコンを変更するにはどうすればよいですか?

Thunar/XFCEで特定のタイプのファイルを表すために使用されるアイコンを変更する方法。

13
Ivan

Thunarによって表示されるアイコンは、mimetypesデータベースに格納されている情報に基づいています。したがって、mimetypeのアイコンを変更するには、そのデータベースを変更する必要があります。 assogiate と呼ばれるGnomeのguiがあり、これに使用される可能性がありますが、実際にはまだ試していません。または、特定のxmlファイルを編集/作成することにより、手動でMIMEタイプ情報を変更することもできます。

例として、.htmlファイルのアイコンを変更しようとします。まず、コマンドラインからそのMIMEタイプを取得します...

$ file --mime-type testfile.html 
testfile.html: text/html

次に、システムのMIMEタイプデータベースからMIMEタイプ定義情報を取得する必要があります。データベースは/ usr/share/mime /にありますが、より具体的には、ソースのmimetype xml定義は/ usr/share/mime/packagesサブフォルダーにあります。そこで、text/htmlのMIMEタイプ宣言が含まれているXMLファイルを見つけようとします。

$ cd /usr/share/mime/packages/
$ fgrep -Hn '<mime-type type="text/html">' *
freedesktop.org.xml:25295:  <mime-type type="text/html">

それで、text/htmlのMIMEタイプ定義を含むxmlファイルを見つけました。しかし、そのxmlファイルには、何十ものMIMEタイプの定義が含まれている場合があります。したがって、エディターでファイルを開き、mime-type type = "text/html"で始まるファイルの小さなセクションを探し、以下に示すように、/ mime-type>で終わります。

  <mime-type type="text/html">
    <comment>HTML document</comment>
      .
      .
      .
  </mime-type>

システムのmimetypeデータベースを変更すると、パッケージの更新によって上書きされる可能性があります。したがって、代わりに〜/ .local/share/mimeにあるローカルユーザーのmimetypeデータベースに新しいxmlファイルを作成します。また、この新しいxmlファイルにはソースのMIMEタイプ定義が含まれているため、〜/ .local/share/mime/packagesサブフォルダーに配置されます。そこで、そこに新しいxmlファイルを作成しますが、架空の名前を使用します...

$ cd ~/.local/share/mime/packages
$ gedit html_example.xml &

上記のテキストを貼り付けますが、上部に2行追加し、下部に1行追加します...

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="text/html">
    <comment>HTML document</comment>
      .
      .
      .
  </mime-type>
</mime-info> 

この例では、私のLinuxで、text/htmlのmimetype定義にアイコン関連の線が表示されません。しかし、次のような行が表示された場合...

<generic-icon name="xx_yada_yada_xx"/>
<icon name="xx_blah_blah_xx"/>

その後、編集してください。最後に、独自のアイコン名エントリを追加します。この場合、iceweaselのアイコンを選択しましたが、独自のアイコンを選択できます。システムで使用可能な任意のアイコン。そのため、新しいxmlファイルは次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="text/html">
    <comment>HTML document</comment>
      .
      .
      .
  <icon name="iceweasel"/>
  </mime-type>
</mime-info> 

そして今、ファイルを保存します。ローカルmimetypeソース定義を変更したので、ローカルmimetypesデータベースを再構築する必要があります...

$ cd ~/.local/share/mime
$ update-mime-database $PWD

以前〜/ .local/share/mimeが空だった場合は、さまざまなデータベースファイルが含まれるようになります。システムの再起動後、ローカルのMIMEタイプデータベース内の変更された情報は、メインシステムデータベース内の情報を上書きする必要があります。そして、うまくいけば、Thunarのhtmlアイコンも変更されます。

まあ、それは私がそれをする方法です。それがうまくいくことを願っています。 freedesktop.orgの共有MIME情報データベースに関する詳細情報は here で見つけることができます。

12
dru8274