Evernote from vim
Posted
by
juanpablo
on Super User
See other posts from Super User
or by juanpablo
Published on 2011-10-01T18:03:10Z
Indexed on
2012/04/12
23:34 UTC
Read the original article
Hit count: 307
I search a way to edit evernote notes from vim
I begin with this
#!/bin/bash
evernoteDir="$HOME/Library/Application*Support/Evernote/data"
dataDir=$(ls -trlh $evernoteDir| tail -n 1| awk '{print $NF}')
contentDir="$evernoteDir/$dataDir/content"
file=$(ls -trlh $contentDir | tail -n 1| awk '{print $NF}')
vim -c 's/div>/div>\r/g' $contentDir/$file/content.html
https://gist.github.com/1256416
or maybe create a vim plugin for this ...
you have any suggestion?
EDIT:
for a more simple edition of the evernote note in html format, I make this vim function
" Markup function {{{
fun! MkdToHtml() "{{{
" markdown to html
silent! execute '%s/ $/<br\/>/g'
silent! execute '%s/\*\*\(.*\)\*\*/<b>\1<\/b>/g'
silent! execute '%s/\t*###\(.*\)/<H3>\1<\/H3>/g'
endf "}}}
command! -complete=command MkdToHtml call MkdToHtml()
nn <silent> <leader>mm :MkdToHtml<CR>
" }}}
and a vim function for open the last note edited
fun! LastEvernote() "{{{
" a better solution is with evernote api
let evernoteDir=expand("$HOME")."/Library/Application*Support/Evernote/data"
let dataDir=system("ls -trlh ".evernoteDir."| tail -n 1| awk '{print $NF}'")
let contentDir=evernoteDir."/".dataDir."/content"
let contentDir=substitute(contentDir,"\n","",'g')
let note=system("ls -trlh ".contentDir." | tail -n 1| awk '{print $NF}'")
let note=substitute(note,"\n","",'g')
sil! exec 'sp '.contentDir.'/'.note.'/content.html'
sil! exec '1s/>/>\r/g'
sil! exec '%s/<br.*\/>/<br\/>\r/g'
sil! exec '%s/<\//\r<\//g'
sil! exec 'g/^\s*$/d'
normal gg
sil! exec '1,4fo'
sil! exec '$-1,$fo'
endf
© Super User or respective owner