Diredバッファには通常1つのディレクトリのみが表示されますが、オプションでそのサブディレクトリも含めることができます。
1つのDiredバッファに複数のディレクトリを含める最も簡単な方法は、lsの実行時にオプション
‘-lR’
を指定することです。(Diredの実行時に数値引数を指定する場合は、ミニバッファでこれらのオプションを指定できます。)これにより、あらゆる階層のすべてのサブディレクトリを表示する再帰的なディレクトリ一覧が生成されます。
多くの場合、特定のサブディレクトリのみを表示したいこともあるでしょう。これは i (dired-maybe-insert-subdir) で実現できます:
サブディレクトリの内容を、後でバッファに挿入する。
ディレクトリであるファイルを記述している行に対してこのコマンドを実行すると、そのディレクトリの内容が同じDiredバッファに挿入され、そこへ移動します。挿入されたサブディレクトリの内容は、‘ls -lR’ 出力時と同様に、Diredバッファの最上位ディレクトリの後に続きます。
サブディレクトリの内容が既にバッファに含まれている場合、iコマンドは単にそこへ移動します。
いずれの場合も、i は移動前に Emacs マークを設定するため、C-u C-SPC で Dired バッファ内の直前の位置に戻ります(マークの設定を参照)。また、‘^’ を使用して、同じ Dired バッファ内の親ディレクトリに戻ることもできます(Dired でのファイル訪問を参照)。
l コマンド (dired-do-redisplay)
を使用してサブディレクトリの内容を更新し、サブディレクトリのヘッダー行に C-u k
を使用してサブディレクトリの一覧を削除します(Dired
バッファの更新 を参照)。また、挿入したサブディレクトリを非表示にしたり表示したりすることも可能です(サブディレクトリの非表示 を参照)。