about summary refs log tree commit diff
path: root/users/grfn/emacs.d/email.el
diff options
context:
space:
mode:
Diffstat (limited to 'users/grfn/emacs.d/email.el')
-rw-r--r--users/grfn/emacs.d/email.el11
1 files changed, 11 insertions, 0 deletions
diff --git a/users/grfn/emacs.d/email.el b/users/grfn/emacs.d/email.el
index 83076898b4..70360d0072 100644
--- a/users/grfn/emacs.d/email.el
+++ b/users/grfn/emacs.d/email.el
@@ -40,3 +40,14 @@
                    (eq (car action)
                        'display-buffer-same-window))
   :ignore t)
+
+(defun apply-thread-patchset (repo branch)
+  (interactive "Dgit repo: \nsnew branch name: ")
+  (let ((tid notmuch-show-thread-id)
+        (tmp "/tmp/notmuch-patchset"))
+    (shell-command (format "notmuch-extract-patch %s > %s && ( cd %s && git checkout -b %s && git am %s )"
+                           (shell-quote-argument tid)
+                           (shell-quote-argument tmp)
+                           (shell-quote-argument (expand-file-name repo))
+                           (shell-quote-argument branch)
+                           (shell-quote-argument tmp)))))