X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=vim%2Fnotmuch.vim;h=9109470a9561eba268dcedc20426b59d9d3611da;hp=4e4dfb04515e42d5ae63d69830b99fb19e9931ee;hb=062a73b9312a4df84f61d1c998b365ceed92313b;hpb=77c2853d7d521916191f75c6d31e2802c48e273a diff --git a/vim/notmuch.vim b/vim/notmuch.vim index 4e4dfb04..9109470a 100644 --- a/vim/notmuch.vim +++ b/vim/notmuch.vim @@ -60,32 +60,11 @@ let s:notmuch_reader_default = 'mutt -f %s' let s:notmuch_sendmail_default = 'sendmail' let s:notmuch_folders_count_threads_default = 0 -if !exists('g:notmuch_rb_date_format') - let g:notmuch_rb_date_format = s:notmuch_date_format_default -endif - -if !exists('g:notmuch_rb_datetime_format') - let g:notmuch_rb_datetime_format = s:notmuch_datetime_format_default -endif - -if !exists('g:notmuch_rb_reader') - let g:notmuch_rb_reader = s:notmuch_reader_default -endif - -if !exists('g:notmuch_rb_sendmail') - let g:notmuch_rb_sendmail = s:notmuch_sendmail_default -endif - -if !exists('g:notmuch_rb_folders_count_threads') - let g:notmuch_rb_folders_count_threads = s:notmuch_folders_count_threads_default -endif - function! s:new_file_buffer(type, fname) exec printf('edit %s', a:fname) execute printf('set filetype=notmuch-%s', a:type) execute printf('set syntax=notmuch-%s', a:type) ruby $curbuf.init(VIM::evaluate('a:type')) - ruby $buf_queue.push($curbuf.number) endfunction function! s:compose_unload() @@ -179,7 +158,7 @@ function! s:show_open_msg() ruby << EOF m = get_message mbox = File.expand_path('~/.notmuch/vim_mbox') - cmd = VIM::evaluate('g:notmuch_rb_reader') % mbox + cmd = VIM::evaluate('g:notmuch_reader') % mbox system "notmuch show --format=mbox id:#{m.message_id} > #{mbox} && #{cmd}" EOF endfunction @@ -288,13 +267,8 @@ endfunction function! s:kill_this_buffer() ruby << EOF - if $buf_queue.size > 1 - $curbuf.close - VIM::command("bdelete!") - $buf_queue.pop - b = $buf_queue.last - VIM::command("buffer #{b}") if b - end + $curbuf.close + VIM::command("bdelete!") EOF endfunction @@ -313,7 +287,6 @@ function! s:new_buffer(type) execute printf('set filetype=notmuch-%s', a:type) execute printf('set syntax=notmuch-%s', a:type) ruby $curbuf.init(VIM::evaluate('a:type')) - ruby $buf_queue.push($curbuf.number) endfunction function! s:set_menu_buffer() @@ -340,7 +313,7 @@ ruby << EOF part = m.find_first_text nm_m = Message.new(msg, m) $messages << nm_m - date_fmt = VIM::evaluate('g:notmuch_rb_datetime_format') + date_fmt = VIM::evaluate('g:notmuch_datetime_format') date = Time.at(msg.date).strftime(date_fmt) nm_m.start = b.count b << "%s %s (%s)" % [msg['from'], date, msg.tags] @@ -410,16 +383,68 @@ endfunction "" root function! s:set_defaults() - if exists('g:notmuch_rb_custom_search_maps') - call extend(g:notmuch_search_maps, g:notmuch_rb_custom_search_maps) + if !exists('g:notmuch_date_format') + if exists('g:notmuch_rb_date_format') + let g:notmuch_date_format = g:notmuch_rb_date_format + else + let g:notmuch_date_format = s:notmuch_date_format_default + endif endif - if exists('g:notmuch_rb_custom_show_maps') - call extend(g:notmuch_show_maps, g:notmuch_rb_custom_show_maps) + if !exists('g:notmuch_datetime_format') + if exists('g:notmuch_rb_datetime_format') + let g:notmuch_datetime_format = g:notmuch_rb_datetime_format + else + let g:notmuch_datetime_format = s:notmuch_datetime_format_default + endif + endif + + if !exists('g:notmuch_reader') + if exists('g:notmuch_rb_reader') + let g:notmuch_reader = g:notmuch_rb_reader + else + let g:notmuch_reader = s:notmuch_reader_default + endif + endif + + if !exists('g:notmuch_sendmail') + if exists('g:notmuch_rb_sendmail') + let g:notmuch_sendmail = g:notmuch_rb_sendmail + else + let g:notmuch_sendmail = s:notmuch_sendmail_default + endif + endif + + if !exists('g:notmuch_folders_count_threads') + if exists('g:notmuch_rb_count_threads') + let g:notmuch_count_threads = g:notmuch_rb_count_threads + else + let g:notmuch_folders_count_threads = s:notmuch_folders_count_threads_default + endif + endif + + if !exists('g:notmuch_custom_search_maps') && exists('g:notmuch_rb_custom_search_maps') + let g:notmuch_custom_search_maps = g:notmuch_rb_custom_search_maps + endif + + if !exists('g:notmuch_custom_show_maps') && exists('g:notmuch_rb_custom_show_maps') + let g:notmuch_custom_show_maps = g:notmuch_rb_custom_show_maps + endif + + if exists('g:notmuch_custom_search_maps') + call extend(g:notmuch_search_maps, g:notmuch_custom_search_maps) + endif + + if exists('g:notmuch_custom_show_maps') + call extend(g:notmuch_show_maps, g:notmuch_custom_show_maps) endif if !exists('g:notmuch_folders') - let g:notmuch_folders = s:notmuch_folders_default + if exists('g:notmuch_rb_folders') + let g:notmuch_folders = g:notmuch_rb_folders + else + let g:notmuch_folders = s:notmuch_folders_default + endif endif endfunction @@ -439,7 +464,6 @@ ruby << EOF $db_name = nil $email = $email_name = $email_address = nil $searches = [] - $buf_queue = [] $threads = [] $messages = [] $config = {} @@ -609,7 +633,7 @@ ruby << EOF def folders_render() $curbuf.render do |b| folders = VIM::evaluate('g:notmuch_folders') - count_threads = VIM::evaluate('g:notmuch_rb_folders_count_threads') + count_threads = VIM::evaluate('g:notmuch_folders_count_threads') $searches.clear folders.each do |name, search| q = $curbuf.query(search) @@ -621,7 +645,7 @@ ruby << EOF end def search_render(search) - date_fmt = VIM::evaluate('g:notmuch_rb_date_format') + date_fmt = VIM::evaluate('g:notmuch_date_format') q = $curbuf.query(search) q.sort = Notmuch::SORT_NEWEST_FIRST $threads.clear