EmacsでC言語を書く時のショートカットとモード集


M - ; コメントを挿入
M C - p 対応する開き括弧へジャンプ (関数の先頭や末尾また関数と関数の間で使うと、関数の開始部と終了部を順に上に飛んで行ける)
M C - n 対応する閉じ確固へジャンプ (・・・下に・・・・)
#関数名の部分を順にジャンプしていくのにもっと適当なショートカットがありそう。。
M - a ステートメントの先頭へ移動
M - e ステートメントの末尾へ移動
M - . CTAGSで関数にジャンプ
M - + CTAGSでジャンプしてた時に元の場所に戻る
C - c i リージョンをコメントアウト(自分で設定した)
C - c o リージョンのコメントアウトを解除(自分で設定した)
% 対応する括弧へジャンプ(自分で設定した)
C-x C-l 関数名の一覧を別バッファに表示する by summarye.el

M - t GTAGSで関数検索(自分で設定した)
M - r GTAGSで逆関数検索, つまり呼び出し元を探す(自分で設定した)
M - s GTAGSでシンボルを検索。変数とかを探せるのだと思う(自分で設定した)
C - t GTAGSの処理を一つ戻る(自分で設定した)
M - Tab CTAGSで関数名の補完

C - h S Cの関数リファレンスを参照
C - u M - Tab Cの標準関数などを補完

show-paren-mode 対応する括弧をハイライトしてくれるモード
which-function-mode Emacsのステータス部分に現在いる関数の名前が表示されるモード
ediff 2つのファイルの差分をビジュアルに表示する

C - x l navi.el(http://www.ne.jp/asahi/love/suna/pub/soft/navi.el/index.html)で関数定義を新しいバッファに開く
C - o 関数定義のバッファで関数名の上で押すと、コードが表示されているバッファの位置が対象の関数の先頭になる

事前準備

  • GTAGSを使う

GNU Globalを入れておいて,コードを編集するたびにコードツリーのトップでgtagsコマンドを叩くようにする. Makefileとかに忍ばせておくとよさげ.
Emacsにタグテーブルを読み込ませるコマンドはgtags-visit-rootdir


他にも便利なのあったら教えて下さい!!

おまけ


C - j リターンに相当