はじめに
最近の若い人は最初に触れるコンピュータがMacという人もいると思います。
そこでぜひ知っておいた方がいいのがEmacsキーバインドです。
このEmacsキーバインドについて軽く書いてみます。
あとオマケとして、ちょっとしたスクリプトも載せておきます。
Emacsキーバインドとは
Emacsはvi(Vim)と並び、Unix系OSで広く使われているテキストエディタです。
便宜上テキストエディタと書いていますが、拡張性が非常に高く、何でもできちゃいます。
テキストエディタというよりは、今で言うIDE(統合開発環境)に近いものです。
自分はEmacsは使わなくなりましたが、そのEmacsに由来するキーバインドは今でもよく使っています。
macOS以外のEmacsキーバインドが使える有名なものとしてはbashが挙げられます。
macOSのEmacsキーバインドの由来
macOSではEmacsキーバインドが使えますが、
その由来はMac OS X・・・ではなく、もっと前にさかのぼります。
それは、Steve JobsがAppleを追われた際に作った会社、NeXTです。
こんなコンピュータを作っていました。
このNeXT社の作ったNEXTSTEPというOSにEmacsキーバインドが組み込まれていました。
そして時は流れ、1997年にAppleがNeXT社を買収し、
NEXTSTEPはMac OS Xとして乗っ取り生まれ変わりました。
Emacsキーバインドが使えるアプリ
macOSのネイティブアプリの基盤となっている、Cocoaを使っているアプリはまず間違いなく使えます。
逆に言えば、Cocoaを使っていないアプリ、
具体的には独自にWidgetを作っているフレームワークでは対応していないことが多いです。
例えばJavaやAdobe AIRで作られたものはダメです。
JetBrains製品は独自に対応していますが、一部標準と違うのでカスタマイズが必要です。
ちなみに、iOSでも外付けキーボードを使えばEmacsキーバインドが使えます。
使えるEmacsキーバインド
これだけのキーバインドがEmacs由来(のはず)です。
- カーソル移動
- Ctrl + F: 1文字右
- Ctrl + B: 1文字左
- Ctrl + P: 1行上
- Ctrl + N: 1行下
- Ctrl + A: 行の先頭
- Ctrl + E: 行の末尾
- Ctrl + Option + F: 1単語後
- Ctrl + Option + B: 1単語前
- Ctrl + V: 1ページ前
- Ctrl + L: カーソルを中央になるようにスクロール
- 削除
- Ctrl + H: 前の文字を削除
- Ctrl + D: 後の文字を削除
- Ctrl + K: 行末まで削除(カット)
- Ctrl + Y: 貼り付け(yank)
- その他
- Ctrl + T: カーソル前後の文字を入れ替え
- Ctrl + O: 改行追加
全部は覚えなくてもいいです(自分も使ってません)が、覚えておくと便利です。
GoogleスプレッドシートでEmacsキーバインド
Emacsキーバインドではウェブブラウザでも使えます。
しかし不届きものがいました。
それは、Googleスプレッドシートです。Ctrl + Eすら使えません。
これではあまりに使いにくいということで、頑張って対応してみました。
一部動きませんが、だいたい動きます。
おわりに
NEXTSTEPの直系のOSが今まで残ってて、
自分がそれを使っているとは24年前には思いませんでした( ´ω`)