How to properly write the default value for a non-trivial `defcustom` form for something like I have below: a list of 3-element lists, with choices of the types? The following `defcustom` works fine as long as its default is `nil`. It fails as soon as I try to define a default. I most probably fail to understand Emacs Lisp customization docs. **My defcustom form:** (with a `nil` default, it works fine) ``` (defcustom pel-key-chords nil "..." :group 'pel-pkg-for-key-chord :type '(repeat (choice (list :tag "expansion keys" (symbol :tag "mode " :value global) (string :tag "the 2 keys ") (repeat (key-sequence :tag "key"))) (list :tag "command" (symbol :tag "mode " :value global) (string :tag "the 2 keys ") (function :tag "command ")) (list :tag "lambda" (symbol :tag "mode " :value global) (string :tag "the 2 keys ") (function :tag "elisp code " :value (lambda () (interactive) <YOUR CODE HERE>)))))) ``` If, instead of `nil` as the default I write a list with just one entry, the customization menu fails to properly show the widgets to enter new entries. For example if the first lines of the above code are replaced by the following, I'm not able to enter new values: **My defcustom form:** (same code, but with an explicit default. That fails: `customize-option` of this does not allow me to edit the value): ``` (defcustom pel-key-chords '((global "<>" "<>\C-b")) "..." ... ``` Then, when attempting to customize the user option, I see the default but can't add anything as the Emacs [INS] button does not show up, nor any other. I read [Emacs Lisp Customization Settings section](https://www.gnu.org/software/emacs/manual/html_node/elisp/Customization.html#Customization) and some code like the [`dump-jump.el` code](https://github.com/jacktasia/dumb-jump/blob/master/dumb-jump.el) that defines some complex data with initialization. I assume I must identify some keywords in my declaration of the default, but for some reason I can't find the proper syntax for initializing the data I defined above.