▼ 2011/10/29(土) Mac OS X Lionでemacs-evernote-modeを使う
ネット上に色々な情報はあるものの、なぜか導入にやたら苦労したのでメモを残しておきます。
公式リファレンス
1. 普段使うテキストエディタはEmacsなわけで、
2. Evernoteのエディタはなんだか残念なわけで、
3. EmacsでEvernoteのノートを編集できれば幸せ!
Mac OS X | Lion 10.7.2 |
---|---|
emacs-evernote-mode | 0.41 |
emacs | Homebrew 23.3.1 |
emacs | Cocoa Emacs 23.3.1 |
gpg | 1.4.11 |
ruby | 1.9.2p290 |
gdbm | 1.9.1 |
Homebrew | 0.8 |
1. 普段使うテキストエディタはEmacsなわけで、
2. Evernoteのエディタはなんだか残念なわけで、
3. EmacsでEvernoteのノートを編集できれば幸せ!
■ インストール
1. evernote-modeのダウンロード
wget -O evernote-mode-0_41.zip http://code.google.com/p/emacs-evernote-mode/downloads/detail?name=evernote-mode-0_41.zip
2. rubyとgdbmをインストール
標準のrubyではgdbmを使えないのでbrew install ruby brew install gdbmインストールしたrubyは/usr/local/bin/rubyから参照できる筈。
(実体は/usr/local/Cellar/ruby/*/bin)
もしHomebrewによるrubyのインストール先がここ以外になっているなら以降のパスは実際にインストールされたパスに読み替えて下さい。MacPortsを使っている場合も要領は同じ筈。
3. setup.rbの実行
ダウンロードしてきたevernote-mode-0_41.zipを展開して中に入っているsetup.rbを実行unzip evernote-mode-0_41.zip sudo /usr/local/bin/ruby ./evernote-mode-0_41/ruby/setup.rb
- 自分の環境ではsudoが必要でした
- 標準のrubyでなくgdbmが使える(Homebrewでインストールした)rubyで実行すること
4. evernote-mode.elをコピー
cp ./evernote-mode-0_41/evernote-mode.el ~/.emacs.d/site-lisp/evernote-mode.el
- コピー先は環境にあわせて
- load-pathが通っている前提で進めます
■ Emacsの設定
準備が整ったのでEmacsの設定を変更してevernote-modeを使えるようにします。init.elとか.emacsとか普段使っている設定ファイルを編集。
1. gdbmが使えるrubyへPATHを通す
(dolist (dir (list "/usr/local/bin" )) (when (and (file-exists-p dir) (not (member dir exec-path))) (setenv "PATH" (concat dir ":" (getenv "PATH"))) (setq exec-path (append (list dir) exec-path))))
2. evernote-modeの設定
(require 'evernote-mode) (global-set-key "\C-cec" 'evernote-create-note) (global-set-key "\C-ceo" 'evernote-open-note) (global-set-key "\C-ces" 'evernote-search-notes) (global-set-key "\C-ceS" 'evernote-do-saved-search) (global-set-key "\C-cew" 'evernote-write-note) (global-set-key "\C-cep" 'evernote-post-region) (global-set-key "\C-ceb" 'evernote-browser)requireしてキーバインドを設定するだけ
■ 使ってみる
初回起動時の動きは次のようになりますC-c ec
1. ユーザ名を聞かれる

2. パスワードを聞かれる

3. タグを聞かれる

タグを付けないならそのままEnterでOK
4. ノート名を聞かれる

5. 編集モードを聞かれる

テキスト編集ならTEXTのままENTERでOK。
6. ノートをEmacsで編集できる!

普通にC-x C-sで保存するとアップロードされます
7. Evernoteで確認してみる

同期できました
■ その他
実は、このままではEmacsを起動するたびにユーザ名とパスワードを入力しなくてはなりません。Emacsは常に立ち上げっぱなしだから問題無いと言っても、再起動をすることだってありますよね?毎回入力するのが面倒な場合は、ユーザ名とパスワードを保存するように設定を変更します。emacs設定ファイル
(setq evernote-username "<your evernote user name>") (setq evernote-password-cache t)パスワードは暗号化して保存するため、gpgが必要です。
brew install gpgこれで、次回の利用時(例えばC-c ec時)にパスワードを聞かれた後

こんな感じのことを聞かれるのでOKを選択して
暗号化用パスを指定します

以降、Emacs起動後の初回利用時にパスワードを聞かれるので、指定しておいた暗号化用パスを入力することでEvernoteのユーザ名とパスワードを入力することなく利用できることになります。
結局パスワードを入力する必要があるので便利になったか微妙ですが、普通、Evernoteのパスワードは長くて強固な文字列にしていると思うので、それよりは多少短くて覚えやすいパスを設定しておけばいい、ということかな。
ちなみに、パスワードの保存先は
~/.evernote-mode/password.gpgなので、パスフレーズがわからなくなった場合なんかはこのファイルを消してやればいいと思います。
■ 参考にしたサイト
■ 最後に
基本的な設定を施したら、公式の最新版のマニュアルを読むのがいいと思います。XHTMLモードの編集とか、anythingとの連携とか色々書いてありますので。
今回使ったemacsの設定ファイル
(dolist (dir (list "/usr/local/bin" )) (when (and (file-exists-p dir) (not (member dir exec-path))) (setenv "PATH" (concat dir ":" (getenv "PATH"))) (setq exec-path (append (list dir) exec-path)))) (require 'evernote-mode) ;-- ユーザ名とパスワードの保存 (setq evernote-username "<your user name>") (setq evernote-password-cache t) (global-set-key "\C-cec" 'evernote-create-note) (global-set-key "\C-ceo" 'evernote-open-note) (global-set-key "\C-ces" 'evernote-search-notes) (global-set-key "\C-ceS" 'evernote-do-saved-search) (global-set-key "\C-cew" 'evernote-write-note) (global-set-key "\C-cep" 'evernote-post-region) (global-set-key "\C-ceb" 'evernote-browser)
- TB-URL http://mitc.s279.xrea.com/diary/0105/tb/
1: togo URL 2012年01月02日(月) 午後8時36分
emacs-evernote-mode設定のため、記事参考にさせていただきました!ありがとうございます。
2: miff 2012年01月29日(日) 午後2時26分
良かったです
3: fujimisakari 2012年02月13日(月) 午後6時12分
参考にさせてもらいました。ありがとうございます。
自分の環境では、エラーが出てたので
調べてをアップしましたのでお知らせします。
http://d.hatena.ne.jp/fujimisakari/20120213/1329119250