2013-02-23

kshのコマンドライン入力補完

入力補完に「タブが使えない」kshですが、別の方法で補完が可能です。

viモード(set -o vi)と、emacsモード(set -o emacs)でキーバインドが違います。

viモード

kshはviモードがデフォルトのことが多いです。

候補表示

Esc =

  • 「Esc」を入力した直後に「=」(イコール)を入力する

補完

Esc \

  • 「Esc」を入力した直後に「\」(バックスラッシュまたは半角円記号)を入力する

emacsモード

bashやreadlineなどでデフォルトのemacsモードです。

候補表示

Esc =

  • 「Esc」を入力した直後に「=」(イコール)を入力する
    • viモードと同じ

補完

Esc Esc

  • 「Esc」を2回入力する
    • viモードと違う
    • viモードより押しやすい

参考

Escキーが押しづらいときの対策

Escキーが押しづらい場合、コントロールキーで代用できます。

C-[

  • 「Ctrl」キーを押しながら「[」キーを押すと、OSはEscキーが押されたと思い込みます。

ちなみに世の中には2種類のVimmerがいて、押しやすいキーにEscを割り当てる人と、C-[を使う人に分かれています。私は後者です。