]> git.notmuchmail.org Git - notmuch/blobdiff - vim/notmuch.vim
vim: don't execute search if it's cancelled
[notmuch] / vim / notmuch.vim
index 4bd5f131aa564a9f4176d2f527ef511a03c32443..cf829a679b4049146f9311b5d6c449296767d165 100644 (file)
@@ -208,6 +208,9 @@ endfunction
 
 function! s:search_search_prompt()
        let text = input('Search: ')
+       if text == ""
+         return
+       endif
        setlocal modifiable
 ruby << EOF
        $cur_search = VIM::evaluate('text')
@@ -421,6 +424,7 @@ ruby << EOF
        require 'notmuch'
        require 'rubygems'
        require 'tempfile'
+       require 'socket'
        begin
                require 'mail'
        rescue LoadError
@@ -492,6 +496,14 @@ ruby << EOF
                end
        end
 
+       def generate_message_id
+               t = Time.now
+               random_tag = sprintf('%x%x_%x%x%x',
+                       t.to_i, t.tv_usec,
+                       $$, Thread.current.object_id.abs, rand(255))
+               return "<#{random_tag}@#{Socket.gethostname}.notmuch>"
+       end
+
        def open_reply(orig)
                help_lines = [
                        'Notmuch-Help: Type in your message here; to help you use these bindings:',
@@ -505,6 +517,7 @@ ruby << EOF
                        end
                        m.cc = orig[:cc]
                        m.from = $email
+                       m.message_id = generate_message_id
                        m.charset = 'utf-8'
                        m.content_transfer_encoding = '7bit'
                end