Thunar

提供: ArchWiki
ナビゲーションに移動 検索に移動

関連記事

プロジェクトの ホームページ より:

Thunar は Xfce デスクトップ環境の新しい近代的なファイルマネージャです。高速で使いやすいように Thunar はイチから作られました。ユーザーインターフェイスは整理されていて直感的であり、デフォルトで混乱するような意味のないオプションは入っていません。Thunar は短い時間で起動しフォルダのロードにも素早く反応します。

インストール

thunar パッケージをインストールしてください。このパッケージは xfce4 グループに含まれているため、Xfce を使っている場合、すでに Thunar はインストールされていると思われます。

プラグインとアドオン

https://wiki.gnome.org/Projects/gvfs || gvfs
  • Thunar Archive Plugin — コンテキストメニューアイテムを使って圧縮ファイルを作成したり解凍できるプラグイン。圧縮ファイルを直接作成・解凍するのではなく File Roller (file-roller), Ark (ark), Xarchiver (xarchiver) など他のプログラムのフロントエンドとして動作します。xfce4-goodies に含まれています。
https://goodies.xfce.org/projects/thunar-plugins/thunar-archive-plugin || thunar-archive-plugin
  • Thunar Media Tags Plugin — メディアファイルに関する情報を表示するプラグイン。一括リネームやメディアタグの編集をすることもできます。ID3 (MP3 ファイルフォーマットのシステム) と Ogg/Vorbis タグをサポートしています。xfce4-goodies に含まれています。
https://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin || thunar-media-tags-plugin
  • Thunar Shares Plugin — root 権限を必要とすることなく Thunar から Samba を使ってフォルダを素早く共有することができるプラグイン。設定方法も参照してください。
https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin || thunar-shares-pluginAUR
https://goodies.xfce.org/projects/thunar-plugins/thunar-volman || thunar-volman
  • Tumbler — サムネイルを生成する外部プログラム。ffmpegthumbnailer もインストールすることで動画のサムネイルが有効になります。
https://git.xfce.org/xfce/tumbler/tree/README || tumbler
  • libgsf — GNOME Structured File Library は構造化されたファイルフォーマットを読み書きするためのユーティリティライブラリです。odf サムネイルのサポートが必要な場合にインストールしてください。
https://directory.fsf.org/wiki/Libgsf || libgsf
  • RAW Thumbnailer — raw サムネイルを表示するのに必要な軽量で高速な raw 画像サムネイラー。
https://code.google.com/p/raw-thumbnailer/ || raw-thumbnailer
  • Extra thumbnailers — Tumbler 用にカスタマイズされたサムネイル。
https://docs.xfce.org/xfce/tumbler/available_plugins/ || tumbler-extra-thumbnailersAUR
  • Folder thumbnailer — Tumbler を介したカスタムフォルダーのサムネイルのサポート。
https://github.com/j-james/thunar-folder-thumbnails || tumbler-folder-thumbnailerAUR
  • STL thumbnailer — Tumbler の STL サムネイルの生成のサポート。
https://github.com/j-james/thunar-stl-thumbnails || tumbler-stl-thumbnailerAUR

設定

キーバインドを設定するには、ファイル ~/.config/Thunar/accels.scm を編集します。Thunar の隠し変数を設定するには、xfconf-query -c thunar -l -v を使用します。

Thunar Volume Manager

gvfsthunar-volman の両方がインストールされている場合、メディアの接続時にコマンドを自動的に実行するように Thunar を設定できます。通常 MTP に従うモバイルデバイスの場合は、追加の gvfs-mtp パッケージが必要です。

ヒント: Thunar で自動マウントを行うには、デーモンモードで Thunar を起動する必要があります。

設定

カメラやオーディオプレイヤーが接続された時に特定のアクションを実行するように設定することができます。 プラグインをインストールした後:

  1. Thunar を起動して 編集 > 設定
  2. '詳細' タブ下、'ボリューム管理を有効にする' のチェックを入れる
  3. configure をクリックして以下のアイテムにチェックを入れる:
    • リムーバブルドライブがホットプラグされたらマウントする
    • リムーバブルメディアが挿入されたらマウントする
  4. そして必要な変更を行なって下さい (下の例を参照)

Amarok でオーディオ CD を再生させるよう設定する例:

 マルチメディア - オーディオ CD: amarok --cdplay %d

カスタムアクション

このセクションでは 編集 -> カスタムアクションの設定 からアクセスできる便利なカスタムアクションを説明しています (~/.config/Thunar/uca.xml に保存されます)。他にも thunar wiki にはサンプルが載っています。さらに、この ブログ記事にはカスタムアクションの広範囲なコレクションがされています。

