今月、古くてガタがきてたIntelMacがついにダメになり、M2Macに買い替えた。
そして開発環境をふたたび構築していってたのが、ふとiTerm2でoptionキーが効かないことに気づいたので備忘録も兼ねてこの場で共有しておく。
ことの発端
私はコーディングや文章の作成にNeovimを使用している。
今回、コードの整理も兼ねてinit.vimをあらたに書いていっていたが、option + j or kでVScodeみたいな感覚で行入れ替えをおこなう以下のコードだけなぜか動かず、今回の異変に気がついた。
" VScodeのようにAlt + jなどで行の入れ替えをおこなえるようにする
noremap <A-j> :m .+1<CR>==
nnoremap <A-k> :m .-2<CR>==
inoremap <A-j> <Esc>:m .+1<CR>==gi
inoremap <A-k> <Esc>:m .-2<CR>==gi
vnoremap <A-j> :m '>+1<CR>gv=gv
vnoremap <A-k> :m '<-2<CR>gv=gv
なんでこうなったか
調べてみたところ、iterm2 3.4.23ではデフォルトでOptionキーがメタキーの設定から外されているらしい。
これはMac標準のターミナルでも同様で、他のショートカットや機能との競合するのを避けるためにいつの間にかこうなっていたらしい。なるほどぉ・・・。
解決方法
iTerm2の場合
iTerm2の設定を変えることで解決した。
上部メニューの「iTerm2」をクリックし、「Settings…」をクリックする。
窓上部メニューから「profile」を選択し、あらたに出てきたメニューから「keys」を選択する。
Left Option Keyのところの「Esc+」にチェックをつけることで、optionキーを使用することができるようになる!
Mac標準のターミナルの場合
Mac標準のターミナルでも、同じような方法でoptionキーをメタキーとして使用できるようになった。
上部メニューの「ターミナル」をクリックし、「設定…」をクリックする。
窓上部メニューから「プロファイル」を選択し、プロファイル内のメニューから「キーボード」を選択する。
下のほうに「メタキーとしてoptionキーを使用」というチェックボックスがあるので、これにチェックをつけることでoptionキーが使用可能になる。
まとめ
てなわけで、新しいMacでiTerm2やMac標準のターミナルを使用する際に、optionキーが効かないという問題に対処する方法について備忘録として共有した。
この問題は、ターミナル内のデフォルトの設定でOptionキーがメタキーから外されているから起こったことだった。
そして、iTerm2・標準ターミナルともに設定を変更することoptionキーを使用可能な状態にすることができた。よかった!