diff options
author | Bart Trojanowski <bart@jukie.net> | 2009-11-26 23:04:53 -0500 |
---|---|---|
committer | Bart Trojanowski <bart@jukie.net> | 2009-11-26 23:07:07 -0500 |
commit | 8bafbac75c53631d0db351e20fb5f5bb0fcfb48e (patch) | |
tree | bc166d979a22eeb3eee2e9b857528e923766c530 | |
parent | 805633beccd51752ee458424a342601318d5ceae (diff) |
vim: add a helpful header to notmuch-compose mode
-rw-r--r-- | vim/plugin/notmuch.vim | 20 | ||||
-rw-r--r-- | vim/syntax/notmuch-compose.vim | 7 |
2 files changed, 20 insertions, 7 deletions
diff --git a/vim/plugin/notmuch.vim b/vim/plugin/notmuch.vim index d3e31353..341f3370 100644 --- a/vim/plugin/notmuch.vim +++ b/vim/plugin/notmuch.vim @@ -53,6 +53,7 @@ let s:notmuch_defaults = { \ \ 'g:notmuch_show_citation_regexp': '^\s*>' , \ + \ 'g:notmuch_compose_header_help': 1 , \ 'g:notmuch_compose_temp_file_dir': '~/.notmuch/compose/' , \ } @@ -161,6 +162,7 @@ let g:notmuch_show_maps = { " --- --- bindings for compose screen {{{2 let g:notmuch_compose_nmaps = { \ ',s': ':call <SID>NM_compose_send()<CR>', + \ ',a': ':call <SID>NM_compose_attach()<CR>', \ ',q': ':call <SID>NM_kill_this_buffer()<CR>', \ '<Tab>': ':call <SID>NM_compose_next_entry_area()<CR>', \ } @@ -875,7 +877,13 @@ endfunction " --- implement compose screen {{{1 function! s:NM_cmd_compose(words, body_lines) - let lines = [] + let lines = !g:notmuch_compose_header_help ? [] : [ + \ 'Notmuch-Help: Type in your message here; to help you use these bindings:', + \ 'Notmuch-Help: ,a - attach a file', + \ 'Notmuch-Help: ,s - send the message (Notmuch-Help lines will be removed)', + \ 'Notmuch-Help: ,q - abort the message', + \ 'Notmuch-Help: <Tab> - skip through header lines', + \ ] let start_on_line = 0 let hdrs = { } @@ -931,22 +939,22 @@ function! s:NM_cmd_compose(words, body_lines) \ 'compose', lines) setlocal bufhidden=hide - call <SID>NM_cmd_compose_mksyntax() call <SID>NM_set_map('n', g:notmuch_compose_nmaps) call <SID>NM_set_map('i', g:notmuch_compose_imaps) - exec printf('norm %dG', start_on_line) + call cursor(start_on_line, strlen(start_on_line) + 1) startinsert! echo 'Type your message, use <TAB> to jump to next header and then body.' endfunction -function! s:NM_cmd_compose_mksyntax() - silent! setlocal syntax=mail -endfunction function! s:NM_compose_send() echo 'not implemented' endfunction +function! s:NM_compose_attach() + echo 'not implemented' +endfunction + function! s:NM_compose_next_entry_area() let lnum = line('.') let hdr_end = <SID>NM_compose_find_line_match(1,'^$',1) diff --git a/vim/syntax/notmuch-compose.vim b/vim/syntax/notmuch-compose.vim index fe4efd4b..19adb756 100644 --- a/vim/syntax/notmuch-compose.vim +++ b/vim/syntax/notmuch-compose.vim @@ -1,2 +1,7 @@ -silent! setlocal syntax=mail +runtime! syntax/mail.vim +syntax region nmComposeHelp contains=nmComposeHelpLine start='^Notmuch-Help:\%1l' end='^\(Notmuch-Help:\)\@!' +syntax match nmComposeHelpLine /Notmuch-Help:/ contained + +highlight link nmComposeHelp Include +highlight link nmComposeHelpLine Error |