2013年5月1日水曜日

[Ruby][Emacs]smart-compile.elを使う

EmacsでRubyコードを書くときに、何か便利なものはないかなーと
Web検索していたら、smart-compile.elという、M-x compileの代替となる
便利なELispがあった。

何をするもの?

Smart Compile は M-x comileコマンドの代替で、
ファイル名やメジャーモードに応じて、実行するコマンドを切り替えることが可能になる。
実行するコマンドはカスタマイズできる。

インストール

(1) smart-compile.elをダウンロードする。
(2) ~/.emacs.d/els に格納する。
  ※私は単一のelファイルは els ディレクトリに格納している。
(3) ~/.emacs.d/init.el に以下の設定を追加する。

(add-to-list 'load-path "~/.emacs.d/els/")
(require 'smart-compile)
(setq smart-compile-alist
      (append
       '(("\\.rb$" . "ruby %f"))
       smart-compile-alist))
(add-hook 'ruby-mode-hook
      (lambda ()
        (define-key ruby-mode-map (kbd "C-c c") 'smart-compile)
        (define-key ruby-mode-map (kbd "C-c C-c") (kbd "C-c c C-m"))))

デフォルトだと 拡張子rbは ruby -cw %f を実行する設定になっていたので、スクリプトを実行するように変更した。
Emacs における快適な Ruby 開発環境を求めてを参考に、キーカスタマイズした。
  C-c c : スクリプトを実行する。
  C-c C-c : スクリプトに引数を渡す。

実行例


参考


0 件のコメント:

コメントを投稿