evernoteをvimで編集する(evervim)
debian wheezyにてevernoteをvimでいじるための環境を構築した。そのときのメモ。
必要環境
vimでevernoteを操作するプラグインevervimを利用する。これはgithubに公開されている。markdownでがつがつevernoteを書く用。
https://github.com/kakkyz81/evervim
もちろんvimが必要。 ただし、pythonが内包されてコンパイルされている必要がある
これにちょっと今回苦労したorz
あとは特に問題なく。pluginのインストールはneobundleというナウでヤングなvimmerなら使っているっぽいプラグインマネージャを利用した。
あ、あとmarkdownでかくんで、pythonのmarkdownのプラグインがいる
インストール手順
vimの再コンパイル
vimを起動して:echo has('python')が1を返す場合はこのフェーズは不要。
僕はapt-getでvimを入れてしまっていたので、ソースコードをダウンロードして手元でコンパイル
% sudo apt-get install hgsvn % hg clone https://code.google.com/p/vim/
ちょっと時間がかかる。ダウンロードしたらコンパイルする
% ./configure --with-features=huge --enable-multibyte --enable-rubyinterp --enable-pythoninterp=yes --enable-perlinterp --enable-gpm --enable-cscope --enable-fontset --with-python-config-dir=/usr/lib/python2.7/config
色々とオプションをつけているが、まぁ大事なのは--enable-pythoninterp=yesと--with-python-config-dirだ。 これでpythonを利用できるvimが出来上がる
% make % sudo make install
ほいで/usr/local/bin/vimが入っているので確認。
% /usr/local/bin/vim --version | grep python +cryptv +linebreak -python +viminfo +cscope +lispindent -python3 +vreplace
入ってないorz
まぁ結論をいうと、configure時にpythonのライブラリが入っておらずこけており、pythonを入れるのを諦めてしまっているログが $VIMのSRC/src/auto/config.log
に出ていました。
/usr/bin/ld: cannot find -lpython
みたいなログだったかな。 これはpythonのライブラリが入ってなかったからみたいです。
% sudo apt-get install python2.7-dev libpython2.7
まぁこれに気づくのに2時間くらいかかったのですが。
何か問題が出来たらlogをみる、考える、ぐぐるを習慣づけないとダメですね。
ちゃんともう1度やり直し
% make clean % make distclean % ./configure (ry % make % sudo make install % /usr/local/bin/vim --version | grep python +cryptv +linebreak +python +viminfo +cscope +lispindent -python3 +vreplace Linking: gcc -L/usr/local/lib -Wl,--as-needed -o vim -lSM -lICE -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lnsl -ldl -L/usr/lib/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions
入ってます。
pythonのmarkdownをインストール
pythonのパッケージマネージャをインストールしてそれでインストール。
% sudo apt-get install python-pip % sudo easy_install markdown
終わり
evervimのインストール
neobundleのインストール
インストール用のディレクトリを作ります
% mkdir -p ~/.vim/bundle
.vimrcに設定を追加
filetype plugin indent off if has('vim_starting') set runtimepath+=~/.vim/bundle/neobundle.vim call neobundle#begin(expand('~/.vim/bundle')) NeoBundleFetch 'Shougo/neobundle.vim' call neobundle#end() endif NeoBundleFetch 'Shougo/neobundle.vim' NeoBundle 'Shougo/unite.vim' NeoBundle 'Shougo/neosnippet.vim'
を入れて:NeoBundleInstallです。
特に問題はありませんでした。
これであとは欲しいプラグインは NeoBundle 'githubのアカウント名/プラダクト名'をして、:NeoBundleInstallで インストールできるっぽいです。ナウいですね
evervimインストール
.vimrcに
NeoBundle 'kakkyz81/evervim'
を追記します。
:NeoBundleInstallです。
これでevervim自体は入ります
evervim初期設定
helpをとりこむ
vimで
:helptags ~/.vim/bundle/evervim/doc/
を実行します。
evernoteと接続
evernoteとの接続が必要になりますよね。
evernoteでのログイン用のトークンが必要なので取得します。
https://www.evernote.com/api/DeveloperToken.actionで取得します。 .vimrcに let g:evervim_devtoken='' の中に入力します。
そして:EvervimSetupでsuccessfulとか出たらOKです。
おすすめの設定
.vimrcに以下のショートカットを入れておくとちょっとはかどります
nnoremap <Leader>l :EvervimNotebookList<CR> nnoremap <Leader>s :EvervimSearchByQuery<Space> nnoremap <Leader>c :EvervimCreateNote<CR> nnoremap <Leader>t :EvervimListTags<CR>
ドルマークlでノートのリスト、ドルマークsでノート検索、ドルマークcで新規ノート作成、ドルマークtでタグ一覧です。
使い方
あとは本家やヘルプに載っているので。
所感
markdownでガツガツかけるのがいいです。
evernoteは結構使うので、vimかきつつ頭に思い浮かんがことは\cでさっと起動してタイトルに書いて、tagにinboxをつけてあとでinboxタグを見て整理したりとか。脳内整理にも使えますね。
正直、本家ソフトよりvimを使っている人であればこっちのほうが断然捗ると思います。