From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Insert character pairs Date: Thu, 29 Apr 2004 14:00:32 +0300 Organization: JURTA Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <87llkfoxpr.fsf@mail.jurta.org> References: <87brlb1840.fsf@mail.jurta.org> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1083237229 29872 80.91.224.253 (29 Apr 2004 11:13:49 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 29 Apr 2004 11:13:49 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Thu Apr 29 13:13:41 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BJ9U5-00022r-00 for ; Thu, 29 Apr 2004 13:13:41 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1BJ9U5-0002r9-00 for ; Thu, 29 Apr 2004 13:13:41 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BJ9Ps-0002fU-F6 for emacs-devel@quimby.gnus.org; Thu, 29 Apr 2004 07:09:20 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.30) id 1BJ9Oi-0002eb-8O for emacs-devel@gnu.org; Thu, 29 Apr 2004 07:08:08 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.30) id 1BJ9N6-0002Q3-Bc for emacs-devel@gnu.org; Thu, 29 Apr 2004 07:06:59 -0400 Original-Received: from [66.33.219.4] (helo=spork.dreamhost.com) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BJ9IG-0001Q7-UP for emacs-devel@gnu.org; Thu, 29 Apr 2004 07:01:29 -0400 Original-Received: from mail.jurta.org (80-235-36-125-dsl.mus.estpak.ee [80.235.36.125]) by spork.dreamhost.com (Postfix) with ESMTP id AABFB11DC1E; Thu, 29 Apr 2004 04:01:26 -0700 (PDT) Original-To: Andreas Schwab In-Reply-To: (Andreas Schwab's message of "Thu, 29 Apr 2004 12:12:21 +0200") User-Agent: Gnus/5.110002 (No Gnus v0.2) Emacs/21.3.50 (gnu/linux) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.4 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:22351 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:22351 Andreas Schwab writes: > Juri Linkov writes: >> (and parens-require-spaces >> (not (bobp)) >> - (memq (char-syntax (preceding-char)) '(?w ?_ ?\) )) >> + (memq (char-syntax (preceding-char)) (list ?w ?_ close)) > > This won't work, the list contains syntax codes, not characters. Actually, it does work for parentheses arguments, so it is still backward compatible. But, of course, you are right that it should be fixed, because it makes no sense for other characters whose syntax character doesn't coincide with the character itself. To fix it, it seems reasonable to check for character syntax of arguments before inserting a space, i.e. insert a space when character syntax of adjacent characters is the same, (plus ?w and ?_, i.e. inside words as it was before): - (memq (char-syntax (preceding-char)) '(?w ?_ ?\) )) + (memq (char-syntax (preceding-char)) (list ?w ?_ (char-syntax close))) - (memq (char-syntax (following-char)) '(?w ?_ ?\( )) + (memq (char-syntax (following-char)) (list ?w ?_ (char-syntax open))) -- Juri Linkov http://www.jurta.org/emacs/