Предположим, у меня есть функция (foo)
, определенная как (defun foo () (read-from-minibuffer "What? "))
. Я не могу изменить определение, но я хотел бы обернуть его вокруг макроса или другой функции, чтобы избежать необходимости вручную давать какое-либо значение.
К сожалению, следующие решения не работают, так как (exit-minibuffer)
вызывается только после выхода из минибуфера, поэтому мне было интересно, знаете ли вы что-нибудь.
(defmacro return-an-empty-string (&rest code) `(progn ,@code (exit-minibuffer)))
(defun return-an-empty-string (function) (funcall function) (exit-minibuffer))
Спасибо!