peco は percol をベースにしているので、percol のキーバインドを参考にしつつ考えてみました。
ただし、peco は修飾に Control キーしか使えないので、ちょっとアレンジが必要でした。
v0.1.8 から Alt/Option キーも使えるようになったので、修正しました。
v0.2.0 から SelectAll、SelectVisible、SelectNone が増えたのでちょっと修正。
参考にしたサイト
-
peco/peco
https://github.com/peco/peco#keymaps -
mooz/percol
https://github.com/mooz/percol#configuration -
percol - コマンドラインでの選択的インターフェイスについて考える - Qiita
http://qiita.com/syui/items/f2fe51d00378210d10b1#3-3 -
bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまい棒blog
http://d.hatena.ne.jp/hogem/20090411/1239451878
追記: Peco のデフォルトキーマップの情報が公開されたので、それに合わせて変更。
https://github.com/peco/peco#default-keymap
{
"Keymap": {
"M-f": "peco.ForwardWord",
"M-b": "peco.BackwardWord",
"M-ArrowRight": "peco.ForwardWord",
"M-ArrowLeft": "peco.BackwardWord",
"C-d": "peco.DeleteForwardChar",
"C-h": "peco.DeleteBackwardChar",
"M-d": "peco.DeleteForwardWord",
"M-h": "peco.DeleteBackwardWord",
"C-l": "peco.DeleteAll",
"M-v": "peco.SelectPreviousPage",
"C-v": "peco.SelectNextPage",
"C-t": "peco.ToggleSelection",
"C-s": "peco.ToggleSelectionAndSelectNext",
"C-a": "peco.SelectAll",
"C-g": "peco.SelectNone",
"C-m": "peco.Finish",
"C-j": "peco.Finish"
}
}
これを ~/.peco/config.json
に入れると次の実行からキーバインドが有効になります。
かなり悩みましたが、とりあえずこれでしばらく試してみようと思います。
もっと良い組み合わせがあったら教えて下さい。