2008-11-05 [長年日記]
_ [ruby] refe
rubyのリファレンスをひくrefeをセットアップした。
便利だこれ。ヽ(´▽`)ノ
hidaqa先生に「emacsはヘルプと対話しながら使うんです!」と教えてもらってから、
emacsでヘルプをひきながら調べる楽しさの味をしめています。
これでrubyもヘルプをひけます。
いくつかメモ。
なんか無駄なことやってるとこもあるけど動いたから良し。
--- メモ---
http://www.ruby-lang.org/ja/man/html/ReFe.html
の通りにやればOK。
■windowsの場合は↓でやった
ruby mkrefe_rubyrefm -d /usr/local/share/refe --lang=ja *.rd
(--lang=ja をつけるとエラーになるときがあるな・・・。
あと、mkrefe_rubyrefm がないと言われたらd:/ruby/bin/mkrefe_rubyrefm で。)
■macはコマンドラインで文字化けするので以下の対応
sudo vi /opt/local/lib/ruby/site_ruby/1.8/refe/searcher.rb
---
def adjust_encoding( str )
NKF.nkf('-w', str)
# if shift_jis_platform?
# NKF.nkf('-Es', str)
# else
# str
# end
end
---
■emacs refe.el mac:CarbonEmacs, win:meadow.
私のCarbonEmacsはShiftJISのshellなんでnkf -s してる。
---
(defun refe (kw)
(interactive "sReFe: ")
(with-current-buffer (get-buffer-create (concat "*refe:" kw "*"))
(when (zerop (buffer-size))
(if (eq window-system 'w32) (let (( cmd_str (concat "ruby c:/ruby/bin/refe " kw)))
(shell-command cmd_str t)
(diff-mode)))
(if (eq window-system 'mac) (let (( cmd_str (concat "refe " kw " | nkf -s")))
(shell-command cmd_str t)
(diff-mode)))
)
(setq minibuffer-scroll-window (get-buffer-window (current-buffer) t))
(goto-char (point-min))
(display-buffer (current-buffer))))
---
以下、参考文献。多謝です!