mac_Lionにemacs-evernote-modeを導入
Emacs | 23.3.1 |
---|---|
Mac | 10.7.2 |
emacs-evernote-mode | 0.41 |
ruby | 1.9.3p0 |
Homebrew | 0.8.1 |
http://mitc.xrea.jp/diary/0105の導入事例を参考に
emacs-evernote-mode導入したものの
以下のエラーで動作できず調査したのでメモを残します。
error in process sentinel: enclient.rb exited abnormally with code 1 -e:1: syntax error, unexpected tINTEGER, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING_END :1: Use RbConfig instead of obsolete and deprecated Config.
原因から言うと、enclient.rbのソース上の記述が
最新のrubyのバージョンに対応してないことから起きてる問題っぽい。
対応策を探し、本家を確認して見ると以下の2ファイルを
修正しこの問題が対応されてた。
ただ、配布してるevernote-mode-0_xx.zipには
適用されたバージョンがまだでてない。
本家:http://code.google.com/p/emacs-evernote-mode/source/detail?r=198
/trunk/evernote-mode.el
... 1728 1728 (concat 1729 1729 (with-output-to-string 1730 1730 (call-process evernote-ruby-command nil (list standard-output nil) nil 1731 - "-rrbconfig" "-e" "print Config::CONFIG['bindir']")) 1731 + "-rrbconfig" "-e" "print RbConfig::CONFIG['bindir']")) 1732 1732 "/enclient.rb") 1733 1733 "Name of the enclient.rb command") 1734 1734 (defconst enh-command-process-name "Evernote-Client") ...
/trunk/ruby/bin/enclient.rb
... 289 289 #http.verify_mode = OpenSSL::SSL::VERIFY_PEER 290 290 #http.verify_depth = 5 291 291 http.verify_mode = OpenSSL::SSL::VERIFY_NONE 292 - resp, data = http.post(@url.request_uri, @outbuf, @headers) 293 - @inbuf = StringIO.new data 292 + resp = http.post(@url.request_uri, @outbuf, @headers) 293 + @inbuf = StringIO.new resp.body 294 294 @outbuf = "" 295 295 end 296 296 end ...
自分はevernote-mode-0_41.zipをダウンロード後
手動で上記の2ファイルを書き変えて対応しました。