Существует ли встроенная форма Emacs Lisp для установки переменной, только если она не связана? - PullRequest
5 голосов
/ 04 сентября 2011

Я создал следующий макрос в elisp.Он установит значение «val» для переменной «var», только если переменная не связана.Это существует, так что переменные, установленные в вашем файле .emacs, не попираются где-то еще.

(defmacro set-ifunbound (var val)
  `(if (not (boundp ',var))
       (setq ,var ,val)
     (identity ,var)))

Конечно, это должен быть общий шаблон.Есть ли встроенный способ сделать то же самое?

1 Ответ

5 голосов
/ 04 сентября 2011

defvar делает именно это.Он присваивает значение переменной только в том случае, если оно не связано.

...