From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: A simple solution to "Upcoming loss of usability ..." Date: Sat, 27 Jun 2015 10:28:44 -0700 Organization: UCLA Computer Science Department Message-ID: <558EDD4C.4040002@cs.ucla.edu> References: <87egkzg7gb.fsf@gmail.com> <558C2E25.10303@cs.ucla.edu> <558C492E.9000705@yandex.ru> <558C7DE1.4060507@cs.ucla.edu> <558C82D2.1070408@yandex.ru> <558CBA7E.7060900@cs.ucla.edu> <558D403D.303@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1435426160 30453 80.91.229.3 (27 Jun 2015 17:29:20 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 27 Jun 2015 17:29:20 +0000 (UTC) To: Dmitry Gutov , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Jun 27 19:29:11 2015 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 1Z8tuf-0004lV-0o for ged-emacs-devel@m.gmane.org; Sat, 27 Jun 2015 19:29:09 +0200 Original-Received: from localhost ([::1]:36198 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8tuZ-0006lb-3R for ged-emacs-devel@m.gmane.org; Sat, 27 Jun 2015 13:29:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47924) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8tuN-0006lW-QG for emacs-devel@gnu.org; Sat, 27 Jun 2015 13:28:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z8tuI-0000LK-Qk for emacs-devel@gnu.org; Sat, 27 Jun 2015 13:28:51 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:56319) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8tuI-0000LG-I3 for emacs-devel@gnu.org; Sat, 27 Jun 2015 13:28:46 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 339B8160848; Sat, 27 Jun 2015 10:28:45 -0700 (PDT) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 2kaFhQvyiGIU; Sat, 27 Jun 2015 10:28:44 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 5F8ED160849; Sat, 27 Jun 2015 10:28:44 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id KjhBvIVbKEcR; Sat, 27 Jun 2015 10:28:44 -0700 (PDT) Original-Received: from [192.168.1.9] (pool-100-32-155-148.lsanca.fios.verizon.net [100.32.155.148]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 41FCE160660; Sat, 27 Jun 2015 10:28:44 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 In-Reply-To: <558D403D.303@yandex.ru> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 131.179.128.68 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:187598 Archived-At: Dmitry Gutov wrote: > On 06/26/2015 05:35 AM, Paul Eggert wrote: >> I just now tried it against the current master (commit >> 99ad90dcb1beccde926d9b6475a393c6f8743f5c), and didn't notice any >> difference in display. > Like mentioned in the preceding email, that patch is against f743819. > > But if you were looking for changes to revert, those would be the uses = of curly > quotes as markup in the source code, the new `substitute-command-keys' = calls, as > well as the code in `substitute-command-keys' that performs quote repla= cement. In that case I don't understand the patch being against f743819. f743819= =20 already has some curved quotes in docstrings, to avoid ambiguities of usi= ng=20 grave accent and apostrophe to quote. So that patch against f743819 won'= t=20 determine whether font-lock can address this issue without using curved q= uotes=20 in docstrings. Even with this in mind, though, the patch mishandles some quotes. For ex= ample,=20 the docstring for texinfo-format-verb contains: For example, @verb\{|@|\} results in @ and @verb\{+@'e?`!`+} results in @'e?`!`. The patch displays this as: For example, @verb{|@|} results in @ and @verb{+@'e?`!=E2=80=98+} results in @=E2=80=99e?`!`. which is incorrect: those curved quotes should be grave accent and apostr= ophe. It'd be impractical to work around this sort of problem entirely with cle= ver=20 font-lock regular expressions. We will need some escape syntax to suppre= ss=20 transliteration for exceptional docstrings like the above. I think you'v= e=20 mentioned the need for that sort of thing, but it's not clear what it wou= ld look=20 like or how it would be implemented with font-lock. Plus, as we've mentioned, the patch can mishandle user-supplied values th= at=20 contain grave accent and apostrophe. > It will be very easy to limit the conversion to only within strings. As I understand it we gave up on transliteration of Elisp source code aft= er you=20 wrote the above, so for now I'll not comment on this point (or the other = points=20 of the message that talk about transliterating source code). > Is Info actually relevant in this discussion? Looking at info.el, it se= ems to > deal files where quotes have already been translated > (Info-mode-font-lock-keywords indicates that), so maybe neither > substitute-command-keys, nor the new font-lock rules, have to do anythi= ng about > quotes there. It's relevant, as it uses and displays the curved quotes that some users = find=20 objectionable, and did so even in 24.5. But it's fine with me if we leav= e Info=20 mode alone. In practice it works reasonably well in 24.5.