ぽちが普段ものを書くのに使うエディタは 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