X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-emacs-mua;h=b51d8d0e2c5be5000371e00337d9c9941322547b;hp=ac03a4a60d565e512f4062052757f8e20d267281;hb=b69201da5ddac5fc17935d39d8cca162716a6dd9;hpb=17fcf24d8b2dd6afcda2e3eaf40f9b7b51d8f30d diff --git a/notmuch-emacs-mua b/notmuch-emacs-mua index ac03a4a6..b51d8d0e 100755 --- a/notmuch-emacs-mua +++ b/notmuch-emacs-mua @@ -37,11 +37,10 @@ PRINT_ONLY= NO_WINDOW= USE_EMACSCLIENT= AUTO_DAEMON= -CREATE_FRAME="-c" +CREATE_FRAME= # The crux of it all: construct an elisp progn and eval it. ELISP="(prog1 'done (require 'notmuch) (notmuch-mua-new-mail)" -ELISP="${ELISP} (setq message-exit-actions (list #'save-buffers-kill-terminal))" # Short options compatible with mutt(1). while getopts :s:c:b:i:h opt; do @@ -65,7 +64,7 @@ while getopts :s:c:b:i:h opt; do opt=${opt%%=*} ;; # Long options without arguments. - --help|--print|--no-window-system|--client|--auto-daemon) + --help|--print|--no-window-system|--client|--auto-daemon|--create-frame) ;; *) echo "$0: unknown long option ${opt}, or argument mismatch." >&2 @@ -103,7 +102,6 @@ while getopts :s:c:b:i:h opt; do ;; --no-window-system) NO_WINDOW="-nw" - CREATE_FRAME= ;; --client) USE_EMACSCLIENT="yes" @@ -111,6 +109,9 @@ while getopts :s:c:b:i:h opt; do --auto-daemon) AUTO_DAEMON="--alternate-editor=" ;; + --create-frame) + CREATE_FRAME="-c" + ;; *) # We should never end up here. echo "$0: internal error (option ${opt})." >&2 @@ -128,6 +129,11 @@ for arg; do ELISP="${ELISP} (message-goto-to) (insert \"${arg}, \")" done +# Kill the terminal/frame if we're creating one. +if [ -z "$USE_EMACSCLIENT" -o -n "$CREATE_FRAME" -o -n "$NO_WINDOW" ]; then + ELISP="${ELISP} (setq message-exit-actions (list #'save-buffers-kill-terminal))" +fi + # End progn. ELISP="${ELISP})"