Emacsは統合開発環境とまで呼ばれるほど高機能なエディタです。最大の特徴は機能が拡張可能なemacs lisp (注:本家のlisp言語をemacs用に簡易化したもの)を利用することで機能をほぼ無限大に拡張できることが挙げられます。20年以上も前からあるエディタが今日まで残って使われて続けられているのはおそらくこの機能のおかげでしょう。このように、今日ではUNIXなどでは最もよく使われているテキストエディタの一つとなったため、UNIXで開発を行う上で必要不可欠なツールであると言っても過言ではありません。
操作 |
キー |
コマンド |
Emacsの起動 |
emacs |
|
特定のファイルの編集 |
emacs filename |
|
Emacsの終了 |
C-x C-c |
save-buffers-kill-emacs |
Emacsの一時停止 |
C-z |
suspend-emacs |
では、起動してみましょう。emacsと打ち込んでみてください。後
$ emacsこれでemacsが起動され、起動画面が表示されます。
ファイルを開く |
C-x C-f |
find-file |
リードオンリーでファイルを開く |
C-x C-r |
find-file-read-only |
別のファイルを開く |
C-x C-v |
find-alternate-file |
カーソルの位置にファイルを挿入する |
C-x i |
insert-file |
ファイルを保存する |
C-x C-s |
save-buffer |
別の名前でファイルを保存する |
C-x C-w |
write-file |
では、次に新しいファイルを作成しましょう。"Ctrl + f"を押してみてください。emacsの下の方に"Find File: ~/"と出るはずです。ここで新しく作りたいファイル名を打ち込んで入力すれば、新しいファイルの入力が始められます。
新しいバッファを作る |
C-x b buffername |
switch-to-buffer |
既存のバッファに移動 |
C-x b buffername |
switch-to-buffer |
バッファのリストを表示 |
C-x C-b |
list-buffers |
別のウインドウでバッファを選択する |
C-x 4 buffername |
switch-to-buffer-other-window |
別のフレームでバッファを選択する |
C-x 5 buffername |
switch-to-buffer-other-frame |
バッファの読み出し専用状態の切り替え |
C-x C-q |
vc-toggle-read-only |
バッファを消去する |
C-x k buffername |
kill-buffer |
1文字順方向に移動 |
C-f |
forward-char |
1文字逆方向に移動 |
C-b |
backward-char |
1文字上に移動 |
C-p |
previous-line |
1文字下に移動 |
C-n |
next-line |
1単語順方向に移動 |
ESC f |
forward-word |
1単語逆方向に移動 |
ESC b |
backward-word |
行の先頭に移動 |
C-a |
beginning-of-line |
行の最後に移動 |
C-e |
end-of-line |
1画面分順方向に移動 |
C-v |
scroll-up |
1画面文逆方向に移動 |
ESC v |
scroll-down |
ファイルの先頭に移動 |
ESC < |
beginning-of-buffer |
ファイルの末尾に移動 |
ESC > |
end-of-buffer |
1文字削除 |
C-d |
delete-char |
1文字前に削除 |
DEL |
delete-backward-char |
1単語削除 |
ESC d |
kill-word |
1単語前を削除 |
ESC DEL |
backward-kill-word |
行を削除 |
C-k |
kill-line |
マークをセットする |
C-@またはC-SPACE |
set-mark-command |
マークされたテキストを削除 |
C-w |
kill-region |
マークされたリージョンをコピー |
ESC-wまたはC-Insert |
kill-ring-save |
マークされたリージョンをペースト |
C-y |
yank |
前に削除したものをペースト |
ESC y |
yank-pop |
ポイントとマークの位置を交換 |
C-x C-x |
exchange-point-and-mark |
前に削除したものをペースト |
ESC y |
yank-pop |
順方向へインクリメンタルサーチ |
C-s |
isearch-forward |
逆方向へインクリメンタルサーチ |
C-r |
isearch-backward |
順方向へノンインクリメンタルサーチ |
C-s Return |
search-forward |
逆方向へノンインクリメンタルサーチ |
C-r Return |
search-backward |
対話的置換 |
M-% |
query-replace |
対話的置換(正規表現) |
C-M-% |
query-replace-regexp |
一括置換 |
|
M-x replace-string |
一括置換(正規表現) |
|
M-x replace-regexp |
一致するものを一覧表示 |
|
M-x occur |
一致するものの個数を表示 |
|
M-x count-matches |
一致するものを含む行を削除 |
|
M-x flush-lines |
一致するものを含まない行を削除 |
|
M-x kepp-lines |