Next: Create/Delete Dirs, Previous: File Names, Up: Files [Contents][Index]
ディレクトリーとはファイルの一種であり、さまざまな名前のファイルを含んでいます。ディレクトリーはファイルシステムの機能です。
Emacsはディレクトリー内のファイル名をLispのリストとして一覧したり、シェルコマンドls
を使用してバッファー内にファイル名を表示することができます。後者の場合には、Emacsはオプションで各ファイルに関する情報も表示でき、それはls
コマンドに渡すオプションに依存します。
この関数はディレクトリーdirectory内のファイルの名前のリストをリターンする。デフォルトではリストはアルファベット順。
この関数はfull-nameが非nil
ならファイルの絶対ファイル名、それ以外なら指定されたディレクトリーにたいする相対ファイル名をリターンする。
match-regexpが非nil
なら、この関数はその正規表現にたいするマッチを含むファイル名だけをリターンして、それ以外のファイル名はリストから除外される。case(大文字小文字)を区別するファイルシステムでは、caseを区別する正規表現マッチングが行われる。
nosortが非nil
ならdirectory-files
はリストをソートしないので、取得するファイル名に特定の順序はない。最大限の可能なスピードを得る必要がありファイル処理順を気にしなければこれを使用する。ユーザーから処理順が可視なら、名前をソートすれば多分ユーザーはより幸せになるだろう。
(directory-files "~lewis") ⇒ ("#foo#" "#foo.el#" "." ".." "dired-mods.el" "files.texi" "files.texi.~1~")
directoryが読み取り可能なディレクトリー名でなければエラーがシグナルされる。
これはどのファイルを報告するかとファイル名を報告する方法においてdirectory-files
と似ている。しかしこの関数はファイル名のリストをリターンするかわりに、各ファイルごとにリスト(filename
.
attributes)
をリターンする。ここでattributesはそのファイルにたいしてfile-attributes
がリターンするであろう値。オプション引数id-formatはfile-attributes
の対応する引数と同じ意味をもつ(Definition of file-attributesを参照)。
この関数はワイルドカードパターンpatternを展開して、それにマッチするファイル名のリストをリターンする。
絶対ファイル名としてpatternが記述されると値も絶対ファイル名になる。
patternが相対ファイル名で記述されていれば、それはカレントデフォルトディレクトリーにたいして相対的に解釈される。通常はリターンされるファイル名もカレントデフォルトディレクトリーにたいする相対ファイル名になる。しかしfullが非nil
なら絶対ファイル名がリターンされる。
この関数はls
のswitchesに対応するフォーマットで、(カレントバッファー内に)ディレクトリーfileのディレクトリーリストを挿入する。これは挿入したテキストの後にポイントを残す。switchesにはオプション文字列、または個別のオプションを表す文字列リストを指定できる。
引数fileにはディレクトリー名かワイルドカード文字を含むファイル名を指定できる。wildcardが非nil
なら、fileはワイルドカードを伴うファイル指定として扱われることを意味する。
full-directory-pが非nil
なら、ディレクトリーリストにたいしてディレクトリーの完全なコンテンツ表示を要求することを意味する。fileがディレクトリーでスイッチに‘-d’が含まれないときには、t
を指定すること(ls
へのオプション‘-d’は、ディレクトリーのコンテンツではなくファイルとしてディレクトリーを表示するよう指定する)。
ほとんどのシステムでは、この関数は変数insert-directory-program
の名前のディレクトリーリスト用プログラムを実行することにより機能する。wildcardが非nil
なら、ワイルドカード展開するためにshell-file-name
で指定されるシェルの実行も行う。
MS-DOSとMS-Windowsシステムは標準的なUnixプログラムls
を欠くので、この関数はLispコードでls
をエミュレートする。
技術的な詳細としてはswitchesにロングオプション‘--dired’が含まれる際に、insert-directory
はdiredのためにこれを特別に扱う。しかし他のオプションと同様、通常は等価なショートオプション‘-D’が単にinsert-directory-program
に渡されるだけである。
この変数の値は関数insert-directory
用にディレクトリーリストを生成するプログラムである。この値はLispコードでこのリストを生成するシステムでは無視される。