In Lisp, the ยด
character will quote the rest of the expression. This means that the value will be an expression exactly as it is written, function calls are not evaluated, variables are not replaced with a value, etc.
The easiest way is to use the list
function, which creates a list of elements after evaluating its arguments, for example:
(completing-read "input: " (list "1" "2" my-defvar))
Of course, you can also use the backquote syntax, as suggested in another answer. This allows you to quote a complex expression, but not specify (i.e. evaluate) parts of it. However, in this simple case, I do not think this is the right tool for the job.
source share