bug-gnu-emacs
[Top][All Lists]
Advanced

[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.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]