--- emacs/notmuch-emacs-mua.orig 2020-09-06 00:50:03 UTC +++ emacs/notmuch-emacs-mua @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/bin/sh # # notmuch-emacs-mua - start composing a mail on the command line # @@ -26,8 +26,8 @@ set -eu # calling convention: escape -v var "$arg" (like in bash printf). escape () { - local __escape_arg__=${3//\\/\\\\} - printf -v $2 '%s' "${__escape_arg__//\"/\\\"}" + __escape_arg__="$(printf '%s' "$3" | sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g')" + eval "$2=\$__escape_arg__" } EMACS=${EMACS:-emacs} @@ -150,14 +150,14 @@ if [ -n "${MAILTO}" ]; then exit 1 fi ELISP="(browse-url-mail \"${MAILTO}\")" -elif [ -z "${ELISP}" -a -n "${HELLO}" ]; then +elif [ -z "${ELISP}" ] && [ -n "${HELLO}" ]; then ELISP="(notmuch)" else ELISP="(notmuch-mua-new-mail) ${ELISP}" fi # Kill the terminal/frame if we're creating one. -if [ -z "$USE_EMACSCLIENT" -o -n "$CREATE_FRAME" -o -n "$NO_WINDOW" ]; then +if [ -z "$USE_EMACSCLIENT" ] || [ -n "$CREATE_FRAME" ] || [ -n "$NO_WINDOW" ]; then ELISP="${ELISP} (message-add-action #'save-buffers-kill-terminal 'exit)" fi