Hack #19: Command-line mode補完 導入編
Posted at 2009/05/31ツイート
Insert mode補完をマスターした後は、Command-line modeにおける補完機能についても習熟しましょう。導入編の本Hackでは、基本的なCommand-line mode補完について解説します。Command-line mode補完についての詳しい解説は:help cmdline-completion
を参照してください。
- Command-line modeで補完できる要素
- Command-line modeでは状況に応じ、次のような要素を補完することができます。ちなみに補完できないときは、^Iが入力されます。
- コマンド名
- Command-line modeの先頭で補完した場合。現在定義されているもののみが有効です。
- コマンドの引数
- コマンドの後で補完した場合。補完される要素はコマンドにより異なります。
- ファイル名
:edit
コマンドの後で補完した場合。- オプション名
:set
や:setlocal
コマンドの後で補完した場合。- Key-mappings
:map
系のコマンドの後で補完した場合。- 変数名や関数名
:if
や:call
などのコマンドの後で補完した場合。ただし、hoge#piyo
のように、名前に#が含まれていると、うまく補完できません。- シェルコマンド名
:!cmd
など、シェルを使用するコマンドの後で補完した場合。$PATH中のファイルをすべて認識しているようです。- ヘルプ
:help
コマンドの後で補完した場合。日本語版のヘルプなら後ろに@ja、英語版のヘルプなら後ろに@enが付きます。- タグ名
:tag
コマンドの後で補完した場合。- オプションの設定された値
:set option_name=
の後で補完した場合。 - コマンド名
- また、Command-line mode補完では以下のキー操作が有効になります。
- <C-d>
- カーソル位置より前のパターンに一致する名前を一覧表示します。ディレクトリがマッチするときは強調表示されます。
'wildchar'
で指定されたキー- カーソル位置より前にあるパターンに一致する単語を検索し、最初にマッチするものを挿入します。再度押すと、次にマッチするものを挿入します。最後のマッチの後には、最初のマッチが使われます。
'wildchar'
の規定値は<TAB>です。 - <C-n>
'wildchar'
を使った場合は次のマッチを挿入します。それ以外の時は、より次に使ったコマンドラインの履歴を呼び出します。- <C-p>または<S-Tab>
'wildchar'
を使った場合は前のマッチを挿入します。それ以外の時は、より前に使ったコマンドラインの履歴を呼び出します。- <C-a>
- カーソル前のパターンに一致する名前を全て挿入します。
- <C-l>
- カーソル位置より前のパターンに一致する単語の共通部分を挿入します。マッチするものが1個の場合はそれが挿入されます。
- パターン内ではワイルドカードとして ‘*’ と ‘?’ が使用できます。’*’ はあらゆる文字に一致し、’?’ は一文字に一致します。
もどる
blog comments powered by Disqus