From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#2967: smart quotes in .emacs Date: Wed, 07 Jun 2017 08:09:30 +0300 Message-ID: <83vao88jud.fsf@gnu.org> References: <498421570904120553o69ee009dj544e0866b434b8a3@mail.gmail.com> <87ink8xxw7.fsf@users.sourceforge.net> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1496812210 15445 195.159.176.226 (7 Jun 2017 05:10:10 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 7 Jun 2017 05:10:10 +0000 (UTC) Cc: 2967@debbugs.gnu.org, monnier@iro.umontreal.ca, acm@muc.de To: npostavs@users.sourceforge.net Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jun 07 07:10:04 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 1dITEJ-0003gl-Vk for geb-bug-gnu-emacs@m.gmane.org; Wed, 07 Jun 2017 07:10:04 +0200 Original-Received: from localhost ([::1]:41250 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dITEP-00044J-8Z for geb-bug-gnu-emacs@m.gmane.org; Wed, 07 Jun 2017 01:10:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56613) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dITEJ-00044B-KY for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 01:10:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dITEI-0005PY-OB for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 01:10:03 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:57516) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dITEI-0005PR-LV for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 01:10:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dITEI-0004xt-Fv for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 01:10:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 05:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 2967 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 2967-submit@debbugs.gnu.org id=B2967.149681219619059 (code B ref 2967); Wed, 07 Jun 2017 05:10:02 +0000 Original-Received: (at 2967) by debbugs.gnu.org; 7 Jun 2017 05:09:56 +0000 Original-Received: from localhost ([127.0.0.1]:60193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dITEC-0004xL-8J for submit@debbugs.gnu.org; Wed, 07 Jun 2017 01:09:56 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:37366) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dITEA-0004x9-TI for 2967@debbugs.gnu.org; Wed, 07 Jun 2017 01:09:55 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dITE2-0005Gb-Ko for 2967@debbugs.gnu.org; Wed, 07 Jun 2017 01:09:49 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43108) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dITDt-0005Ab-Cj; Wed, 07 Jun 2017 01:09:37 -0400 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3578 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1dITDr-0003dz-S7; Wed, 07 Jun 2017 01:09:36 -0400 In-reply-to: <87ink8xxw7.fsf@users.sourceforge.net> (npostavs@users.sourceforge.net) 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:133360 Archived-At: > From: npostavs@users.sourceforge.net > Date: Tue, 06 Jun 2017 23:46:48 -0400 > Cc: 2967@debbugs.gnu.org, Alan Mackenzie , > Stefan Monnier > > --- i/src/lread.c > +++ w/src/lread.c > @@ -3349,6 +3349,15 @@ read1 (Lisp_Object readcharfun, int *pch, bool first_in_list) > ? multibyte_chars_in_text ((unsigned char *) read_buffer, > nbytes) > : nbytes); > + if (!quoted && multibyte) > + { > + switch (STRING_CHAR ((unsigned char *) read_buffer)) > + { > + case 0x2018: /* LEFT SINGLE QUOTATION MARK */ > + case 0x2019: /* RIGHT SINGLE QUOTATION MARK */ > + invalid_syntax ("strange quote"); > + } > + } > Lisp_Object name = ((uninterned_symbol && ! NILP (Vpurify_flag) > ? make_pure_string : make_specified_string) > (read_buffer, nchars, nbytes, multibyte)); > > We then get the following error from evaluating (read (format-message "'foo")): > > Debugger entered--Lisp error: (invalid-read-syntax "strange quote") > read("’foo") > eval((read (format-message "'foo")) nil) Please include the character itself in the error message text. Also, are we sure these two are the only ones we want to catch in this manner? Finally, if this is accepted, let's have a test for this, and maybe also some documentation, at least in NEWS. Thanks.