From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: electric-pair-mode Date: Fri, 29 Nov 2013 08:44:57 -0500 Message-ID: References: <877gc1n9vb.fsf@tsdh.uni-koblenz.de> <87fvqf1yjm.fsf@thinkpad.tsdh.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1385732713 7822 80.91.229.3 (29 Nov 2013 13:45:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 29 Nov 2013 13:45:13 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Nov 29 14:45:18 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VmONh-0006GH-5P for ged-emacs-devel@m.gmane.org; Fri, 29 Nov 2013 14:45:17 +0100 Original-Received: from localhost ([::1]:47413 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VmONg-0002ys-Nc for ged-emacs-devel@m.gmane.org; Fri, 29 Nov 2013 08:45:16 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40010) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VmONV-0002jC-Vp for emacs-devel@gnu.org; Fri, 29 Nov 2013 08:45:13 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VmONO-0006hI-Ll for emacs-devel@gnu.org; Fri, 29 Nov 2013 08:45:05 -0500 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:29282) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VmONO-0006hC-Dp for emacs-devel@gnu.org; Fri, 29 Nov 2013 08:44:58 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av4EABK/CFHO+KEh/2dsb2JhbABEvw4Xc4IeAQEEAVYoCws0EhQYDYhCBsEtjWGDKQOIYZwZgV6DFQ X-IPAS-Result: Av4EABK/CFHO+KEh/2dsb2JhbABEvw4Xc4IeAQEEAVYoCws0EhQYDYhCBsEtjWGDKQOIYZwZgV6DFQ X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="40678998" Original-Received: from 206-248-161-33.dsl.teksavvy.com (HELO pastel.home) ([206.248.161.33]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 29 Nov 2013 08:44:57 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id 84C3260EFA; Fri, 29 Nov 2013 08:44:57 -0500 (EST) In-Reply-To: <87fvqf1yjm.fsf@thinkpad.tsdh.org> (Tassilo Horn's message of "Fri, 29 Nov 2013 08:01:49 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:165868 Archived-At: > Ok, now I've found a mode where it's a problem. AUCTeX has its own > TeX-ified brace pairing feature which for example knows that \left( has > to be closed by \right(, \{ by \}, etc. With `electric-pair-mode' > enabled, when typing a { I get two closing braces. Yes, that is a problem. AUCTeX's pairing should be made aware of electric-pair-mode (including being enabled/disabled by calling/setting electric-pair-mode as well). > Right now, I have "disabled" `electric-pair-mode' for auctex using: > ;; AUCTeX brace pairing feature doesn't play nice with `electric-pair-mode' > ;; which is a global minor mode as of emacs 24.4. > (when (and (boundp 'electric-pair-mode) > (boundp 'electric-pair-inhibit-predicate)) > (set (make-local-variable 'electric-pair-inhibit-predicate) > (lambda (char) t)))) A simpler way to disable it is to set electric-pair-mode to nil (buffer-locally). No need to check boundp of anything. > I somehow have the feeling that `electric-pair-mode' should only do its > magic if the opening paren/brace/bracket is inserted with > `self-insert-command'. What happens is that AUCTeX's pairing commands call self-insert-command. Stefan