X-Git-Url: https://git.cworth.org/git?p=notmuch;a=blobdiff_plain;f=vim%2FREADME;h=c137bacdc0f4f1e3af78cb9617d5fe92f527c53f;hp=02bd3e65ac4d345d4a931c6007f4fbfef866e8f8;hb=HEAD;hpb=682aa2e076665db3bc344deb13033b1d480e6b6f diff --git a/vim/README b/vim/README index 02bd3e65..777c20c0 100644 --- a/vim/README +++ b/vim/README @@ -1,62 +1,62 @@ -This directory contains a vim script that allows reading notmuch mail -through vim. +== notmuch vim ruby == -NOTE: this is a work in progress. Patches welcome. +This is a vim plug-in that provides a fully usable mail client interface, +utilizing the notmuch framework, through it's ruby bindings. -The vim interface makes use of the git-diff.vim syntax file which is -available from - http://github.com/motemen/git-vim/blob/master/syntax/git-diff.vim +== install == +Simply run 'make install'. However, check that you have the dependencies below. -To install: - make install +=== vim +ruby === +Make sure your vim version has ruby support: check for +ruby in 'vim --version' +features. -To run: - vim -c ':NotMuch' +=== ruby bindings === - from vim: - :NotMuch +Check if you are able to run the following command cleanly: + % ruby -e "require 'notmuch'" -Buffer types: - [notmuch-folders] - Folder list, or technically a list of saved searches. +If you don't see any errors, it means it's working and you can go to the next +section. - Keybindings: - - show the selected search - s - enter search criteria - = - refresh display +If it's not, you would need to compile them. Go to the 'bindings/ruby' +directory in the notmuch source tree. - [notmuch-search] - You are presented with the search results when you run :NotMuch. +=== mail gem === - Keybindings: - - show the selected message - a - archive message (remove inbox tag) - f - filter the current search terms - o - toggle search screen order - s - enter search criteria - es - alter search criteria - t - filter the current search terms with tags - q - return to folder display, or undo filter - + - add tag(s) to selected message - - - remove tag(s) from selected message - = - refresh display - ? - reveal the thread ID of what's under cursor - ^] - search using word under cursor +Since libnotmuch library concentrates on things other than handling mail, we +need a library to do that, and for Ruby the best library for that is called +'mail'. The easiest way to install it is with ruby's gem. In most distro's the +package is called 'rubygems'. - [notmuch-show] - This is the display of the message. +Once you have gem, run: - Keybindings: - ^n - next message - ^p - previous message - b - toggle folding of message bodies - c - toggle folding of citations - h - toggle folding of extra header lines - s - toggle folding of signatures - q - return to search display - ? - reveal the message and thread IDs of what's under cursor - ^] - search using word under cursor + % gem install mail +In some systems gems are installed on a per-user basis by default, so make sure +you are running as the same user as the one that installed them. + +This gem is not mandatory, but it's extremely recommended. + +== Running == + +Simple: + + % gvim -c ':NotMuch' + +Enjoy ;) + +== More stuff == + +As an example to configure a key mapping to add the tag 'to-do' and archive, +this is what I use: + +let g:notmuch_custom_search_maps = { + \ 't': 'search_tag("+to-do -inbox")', + \ } + +let g:notmuch_custom_show_maps = { + \ 't': 'show_tag("+to-do -inbox")', + \ }