From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Robert Weiner Newsgroups: gmane.emacs.bugs Subject: bug#29763: New Feature: Remove unneeded eval-expression in minibuffer-history Date: Fri, 22 Dec 2017 09:21:38 -0500 Message-ID: References: <878tdu9awm.fsf@linux-m68k.org> Reply-To: rswgnu@gmail.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="001a1148cce8b18e880560ee8a1b" X-Trace: blaine.gmane.org 1513952483 20213 195.159.176.226 (22 Dec 2017 14:21:23 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 22 Dec 2017 14:21:23 +0000 (UTC) Cc: 29763@debbugs.gnu.org To: Andreas Schwab Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Dec 22 15:21:18 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eSOCJ-0004gR-EA for geb-bug-gnu-emacs@m.gmane.org; Fri, 22 Dec 2017 15:21:15 +0100 Original-Received: from localhost ([::1]:52437 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eSOEE-00056t-SM for geb-bug-gnu-emacs@m.gmane.org; Fri, 22 Dec 2017 09:23:14 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46614) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eSOE7-00056R-G9 for bug-gnu-emacs@gnu.org; Fri, 22 Dec 2017 09:23:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eSOE2-0005Q3-TC for bug-gnu-emacs@gnu.org; Fri, 22 Dec 2017 09:23:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:38392) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eSOE2-0005Pv-O9 for bug-gnu-emacs@gnu.org; Fri, 22 Dec 2017 09:23:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eSOE2-0005Cs-IW for bug-gnu-emacs@gnu.org; Fri, 22 Dec 2017 09:23:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Robert Weiner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 22 Dec 2017 14:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 29763 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 29763-submit@debbugs.gnu.org id=B29763.151395254119953 (code B ref 29763); Fri, 22 Dec 2017 14:23:02 +0000 Original-Received: (at 29763) by debbugs.gnu.org; 22 Dec 2017 14:22:21 +0000 Original-Received: from localhost ([127.0.0.1]:47073 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eSODN-0005Bl-Is for submit@debbugs.gnu.org; Fri, 22 Dec 2017 09:22:21 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:55381) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eSODL-0005BZ-Ls for 29763@debbugs.gnu.org; Fri, 22 Dec 2017 09:22:20 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eSODC-0004n6-0i for 29763@debbugs.gnu.org; Fri, 22 Dec 2017 09:22:14 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:54451) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eSODB-0004mu-Ry for 29763@debbugs.gnu.org; Fri, 22 Dec 2017 09:22:09 -0500 Original-Received: from mail-qk0-f179.google.com ([209.85.220.179]:43009) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1eSODB-0002Ol-CS for 29763@debbugs.gnu.org; Fri, 22 Dec 2017 09:22:09 -0500 Original-Received: by mail-qk0-f179.google.com with SMTP id j137so17130516qke.10 for <29763@debbugs.gnu.org>; Fri, 22 Dec 2017 06:22:09 -0800 (PST) X-Gm-Message-State: AKGB3mJ5/fiesafjqcGH0PR6MzeshwJM07PsPLCp2jSiqh6MmEHb4RVx BDAKt3+zqkO1JZf3L91nJ97am5GayUtKJ5bvfck= X-Google-Smtp-Source: ACJfBotghOtMCfca2/JEFRp5s0upnYayVRgkxRPizuDpYuXhxsgHDMQZ+bXwG7dYBLDDgr8engUJNVHyHgwfxvdhvfk= X-Received: by 10.55.6.22 with SMTP id 22mr19541085qkg.231.1513952528917; Fri, 22 Dec 2017 06:22:08 -0800 (PST) Original-Received: by 10.200.55.124 with HTTP; Fri, 22 Dec 2017 06:21:38 -0800 (PST) In-Reply-To: <878tdu9awm.fsf@linux-m68k.org> X-Gmail-Original-Message-ID: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:141380 Archived-At: --001a1148cce8b18e880560ee8a1b Content-Type: multipart/alternative; boundary="001a1148cce8b18e840560ee8a19" --001a1148cce8b18e840560ee8a19 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Dec 22, 2017 at 7:58 AM, Andreas Schwab wrote: > On Dez 17 2017, Robert Weiner wrote: > > > + (defun minibuffer-history-edit-element (elt) > > + "Automatically simplify ELT if possible, e.g. removing > eval-expression." > > + (or (and (consp elt) (eq (car elt) 'eval-expression) > > + ;; Remove eval-expression wrapper and leave just the expressio= n. > > + (cadadr elt)) > > That mishandles self-evaluating expressions, they are not wrapped with > quote. > =E2=80=8BYou are correct. This version resolves that issue and changes repeat-complex-command to use eval-expression instead of funcall-interactively to handle expressions rather than function calls, including properly redoing: (quote emacs-version) for example. See attached. Bob --001a1148cce8b18e840560ee8a19 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Fri, Dec 22, 2= 017 at 7:58 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
On Dez 17 2017, Robert Wein= er <rsw@gnu.org> wrote:

