[PATCH 14/21] vim: add option to compose new messages

Felipe Contreras felipe.contreras at gmail.com
Sat Nov 2 06:55:47 PDT 2013


Signed-off-by: Felipe Contreras <felipe.contreras at gmail.com>
---
 vim/notmuch.vim | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 8383fd6..42c5f18 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -12,6 +12,7 @@ let g:notmuch_rb_folders_maps = {
 	\ '<Enter>':	'folders_show_search()',
 	\ 's':		'folders_search_prompt()',
 	\ '=':		'folders_refresh()',
+	\ 'c':		'compose()',
 	\ }
 
 let g:notmuch_rb_search_maps = {
@@ -24,6 +25,7 @@ let g:notmuch_rb_search_maps = {
 	\ 's':		'search_search_prompt()',
 	\ '=':		'search_refresh()',
 	\ '?':		'search_info()',
+	\ 'c':		'compose()',
 	\ }
 
 let g:notmuch_rb_show_maps = {
@@ -38,6 +40,7 @@ let g:notmuch_rb_show_maps = {
 	\ 'r':		'show_reply()',
 	\ '?':		'show_info()',
 	\ '<Tab>':	'show_next_msg()',
+	\ 'c':		'compose()',
 	\ }
 
 let g:notmuch_rb_compose_maps = {
@@ -148,6 +151,14 @@ function! s:show_reply()
 	startinsert!
 endfunction
 
+function! s:compose()
+	ruby open_compose
+	let b:compose_done = 0
+	call s:set_map(g:notmuch_rb_compose_maps)
+	autocmd BufUnload <buffer> call s:compose_unload()
+	startinsert!
+endfunction
+
 function! s:show_info()
 	ruby vim_puts get_message.inspect
 endfunction
@@ -578,6 +589,28 @@ ruby << EOF
 		open_compose_helper(lines, cur)
 	end
 
+	def open_compose()
+		lines = []
+
+		lines << "Date: #{Time.now().strftime('%a, %-d %b %Y %T %z')}"
+		lines << "From: #{$email}"
+		lines << "To: "
+		cur = lines.count
+
+		lines << "Cc: "
+		lines << "Bcc: "
+		lines << "Message-Id: #{generate_message_id}"
+		lines << "Subject: "
+		lines << "Mime-Version: 1.0"
+		lines << "Content-Type: text/plain; charset=utf-8"
+		lines << "Content-Transfer-Encoding: 7bit"
+		lines << ""
+		lines << ""
+		lines << ""
+
+		open_compose_helper(lines, cur)
+	end
+
 	def folders_render()
 		$curbuf.render do |b|
 			folders = VIM::evaluate('g:notmuch_rb_folders')
-- 
1.8.4.2+fc1



More information about the notmuch mailing list