Notewarrior is a tool to help you manage your plain-text notes. It has evolved a lot since it started out because I started using vimwiki more and more to actually organize and write my notes. Thus, notewarrior has gotten to a point where it tries to get out of your way and only supplements the actual usage of vimwiki. It does so by providing the following features:
- allows basic add/edit/delete/list/show/open functionality for your notes
- provides pandoc markdown integration for vimwiki by installing a custom
wiki2html_pandoc
binary - automatically tracks your Notes folder with gitwatch
- using git it allows history rollback and undo/redo functionality
- provides the markdown2ctags script to integrate well with tagbar
You can install notewarrior by simply running:
git clone https://gitlab.com/mrossinek/notewarrior.git
cd notewarrior
make install
Please ensure that the following programs are installed:
inotifywait
(commonly provided via inotify-tools) [required bygitwatch
]- pandoc
Integration with tagbar
Add the following to your vim configuration:
" Add support for vimwiki markdown-based files in tagbar
let g:tagbar_type_vimwiki = {
\ 'ctagstype': 'markdown',
\ 'ctagsbin' : '/usr/local/bin/markdown2ctags',
\ 'ctagsargs' : '-f - --sort=no --sro=::',
\ 'kinds' : [
\ 's:sections',
\ ],
\ 'sro' : '::',
\ 'kind2scope' : {
\ 's' : 'section',
\ },
\ 'sort': 0,
\ }
init
: initialize note directorydeinit
: removes all user data (use with care!)list
: list notes (with filters)show
: print noteopen
: open converted note (pdf/html argument)info
: show metadata about note (incl. history)add
: adds a noteedit
: edits a notemove
: moves an existing notedelete
: deletes an existing note (or multiple)undo/redo
: un/redo last change (based on git history)
Configuration files may be placed in ~/.noterc
or ~/.config/notewarrior/config
or specified at runtime via the -c <CONFIG>
command line option.
DIRECTORY
: path to the notes directory (default:~/.notes
)EXTENSION
: file extension for notes (default:md
)ENABLE_GITWATCH
: whether to autostart gitwatch (default:true
) [true
orfalse
]