> - It is no fun for variables with complicated values, like large lists of lists. Just a minibuffer prompt would not be nice. That's why I mentioned popup buffers for complicated values. It could be especially useful for variables with complicated values like nested  lists. You just press e, a buffer pops up with the value, so you don't have to manually copy it to scratch, etc. you can tweak it in place quickly and set it with C-c C-c > Here you probably still would use scratch or so. And even in the situation you > described, I would prefer having an expression in scratch, edit and eval > it, compared to clicking a button in the help buffer and edit in the mb >or a popup buffer. A related idea is that we could have the key c bound to copy as elisp. So you  want to tweak a variable. You press c and the lisp form of setting the  variable (setq varname ....current value...) is copied to the kill ring which you can tweak in  scratch. This could trivially do the tedious work of copying the variable's name and  value manually. > - There are nitpicks which may complicate doing what at first sounds > simple, e.g. what if the value includes things were printing and reading > comes into play?  E.g. buffers: they have a print syntax, but it's not a > read syntax. We are talking about variables which the user sets from lisp. Variables containing buffer objects are not such. For these the feature could  throw an error saying the variable cannot be changed manually. > But my main point is the question if we should really invite the typical user, which is not an Emacs developer (ok, here I'm not really sure if I'm right) to change variables on the fly, I don't know what you mean by emacs developer (core developer?), but the typical emacs user tends to learn lisp, so he can extend and mold the editor to his needs. Such a user inspects variables, changes them, copies code to the init file etc. This feature targets those users who  are beyond customize, able to use lisp and tweak variables and other things often in emacs.