ターミナルで開く

インストールに関する唯一のアクションは次のとおりです。exo にどの端末を使用するかを指示します。

~/.config/xfce4/helpers.rc
TerminalEmulator=terminal
名前 コマンド ファイルのパターン 登場する条件
ターミナルで開く exo-open --working-directory %f --launch TerminalEmulator * フォルダー

ファイルとフォルダの検索

このアクションを使うには catfish がインストールされていなければなりません。mlocate もインストールしたほうが良いでしょう。

名前 コマンド ファイルのパターン 登場する条件
検索 catfish --path=%f * フォルダー

ウイルスのスキャン

このアクションを使うには clamavclamtk がインストールされていなければなりません。

名前 コマンド ファイルのパターン 登場する条件
ウイルススキャン clamtk %F * 全て選択

Dropbox にリンク

名前 コマンド ファイルのパターン 登場する条件
Dropbox にリンク ln -s %f /path/to/DropboxFolder * フォルダー, その他のファイル

特定の場所にあるファイルやフォルダにシンボリックリンクするカスタムアクションを多数使用する場合、メニューが長くなりすぎないようにコンテキストメニューの Send To フォルダにアクションを置くと便利です。実行するアクションごとに ~/.local/share/Thunar/sendto に .desktop ファイルを作るだけで簡単に置くことができます。例えば上記の Dropbox シンボリックリンクアクションを Send To に置きたい場合、dropbox_folder.desktop を以下の内容で作成します。新しく作成したアクションは Thunar を再起動した後に有効になります。

