Open4
Bashのマニュアルから学ぶEmacsのキーバインド
ねらい
- ずっとvimわからんてゆってる
- わからんvimよりemacsのほうがいいのでは
- Emacsだってキーバインドがわからんし
- いやBashでふだんから一部使うてるやんけ
そういうわけでBash→Emacsへとステップアップする足がかりとしていろいろ書く。
Bashのマニュアル
使わないもの
覚えないと決めたものたち。一生覚えられん。
macOS、Windowsともに似た感じで応用できる。
最小単位での上下左右の移動
- ふつうにカーソル移動キー(矢印キー)を使う。
- previous / next / forward / back は分かるけど、キートップに印字された矢印の記号↑↓→←とキーの十字状の配置の分かりやすさに勝るものなし
- ふつうのアプリケーションでは、修飾キー (Shift) を押しながら上下左右とカーソルを移動させることで、直感的に範囲選択できる点も魅力。
- Emacsではできないけど。
- 付け加えると、同様の理由でPCゲームにおけるWASDによる移動もわからん。
単語間の移動
- option + 左右の矢印キーを使う。
- 上記の通り、分かりやすさに勝るものなし。
- 左右の矢印キーと修飾キーを重ねるだけでカーソル移動の挙動を変えられるのは直感に反しない。
- 範囲選択もやはりShiftキーと組み合わせることで挙動を重ねがけできる点でわかりやすい。
よく使うもの
macOSではcommand [⌘] キーと上下左右キーを合わせたキーバインドが有効だがBashでは普通使えないのでEmacs風のキーバインドでだいようすることになる。
beginning-of-line (C-a)
/ end-of-line (C-e)
clear-screen (C-l)
reverse-search-history (C-r) / forward-search-history (C-s)
fzfと併せてつかってる
end-of-file (usually C-d)
delete-char (C-d)
quoted-insert (C-q or C-v)
kill-line (C-k) / unix-line-discard (C-u)
kill-word (M-d) / unix-word-rubout (C-w)
deleteキー連打よりも早く消せる
yank (C-y)
要はペースト
abort (C-g)
fzfのよびだしのときとか
^G
undo (C-_ or C-x C-u)
Ctrl+Z
Ctrl+Shift+-のほうが馴染んでる
display-shell-version (C-x C-v)
bash --version
としない
edit-and-execute-command (C-x C-e)
これ超大事