From 14a31db741f971c6785e37be159f8d9d347dbc40 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Mon, 1 Sep 2025 00:07:41 +0200 Subject: [PATCH] fix(cli): handle spaces & quoting in $EMACS bin/doom couldn't handle spaces in $EMACS, but worse than that, they couldn't be quoted or escaped. This commit addresses the latter. Fix: #8475 Fix: #8403 --- bin/doom | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/doom b/bin/doom index c53a3b50f..07122f011 100755 --- a/bin/doom +++ b/bin/doom @@ -9,8 +9,8 @@ :; export __DOOMGEOM="${__DOOMGEOM:-`tput cols 2>/dev/null`x`tput lines 2>/dev/null`}" :; export __DOOMGPIPE=${__DOOMGPIPE:-$__DOOMPIPE} :; export __DOOMPIPE=; [ -t 0 ] || __DOOMPIPE="${__DOOMPIPE}0"; [ -t 1 ] || __DOOMPIPE="${__DOOMPIPE}1" -:; $emacs --eval "(setq warning-inhibit-types '((files missing-lexbind-cookie)))" --load "$0" -- "$@" || exit=$? -:; [ "${exit:-0}" -eq 254 ] && { export TMPDIR="${TMPDIR:-${TMP:-${TEMP:-`$emacs -Q --eval '(princ temporary-file-directory)' 2>/dev/null`}}}"; sh "${TMPDIR}/doom.${__DOOMPID}.${__DOOMSTEP}.sh" "$0" "$@" && true; exit="$?"; } +:; eval "$emacs --eval \"(setq warning-inhibit-types '((files missing-lexbind-cookie)))\" --load" "$0" -- "$@" || exit=$? +:; [ "${exit:-0}" -eq 254 ] && { export TMPDIR="${TMPDIR:-${TMP:-${TEMP:-`eval "$emacs -Q --eval '(princ temporary-file-directory)'" 2>/dev/null`}}}"; sh "${TMPDIR}/doom.${__DOOMPID}.${__DOOMSTEP}.sh" "$0" "$@" && true; exit="$?"; } :; exit $exit ;; This magical mess of a shebang is necessary for any script that relies on