> + (defun minibuffer-history-edit-element (elt)
> +=C2=A0 =C2=A0"Automatically simplify ELT if possible, e.g. remov= ing eval-expression."
> +=C2=A0 =C2=A0(or (and (consp elt) (eq (car elt) 'eval-expression)=
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 ;; Remove eval-expression wrapper and lea= ve just the expression.
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 (cadadr elt))

That mishandles self-evaluating expressions, they are not wrapped with
quote.

=E2=80=8BYou are correct.=C2=A0 This vers= ion resolves that issue and changes
repeat-complex-command to use eval-exp= ression instead of
funcall-interactively to handle expressions rather than= function
calls, including properly redoing:

=C2=A0 =C2=A0(quote em= acs-version)

for example.

See attached.

Bob

--001a1148cce8b18e840560ee8a19-- --001a1148cce8b18e880560ee8a1b Content-Type: application/octet-stream; name="simple.el.patch" Content-Disposition: attachment; filename="simple.el.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jbi07p4v0 KioqIHNpbXBsZS1vcmlnLmVsLmd6CTIwMTctMTItMjIgMDk6MTU6MjkuMDAwMDAwMDAwIC0wNTAw Ci0tLSBzaW1wbGUuZWwuZ3oJMjAxNy0xMi0yMiAwOToxNToyOS4wMDAwMDAwMDAgLTA1MDAKKioq KioqKioqKioqKioqCioqKiAxNTYzLDE1NzIgKioqKgotLS0gMTU2MywxNTgxIC0tLS0KICAgICAg ICAgICAgICAgICAgICAgICAgICAoZXZhbC1leHByZXNzaW9uLXByaW50LWZvcm1hdCAoY2FyIHZh bHVlcykpKSkpCiAgICAgICAgICAgICh3aGVuIHN0ciAocHJpbmMgc3RyIG91dCkpKSkpKSkKICAK KyAoZGVmdW4gbWluaWJ1ZmZlci1oaXN0b3J5LWVkaXQtZWxlbWVudCAoZWx0KQorICAgIkF1dG9t YXRpY2FsbHkgc2ltcGxpZnkgRUxUIGlmIHBvc3NpYmxlLCBlLmcuIHJlbW92aW5nIGV2YWwtZXhw cmVzc2lvbi4iCisgICAgICh3aGVuIChhbmQgKGNvbnNwIGVsdCkgKGVxIChjYXIgZWx0KSAnZXZh bC1leHByZXNzaW9uKSkKKyAgICAgICAoc2V0cSBlbHQgKGNhZHIgZWx0KSkKKyAgICAgICAod2hl biAoYW5kIChjb25zcCBlbHQpIChlcSAoY2FyIGVsdCkgJ3F1b3RlKSkKKyAJKHNldHEgZWx0IChj YWRyIGVsdCkpKSkKKyAgICAgZWx0KQorIAogIChkZWZ1biBlZGl0LWFuZC1ldmFsLWNvbW1hbmQg KHByb21wdCBjb21tYW5kKQogICAgIlByb21wdGluZyB3aXRoIFBST01QVCwgbGV0IHVzZXIgZWRp dCBDT01NQU5EIGFuZCBldmFsIHJlc3VsdC4KICBDT01NQU5EIGlzIGEgTGlzcCBleHByZXNzaW9u LiAgTGV0IHVzZXIgZWRpdCB0aGF0IGV4cHJlc3Npb24gaW4KICB0aGUgbWluaWJ1ZmZlciwgdGhl biByZWFkIGFuZCBldmFsdWF0ZSB0aGUgcmVzdWx0LiIKKyAgIChzZXRxIGNvbW1hbmQgKG1pbmli dWZmZXItaGlzdG9yeS1lZGl0LWVsZW1lbnQgY29tbWFuZCkpCiAgICAobGV0ICgoY29tbWFuZAog IAkgKGxldCAoKHByaW50LWxldmVsIG5pbCkKICAJICAgICAgIChtaW5pYnVmZmVyLWhpc3Rvcnkt c2V4cC1mbGFnICgxKyAobWluaWJ1ZmZlci1kZXB0aCkpKSkKKioqKioqKioqKioqKioqCioqKiAx NjAxLDE2MDYgKioqKgotLS0gMTYxMCwxNjE2IC0tLS0KICAJbmV3Y21kKQogICAgICAoaWYgZWx0 CiAgCShwcm9nbgorIAkgIChzZXRxIGVsdCAobWluaWJ1ZmZlci1oaXN0b3J5LWVkaXQtZWxlbWVu dCBlbHQpKQogIAkgIChzZXRxIG5ld2NtZAogIAkJKGxldCAoKHByaW50LWxldmVsIG5pbCkKICAJ CSAgICAgIChtaW5pYnVmZmVyLWhpc3RvcnktcG9zaXRpb24gYXJnKQoqKioqKioqKioqKioqKioK KioqIDE2MjAsMTYyOCAqKioqCiAgCSAgOzsgYWRkIGl0IHRvIHRoZSBoaXN0b3J5LgogIAkgIChv ciAoZXF1YWwgbmV3Y21kIChjYXIgY29tbWFuZC1oaXN0b3J5KSkKICAJICAgICAgKHNldHEgY29t bWFuZC1oaXN0b3J5IChjb25zIG5ld2NtZCBjb21tYW5kLWhpc3RvcnkpKSkKISAgICAgICAgICAg KGFwcGx5ICMnZnVuY2FsbC1pbnRlcmFjdGl2ZWx5CiEgCQkgKGNhciBuZXdjbWQpCiEgCQkgKG1h cGNhciAobGFtYmRhIChlKSAoZXZhbCBlIHQpKSAoY2RyIG5ld2NtZCkpKSkKICAgICAgICAoaWYg Y29tbWFuZC1oaXN0b3J5CiAgCSAgKGVycm9yICJBcmd1bWVudCAlZCBpcyBiZXlvbmQgbGVuZ3Ro IG9mIGNvbW1hbmQgaGlzdG9yeSIgYXJnKQogIAkoZXJyb3IgIlRoZXJlIGFyZSBubyBwcmV2aW91 cyBjb21wbGV4IGNvbW1hbmRzIHRvIHJlcGVhdCIpKSkpKQotLS0gMTYzMCwxNjM2IC0tLS0KICAJ ICA7OyBhZGQgaXQgdG8gdGhlIGhpc3RvcnkuCiAgCSAgKG9yIChlcXVhbCBuZXdjbWQgKGNhciBj b21tYW5kLWhpc3RvcnkpKQogIAkgICAgICAoc2V0cSBjb21tYW5kLWhpc3RvcnkgKGNvbnMgbmV3 Y21kIGNvbW1hbmQtaGlzdG9yeSkpKQohIAkgIChldmFsLWV4cHJlc3Npb24gbmV3Y21kKSkKICAg ICAgICAoaWYgY29tbWFuZC1oaXN0b3J5CiAgCSAgKGVycm9yICJBcmd1bWVudCAlZCBpcyBiZXlv bmQgbGVuZ3RoIG9mIGNvbW1hbmQgaGlzdG9yeSIgYXJnKQogIAkoZXJyb3IgIlRoZXJlIGFyZSBu byBwcmV2aW91cyBjb21wbGV4IGNvbW1hbmRzIHRvIHJlcGVhdCIpKSkpKQoqKioqKioqKioqKioq KioKKioqIDIwNzAsMjA3NSAqKioqCi0tLSAyMDc4LDIwODQgLS0tLQogIAkgICAoc2V0cSBtaW5p YnVmZmVyLXRleHQtYmVmb3JlLWhpc3RvcnkgbmlsKSkKICAJICAodCAoc2V0cSBlbHQgKG50aCAo MS0gbWluaWJ1ZmZlci1oaXN0b3J5LXBvc2l0aW9uKQogIAkJCSAgICAoc3ltYm9sLXZhbHVlIG1p bmlidWZmZXItaGlzdG9yeS12YXJpYWJsZSkpKSkpCisgICAgIChzZXRxIGVsdCAobWluaWJ1ZmZl ci1oaXN0b3J5LWVkaXQtZWxlbWVudCBlbHQpKQogICAgICAoaW5zZXJ0CiAgICAgICAoaWYgKGFu ZCAoZXEgbWluaWJ1ZmZlci1oaXN0b3J5LXNleHAtZmxhZyAobWluaWJ1ZmZlci1kZXB0aCkpCiAg CSAgICAgIChub3QgbWluaWJ1ZmZlci1yZXR1cm5lZC10by1wcmVzZW50KSkK --001a1148cce8b18e880560ee8a1b--