[0]mitc - 日記
<前[4] [5]一覧 [6]次>

2011/10/29(土)Mac OS X Lionでemacs-evernote-modeを使う
Emacs】miff
ネット上に色々な情報はあるものの、なぜか導入にやたら苦労したのでメモを残しておきます。
Mac OS XLion 10.7.2
emacs-evernote-mode0.41
emacsHomebrew 23.3.1
emacsCocoa Emacs 23.3.1
gpg1.4.11
ruby1.9.2p290
gdbm1.9.1
Homebrew0.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

4. evernote-mode.elをコピー

cp ./evernote-mode-0_41/evernote-mode.el ~/.emacs.d/site-lisp/evernote-mode.el

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)

[2]コメントを書く
コメント(3件)
■トラックバック(0件)

<前 一覧 次>

[9]ログイン
[*]検索
adiary Version 2.21