如果我有一個函數或宏(我將與宏去)採取了一些關鍵參數,如:變換關鍵字參數到關聯列表中的Lisp
(defmacro mwe (&whole args &key name description &allow-other-keys)
(pushnew (list-to-alist args) *some-var*))
如果我想說的是,所有的用法兆瓦的將是這樣的形式:
(mwe :name name :prop1 value1 :prop2 value2)
我如何改變,很容易成ALIST(或者一個哈希表,但我認爲這將是矯枉過正只是2-10場)爲更容易檢索關鍵字參數,使用assoc
?我目前正在使用這個
如果你只是想簡單的檢索,如何使用'GETF'和'&REST'參數? – jkiiski
['alexandria:plist-alist'](https://common-lisp.net/project/alexandria/draft/alexandria.html) – coredump
@jkiiski我並沒有真正想到'getf''。如你所見,這是我接受的答案。此外,不知道這是否會是一個不同的問題......但我怎麼能讓emacs/SLIME知道一些關於自動完成的強制性關鍵參數呢?我想我寧願選擇'&WHOLE'。 – ssice