ぽちが普段ものを書くのに使うエディタは Emacs なのですけども、各種設定ファイルを書く時だけは vi の流れを汲む vim を簡易機能版にビルドした、vim-tiny を使っています。ここには Emacs や vi を使う為の簡単な覚え書きを置いておきます。
| コマンド | 説明 |
|---|---|
| C-f | 一文字次へ進む。(forward) |
| C-b | 一文字前へ戻る。(backward) |
| M-f | 一単語次へ進む。(forward) |
| M-b | 一単語前へ戻る。(backward) |
| C-a | 行頭へ移動する。 |
| C-e | 行末へ移動する。(end) |
| M-a | 文頭へ移動する。 |
| M-e | 文末へ移動する。(end) |
| C-n | 次の行へ移動する。(next) |
| C-p | 前の行へ移動する。(previous) |
| C-v | 次の画面へ進む。(vertical) |
| M-v | 前の画面へ戻る。(vertical) |
| M-< | バッファの先頭へ移動する。 |
| M-> | バッファの末尾へ移動する。 |
| C-l | カーソルのある行を中心にして画面を書き直す。 |
| コマンド | 説明 |
|---|---|
| C-x C-f | バッファへファイルを開く。(find) |
| C-x C-v | バッファのファイルを再読み込みする。 |
| C-x C-s | バッファをファイルへ保存する。(save) |
| C-x C-w | バッファを別のファイル名で保存する。(write) |
| C-x i | バッファへ別のファイルの中身を挿入する。(insert) |
| コマンド | 説明 |
|---|---|
| C-x C-b | バッファのリストを表示する。(buffer) |
| C-x b | バッファを切り替える。(buffer) |
| C-x k | バッファを閉じる。(kill buffer) |
| コマンド | 説明 |
|---|---|
| C-x 1 | ウィンドウを一つにする。 |
| C-x 2 | ウィンドウを上下に分割する。 |
| C-x 3 | ウィンドウを左右に分割する。 |
| C-x o | 他のウィンドウにカーソルを移動する。(other) |
| C-M-v | あるウィンドウにカーソルを置いたまま、他のウィンドウを一画面づつ読み進める。(vertical) |
| コマンド | 説明 |
|---|---|
| C-x u | 操作を取り消す。(undo) |
| C-@ | 範囲指定を開始する。(atmark) |
| C-w | 範囲指定位置からカーソルの直前までをカットする。 |
| M-w | 範囲指定位置からカーソルの直前までをコピーする。 |
| C-k | カーソルから行末までをカットする。(kill) |
| C-y | カットまたはコピーしたエントリを再入する。(yank) |
| M-y | カットまたはコピーした一つ前のエントリを再入する。(yank) |
| コマンド | 説明 |
|---|---|
| C-s | 正順でインクリメンタル検索する。(search) 日本語不可。 |
| C-r | 逆順でインクリメンタル検索する。(reverse) 日本語不可。 |
| C-s RET 検索文字列 RET | 正順で検索する。(search) 続けて C-s や C-r で検索可能。日本語可。 |
| C-r RET 検索文字列 RET | 逆順で検索する。(reverse) 続けて C-s や C-r で検索可能。日本語可。 |
| C-M-s 正規表現 RET | 正規表現を使って正順で検索する。(search) |
| C-M-r 正規表現 RET | 正規表現を使って逆順で検索する。(reverse) |
| M-p | 一つ前の検索文字列を呼び出す。(previous) |
| M-n | 一つ後の検索文字列を呼び出す。(next) |
| C-g | 検索を中止して戻る。 |
| コマンド | 説明 |
|---|---|
| M-% 検索文字列 RET 置換文字列 RET | 検索文字列を置換文字列に置き換える。日本語可。 |
| C-M-% 正規表現 RET 置換文字列 RET | 正規表現にマッチする文字列を置換文字列に置き換える。日本語可。 |
| コマンド | 説明 |
|---|---|
| C-x C-c | Emacs を終了する |
| C-g | フリーズ時に強制的に Emacs を終了する |
バッファの文字コードを Shift_JIS に、改行コードを CR+LF に変更する例:
C-x RET f japanese-shift-jis-dos RET
| コーディングシステム | 文字コード | 改行コード | 使われる場所 |
|---|---|---|---|
| utf-8-unix | UTF-8 | LF | 最近の UNIX/Linux |
| japanese-shift-jis-dos または sjis-dos | Shift_JIS | CR+LF | Windows |
| iso-2022-jp-dos または junet-dos | ISO-2022-JP | CR+LF | 電子メールや IRC |
| japanese-iso-8bit-unix または euc-jp-unix | EUC-JP | LF | 古い UNIX/Linux |
| utf-8-hfs-unix | UTF-8-HFS | LF | Mac OS X |
| japanese-shift-jis-mac または sjis-mac | Shift_JIS | CR | Mac OS 9以前の Mac |
shell-mode をそのまま使うと特殊文字が文字化けするので、それを回避する為に下の設定を .emacs に追記する。
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
動作確認環境 : Emacs 23.4 on Debian GNU/Linux 7.0 wheezy
| コマンド | 説明 |
|---|---|
| a | 編集モードへ移り、カーソル位置の後ろに挿入する。(add) |
| i | 編集モードへ移り、カーソル位置に挿入する。(insert) |
| O | 編集モードへ移り、カーソル行の前行を新しく作ってそこへ挿入する。 |
| o | 編集モードへ移り、カーソル行の次行を新しく作ってそこへ挿入する。 |
| esc | コマンドモードへ移る。 |
| コマンド | 説明 |
|---|---|
| h | 左へ移動する。 |
| j | 下へ移動する。 |
| k | 上へ移動する。 |
| l | 右へ移動する。 |
| 0 | 行頭へ移動する。 |
| $ | 行末へ移動する。 |
| 1G | 文頭へ移動する。 |
| G | 文末へ移動する。 |
| ctrl+f | 次の画面へ進む。 |
| ctrl+b | 前の画面へ戻る。 |
| コマンド | 説明 |
|---|---|
| x | カーソル位置の文字を1文字カットする。 |
| dd | カーソル行を1行カットする。 |
| d$ | カーソル位置から行末までをカットする。 |
| yy | カーソル行を1行コピーする。 |
| p | ペーストする。 |
| コマンド | 説明 |
|---|---|
| :q | 終了する。内容が変更されている場合は警告を出す。 |
| :q! | セーブせずに強制終了する。 |
| :w | セーブする。 |
| :wq | セーブして終了する。 |
| ZZ | セーブして終了する。 |
動作確認環境 : vim-tiny 7.3 on Debian GNU/Linux 7.0 wheezy