入門GNU Emacs(9章)
compileとgrep
キーバインド | 意味 |
---|---|
M-x compile | コンパイルを実行する |
M-x grep | ソースをgrepする |
M-x grep-find | 起点のディレクトリ以下のソースをgrepする |
C-x ` | 次のエラー or 検索結果に移動し、対応するソースを開き、該当行へ移動 |
M-n | 次のエラー or 検索結果に移動する |
M-p | 前のエラー or 検索結果に移動する |
C-c C-c | 現在のエラー or 検索結果に対応するソースを開き、該当行へ移動 |
M-x compile
コンパイル実行コマンドの入力を求められる。何も入力しないと、make -k が実行される。
デフォルトのコマンドを変更したい場合は、
.emacs にて compile-command を設定する。
設定仕方は
(setq compile-command "コマンド")
M-n/M-p/C-c C-c
コンパイルおよび検索結果表示バッファに移動しないと使えない
C-c C-c の変わりに Enterを使えるので、あんまり使うことはないかなぁ
言語モード
pythonの言語モードには2種類あって、標準で使えるpython.elってやつはあまり評判が良くないらしい
python-mode.elってのが評判が良いらしい。
python-mode.elをダウンロードしてきて、ロードパスに配置して以下を.emacsに記述すると有効になる
(setq auto-mode-alist (cons '("\\.py$" . python-mode) auto-mode-alist)) (autoload 'python-mode "python-mode" "Python editing mode." t)
また、コメント/インデントに関するキーバインドもあって、
キーバインド | 意味 |
---|---|
M-; | コメントを挿入する |
M-j | コメントを次の行へ伸ばす |
M-x comment-region | 選択した範囲をコメントアウト |
C-j*1 | 改行後にインデントする |
C-M-\ | 選択した範囲をインデントする |
C-x h C-M-\ | ファイル全体をインデントする |
etags
ディレクトリ中の書くファイルの関数名のリストとファイル内のどこで関数が定義されているかのテーブルを使って関数を検索できるようにする。
このテーブルを作るのがetagsコマンド。
pythonモジュールのテーブルを作るには、
find . -name "*.py" -print | etags -a -
テーブルを作った後は、emacs にテーブルを理解させる
M-x visit-tags-table Enter
一端テーブルを作った後は、以下のキーバインドで検索できる
キーバインド | 意味 |
---|---|
M-. | 関数名をテーブルから検索し、該当する先頭ファイルに移る |
M-, | 一端検索したあと、別のファイルに移って検索する |
関数名以外を検索することも可能で、
キーバインド | 意味 |
---|---|
M-x tags-search Enter | 文字列をテーブルから検索し、該当する先頭ファイルに移る |
参考サイト
PythonMode@紹介マニアMoinMoin
PythonProgrammingInEmacs@EmacsWiki
- 作者: Debra Cameron,James Elliott,Marc Loy,Eric Raymond,Bill Rosenblatt,宮下尚,半田剣一,新井貴之,鈴木和也
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2007/03/12
- メディア: 大型本
- 購入: 14人 クリック: 331回
- この商品を含むブログ (117件) を見る