タグ付けされた質問 「association-lists」

5
リストの要素を置き換える方法は?
私はこれをデフォルトで持っていますauto-mode-alist: ("\\.js\\'" . javascript-mode) (でもemacs -Q)。の代わりにしたいjs2-modeですjavascript-mode。もちろん、使用assq-delete-allしてからadd-to-listもう一度使用することもできますが、より良い方法がないかどうか疑問に思っています。 編集:明示的にカスタマイズを使用したくありませんinit.el。自分で作成することを好みます。

1
'(a。b)は本当にリストですか?
私はこの.表記法と本当に混同しています。'(a . b)リストはありますか? (listp '(a . b))戻りますtが、その長さを知りたいときに(length '(a . b))エラーが発生しますWrong type argument: listp, b。他の関数nth,mapcarなども同じです。すべて同じエラーが発生します 私は区別することができます任意の関数があり'(a b)とは'(a . b)? コンテキスト:の再帰バージョンを実装しようとしたときに、この問題が発生しましたmapcar。これが私の実装です (defun true-listp (object) "Return non-`nil' if OBJECT is a true list." (and (listp object) (null (cdr (last object))))) (defun recursive-mapcar (func list) "Evaluates func on elements of the list, then on …

3
ネストされた関連リストの値を取得する最良の方法は?
次のような連想リストがあるとします。 (setq x '((foo . ((bar . "llama") (baz . "monkey"))))) そして、私はの値を求めていますbar。私がすることができます: (assoc-default 'bar (assoc-default 'foo x)) しかし、私が本当に欲しいのは、次のような複数のキーを受け入れるものです (assoc-multi-key 'foo 'bar x) そのようなものが、おそらくどこかのパッケージに存在していますか?きっと書けると思いますが、グーグルフーが失敗して、見つけられない気がします。

2
一致するすべての値を返す「assoc」のような関数はありますか?
このassoc KEY LIST関数は、alistcarがに等しいの最初の要素を返しますKEY。 車がに等しいのすべての要素をサブアリストまたは値のリストとして返す組み込みのEmacs Lisp関数はありますか?結局のところ、が一意のキーを持つ必要はありません。alistKEYalist あれは、 (assoc foo '((foo . 5) (bar . 6) (foo . 7))) = '(foo . 5) だが、 (assoc-all foo '((foo . 5) (bar . 6) (foo . 7))) = '((foo . 5) (foo . 7))

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.