From: Jesse Rosenthal Date: Sun, 24 Jan 2010 20:22:33 +0000 (-0500) Subject: notmuch.el: quote args in notmuch-show to facilitate remote use X-Git-Tag: 0.2~59 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=9193455fa1;p=notmuch.git notmuch.el: quote args in notmuch-show to facilitate remote use Put single-quotes around the argument of the `show --entire-thread' command in notmuch-show. This change should have no effect on normal usage. However, it allows us to use the notmuch.el client with a remote notmuch binary and database over ssh (by, e.g., setting `notmuch-command' to a simple shell script). Without the quotes, ssh will not send the command properly. One very simple example script is as follows. (Note that it requires keypair login to the ssh server.) #!/bin/sh SSH_BIN="/path/to/local/ssh" NOTMUCH_HOST="my.remote.server" NOTMUCH_REMOTE_PATH="/path/to/remote/notmuch" $SSH_BIN $NOTMUCH_HOST $NOTMUCH_REMOTE_PATH $@ --- diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 6f5a55d4..81276d90 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -1006,8 +1006,10 @@ used." (erase-buffer) (goto-char (point-min)) (save-excursion - (let* ((basic-args (list notmuch-command nil t nil "show" "--entire-thread" thread-id)) - (args (if query-context (append basic-args (list "and (" query-context ")")) basic-args))) + (let* ((basic-args (list notmuch-command nil t nil "show" "--entire-thread" "\'" thread-id)) + (args (if query-context + (append basic-args (list "and (" query-context ")\'")) + (append basic-args (list "\'"))))) (apply 'call-process args) (when (and (eq (buffer-size) 0) query-context) (apply 'call-process basic-args)))