カスタムアクションでThunarファイルマネージャーを拡張する方法
ThunarはXfceに含まれるファイルマネージャで、従来のデスクトップメタファーを実装した自由でオープンソースのデスクトップ環境です。GNOMEプロジェクトがGNOMEシェルを導入した際に多くのユーザーに支持され、好まれるようになりました。Thunarはリソースに対して軽量ですが、カスタムアクションを作成することでさらに機能を拡張できる点が特徴です。
このチュートリアルでは、カスタムアクションを作成することでThunarファイルマネージャーを拡張する方法を学びます。
このチュートリアルでは、あなたは学びます:
- Thunarインターフェイスからカスタムアクションを作成する方法
- テキストエディタを使用してThunarのカスタムアクションを作成する方法
| カテゴリー | 使用された要件、規約、またはソフトウェアのバージョン |
|---|---|
| システム | 分布に依存しない |
| ソフトウェア | サイコロ |
| 他の | None |
| 協定 | # – 指定されたLinuxコマンドは、ルートユーザーとして直接またはsudoコマンドを使用して実行される必要があります $ – 指定されたLinuxコマンドは、通常の非特権ユーザーとして実行される必要があります |
カスタムアクションのグラフィカルツールを使用すると、ユーザーはカスタムアクションを簡単に作成、更新、削除できます。上記のスクリーンショットにあるように、すでにカスタムアクションが存在します(デフォルトで作成されています):その目的は、ファイルマネージャのコンテキストメニューに関連するエントリをクリックして、選択したディレクトリでターミナルエミュレーターを開くことです。新しいカスタムアクションを作成するには、「プラス」アイコンをクリックする必要があります。
表示される新しいウィンドウは、「基本」と「外観条件」の2つのタブで構成されています。前者では、カスタムアクションの基本情報を入力できます。
- アクション名: これはThunarのコンテキストメニューに表示されるものです
- アクションの説明:これはカスタムアクションの目的に関する簡潔な説明です。
- ユーザーがThunarのコンテキストメニューのカスタムアクションエントリをクリックしたときに呼び出されるコマンド
- カスタムアクションのためのオプションのキーボードショートカット
- 私たちのカスタムアクションのスタートアップ通知を有効/無効にするためのチェックボックス
- Thunar コンテキストメニューのアクション名の横に表示される任意のアイコン
「外観条件」タブでは、Thunar のコンテキストメニューにエントリが表示されるために満たさなければならない条件を設定することができます。
「ファイルパターン」フィールドでは、メニューにアクションエントリを表示するために一致する必要があるファイルパターンの単一またはセミコロンで区切られたリストを指定できます。ここで「*」(グロブ)はすべてに一致するため、たとえば、アクションが「.txt」拡張子のファイルが選択されたときだけ表示されるようにするには、次のように書きます:*.txt。これはファイルタイプに基づいて区別するのではなく、その名前に基づいてのみ区別されることに注意してください。
ファイルのMIMEタイプに基づいてルールを設定する代わりに、このフィールドの下にある適切なチェックボックスをオンにする必要があります。例えば、テキストファイルが選択されているときだけメニューにアクションのエントリが表示されるようにするには、「テキストファイル」のチェックボックスにチェックを入れます。選択に指定されたタイプのファイルが専ら含まれている場合にのみ、アクションが利用可能になることに注意してください(この場合、テキストファイルと画像ファイルを選択するとメニューには表示されません)。
些細な例
トリビアルな例としてカスタムアクションを作成しましょう。私たちのアクションは、GNU画像編集プログラムであるGIMPを使って選択した画像を編集できるようにします。ここでは、上記で見たフィールドをどのように埋めるかを示します:
ご覧のように、私たちはカスタムアクションの名前として「Gimpで編集」を選び、それに対する簡単な説明を提供し、ユーザーがメニュー項目をクリックしたときに実行されるコマンドとしてgimp %fを入力しました。ここでgimpはもちろんアプリケーションの名前であり、%fは選択された最初のファイルのパスに置き換えられるプレースホルダーです。利用可能な他のプレースホルダーについては、インターフェース自体で説明されています。
私たちはカスタムアクションのためにスタートアップ通知を有効にしました。これにより、アクションが実行されている間、スピニングカーソルが表示されます。つまり、この場合はGimpが起動している間です。これは、アクションが開始されたことをユーザーに通知するフィードバックとして使用できます。
私たちのカスタムアクションがThunarのコンテキストメニューで簡単に識別できるようにするために、私たちはそれを「Gimp」アイコンに関連付けることに決めました。次に、「表示条件」タブで、アクションは画像が1つ以上選択されているときだけ表示されるように設定しました。その名前に関係なく:
カスタムアクションを保存するには、単に「OK」ボタンをクリックします。次回、画像を選択して右クリックすると、コンテキストメニューに関連する項目が表示されるはずです:
テキストエディタを使ってカスタムアクションを作成する
特定のケースでは、例えばセットアップを自動化するために、プログラム的にカスタムアクションを作成する必要があるかもしれません。Thunarのグラフィカルインターフェースを介して作成したカスタムアクションは、~/.config/Thunar/uca.xmlファイルに保存されます。ここに私のシステム上のファイルの現在の内容があります:
<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<icon>utilities-terminal</icon>
<name>Open Terminal Here</name>
<unique-id>1671100132617415-1</unique-id>
<command>exo-open --working-directory %f --launch TerminalEmulator</command>
<description>Example for a custom action</description>
<patterns>*</patterns>
<startup-notify/>
<directories/>
</action>
<action>
<icon>gimp</icon>
<name>Edit with Gimp</name>
<unique-id>1671615960737911-1</unique-id>
<command>gimp %f</command>
<description>Edit selected image with Gimp</description>
<patterns>*</patterns>
<startup-notify/>
<image-files/>
</action>
</actions>ご覧の通り、ルートタグは<actions>であり、各カスタムアクションは<action>タグ内で定義されています。アクションは専用タグで記述されます:例えば、<icon>タグにはアクションに関連付けられたアイコンの名前が含まれます。同様に、アクション名、説明などもそうです(<unique-id>タグは自動的に生成されます)。ブールオプションは自己閉じタグで表され、<startup-notify/>や<image-files/>のように使用され、これはグラフィカルインターフェースで関連するチェックボックスを選択することに相当します。
結論
このチュートリアルでは、カスタムアクションを作成することで、Thunarファイルマネージャの機能を拡張する方法を学びました。Thunarインターフェースから直接カスタムアクションを作成する方法と、定義する必要があるフィールドについて見ました。また、例としてカスタムアクションを作成し、最後にカスタムアクションがXML構文を使用してシンプルなテキストファイルに保存される様子を見ました。Thunarだけでなく、カスタムアクションを使用して拡張できるファイルマネージャもあります:PCManFMやNautilusを拡張するチュートリアルもお見逃しなく、Pythonで記述された拡張機能やカスタムスクリプトの作成について紹介しています。







