all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Paul Eggert <eggert@cs.ucla.edu>
To: Alan Mackenzie <acm@muc.de>
Cc: 23425@debbugs.gnu.org
Subject: bug#23425: master branch: `message' wrongly corrupts ' to curly quote.
Date: Fri, 9 Jun 2017 14:44:54 -0700	[thread overview]
Message-ID: <3b2a119e-7c2e-e906-dea0-ae91aca80f33@cs.ucla.edu> (raw)
In-Reply-To: <20170609194141.GA3410@acm.fritz.box>

On 06/09/2017 12:41 PM, Alan Mackenzie wrote:

 > It's not OK to have two functions doing the same thing.

Nobody is proposing that. Although the proposed function is similar to 
the message function, it differs in that it does not restyle quotes. 
There is lots of precedent for having two functions with similar but not 
identical behavior: for example, the error and user-error functions.

 >> If having one single function would mean changing hundreds or 
thousands of callers, then there is an important sense in which one 
single function would not be better.
 >
 > That depends solely on whether anybody's prepared to do the work.

No, it also depends on people who have to deal with the modified code 
afterwards, as the resulting formats would be harder to read. And it 
depends not only on doing the work for Emacs itself, but also for 
third-party software written in Elisp. These are significant costs.

Users should not be required to litter their code with hard-to-read 
formats like "Can%'t encode %`0x%x%' with this buffer%'s coding system" 
to get decent quoting. This would be more error-prone than what we have 
now, and although I do not object to adding support for new formats I 
would object to requiring their use in place of what we have now.

 > You're proposing changing `message' to `memo' for those callers anyway.

No, existing callers such as (message "%s" filename) would continue to 
operate as before, and would not need to be changed.

 > This would leave unsolved the problem of format strings containing 
both literal quote characters and quote characters for possible 
replacement by curlies.

I don’t see this as a significant problem in practice. In practice, 
formats typically want all quotes translated, or no quotes translated. 
If I am wrong I would like to see practical examples of the problem 
before worrying about possible solutions.  One can address the problem 
without making any changes to Emacs; whether changing Emacs would be 
helpful depends on how the problem comes up in practice.

 >> We discussed and rejected more-“surreptitious” options back before 
his stuff was installed. For example, we discussed changing ‘format’ to 
behave like ‘format-message’ does now.
 >
 > In effect, that's what was actually done.

Not at all. Had we made the more-drastic change, we would have had to 
rewrite calls like (format "\\`%s" not-word-symbol-re). This would have 
been considerably more work, and would have resulted in far more 
compatibility problems, than the change that was eventually installed.






  parent reply	other threads:[~2017-06-09 21:44 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-02 14:55 bug#23425: master branch: `message' wrongly corrupts ' to curly quote Alan Mackenzie
2016-05-02 16:25 ` Lars Ingebrigtsen
2016-05-02 16:41   ` Drew Adams
2016-05-02 17:53 ` Paul Eggert
2016-05-02 19:10   ` Alan Mackenzie
2016-05-03 15:17     ` Paul Eggert
2016-05-03 16:36       ` Drew Adams
2016-05-03 16:59         ` Eli Zaretskii
2016-05-03 15:38     ` Eli Zaretskii
2016-05-03 16:27       ` Alan Mackenzie
2016-05-03 16:55         ` Eli Zaretskii
2016-05-03 20:03           ` Alan Mackenzie
2016-05-03 20:49             ` Paul Eggert
2016-05-04 15:32             ` Eli Zaretskii
2016-05-04 16:48               ` Alan Mackenzie
2016-05-04 17:03                 ` Eli Zaretskii
2016-05-04 17:37                   ` Josh
2016-05-04 19:05                     ` Eli Zaretskii
2016-05-04 18:04                   ` Alan Mackenzie
2016-05-04 18:39                     ` Paul Eggert
2016-05-04 18:57                       ` Alan Mackenzie
2016-05-04 19:02                         ` John Wiegley
2016-05-04 21:34                         ` Paul Eggert
2016-05-04 21:50                         ` Paul Eggert
2016-05-04 23:49                       ` Paul Eggert
2016-05-05 15:51                         ` Eli Zaretskii
2016-05-10 14:41                           ` Paul Eggert
2017-05-31  1:07                             ` Glenn Morris
2017-05-31  1:42                               ` Paul Eggert
2017-05-31 21:24                                 ` Alan Mackenzie
2017-05-31 23:26                                   ` Paul Eggert
2017-06-02 21:02                                     ` Alan Mackenzie
2017-06-02 21:15                                       ` Dmitry Gutov
2017-06-03 21:10                                         ` Alan Mackenzie
2017-06-03 21:10                                         ` Alan Mackenzie
2017-06-03 21:32                                           ` Dmitry Gutov
2017-06-03 21:32                                           ` Dmitry Gutov
2017-06-02 21:47                                       ` Paul Eggert
2017-06-03  0:13                                         ` Glenn Morris
2017-06-03 21:01                                           ` Alan Mackenzie
2017-06-03 21:01                                           ` Alan Mackenzie
2017-06-03 20:53                                         ` Alan Mackenzie
2017-06-03 20:53                                         ` Alan Mackenzie
2017-06-04 21:01                                           ` Paul Eggert
2017-06-05 16:27                                             ` Alan Mackenzie
2017-06-05 16:27                                             ` Alan Mackenzie
2017-06-05 18:19                                               ` Paul Eggert
2017-06-05 18:31                                                 ` Andreas Schwab
2017-06-05 18:31                                                 ` Andreas Schwab
2017-06-05 20:37                                                 ` Alan Mackenzie
2017-06-05 21:05                                                   ` Clément Pit-Claudel
2017-06-07 16:50                                                     ` Alan Mackenzie
2017-06-07 19:29                                                       ` Clément Pit-Claudel
2017-06-07 19:29                                                       ` Clément Pit-Claudel
2017-06-06  0:14                                                   ` Paul Eggert
2017-06-06  8:21                                                     ` Andreas Schwab
2017-06-06 12:24                                                       ` Clément Pit-Claudel
2017-06-06 13:55                                                         ` Yuri Khan
2017-06-06 18:21                                                           ` Clément Pit-Claudel
2017-06-06 18:59                                                             ` Yuri Khan
2017-06-06 19:39                                                               ` Clément Pit-Claudel
2017-06-06 19:39                                                               ` Clément Pit-Claudel
2017-06-07  4:57                                                                 ` Eli Zaretskii
2017-06-07  4:57                                                                 ` Eli Zaretskii
2017-06-06 18:59                                                             ` Yuri Khan
2017-06-06 13:55                                                         ` Yuri Khan
2017-06-06 12:24                                                       ` Clément Pit-Claudel
2017-06-06 23:09                                                       ` Paul Eggert
2017-06-07  7:44                                                         ` Andreas Schwab
2017-06-07 18:17                                                           ` Paul Eggert
2017-06-08  8:04                                                             ` Andreas Schwab
2017-06-07 13:27                                                         ` Drew Adams
2017-06-07 13:27                                                         ` Drew Adams
2017-06-06  8:21                                                     ` Andreas Schwab
2017-06-07 19:13                                                     ` Alan Mackenzie
2017-06-07 19:27                                                       ` Clément Pit-Claudel
2017-06-07 19:33                                                         ` Dmitry Gutov
2017-06-07 19:33                                                         ` Dmitry Gutov
2017-06-07 19:51                                                         ` Alan Mackenzie
2017-06-07 19:51                                                         ` Alan Mackenzie
2017-06-07 20:33                                                         ` Alan Mackenzie
2017-06-07 20:33                                                         ` Alan Mackenzie
2017-06-07 20:56                                                           ` Drew Adams
2017-06-07 22:05                                                             ` `message' with quotes [was: bug#23425: `message' wrongly corrupts ' to curly quote] Drew Adams
2017-06-08 17:49                                                               ` Alan Mackenzie
2017-06-07 19:27                                                       ` bug#23425: master branch: `message' wrongly corrupts ' to curly quote Clément Pit-Claudel
2017-06-07 23:28                                                       ` Paul Eggert
2017-06-08 17:34                                                         ` Alan Mackenzie
2017-06-08 20:17                                                           ` Paul Eggert
2017-06-09 19:41                                                             ` Alan Mackenzie
2017-06-09 20:17                                                               ` Drew Adams
2017-06-09 20:38                                                                 ` Alan Mackenzie
2017-06-09 21:05                                                                   ` Drew Adams
2017-06-09 21:44                                                               ` Paul Eggert [this message]
2017-06-09 22:51                                                                 ` Drew Adams
2017-06-10  0:20                                                                   ` Paul Eggert
2017-06-10 10:01                                                                     ` Alan Mackenzie
2017-06-10 10:52                                                                       ` David Engster
2017-06-10 11:48                                                                         ` Eli Zaretskii
2017-06-10 13:01                                                                         ` Alan Mackenzie
2017-06-10 13:39                                                                           ` Eli Zaretskii
2017-06-11 10:03                                                                             ` Alan Mackenzie
2017-06-11 14:37                                                                               ` Eli Zaretskii
2017-06-10 15:28                                                                           ` Dmitry Gutov
2017-06-05 20:37                                                 ` Alan Mackenzie
2017-06-05 18:19                                               ` Paul Eggert
2017-06-01 16:56                                   ` Glenn Morris
2017-06-03 21:07                                     ` Alan Mackenzie
2017-06-03 21:07                                     ` Alan Mackenzie
2016-05-04 18:46                     ` John Wiegley
2016-05-04 20:23                       ` Dmitry Gutov
2016-05-04 21:15                         ` John Wiegley
2016-05-04 22:19                           ` Lars Ingebrigtsen
2016-05-05  7:12                             ` Andreas Schwab
2016-05-05 17:05                         ` Eli Zaretskii
2016-05-05  8:06                       ` Alan Mackenzie
2016-05-05 17:06                       ` Eli Zaretskii
2016-05-05 23:46                         ` John Wiegley
2016-05-06  8:54                         ` Nicolas Petton
2016-05-04 19:08                     ` Eli Zaretskii
2016-05-04 21:49               ` Andreas Schwab
2017-06-09 20:31 ` Glenn Morris
2017-06-10  7:08   ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3b2a119e-7c2e-e906-dea0-ae91aca80f33@cs.ucla.edu \
    --to=eggert@cs.ucla.edu \
    --cc=23425@debbugs.gnu.org \
    --cc=acm@muc.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.