1. ホーム
  2. emacs

[解決済み] Emacs Lispで、変数が定義されているかどうかを確認するにはどうすればよいですか?

2023-01-02 01:38:50

質問

Emacs Lispで、変数が定義されているかどうかを確認するにはどうしたらよいでしょうか。

どのように解決するのですか?

boundp: は、変数(シンボル)がvoidでない場合、より正確には、その現在のバインディングがvoidでない場合、tを返します。それ以外の場合はnilを返します。

  (boundp 'abracadabra)          ; Starts out void.
  => nil

  (let ((abracadabra 5))         ; Locally bind it.
    (boundp 'abracadabra))
  => t

  (boundp 'abracadabra)          ; Still globally void.
  => nil

  (setq abracadabra 5)           ; Make it globally nonvoid.
  => 5

  (boundp 'abracadabra)
  => t