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