以下の内容はhttps://m-hiyama.hatenablog.com/entry/20081128/1227855376より取得しました。


Emacs Lisp の add-to-list

僕がEmacs Lispをいじるのは .emacs を書き換えるときくらい。

それで、ナントカ-alistの設定のとき、次のようなコードをよく見かけます。

(setq foo-bar-alist
      (cons '(name . value)
            foo-bar-alist))

これは、add-to-listを使って次のように書いたほうがスッキリするよね。

(add-to-list 'foo-bar-alist '(name . value))

add-to-listではさらに、同じ要素が重複して追加されることを防げます。setqのように自動的にクォートはされないので変数名(記号アトム)に「'」は必要です。

add-to-listの第3引数に非nil(Lisp風の真)を渡すと、新しい要素がリストの最後に追加されます。

(add-to-list 'foo-bar-alist '(name-two . value-two) t)

試しに:

(setq foo-bar-alist nil)
(add-to-list 'foo-bar-alist '(name-one . value-one))
(add-to-list 'foo-bar-alist '(name-two . value-two) t)
(add-to-list 'foo-bar-alist '(name-three . value-three))

これをまとめて実行(評価)すると、foo-bar-alistの値は、((name-three . value-three) (name-one . value-one) (name-two . value-two)) となります。




以上の内容はhttps://m-hiyama.hatenablog.com/entry/20081128/1227855376より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14