lang/emacs-lisp: respect lexical-binding in eval handler

This commit is contained in:
Henrik Lissner 2021-03-08 10:19:19 -05:00
parent ab7710adfd
commit 7e1f5da169

View file

@ -11,12 +11,14 @@ to a pop up buffer."
(string-trim-right
(condition-case-unless-debug e
(let ((result
(let ((debug-on-error t))
(eval (read (format "(progn %s)" (buffer-substring-no-properties beg end)))
`((buffer-file-name . ,(buffer-file-name (buffer-base-buffer)))
(doom--current-module
. ,(ignore-errors
(doom-module-from-path buffer-file-name))))))))
(let ((buffer-file-name
(buffer-file-name (buffer-base-buffer)))
(doom--current-module
(ignore-errors (doom-module-from-path buffer-file-name)))
(debug-on-error t))
(eval (read (format "(progn %s)"
(buffer-substring-no-properties beg end)))
lexical-binding))))
(require 'pp)
(replace-regexp-in-string "\\\\n" "\n" (pp-to-string result)))
(error (error-message-string e))))