LoginSignup
40
43

More than 5 years have passed since last update.

diredをより便利にするツール群 dired-hacks

Last updated at Posted at 2014-07-12

はじめに

dired-hacksというツール群がある.

diredの機能を強化し,より便利にするelisp群というわけである.
詳細は上記ページのREADMEやソースを読み、自分で試せばすぐに分かるわけだが,
以下,備忘録を兼ねてメモを残しておく.
私自身全てを試したわけでもないが,使って便利だ・おもしろいと感じたものを紹介する.

ちなみにソースの一部はMELPAからインストール可能な状態である.

紹介

dired-filter.el

diredバッファをフィルタリングする.
以下のようにキーバインドが用意されている (dired-filter-map参照).

キーバインド 説明
/ n 名前でフィルタリング (dired-filter-by-name)
/ r 正規表現でフィルタリング (dired-filter-by-regexp)
/ . 拡張子でフィルタリング (dired-filter-by-extension)
/ h ドットで始まるファイルを隠す (dired-filter-by-dot-files)
/ o dired-omit-modeによるフィルタリング (dired-filter-by-omit)
/ e 説明がめんどくさいので割愛 (dired-filter-by-predicate)
/ f ファイルだけ表示 (dired-filter-by-file)
/ d ディレクトリだけ表示 (dired-filter-by-directory)
/ m メジャーモードでフィルタリング (dired-filter-by-mode)

上記以外にもキーバインドが用意されている(マーク用など).

フィルタリングの結果はスタックされる.
例えば,ファイル名でフィルタをかけた後、さらにメジャーモードでフィルタをかける、といった具合である.
スタック構造を持っているので、ポップすることでフィルタリング結果を戻すことも可能である.
またフィルタリングの結果は保存することができる.

dired-narrow.el

diredバッファにおいて,インクリメンタルにナローイングを実行する.
正規表現を用いてナローイングする機能もある.
絞り込んだ後はマークするなり中身を開くなりと,利用価値は高い.

dired-subtree.el

diredバッファ上でサブディレクトリを展開する機能を提供.
とにかくdemoを見れば意味がはっきりするだろう.
https://www.youtube.com/watch?v=z26b8HKFsNE
diredデフォルトではiを押すことでサブディレクトリを展開するが,
別ディレクトリとしてdiredバッファの下側に中身が表示される.

dired-ranger.el

dired上で「クリップボード」を介してコピーや移動を実行する.
「複数の」diredバッファ上でマークしたファイルをクリップボードにストアし,
それをtargetのdiredバッファ上でペーストするのが基本である.
(クリップボードがスタックのような構造になっているのがミソ)

すでにtargetのdiredバッファを開いているならバッファ切り替えでいいわけであり,
diredデフォルトのコピー機能の中でtargetディレクトリへのパスをいちいち選択するよりも速い.
dired-dwim-targetの利用で十分こと足りる人もいるだろうが,これはさらにそれを強化している.

dired-open.el

dired上で各種ファイルを開く際,拡張子に応じて開くためのプログラムを「いい感じに」調整してくれる.
カスタマイズ次第でさらに化けるだろう.

おわりに

本稿ではdired-hacks内の一部を紹介した.
今後の関連ツールの発展と共に,diredの価値はさらに高まるだろう.
diredは大変便利なので是非多くの人が利用することを期待する.

40
43
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
40
43