From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#33840: electric-pair-mode breaks self-insert-command Date: Wed, 10 Jul 2019 13:34:26 +0200 Message-ID: References: <20181223023841.GA4289@ACM> <87r26yq1dn.fsf@mouse.gnus.org> <20190710093956.GA4109@ACM> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="114266"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: 33840@debbugs.gnu.org To: Alan Mackenzie Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jul 10 13:46:07 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hlB31-000TYh-Di for geb-bug-gnu-emacs@m.gmane.org; Wed, 10 Jul 2019 13:46:07 +0200 Original-Received: from localhost ([::1]:60106 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hlAse-0000lF-5e for geb-bug-gnu-emacs@m.gmane.org; Wed, 10 Jul 2019 07:35:24 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:38048) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hlAsV-0000l1-I6 for bug-gnu-emacs@gnu.org; Wed, 10 Jul 2019 07:35:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hlAsS-0001K4-KR for bug-gnu-emacs@gnu.org; Wed, 10 Jul 2019 07:35:15 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:54340) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hlAsI-0001Ar-Pc for bug-gnu-emacs@gnu.org; Wed, 10 Jul 2019 07:35:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hlAsI-0006pB-Ky for bug-gnu-emacs@gnu.org; Wed, 10 Jul 2019 07:35:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 10 Jul 2019 11:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33840 X-GNU-PR-Package: emacs Original-Received: via spool by 33840-submit@debbugs.gnu.org id=B33840.156275847326178 (code B ref 33840); Wed, 10 Jul 2019 11:35:02 +0000 Original-Received: (at 33840) by debbugs.gnu.org; 10 Jul 2019 11:34:33 +0000 Original-Received: from localhost ([127.0.0.1]:34925 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hlAro-0006o9-W3 for submit@debbugs.gnu.org; Wed, 10 Jul 2019 07:34:33 -0400 Original-Received: from quimby.gnus.org ([80.91.231.51]:36026) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hlArm-0006o0-Bd for 33840@debbugs.gnu.org; Wed, 10 Jul 2019 07:34:31 -0400 Original-Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=stories) by quimby.gnus.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hlAri-0008Ek-C9; Wed, 10 Jul 2019 13:34:28 +0200 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEXa2djt7eyjoZ/k5OL+ //79/f3Ozcu+vbvUGkYsAAACbUlEQVQ4jbWPQY/bIBCFh0WBayjr3WuWSuYKQeucI/UHxHV3eyWx CleHaJm/38HaVlXV3tqJjZT38d4bw6e/DPx7cDF7Y2q25e03oGiCV2q8/0PUZfeftjq+3Hfq2L2o o3pR6mXsuu44fulGoEXGsaOD1hpV9/OAcZWaOoZf2Ahk7byaVOg6HVZxZR1FKa2U95ruB0Ws+YhQ lOp8mJra3uC1Hn3rUJ4FPWn6T4Te8Bx8iwOvp4n0QIhuB6b96u1g9DTPwXnwIfjANScLdQIn3Tnt mQPVHrZtcUqDnk5bz3jYauD0bGFq1knDc+BnDm7LuGuyage1KdDMnU6nLUuOicSAB9AuTCHA9kT3 4TwLnkJKWmzIwjcENvG8YVwMbhbRJSYiSQBaw0m8PgyCz3FwaR4ag+iBeQDGYT7HNMxcJC7mB0qE LVUxYFEMwyNUASk+JJfgAZgL8CpeJYF4wxQhrSxA8hTzFq/fzkuSoqYoq6s8UWjUQM3DkHOOi0h1 wDkvcxKO3CKKKOPtVnNMOeYKGA8pugjzTCqmLCUdGDFK5DHR13wVj4d9fjzkijXiInHIbb9E5fVa r0tfMdvaLIQjgIBHKQeUWC5YsdTcJ6yyEoElStpJ1l2PtVhpF8RKKwS41Xrtn2xvS7HZNEaEKkDu P8jL57LfX9BYNLJUakIiy7I87eyut9YWUw2tkGtCRDgcqDkXNIVeYn2h76Ef1Frxcil3xVqDpjem VbStbsuu7z9SEmm2WCxmbeBw16Y57ooxxVBeM2Gl8h1ZemNNG4KNWCqnCkTzY2zT1qEoqqZpl1eX pYpWbvr3eQ9bc4h9B6WuB3+i6A6mAAAAAElFTkSuQmCC In-Reply-To: <20190710093956.GA4109@ACM> (Alan Mackenzie's message of "Wed, 10 Jul 2019 09:39:56 +0000") 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: 209.51.188.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:162614 Archived-At: Alan Mackenzie writes: > self-insert-command is a primitive, and it shouldn't be modified to do > other things. Instead these other things should be done alongside the > primitive, or after it. > > Similarly, you would not modify + such that (+ 2 3) =3D> 6, even if you h= ad > a use case where you wanted this strange arithmetic. I agree that modifying primitives is really confusing and should be avoided, but I don't think self-insert-command is ... very primitive. :-) I mean, look at the doc string: --- (self-insert-command N &optional C) Probably introduced at or before Emacs version 22.1. Insert the character you type. Whichever character C you type to run this command is inserted. The numeric prefix argument N says how many times to repeat the insertion. Before insertion, =E2=80=98expand-abbrev=E2=80=99 is executed if the insert= ed character does not have word syntax and the previous character in the buffer does. After insertion, =E2=80=98internal-auto-fill=E2=80=99 is called if =E2=80=98auto-fill-function=E2=80=99 is non-nil and if the =E2=80=98auto-fi= ll-chars=E2=80=99 table has a non-nil value for the inserted character. At the end, it runs =E2=80=98post-self-insert-hook=E2=80=99. --- There's a lot of stuff going on there! It sounds more like a "don't use this function from code unless you want unpredictable things to happen" thing to me... > Being realistic, I now don't really expect this bug to be fixed. It > would cost too much. But if you are going to close it, please mark it as > "won't fix" and _not_ "not a bug". Will do. :-) --=20 (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no