Я новичок в Emacs Lisp и изменяю некоторый код в mu4e-send-delay . Я хочу проверить, установил ли пользователь значение переменной, например, в пустом буфере:
(setq mu4e-sent-messages-behavior 'delete)
delete
Эти три теста возвращают false:
(eq 'mu4e-sent-messages-behavior 'delete)
nil
(equal 'mu4e-sent-messages-behavior 'delete)
nil
(equal 'mu4e-sent-messages-behavior "delete")
nil
И этот возвращает true, но с функцией member
для списков:
(if (member mu4e-sent-messages-behavior '(delete)) t nil)
t
Если пользователь сохраняет настройку по умолчанию, установленную в коде:
(defcustom mu4e-sent-messages-behavior 'sent
...
)
затем member
также завершается ошибкой:
(when (member mu4e-sent-messages-behavior '(sent)) t nil)
nil
Что не так с моими тестами и как я могу проверить значение переменной, установленное пользователем?