[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#29763: New Feature: Remove unneeded eval-expression in minibuffer-hi
From: |
Eli Zaretskii |
Subject: |
bug#29763: New Feature: Remove unneeded eval-expression in minibuffer-history |
Date: |
Mon, 18 Dec 2017 17:46:32 +0200 |
> From: Robert Weiner <rsw@gnu.org>
> Date: Sun, 17 Dec 2017 23:13:17 -0500
>
> For as long as I can remember, I have wanted the minibuffer history to
> strip the eval-expression wrapper around expressions that I enter by
> invoking eval-expression with M-:. I want this because the wrapper
> adds a lot of visual noise when searching for a specific expression and
> makes it much harder to edit the expression and get trailing parentheses
> right.
>
> So if I enter:
>
> M-: (/ 1.0 9) RET
>
> then C-x ESC ESC shows me:
>
> (eval-expression (quote (/ 1.0 9)) nil nil 127)
>
> but I want to see just the expression that I want to reuse or edit:
>
> (/ 1.0 9)
Hmm... why is this particular command (M-:) being singled out? We
have a uniform behavior of "C-x ESC ESC" with all the commands: they
are stored and displayed as the equivalent Lisp expressions. E.g.:
C-x C-f ~/foo/bar RET
C-x ESC ESC
-| Redo: (find-file "~/foo/bar" t)
or even
M-x set-variable RET auto-hscroll-mode RER current-line RET
Cx ESC ESC
-| Redo: (set-variable (quote auto-hscroll-mode) (quote current-line) nil)
Moreover, "M-x list-command-history" also shows the above expanded
forms.
One could argue whether showing Lisp instead of something similar to
what the user actually typed is a good idea, whether it's educational
or not, but this is very old and consistent behavior. If we are going
to change that, I think the change should affect more than just M-:,
and should probably be an optional feature.