rcodetoolsをemacsで使う設定するときにはまったのでメモ
Ruby書くとき、emacsでIDEみたいにコード補完できるようにしたくて、調べたらrcodetoolsのrct-completeを使えばいいらしい。しかしうまくいかなくて3時間ぐらいはまりました。結局のところPATHを通せばいいだけだったんだけど。こんなに無駄に時間食う僕のような素人なら最初からnetbeansとか使っといたほうがいいような気がするが、、、IDEか、emacsやvimなどのeditor、どっちを使うべきなんだろうか・・・プログラミングの学習がしたいのにいつも環境の構築ばっかりしていてまったく成長の兆しがない。
ということでemacsでrcodetoolsのrct-completeを使うための手順を自分にわかる程度にまとめておく。
1.まず、
$ sudo gem install rcodetools
で、rcodetoolsをインストール。
2.rcodetools.elをEmacsのload-pathに指定してるディレクトリにコピー
自分の場合はrcodetoolsは"/var/lib/gems/1.8/gems/rcodetools-0.8.5.0"にインストールされたのでそこからrcodetools.elをEmacsのload-pathに指定してるディレクトリにコピーした。
3.必要な実行ファイルのパスを通す(ここではまった。パス通せとか説明に書いてないじゃん・・・当たり前すぎるから?)
自分の場合は"/var/lib/gems/1.8/bin"にパスを通した。
$ export PATH=$PATH:/var/lib/gems/1.8/bin
.profileとかに書いとく。
4. .emacsに設定を書く
;; ;;rcodetools ;; (require 'rcodetools) (setq rct-find-tag-if-available nil) (defun make-ruby-scratch-buffer () (with-current-buffer (get-buffer-create "*ruby scratch*") (ruby-mode) (current-buffer))) (defun ruby-scratch () (interactive) (pop-to-buffer (make-ruby-scratch-buffer))) (defun ruby-mode-hook-rcodetools () (define-key ruby-mode-map "\M-\C-i" 'rct-complete-symbol) (define-key ruby-mode-map "\C-c\C-t" 'ruby-toggle-buffer) (define-key ruby-mode-map "\C-c\C-d" 'xmp) (define-key ruby-mode-map "\C-c\C-f" 'rct-ri)) (add-hook 'ruby-mode-hook 'ruby-mode-hook-rcodetools)
ちなみにこの設定は
http://www.takuto.biz/private/memo/changelog/2008-12-11.html#2008-12-11-2
からのパクり。
これで、rubyのコード書いてるときにAlt+Ctrl+i押すと補完候補が表示されるようになる。
あと、コード中に
1+1 # =>
って書いておいてCtrl+c Ctrl+d 押すと
1+1 # => 2
みたいになってデバッグしやすくなる。
他の機能はまだ使ってないのでよくわかんない。