lib/vmail.vim in vmail-1.4.7 vs lib/vmail.vim in vmail-1.4.8

- old
+ new

@@ -287,41 +287,33 @@ func! s:delete_messages(flag) range let uid_set = s:collect_uids(a:firstline, a:lastline) let nummsgs = len(uid_set) let command = s:flag_command . join(uid_set, ',') . " +FLAGS " . a:flag if nummsgs == 1 - echom "deleting message" + echom "Deleting message" else - echom "deleting " . nummsgs . " messages" + echom "Deleting " . nummsgs . " messages" endif let res = system(command) setlocal modifiable - exec a:firstline . "," . a:lastline . "delete" + exec "silent " . a:firstline . "," . a:lastline . "delete" setlocal nomodifiable write - " if more than 2 lines change, vim forces us to look at a message. - " dismiss it. - if nummsgs > 2 - " call feedkeys("\<cr>") - endif redraw echo nummsgs . " message" . (nummsgs == 1 ? '' : 's') . " marked " . a:flag endfunc func! s:archive_messages() range let uid_set = s:collect_uids(a:firstline, a:lastline) let nummsgs = len(uid_set) let command = s:move_to_command . join(uid_set, ',') . ' ' . "all" - echo "archiving message" . (nummsgs == 1 ? '' : 's') + echo "Archiving message" . (nummsgs == 1 ? '' : 's') let res = system(command) setlocal modifiable - exec a:firstline . "," . a:lastline . "delete" + exec "silent " . a:firstline . "," . a:lastline . "delete" setlocal nomodifiable write - if nummsgs > 2 - call feedkeys("\<cr>") - endif redraw echo nummsgs . " message" . (nummsgs == 1 ? '' : 's') . " archived" endfunc " -------------------------------------------------------------------------------- @@ -383,17 +375,14 @@ redraw echo "moving uids ". s:uid_set . " to mailbox " . mailbox let res = system(command) setlocal modifiable if !s:copy_to_mailbox - exec s:firstline . "," . s:lastline . "delete" + exec "silent " . s:firstline . "," . s:lastline . "delete" end setlocal nomodifiable write - if s:nummsgs > 2 - call feedkeys("\<cr>") - endif redraw echo s:nummsgs . " message" . (s:nummsgs == 1 ? '' : 's') . ' ' . (s:copy_to_mailbox ? 'copied' : 'moved') . ' to ' . mailbox endfunction function! CompleteMoveMailbox(findstart, base) @@ -495,11 +484,11 @@ call s:focus_list_window() setlocal modifiable let command = s:search_command . shellescape("100 all") echo "loading messages..." let res = system(command) - 1,$delete + silent 1,$delete silent! put! =res execute "normal Gdd\<c-y>" normal G setlocal nomodifiable write @@ -627,23 +616,25 @@ let matches = system("grep -i " . regex . " " . $VMAIL_CONTACTS_FILE) return split(matches, "\n") endif endfun -function! s:cancel_compose() +func! s:close_and_focus_list_window() call s:focus_list_window() wincmd p close! normal z. -endfunction +endfunc + function! s:send_message() let mail = join(getline(1,'$'), "\n") echo "sending message" call system(s:deliver_command, mail) redraw - echo "sent! press ,q to go back to message list" + call s:close_and_focus_list_window() + echom "Message sent!" redraw endfunction " -------------------------------------------------------------------------------- @@ -769,11 +760,11 @@ nnoremap <silent> <buffer> q :call <SID>close_message_window()<cr> nmap <silent> <buffer> <leader>q q nnoremap <silent> <buffer> <leader># :close<cr>:call <SID>focus_list_window()<cr>:call <SID>delete_messages("Deleted")<cr> nnoremap <silent> <buffer> <leader>* :call <SID>focus_list_window()<cr>:call <SID>toggle_star()<cr> - noremap <silent> <buffer> <leader>! :call <SID>focus_list_window()<cr>:call <SID>delete_messages("spam")<CR> + noremap <silent> <buffer> <leader>! :close<cr>:call <SID>focus_list_window()<cr>:call <SID>delete_messages("spam")<CR> noremap <silent> <buffer> <leader>e :call <SID>focus_list_window()<cr>:call <SID>archive_messages()<CR> " alt mappings for lazy hands nmap <silent> <buffer> <leader>8 <leader>* nmap <silent> <buffer> <leader>3 <leader># nmap <silent> <buffer> <leader>1 <leader>! @@ -828,10 +819,10 @@ noremap <silent> <buffer> <c-k> :call <SID>show_previous_message_in_list()<cr> nnoremap <silent> <buffer> <Space> :call <SID>toggle_maximize_window()<cr> endfunc func! s:compose_window_mappings() - noremap <silent> <buffer> <leader>q :call <SID>cancel_compose()<cr> + noremap <silent> <buffer> <leader>q :call <SID>close_and_focus_list_window()<cr> setlocal ai " setlocal textwidth=72 autocmd CursorMoved <buffer> call <SID>toggle_textwidth() endfunc