Emacsの基本的な操作

Emacsの起動とチュートリアル

emacsを起動してみます。

$ emacs

最初は以下のような画面になっていると思います。

Welcome to GNU Emacs, a part of the GNU operating system.
...

Important Help menu items:
Emacs Tutorial               Learn basic Emacs keystroke commands
Read the Emacs Manual        View the Emacs manual using Info
...

Emacs Tutorial にカーソルを合わせてEnterを押すと、チュートリアルが始まります。 1000行程度のテキストになっており、じっくりと、実際に操作しながら学びたい人はこれを読むといいでしょう。 Emacsキーバインド、バッファ、ミニバッファ、Metaキーなどについて分からない場合はここから読んでほしいです。

これから説明するのは、Emacsの基本的なキーバインドのうち、よく使いそうなものです。

超基本的な操作

流石にこれを知らないとまずいですが、一応書いておきます。 困った時に役に立つキーも書いておきます。

キーバインド 説明
C-x C-f ファイルを開く
C-x C-s ファイルを保存
C-x k 今開いているバッファだけを閉じる
C-x C-c Emacsを終了する
C-g コマンド入力を強制終了する
C-x <左右> C-x入力後、矢印キーの左右で開いているファイルを入れ替えられます。
  • C-g は、「キー操作が効かなくなった!」という時には連打すればだいたい抜け出せます。
  • C-h はヘルプのコマンドです。 C-h C-h はヘルプコマンドのヘルプです。
  • M-x を入力したあと文字列を入力すると、それに対応した関数を呼ぶことができます。
  • M-x describe-key コマンドを入力してから、キーバインドを入力すると、そのキーバインドの説明が見られます。 - 例: M-x describe-key C-w
M-x describe-key C-w

C-w runs the command kill-region, ...
...

(個人的に)よく使うキーバインド

キーバインド 説明
C-a 行の先頭にカーソルを移動する
C-e 行末にカーソルを移動する
C-x 3 バッファを横に2分割する。C-x 2 だと縦に2分割する
C-x o バッファを分割した時、バッファ間でカーソルを移動
C-x 1 今カーソルがあるバッファを全画面にし、バッファ分割を解除
C-x 0 今カーソルがあるバッファを非表示にする

キルリング(クリップボード)

Emacsには、クリップボードのようなものとして「キルリング」と呼ばれるものがあります。

キーバインド 説明
C-y キルリングの内容をバッファに貼り付ける(ペースト)
C−k カーソルから行末までの内容を削除してキルリングに移す
C-@ 範囲選択のスタート地点を設定する
C-w 選択した範囲を削除して、内容をキルリングに移す(カット)
M-w 選択した範囲を削除せず、内容をキルリングに移す(コピー)

Emacsでコピー&ペーストをする時は、

  1. コピーしたい範囲の開始地点で C-@ を押す
  2. 範囲の終了地点までカーソルを移動させ、 C-w を押す
  3. コピー先で C-y を押す

といった流れになります。

ちなみに、 C-@ を押した後に範囲選択を中止したい場合は C-g です。

間違ってC-zした場合

Undoしようと思って C-z を押してしまい、突然Emacsが終了してしまった! ということが最初はよくあります。

これは終了したわけではありません。 C-zsuspend-emacs というコマンドです。 suspend なので、jobがバックグラウンドに移っただけです。 落ち着いて、ターミナルで

$ fg

と押せばEmacsが戻ってきます。

EmacsのUndoコマンドは C-x u です。