Next: , Previous: , Up: ファイルの処理   [Contents][Index]


19.16 ファイル名のクォート

特殊な文字や構文を含むファイルにたいする特別な効果を防ぐために、絶対ファイル名をクォートできます。これを行うには先頭に‘/:’を追加します。

たとえばリモートにあるように見える名前の、ローカルなファイルの名前をクォートすることにより、リモートファイル名として扱われないようにすることができます。したがって名前が/foo:というディレクトリーがあり、そこにbarという名前のファイルがある場合、Emacsでは、そのファイルを‘/:/foo:/bar’という名前で参照できます。

リモートファイル名もローカル部分の特殊文字だけをクォートしたい場合はローカル部分だけをクォートできます。たとえば‘/ssh:baz:/:/foo:/bar’は、ホストbaz上のディレクトリー/foo:のファイルbarを参照します。

/:’は、‘~’がユーザーのホームディレクトリーを意味する、特別な文字として扱われることを防ぐこともできます。たとえば/:/tmp/~hackは、ディレクトリー/tmpのファイル~hackを参照します。

/:’によるクォートは、ミニバッファーでの名前に‘$’を含むファイル名の入力にも使用できます。これが機能するには、ミニバッファーの最初の内容が‘/:’で始まらなければなりません(2回‘$’を記述することでも同様な効果が得られます。詳細はFile Names with $を参照してください)。

ファイルをvisitするときに、ワイルドカードをクォートすることもできます。たとえば/:/tmp/foo*barは、ファイル/tmp/foo*barをvisitします。

同じ効果を得るための別の方法は、/tmp/foo[*]barと入力する方法です。これは/tmp/foo*barだけにマッチするワイルドカード指定です。しかしクォートしなくても同じ結果が得られるので、ワイルドカード文字をクォートする必要がない場合がたくさんあります。たとえば/tmpの中に‘foo’で始まり‘bar’で終わるファイルがfoo*barだけの場合、/tmp/foo*barと指定することにより、/tmp/foo*barだけをvisitすることができます。