emacs によるコンパイルの設定
これを使うと Emacs 上でエラー箇所にジャンプできてすごく便利です。
このコンパイル機能に関する設定のあれこれ。
エラー行解析パターンの修正
コンパイルするとコンパイル実行のバッファで色がついたり、エラー箇所にジャンプできたりします。
これはエラー行を解析する正規表現があって、これに当てはまればエラー行として認識されます。
VC++ などを含めた主要なコンパイラの形式には対応しているのですが、たまにコンパイラが日本語で警告やエラーと出してエラー行のマッチングにあわないときがあります。そういった場合でもエラー行の解析パターンを修正すると使えるようになります。
また、その修正を使えるようになれば、コンパイルや grep だけでなく、単体テストのエラー箇所などいろいろな用途にコンパイルの機能が使えます。
(require 'compile)
(setq compilation-error-regexp-alist
(append
'(
;; "foo.c", 34 行目: 警告
("^\"\\(.*\\)\", \\([0-9]+\\) 行目: \\(警告\\)" 1 2 3)
("^\"\\(.*\\)\", \\([0-9]+\\) 行目: " 1 2)
;; 1> test_foo.c:101 :
("^[0-9]+> +\\([^,\" \n\t]+\\):\\([0-9]+\\) *" 1 2)
("^行番号: \\([0-9]+\\), ファイル: \\(.*\\)$" 2 1)
)
compilation-error-regexp-alist))
各リストの意味は次のようなものです。
("パターン" "ファイル名のマッチング番号" "行番号" "err,warnning など"
err,warnning などのマッチング番号は色をかえるためのものなので省略してもかまいません。
先に compile をロードしているのは、ロード前に設定しているとそれが使われてデフォルトのものがロードされないためです。
キーバインディングの設定
M-x compile と毎回入力するのは面倒なので、キーに割り当てます。 VisualStudio っぽく F7 キーに割り当てる場合には以下のように .emacs.el に記述します。
(global-set-key [F7] 'compile)
デフォルトコマンドを変更する
コンパイルを実行した後の最初に出てくるコマンドを変更する場合、 .emacs.el に以下の行を追加します
(setq compile-command "MSBuild.exe")
これは M-x customize-group の後、 compilation と入力して出てくるカスタマイズ用の画面からも設定できます。
- 関連記事
-
- Meadow で UTF-8(BOM 付き)を使う
- emacs によるコンパイルの設定
- Emacs でのコーディングスタイルの設定
- Emacs のバイトコンパイル
- Emacs Customize
Facebook コメント
コメント