From: Jens Schmidt <jschmidt4gnu@vodafonemail.de>
To: Greg Minshall <minshall@umich.edu>
Cc: Sebastian Miele <iota@whxvd.name>, emacs-devel@gnu.org
Subject: Re: Emacs script options
Date: Tue, 21 Nov 2023 22:13:22 +0100 [thread overview]
Message-ID: <5eac9978-270e-40b2-8272-dabb29ec5daa@vodafonemail.de> (raw)
In-Reply-To: <58266.1700443175@archlinux>
On 2023-11-20 02:19, Greg Minshall wrote:
> no way, NO way near hack'y enough. :)
I couldn't stand the fact that my hack was taken already plus
that it is flawed, so I set off to extend it with a work-around
for the lexical-binding issue.
While there are surely other methods to achieve what below code
does, supposedly also more stable ones, I wanted to go for
brevity to keep the non-script overhead small:
------------------------- escript -------------------------
#!/bin/sh
: ; exec emacs --script "$0" -- "$@" #; -*- lexical-binding: t -*-
;; Work around `eval-buffer' not recognizing the lexical-binding
;; stanza when the comment containing it does not start at first
;; column (bug#67321).
(unless (ignore-errors (funcall (let ((v t)) (lambda () v))))
(with-current-buffer (car eval-buffer-list)
(goto-char (point-min)) (search-forward "; -*-")
(delete-region (point-min) (match-beginning 0))
(eval-buffer)))
;; Script payload.
(message "%S:%S" lexical-binding command-line-args-left)
;; Explicitly exit Emacs to not return from the second-level
;; `eval-buffer'.
(kill-emacs 0)
;;; Local Variables:
;;; mode: emacs-lisp
;;; End:
------------------------- escript -------------------------
(Thanks to Sebastian for opening the bug, BTW. When looking at
the previous, now merged bug, it seems that this won't be
something easy to get through.)
next prev parent reply other threads:[~2023-11-21 21:13 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-18 3:13 (unknown) Greg Minshall
2023-11-18 7:05 ` (unknown) Jim Porter
2023-11-18 14:10 ` (unknown) -x behavior change Greg Minshall
2023-11-18 7:36 ` Emacs script options Eli Zaretskii
2023-11-18 14:38 ` Greg Minshall
2023-11-18 16:20 ` Eli Zaretskii
2023-11-18 19:36 ` Greg Minshall
2023-11-19 5:55 ` Eli Zaretskii
2023-11-27 3:29 ` Greg Minshall
2023-11-27 12:59 ` Eli Zaretskii
2023-11-27 19:32 ` Greg Minshall
2023-11-18 19:18 ` Sebastian Miele
2023-11-18 19:49 ` Greg Minshall
2023-11-19 21:39 ` Jens Schmidt
2023-11-19 21:47 ` Jens Schmidt
2023-11-20 1:19 ` Greg Minshall
2023-11-21 21:13 ` Jens Schmidt [this message]
2023-11-22 18:17 ` Sebastian Miele
2023-11-22 20:18 ` Jens Schmidt
2023-11-24 4:22 ` Greg Minshall
2023-11-26 18:07 ` Jens Schmidt
2023-11-20 6:10 ` Sebastian Miele
2023-11-20 20:10 ` Jens Schmidt
2023-11-21 8:51 ` Sebastian Miele
2023-11-19 5:04 ` Bob Rogers
2023-11-19 6:21 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5eac9978-270e-40b2-8272-dabb29ec5daa@vodafonemail.de \
--to=jschmidt4gnu@vodafonemail.de \
--cc=emacs-devel@gnu.org \
--cc=iota@whxvd.name \
--cc=minshall@umich.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.