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: Escaping quotes in docstrings, Was: A simple solution to "Upcoming loss of usability ..." Date: Wed, 01 Jul 2015 23:57:31 -0700 Organization: UCLA Computer Science Department Message-ID: <5594E0DB.1080702@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> <558EDD4C.4040002@cs.ucla.edu> <558EE315.3080107@yandex.ru> <558F10FA.409@cs.ucla.edu> <558F4804.1020406@yandex.ru> <559010D6.5090905@cs.ucla.edu> <559058AD.5060504@yandex.ru> <55908355.3080407@yandex.ru> <559356D2.4000103@cs.ucla.edu> <5594813A.3000705@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1435820274 13915 80.91.229.3 (2 Jul 2015 06:57:54 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 2 Jul 2015 06:57:54 +0000 (UTC) To: Dmitry Gutov , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 02 08:57:44 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 1ZAYRM-0008PZ-8g for ged-emacs-devel@m.gmane.org; Thu, 02 Jul 2015 08:57:44 +0200 Original-Received: from localhost ([::1]:34879 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAYRL-0000A5-CG for ged-emacs-devel@m.gmane.org; Thu, 02 Jul 2015 02:57:43 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55303) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAYRH-00009k-Ln for emacs-devel@gnu.org; Thu, 02 Jul 2015 02:57:40 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZAYRC-0005J5-LR for emacs-devel@gnu.org; Thu, 02 Jul 2015 02:57:39 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:59963) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAYRC-0005Iu-G2 for emacs-devel@gnu.org; Thu, 02 Jul 2015 02:57:34 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 0E95F1608CC; Wed, 1 Jul 2015 23:57:33 -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 z1O2AmarnTrJ; Wed, 1 Jul 2015 23:57:32 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 48987160660; Wed, 1 Jul 2015 23:57:32 -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 ObPmErO7OlDb; Wed, 1 Jul 2015 23:57:32 -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 20F6616019D; Wed, 1 Jul 2015 23:57:32 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 In-Reply-To: <5594813A.3000705@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:187706 Archived-At: Dmitry Gutov wrote: > It's the same if you copy some syntax-highlighted text (say, from src/doc.c) to > /tmp/foo and save it. Kill the buffer, reopen - the highlighting is gone! :) > That may seem counter-intuitive, but it's something Emacs users are generally > familiar with. I've seen highlighting vanish, but I've never seen the characters change. Anyway.... >> How about the following idea instead. Instead of displaying grave >> accent and apostrophe specially, have with-help-window transliterate >> these characters in place before displaying itself as usual. > > That should work, too. In help-mode-finish, before help-make-xrefs. OK, let's shoot for that instead. > For us to go there, could you please make substitute-command-keys add the > `escaped' property to the escaped characters in its output? And push it to > scratch/quote-escaping. OK, I'll look into that. >>> + (unless (get-text-property mbeg 'help-value) >> >> Supposed the matched string is partly help-value, and partly not. E.g., >> mbeg has help-value but mbeg+1 does not but mbeg+2 does. Shouldn't this >> test that all the matched characters are not help-value characters? > > Why? I'm assuming the value is separated from the other contents by whitespace > or newlines. I don't think that's a safe assumption. It's common for quoted help-values to be jammed into the middle of other text. >>> + (buffer-substring-no-properties >>> + mend (1+ mend))) >> >> This may go haywire if it returns "\t", because a TAB is special to >> compose-region. Also, what if the buffer has some properties other than >> help-value that should be preserved? > > Err, I don't think the current code deletes any existing properties, it only > changes how the buffer looks. But buffer-substring-no-properties has no properties in the result, right? So effectively they're removed. And what about the TAB?