Mac 「Emacs」エディタ系ショートカットを10個だけ覚えよう!

Mac

edf

皆さんは、「エディタ」を使われていますか?
プログラミングしたり物書きをされる方は、何かしら使われている方が多いですよね。

そこでですが、「Emacs」というエディタはご存知でしょうか。 「vi(vim)」と並び、LinuxなどのUNIX系OSで歴史の古いカスタマイズ性の高い代表的なテキストエディタです。
どちらも拡張性の奥の深さに、特にプログラマーにとっては魅力的なエディタです。
Macもターミナルで使える「vi」は標準で入っていますし、「Emacs」もインストール可能ですので、プログラミングされる方は好んで利用されている方も多いでしょう。
筆者はどちらのエディタも大学時代に使っていたこともありますが、Linuxの設定変更などで必要なときに「無難に使える」程度で、EmacsがインストールされていればEmacs、viしか入っていない場合はviを使うといった感じです。
ただ、Macで文章を書くときなど、わざわざMac版のEmacsをインストールしてまで使うほどの信者ではありません。

ところが、Emacsを使う上で自然と覚えるショートカット(キーバインド)は、UnixがベースになっているMacにおいて、ターミナルや様々なエディタで使えるシーンが多く、ぜひ覚えておいていただければと思い、このテーマを取り上げることにしました。

オススメする理由は、「手をホームポジションから離さず効率よくキー入力ができる」からです。

たくさんあるEmacsのキーバインドのうち、「control」と1つの(アルファベットの)キーという組み合わせの、さらにこれだけは、という10個をご紹介しますので、プログラミングや物書きをされる方は、ぜひ覚えちゃってください。

カーソルの移動系

以下の6つをマスターするだけで、確実に矢印キーに右手を移動させる機会が減り、ホームポジションが崩れるシーンが減ります。
具体的には、矢印キーの上下左右と、行頭への移動(command+左矢印)、行末への移動への移動(command+右矢印)の代わりとなる機能です。
ショートカットに割り当てられたられたアルファベットにも意味がありますので、一緒に覚えると迷いが少ないかもしれません。
キー意味動作
control + fforward-charカーソルを1つ右(後)へ移動
control + bbackward-charカーソルを1つ左(前)へ移動
control + nnext-lineカーソルを1つ下へ移動
control + pprevious-lineカーソルを1つ上へ移動
control + abegining-of-lineカーソルを行の先頭へ移動
control + eend-of-lineカーソルを行の末尾へ移動

編集系

文字の削除deleteとbackspace、行の削除、削除した行の貼付けの4つです。
「削除した行の貼り付け」は少し特殊でMacのクリップボードにコピーされたものの貼り付けとは異なるので、使えないケースもありますが、control+kをして、別のところにカーソルを移動してcontrol+y、という流れはよく使いますので、一緒に覚えて使える場所ではぜひご活用ください。
キー意味動作
control + ddelete-charカーソルのある文字を削除
control + hdelete-backward-charカーソルの1つ前の文字を削除
control + kkill-lineカーソルのある文字
control + yyank 貼り付け(control+kしたものをペースト)

まとめ

「control+a」の反対は「control+e」、という風に対で覚えてそれだけはまず使うようにしていくと覚えやすいです。
使いこなせるようになると「control」キーを使いまくりますので、USキーボードを使っている方は「A」の横にある「caps」キーと「control」キーの位置の設定を入れ替える方も多いですね。
矢印キーに手を動かす機会はとても多いですが、その都度ホームポジションが崩れるので、以外にそれだけ無駄やストレスが生じています。
ぜひこのショートカットを覚えて、ちょっとでも効率よくいい感じで文字を入力してください。