[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Exec=ln -s %f /path/to/DropboxFolder
Icon=/usr/share/icons/dropbox.png
Name=Dropbox

ヒントとテクニック

Thunar を使ってリモートの場所をブラウズする

Xfce 4.8 (Thunar 1.2) から Thunar で直接リモートの場所 (FTP サーバーや Samba 共有など) をブラウズできるようになっています。この機能を有効にするには gvfs, gvfs-smb, sshfs パッケージをインストールしてください。'Network' エントリが Thunar のサイドバーに表示され次のような URI スキームを場所ダイアログ (Ctrl+l で開く) に使うことでリモートの場所を開くことができます: smb://, ftp://, ssh://, sftp://, davs:// そしてその後にサーバーのホスト名や IP アドレス。

NFS 共有には URI スキームがありませんが、fstab を適切に設定していれば Thunar は mount コマンドを実行することができます。

/etc/fstab
# nas1 server
nas1:/c/home		/media/nas1/home	nfs	noauto,user,_netdev,bg  0 0

ここで重要なのは、クリックされるまで共有がマウントされないようにする noauto と、どのユーザーでも共有をマウント(アンマウント)できるようにする user、そして前もってネットワーク接続を行う _netdev、そして最後にマウント操作をバックグラウンドにする bg です。これはサーバーがスピンアップ時間を必要とする場合に動作するまでタイムアウトメッセージに対処して再クリックする必要をなくします。

ヒント: リモートのファイルシステムの場所のパスフレーズを永続的に保存したい場合、GNOME Keyring をインストールしてください。

デーモンモードで起動する

Thunar はデーモンモードで実行することが可能です。このモードには複数の利点があり、Thunar を高速に起動したり、バックグラウンドで Thunar を動かすことで必要なときだけウィンドウを開くことができます (例えば、フラッシュドライブが接続されたときなど)。

ログイン時に thunar --daemon コマンドが自動で実行されるようにしてください。詳しくは Xfce自動起動を見て下さい。

起動が遅いという問題を解決する

一部の人々は Thunar を最初に起動するときに長い時間がかかるという問題を抱えています。これは gvfs がネットワークを確認しているのが原因で、gvfs が操作を完了するまで Thunar が起動できなくなっているからです。この挙動を変更するには、/usr/share/gvfs/mounts/network.mount を編集して AutoMount=trueAutoMount=false に変えてください。

サイドペインのショートカットを隠す

サイドペインのショートカットを表示させなくする隠しメニューが存在します。

「デバイス」セクションラベルなど、サイドペインのショートカットがないところを右クリックして下さい。ポップアップメニューが表示され、隠したいアイテムのチェックを外すことができます。

Thunar のキーボードショートカットを割り当てる

自由にコマンドのショートカットを割り当てる方法があります。実際、Thunar のメニューバーに記載されるメニューオプションは自由にショートカットに割り当てることが可能です。ただし、残念ながら (Thunar Archive Plugin など) プラグインのオプションをショートカットで割り当てることはできません。

xfconf-query -c xsettings -p /Gtk/CanChangeAccels -T

Thunar を開いて、例えば "Open Terminal Here" メニューオプションを探して下さい。エントリの上にマウスを乗せてキーボードショートカットにするキーを押します。多くの場合、F4 に設定すると便利でしょう。キーの割り当てを削除するには、Backspace キーを押します。

上記の設定を行えば、Thunar の中で定義したショートカットを押すだけでターミナルを開くことができるようになります。

GTK+#キーボードショートカットのカスタマイズを有効にするも参照。

fstab に定義されたパーティションを表示する

Thunar はデフォルトで /etc/fstab に定義されているパーティションを root パーティションを除いて一切デバイス欄に表示しません。

fstab で表示したいパーティションに comment=x-gvfs-show オプションを付けることで表示を切り替えることができます。

トラブルシューティング

大容量の外付けドライブの自動マウント

thunar-volman と gvfs がインストールされているにもかかわらず、Thunar が大きなリムーバブルメディア (サイズ > 1TB) のマウントを拒否する場合は、udevilAURudiskie などの別のオートマウンタをインストールしてみてください。後者は udisks2 を使用し、gvfs と互換性があるため、推奨されます。udisks2 サポートを使用して udiskie を起動するには、自動起動ファイルに次の行を追加します。

udiskie -2 &

Tumblerd がハングアップして cpu を異常に消費する

Tumblerd はファイルシステムを監視して、サムネイルを作成する必要があるときにシステムに通知するサービスですが、ループにはまって、システムの CPU を100%使用してしまうことがあります。このバグレポートを見て下さい。以下のスクリプトは、[1] で考案されたもので、Tumblerd の異常を止めるための一時的な対処方法です。コピーして、.sh ファイルにペーストし、ホームディレクトリのどこかに保存して、ファイルに実行可能属性を付与し、システムの起動時に自動で実行させるように設定してください。

#!/bin/bash
period=20
tumblerpath="/usr/lib/*/tumbler-1/tumblerd" # The * here should find the right one, whether 32 and 64-bit
cpu_threshold=50
mem_threshold=20
max_strikes=2                               # max number of above cpu/mem-threshold's in a row
log="/tmp/tumblerd-watcher.log"

if [[ -n "${log}" ]]; then
    cat /dev/null > "${log}"
    exec >"${log}" 2>&1
fi


strikes=0
while sleep "${period}"; do
    while read pid; do
	cpu_usage=$(ps --no-headers -o pcpu -f "${pid}"|cut -f1 -d.)
	mem_usage=$(ps --no-headers -o pmem -f "${pid}"|cut -f1 -d.)

	if [[ $cpu_usage -gt $cpu_threshold ]] || [[ $mem_usage -gt $mem_threshold ]]; then
	    echo "$(date +"%F %T") PID: $pid CPU: $cpu_usage/$cpu_threshold %cpu MEM: $mem_usage/$mem_threshold STRIKES: ${strikes} NPROCS: $(pgrep -c -f ${tumblerpath})"
	    (( strikes++ ))
	    if [[ ${strikes} -ge ${max_strikes} ]]; then
		kill "${pid}"
		echo "$(date +"%F %T") PID: $pid KILLED; NPROCS: $(pgrep -c -f ${tumblerpath})"
		strikes=0
	    fi
	else
	    strikes=0
	fi
    done < <(pgrep -f ${tumblerpath})
done

ゴミ箱やネットワークアイコンが表示されたりされなかったりする

全ての Thunar インスタンスを gvfsに起動させてください [2]thunar --daemon の場合、GVFS が有効になるまで待機するラッパーを作成することができます:

ノート: $PATH において /usr/local/bin/usr/bin より前にする必要があります。
/usr/local/bin/Thunar
#!/bin/bash
if [[ $1 == --daemon ]]; then
  until pgrep gvfs >/dev/null; do
    sleep 1
  done
  exec /usr/bin/Thunar "$@"
else
  exec /usr/bin/Thunar "$@"
fi

ファイルシステムがマウントできない

ファイルマネージャの機能#トラブルシューティングを見てください。

新しいウィンドウやタブが開くのが遅すぎる

XDG_TEMPLATES_DIR に設定したフォルダの下に多くのファイルがある場合があります。XDG ユーザーディレクトリ を参照してください。

解決策としては、XDG_TEMPLATES_DIR のあるフォルダから別のフォルダにファイルを移動するか、XDG_TEMPLATES_DIR を別のフォルダに設定します。

参照