[PATCH v2 4/7] emacs: make emacs tagging use the stdin query functionality

2012-11-24 Thread Austin Clements
Quoth markwalters1009 on Nov 24 at  1:20 pm:
> From: Mark Walters 
> 
> In preparation for the use of large queries in some cases make tagging
> from emacs use the new query on stdin functionality. Currently uses
> this for all tagging (as I could not see a reason not to).
> ---
>  emacs/notmuch-tag.el |   14 +-
>  1 files changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el
> index 4fce3a9..4634b0d 100644
> --- a/emacs/notmuch-tag.el
> +++ b/emacs/notmuch-tag.el
> @@ -59,9 +59,10 @@ the messages that were tagged"
>(setq search-terms (list "*")))
>(split-string
> (with-output-to-string
> - (with-current-buffer standard-output
> -   (apply 'call-process notmuch-command nil t
> -   nil "search" "--output=tags" "--exclude=false" search-terms)))
> + (with-temp-buffer
> +   (insert (mapconcat 'identity search-terms " "))

#'identity ?

> +   (apply 'call-process-region (point-min) (point-max) notmuch-command 
> nil

#'call-process-region ?

> +   standard-output nil "search" "--output=tags" "--exclude=false" 
> (list "-"

If you use funcall instead of apply here, you won't need to put "-" in
a list.

Also, the lines seem a little long (but maybe that's just diff and
quoting?)

> "\n+" t))
>  
>  (defun notmuch-select-tag-with-completion (prompt  search-terms)
> @@ -134,8 +135,11 @@ notmuch-after-tag-hook will be run."
>   tag-changes)
>(unless (null tag-changes)
>  (run-hooks 'notmuch-before-tag-hook)
> -(apply 'notmuch-call-notmuch-process "tag"
> -(append tag-changes (list "--" query)))
> +(with-temp-buffer
> +  (insert query)
> +  (apply 'notmuch-call-notmuch-process-region

#'notmuch-call-notmuch-process-region ?

> +  (point-min) (point-max)
> +  "tag" (append tag-changes (list "--" "-"
>  (run-hooks 'notmuch-after-tag-hook))
>;; in all cases we return tag-changes as a list
>tag-changes)


[PATCH v2 4/7] emacs: make emacs tagging use the stdin query functionality

2012-11-24 Thread markwalters1009
From: Mark Walters 

In preparation for the use of large queries in some cases make tagging
from emacs use the new query on stdin functionality. Currently uses
this for all tagging (as I could not see a reason not to).
---
 emacs/notmuch-tag.el |   14 +-
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el
index 4fce3a9..4634b0d 100644
--- a/emacs/notmuch-tag.el
+++ b/emacs/notmuch-tag.el
@@ -59,9 +59,10 @@ the messages that were tagged"
   (setq search-terms (list "*")))
   (split-string
(with-output-to-string
- (with-current-buffer standard-output
-   (apply 'call-process notmuch-command nil t
- nil "search" "--output=tags" "--exclude=false" search-terms)))
+ (with-temp-buffer
+   (insert (mapconcat 'identity search-terms " "))
+   (apply 'call-process-region (point-min) (point-max) notmuch-command nil
+ standard-output nil "search" "--output=tags" "--exclude=false" 
(list "-"
"\n+" t))

 (defun notmuch-select-tag-with-completion (prompt  search-terms)
@@ -134,8 +135,11 @@ notmuch-after-tag-hook will be run."
tag-changes)
   (unless (null tag-changes)
 (run-hooks 'notmuch-before-tag-hook)
-(apply 'notmuch-call-notmuch-process "tag"
-  (append tag-changes (list "--" query)))
+(with-temp-buffer
+  (insert query)
+  (apply 'notmuch-call-notmuch-process-region
+(point-min) (point-max)
+"tag" (append tag-changes (list "--" "-"
 (run-hooks 'notmuch-after-tag-hook))
   ;; in all cases we return tag-changes as a list
   tag-changes)
-- 
1.7.9.1



[PATCH v2 4/7] emacs: make emacs tagging use the stdin query functionality

2012-11-24 Thread markwalters1009
From: Mark Walters markwalters1...@gmail.com

In preparation for the use of large queries in some cases make tagging
from emacs use the new query on stdin functionality. Currently uses
this for all tagging (as I could not see a reason not to).
---
 emacs/notmuch-tag.el |   14 +-
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el
index 4fce3a9..4634b0d 100644
--- a/emacs/notmuch-tag.el
+++ b/emacs/notmuch-tag.el
@@ -59,9 +59,10 @@ the messages that were tagged
   (setq search-terms (list *)))
   (split-string
(with-output-to-string
- (with-current-buffer standard-output
-   (apply 'call-process notmuch-command nil t
- nil search --output=tags --exclude=false search-terms)))
+ (with-temp-buffer
+   (insert (mapconcat 'identity search-terms  ))
+   (apply 'call-process-region (point-min) (point-max) notmuch-command nil
+ standard-output nil search --output=tags --exclude=false 
(list -
\n+ t))
 
 (defun notmuch-select-tag-with-completion (prompt rest search-terms)
@@ -134,8 +135,11 @@ notmuch-after-tag-hook will be run.
tag-changes)
   (unless (null tag-changes)
 (run-hooks 'notmuch-before-tag-hook)
-(apply 'notmuch-call-notmuch-process tag
-  (append tag-changes (list -- query)))
+(with-temp-buffer
+  (insert query)
+  (apply 'notmuch-call-notmuch-process-region
+(point-min) (point-max)
+tag (append tag-changes (list -- -
 (run-hooks 'notmuch-after-tag-hook))
   ;; in all cases we return tag-changes as a list
   tag-changes)
-- 
1.7.9.1

___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch


Re: [PATCH v2 4/7] emacs: make emacs tagging use the stdin query functionality

2012-11-24 Thread Austin Clements
Quoth markwalters1009 on Nov 24 at  1:20 pm:
 From: Mark Walters markwalters1...@gmail.com
 
 In preparation for the use of large queries in some cases make tagging
 from emacs use the new query on stdin functionality. Currently uses
 this for all tagging (as I could not see a reason not to).
 ---
  emacs/notmuch-tag.el |   14 +-
  1 files changed, 9 insertions(+), 5 deletions(-)
 
 diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el
 index 4fce3a9..4634b0d 100644
 --- a/emacs/notmuch-tag.el
 +++ b/emacs/notmuch-tag.el
 @@ -59,9 +59,10 @@ the messages that were tagged
(setq search-terms (list *)))
(split-string
 (with-output-to-string
 - (with-current-buffer standard-output
 -   (apply 'call-process notmuch-command nil t
 -   nil search --output=tags --exclude=false search-terms)))
 + (with-temp-buffer
 +   (insert (mapconcat 'identity search-terms  ))

#'identity ?

 +   (apply 'call-process-region (point-min) (point-max) notmuch-command 
 nil

#'call-process-region ?

 +   standard-output nil search --output=tags --exclude=false 
 (list -

If you use funcall instead of apply here, you won't need to put - in
a list.

Also, the lines seem a little long (but maybe that's just diff and
quoting?)

 \n+ t))
  
  (defun notmuch-select-tag-with-completion (prompt rest search-terms)
 @@ -134,8 +135,11 @@ notmuch-after-tag-hook will be run.
   tag-changes)
(unless (null tag-changes)
  (run-hooks 'notmuch-before-tag-hook)
 -(apply 'notmuch-call-notmuch-process tag
 -(append tag-changes (list -- query)))
 +(with-temp-buffer
 +  (insert query)
 +  (apply 'notmuch-call-notmuch-process-region

#'notmuch-call-notmuch-process-region ?

 +  (point-min) (point-max)
 +  tag (append tag-changes (list -- -
  (run-hooks 'notmuch-after-tag-hook))
;; in all cases we return tag-changes as a list
tag-changes)
___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch