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

Filed under:
|

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

https://gist.github.com/1289727

© Super User or respective owner

Related posts about vim

Related posts about evernote