問題
iterm でたまに間違って alt+n や alt+p を押してしまって、よくわからない制御コードが入ってしまうことがある。下記のように設定したい。
キー入力 | 出力 |
---|---|
alt + p | ↑ |
alt + n | ↓ |
しかし通常のキーアサインでは矢印を入力することができない。
解決策
メニューのPreferences > Profiles > Keys で + ボタンを押して下記のように設定すれば期待した結果になる。

解説
この記事 https://tanishiking24.hatenablog.com/entry/readascii が参考になった。
read key; echo "$key" | hexdump
を実行して矢印キーを入力する。たとえば上矢印を入力して enter を押すと下記のように表示される。
0000000 1b 5b 41 0a
これを見ると iterm で矢印キーが与えているキーコードがわかるらしい。この場合は 1b 5b 41
が上矢印が与える拡張キーコードとなる。なので iterm に 1b 5b 41
という hex code を与えれば上矢印を与えたのと同じ結果になる、という。同じようにして下矢印のコードを送ると 1b 5b 42
というコードが得られる。