* [PATCH 1/3] vim: refactor tagging stuff
2010-12-09 22:16 [PATCH 0/3] vim fixes Felipe Contreras
@ 2010-12-09 22:16 ` Felipe Contreras
2010-12-09 22:16 ` [PATCH 2/3] vim: fix get_user_email() Felipe Contreras
2010-12-09 22:20 ` [PATCH 3/3] vim: implement archive in show view Felipe Contreras
2 siblings, 0 replies; 4+ messages in thread
From: Felipe Contreras @ 2010-12-09 22:16 UTC (permalink / raw)
To: notmuch; +Cc: Felipe Contreras
From: Felipe Contreras <felipe.contreras@ngmail.com>
Signed-off-by: Felipe Contreras <felipe.contreras@ngmail.com>
---
vim/plugin/notmuch.vim | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/vim/plugin/notmuch.vim b/vim/plugin/notmuch.vim
index 8d5d1c3..6898d56 100644
--- a/vim/plugin/notmuch.vim
+++ b/vim/plugin/notmuch.vim
@@ -307,12 +307,12 @@ function! s:NM_search_edit()
endfunction
function! s:NM_search_archive_thread()
- call <SID>NM_add_remove_tags([], '-', ['inbox'])
+ call <SID>NM_tag([], ['-inbox'])
norm j
endfunction
function! s:NM_search_mark_read_then_archive_thread()
- call <SID>NM_add_remove_tags([], '-', ['unread', 'inbox'])
+ call <SID>NM_tag([], ['-unread', '-inbox'])
norm j
endfunction
@@ -403,7 +403,8 @@ function! s:NM_search_add_remove_tags(prompt, prefix, intags)
else
let tags = a:intags
endif
- call <SID>NM_add_remove_tags([], a:prefix, tags)
+ call map(tags, 'a:prefix . v:val')
+ call <SID>NM_tag([], tags)
endfunction
" --- implement show screen {{{1
@@ -497,7 +498,7 @@ function! s:NM_show_archive_thread()
endfunction
function! s:NM_show_mark_read_then_archive_thread()
- call <SID>NM_add_remove_tags(b:nm_search_words, '-', ['unread', 'inbox'])
+ call <SID>NM_tag(b:nm_search_words, ['-unread', '-inbox'])
call <SID>NM_show_next_thread()
endfunction
@@ -561,7 +562,8 @@ function! s:NM_show_advance_marking_read_and_archiving()
let filter = <SID>NM_combine_tags('tag:', advance_tags, 'OR', '()')
\ + ['AND']
\ + <SID>NM_combine_tags('', ids, 'OR', '()')
- call <SID>NM_add_remove_tags(filter, '-', advance_tags)
+ call map(advance_tags, '"+" . v:val')
+ call <SID>NM_tag(filter, advance_tags)
call <SID>NM_show_next(1, 1)
return
endif
@@ -580,7 +582,8 @@ function! s:NM_show_advance_marking_read_and_archiving()
" do this last to hide the latency
let filter = <SID>NM_combine_tags('tag:', advance_tags, 'OR', '()')
\ + ['AND', msg_top['id']]
- call <SID>NM_add_remove_tags(filter, '-', advance_tags)
+ call map(advance_tags, '"-" . v:val')
+ call <SID>NM_tag(filter, advance_tags)
endif
return
endif
@@ -1266,12 +1269,11 @@ function! s:NM_search_expand(arg)
let b:nm_prev_bufnr = prev_bufnr
endfunction
-function! s:NM_add_remove_tags(filter, prefix, tags)
+function! s:NM_tag(filter, tags)
let filter = len(a:filter) ? a:filter : [<SID>NM_search_thread_id()]
if !len(filter)
throw 'Eeek! I couldn''t find the thead id!'
endif
- call map(a:tags, 'a:prefix . v:val')
let args = ['tag']
call extend(args, a:tags)
call add(args, '--')
--
1.7.3.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/3] vim: fix get_user_email()
2010-12-09 22:16 [PATCH 0/3] vim fixes Felipe Contreras
2010-12-09 22:16 ` [PATCH 1/3] vim: refactor tagging stuff Felipe Contreras
@ 2010-12-09 22:16 ` Felipe Contreras
2010-12-09 22:20 ` [PATCH 3/3] vim: implement archive in show view Felipe Contreras
2 siblings, 0 replies; 4+ messages in thread
From: Felipe Contreras @ 2010-12-09 22:16 UTC (permalink / raw)
To: notmuch; +Cc: Felipe Contreras
From: Felipe Contreras <felipe.contreras@ngmail.com>
Signed-off-by: Felipe Contreras <felipe.contreras@ngmail.com>
---
vim/plugin/notmuch.vim | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/vim/plugin/notmuch.vim b/vim/plugin/notmuch.vim
index 6898d56..8815712 100644
--- a/vim/plugin/notmuch.vim
+++ b/vim/plugin/notmuch.vim
@@ -1027,11 +1027,9 @@ endfunction
" --- --- compose screen helper functions {{{2
function! s:NM_compose_get_user_email()
- let name = substitute(system('id -u -n'), '\v(^\s*|\s*$|\n)', '', 'g')
- let fqdn = substitute(system('hostname -f'), '\v(^\s*|\s*$|\n)', '', 'g')
-
- " TODO: do this properly
- return name . '@' . fqdn
+ let rname = system("getent passwd $USER | cut -d ':' -f 5")
+ let rname = substitute(rname, '\n*$', '', '')
+ return printf("%s <%s>", rname, $EMAIL)
endfunction
function! s:NM_compose_find_line_match(start, pattern, failure)
--
1.7.3.2
^ permalink raw reply related [flat|nested] 4+ messages in thread