Previous: , Up: 補完   [Contents][Index]


8.4.5 補完オプション

大文字小文字の違いは、コマンド名のように大文字小文字を区別する(case-sensitive)引数では重要です。たとえばコマンド名の補完では、‘AU’では‘auto-fill-mode’に補完されません。大文字小文字の違いは、それが問題にならない引数の補完では無視されます。

ファイル名を補完するとき、変数read-file-name-completion-ignore-caseが非nilなら、大文字小文字の違いは無視されます。GNU/Linuxのように、ファイル名の大文字と小文字を区別するシステムでは、デフォルト値はnilです。Microsoft Windowsのように、ファイル名の大文字と小文字を区別しないシステムでは、非nilです。バッファー名を補完するとき、read-buffer-completion-ignore-caseが非nilなら、大文字小文字の違いは無視されます。デフォルトはnilです。

通常Emacsはファイル名を補完するとき、選ばれるべきではないと思われる、特定の候補を無視します。これはリスト変数completion-ignored-extensionsにより決定されます。リストの要素はに文字列を指定します。それらの文字列で終わるファイル名は、補完候補としては無視されます。スラッシュ(/)で終わる要素は、ディレクトリー名を表します。completion-ignored-extensionsの標準的な値は".o"".elc""~"を含むいくつかの要素です。たとえばディレクトリーに‘foo.c’、‘foo.elc’があるとき、‘foo’は‘foo.c’に補完されます。しかしすべての補完候補が無視すべき文字列で終わるとき、これらの候補は無視されません。前の例でいうと‘foo.e’は‘foo.elc’に補完されます。Emacsは補完候補リストで補完候補を表示するとき、completion-ignored-extensionsを無視します。

Shellでの補完は、ファイル名補完の拡張されたバージョンです。Shellモードのオプションを参照してください。

completion-auto-helpnilがセットされていると、補完コマンドは補完リストバッファーを表示しません。表示するには?を入力しなければなりません。値がlazyの場合、Emacsは2度目の補完を試みたときだけ、補完リストバッファーを表示します。もし補完すべきものがない場合には1度目のTABでは‘Next char not unique’、2度目のTABで補完リストバッファーが表示されます。

completion-cycle-thresholdが非nilのとき、補完コマンドは補完候補を循環(cycle)することができます。ミニバッファーのテキストで1つ以上の補完候補がある場合は通常、補完コマンドは補完できた文字までを表示します。completion-cycle-thresholdtに変更すると、補完コマンドは補完候補の中から最初の候補を表示します。それ以降の補完コマンドの呼び出しでは、その次の補完候補を循環的に表示します。completion-cycle-thresholdを数値nにすると、補完候補がn以下のときだけ循環表示の動作をします。

Emacsが補完を表示する際には、通常だと補完を表示するためのバッファーを新たにポップアップします。補完は(デフォルトでは)水平方向にアルファベット順で列に格納されます。もしverticalなら補完を列に垂直方向にソート、one-columnなら単一の列だけを使用します。