学んだことをなぐり書き


キーバインド

デフォルト説明自分の環境
基本操作
C-g操作の取り消し
C-f b n pカーソルの上下左右移動
M-f b単語間の移動
C-a e行の最初か最後に移動
M-a e段落間の移動
Shift+C-< >ファイルの先頭か最後に移動
M-m現在行の空白でない最初の文字に移動
C-l押すごとにカーソルの位置が center > top > bottom に切り替わる
C-d一文字削除
M-d一単語削除
C-k一行削除
M-\周りの空白を削除する
C-y貼り付け
M-n(数字キー)n回次に入力したコマンドを繰り返す
M-g g (行番号)行番号に移動
M-xコマンド入力モード
M-x helpC-h をbackspaceに割り当ててしまったときヘルプを呼ぶとき使う
C-q特殊文字をそのまま出力するときに使う。改行を置換や検索で使うためには C-q C-j をつかう
fgターミナルモードになった場合にemacsに戻る
検索と置換
M-% old RET new RET上から old を new に置換する。SPACEで置換 n でパス
ウィンドウ分割
C-x 1分割ウィンドウをクリア
C-x 2横分割
C-x 3縦分割
C-x o分割ウィンドウ間を移動するC-z
レジスタ
C-x r s r(or アルファベット一文字)レジスタrに選択範囲をコピーする
C-x r i r(or アルファベット一文字)レジスタrからテキストを挿入する
C-x r Space r(or アルファベット一文字)レジスタrにポイント位置を保存する
C-x r j r(or アルファベット一文字)レジスタrに保存した位置に移動する
選択範囲
C-Space(or C-@)選択範囲の開始
C-w選択範囲の切り取り
M-w選択範囲のコピー
C-x h(or C-p)ファイル全体を選択
C-x C-x選択範囲の始めと終わりに交互に移動
C-c C-c選択範囲にコメントに入れる(現在のモードに設定してあれば)なければC-x r t を使う
C-u C-c C-c選択範囲のコメントを外す
M-C-\現在選択範囲に対してインデントを追加する
C-x r k範囲の短形部分(対角線)を切り取る
C-x r y範囲の短形部分(対角線)を貼り付け
C-x r t範囲の短形部分(対角線)に文字列を挿入(カーソルの範囲を先頭に合わせる)
その他の短形選択操作http://tech.kayac.com/archive/emacs-rectangle.html
M-EnterCua Mode で短径選択
SKK
C-x j(or C-j)SKKのOn/Offを切り替える
qかな ←→ カナ
lかな/カナ → 半角英数
Lかな/カナ → 全角英数
C-jすべてのモード → かな
Qかなモード中ならば▽モードを挿入する
xリスト(辞書など)を一つ前に戻す
tab自動補完
.自動補完のリストを一つ先に
,自動補完のリストを一つ前に
undo-tree
C--undo
M--redo
C-x utree バッファを開く
C-f,b,n,pバッファを上下左右に移動
qバッファを閉じる

tips

(global-set-key "\C-x\C-b" 'bs-show)ファイルのみのバッファ一覧になるhttp://d.hatena.ne.jp/end0tknr/20090418/1240050460
(global-set-key "\C-x\C-b" 'buffer-menu)現在のウィンドウでバッファ一覧を表示するhttp://d.hatena.ne.jp/asua/20090112/1231767260
C-u M-x shell複数のシェルを開くhttp://at-aka.blogspot.com/2006/07/emacs-subshell....
M-x multi-termmulti-term を開くhttp://sakito.jp/emacs/emacsshell.html#id37

emacs lisp

  • kbd
xxx is not defined の xxx の部分の文字列を指定するとそのキーにバインドできる
global-set-key (kbd "M-RET") '関数名)
これで Meta + Enter で関数を呼び出せる

OSごとのSKK

OSSKK名SKKへの切りかえ
WindowsSKKIMEC-\
MacAquaSKK⌘-Space

メンバーのみ編集できます