unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Paul Eggert <eggert@cs.ucla.edu>
To: Dmitry Gutov <dgutov@yandex.ru>
Cc: emacs-devel@gnu.org
Subject: Re: [Emacs-diffs] master 9ce1d38: Use curved quotes in core elisp diagnostics
Date: Sat, 22 Aug 2015 16:45:46 -0700	[thread overview]
Message-ID: <55D909AA.90401@cs.ucla.edu> (raw)
In-Reply-To: <55D900EF.7090000@yandex.ru>

Dmitry Gutov wrote:

> An ambiguity in `format' can cause an unexpected error due to a
> program, say, being unable to open a file.

Yes, although that's a longstanding problem: it's not something that the recent 
quoting-style changes have introduced, and it's not something that we really 
need to address now.

That being said, we could attack the problem somewhat by having %qs not only 
quote its output, but also insert backslashes in front of each troublesome 
character (which should include the characters in the string "\n\\\"'‘’“”", 
say).  This would work only in output contexts where backslash escapes make 
sense, but that's reasonably common and anyway the output would be unambiguous, 
which is better than what we have now.

A possible downside of changing %q's behavior in this way is that it'll double 
backslashes in file names, and maybe MS-Windows users wouldn't like that.  For 
example, if NAME is the file name ‘C:\Documents and 
Settings\Eggert\Example.png’, then:

    (error "Cannot find image file %qs" name)

would output:

    Cannot find image file ‘C:\\Documents and Settings\\Eggert\\Example.png’

and the doubled backslashes could be a bit disconcerting.



  reply	other threads:[~2015-08-22 23:45 UTC|newest]

Thread overview: 212+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20150816160149.9416.80132@vcs.savannah.gnu.org>
     [not found] ` <E1ZR0NZ-0002SU-SM@vcs.savannah.gnu.org>
2015-08-16 21:44   ` [Emacs-diffs] master 9ce1d38: Use curved quotes in core elisp diagnostics Dmitry Gutov
2015-08-16 22:53     ` Alan Mackenzie
2015-08-16 23:16       ` Drew Adams
2015-08-18  3:40       ` Richard Stallman
2015-08-18  5:20         ` Paul Eggert
2015-08-18  8:56           ` Bastien
2015-08-18 17:34             ` Paul Eggert
2015-08-18 18:05               ` Andreas Schwab
2015-08-18 18:32                 ` Chad Brown
2015-08-18 19:42                   ` Alan Mackenzie
2015-08-18 20:17                     ` Drew Adams
2015-08-24 20:20                       ` Richard Stallman
2015-08-25 11:35                         ` Dmitry Gutov
2015-08-25 22:11                           ` Richard Stallman
2015-08-25 22:16                             ` Dmitry Gutov
2015-08-26 18:51                               ` Richard Stallman
2015-08-26 22:23                                 ` Jean-Christophe Helary
2015-08-26 22:39                                   ` David Kastrup
2015-08-26 22:53                                     ` Jean-Christophe Helary
2015-08-27  2:44                                       ` Eli Zaretskii
2015-08-27  3:11                                         ` Jean-Christophe Helary
2015-08-27  4:43                                         ` Jean-Christophe Helary
2015-08-27  4:49                                           ` Werner LEMBERG
2015-08-27 16:27                                           ` Richard Stallman
2015-08-27 16:27                                       ` Richard Stallman
2015-08-27  3:10                                   ` Alexis
2015-08-27  4:48                                     ` Werner LEMBERG
2015-08-27  4:52                                       ` Werner LEMBERG
2015-08-27  4:49                                     ` Paul Eggert
2015-08-27  5:08                                       ` Werner LEMBERG
2015-08-27  7:33                                         ` David Kastrup
2015-08-27  8:47                                         ` Paul Eggert
2015-08-27  8:56                                           ` Werner LEMBERG
2015-08-27 16:28                                           ` [TRUNCATED MESSAGE 2408 171455] " Richard Stallman
2015-08-27 17:44                                             ` Paul Eggert
2015-08-27 11:27                                       ` Alexis
2015-08-27 16:27                                       ` Richard Stallman
2015-08-27 17:16                                         ` Paul Eggert
2015-08-28  1:41                                           ` Richard Stallman
2015-08-28  2:02                                             ` Paul Eggert
2015-08-28  7:28                                               ` Eli Zaretskii
2015-08-28 21:17                                                 ` Richard Stallman
2015-08-28  8:12                                               ` Rasmus
2015-08-28  8:32                                                 ` Paul Eggert
2015-08-28  8:38                                                   ` Rasmus
2015-08-28  8:47                                                     ` Marcin Borkowski
2015-08-28  9:08                                                       ` Eli Zaretskii
2015-08-28  9:36                                                         ` Marcin Borkowski
2015-08-28  9:05                                                     ` Eli Zaretskii
2015-08-28  9:53                                                       ` Rasmus
2015-08-28 10:05                                                         ` Eli Zaretskii
2015-08-28 10:12                                                           ` Rasmus
2015-08-28 12:45                                                             ` Eli Zaretskii
2015-08-28 15:04                                                               ` Rasmus
2015-08-28 15:31                                                                 ` Eli Zaretskii
2015-08-28  9:01                                                   ` Eli Zaretskii
2015-08-28 16:40                                                 ` Stefan Monnier
2015-08-28 19:13                                                   ` Eli Zaretskii
2015-08-29 14:50                                                     ` Stefan Monnier
2015-08-29 16:15                                                       ` Eli Zaretskii
2015-08-30  2:00                                                         ` Stefan Monnier
2015-08-30 14:41                                                           ` Eli Zaretskii
2015-08-30 15:49                                                             ` David Kastrup
2015-08-31  1:33                                                             ` Stefan Monnier
2015-08-31 14:29                                                               ` Eli Zaretskii
2015-08-31 17:36                                                                 ` Stefan Monnier
2015-08-31 17:52                                                                   ` Eli Zaretskii
2015-09-01  3:33                                                                     ` Stefan Monnier
2015-08-28 21:20                                                   ` Richard Stallman
2015-08-28  7:21                                             ` Eli Zaretskii
2015-08-18 20:53                   ` Dmitry Gutov
2015-08-18 21:43                     ` Paul Eggert
2015-08-19  1:09                       ` Dmitry Gutov
2015-08-19 18:14                     ` Richard Stallman
2015-08-20 13:56                       ` Dmitry Gutov
2015-08-21  7:51                         ` Eli Zaretskii
2015-08-21 12:43                         ` Richard Stallman
2015-08-21 12:52                           ` David Kastrup
2015-08-22 17:30                             ` Richard Stallman
2015-08-21 13:58                         ` Ricardo Wurmus
2015-08-21 14:39                           ` Marcin Borkowski
2015-08-19  1:22                   ` Richard Stallman
2015-08-19  3:52                     ` Paul Eggert
2015-08-19 18:15                       ` Richard Stallman
2015-08-19 18:52                         ` Paul Eggert
2015-08-20 16:54                           ` Richard Stallman
2015-08-21  0:48                           ` Dmitry Gutov
2015-08-21  1:35                             ` Paul Eggert
2015-08-18 20:47               ` Dmitry Gutov
2015-08-19  1:24           ` Richard Stallman
2015-08-19  4:52             ` Paul Eggert
2015-08-24 20:20               ` Richard Stallman
2015-08-17  3:44     ` Paul Eggert
2015-08-17 11:09       ` Bastien Guerry
2015-08-17 16:39         ` Paul Eggert
2015-08-17 16:57           ` Bastien
2015-08-17 17:25             ` Paul Eggert
2015-08-17 17:47               ` Bastien
2015-08-17 11:33       ` Dmitry Gutov
2015-08-17 16:41         ` Paul Eggert
2015-08-17 11:47       ` Dmitry Gutov
2015-08-17 16:42         ` Paul Eggert
2015-08-17 18:11           ` Dmitry Gutov
2015-08-17 18:38             ` Paul Eggert
2015-08-17 18:50               ` Dmitry Gutov
2015-08-17 23:25                 ` Artur Malabarba
2015-08-17 23:55                 ` Paul Eggert
2015-08-18 11:31                   ` Dmitry Gutov
2015-08-19  6:28                     ` Paul Eggert
2015-08-19 13:30                       ` Dmitry Gutov
2015-08-19 22:21                         ` Paul Eggert
2015-08-19 22:38                           ` Dmitry Gutov
2015-08-20 13:55                           ` Paul Eggert
2015-08-21 23:47                             ` Dmitry Gutov
2015-08-22  0:19                               ` Paul Eggert
2015-08-22 12:45                                 ` Dmitry Gutov
2015-08-24 17:33                                   ` Paul Eggert
2015-08-25  7:11                                     ` Paul Eggert
2015-08-25 11:38                                       ` Dmitry Gutov
2015-08-25 18:03                                         ` Paul Eggert
2015-08-26  1:25                                           ` Stefan Monnier
2015-08-26  2:51                                             ` Paul Eggert
2015-08-20 16:56                           ` Richard Stallman
2015-08-20 19:32                             ` Paul Eggert
2015-08-22 16:31                               ` Dmitry Gutov
2015-08-22 18:48                                 ` Paul Eggert
2015-08-22 21:09                                   ` Dmitry Gutov
2015-08-22 22:43                                     ` Paul Eggert
2015-08-22 23:08                                       ` Dmitry Gutov
2015-08-22 23:45                                         ` Paul Eggert [this message]
2015-08-23  8:11                                           ` Dmitry Gutov
2015-08-23  9:48                                             ` Paul Eggert
2015-08-23 10:45                                               ` Dmitry Gutov
2015-08-23 10:48                                               ` Andreas Schwab
2015-08-24  5:47                                                 ` Paul Eggert
2015-08-23  4:30                                       ` Richard Stallman
2015-08-23  8:13                                         ` Dmitry Gutov
2015-08-24  0:08                               ` Richard Stallman
2015-08-24  1:10                                 ` Paul Eggert
2015-08-24 20:22                                   ` Richard Stallman
2015-08-24 20:20                       ` Richard Stallman
2015-08-24 22:25                         ` Paul Eggert
2015-08-25 22:10                           ` Richard Stallman
2015-08-26  6:13                             ` Paul Eggert
2015-08-17 12:15       ` Alan Mackenzie
2015-08-17 14:40         ` Drew Adams
2015-08-17 16:53           ` Eli Zaretskii
2015-08-17 19:06             ` Paul Eggert
2015-08-17 19:34               ` Eli Zaretskii
2015-08-17 16:53         ` Paul Eggert
2015-08-17 17:35           ` Alan Mackenzie
2015-08-18  2:55             ` Paul Eggert
2015-08-18 10:39               ` Alan Mackenzie
2015-08-18 16:45                 ` Paul Eggert
2015-08-18 17:17                   ` Alan Mackenzie
2015-08-18 19:25                     ` Paul Eggert
2015-08-18 20:42                       ` Alan Mackenzie
2015-08-18 21:40                         ` Paul Eggert
2015-08-18 22:44                           ` Óscar Fuentes
2015-08-18 23:11                             ` Bastien
2015-08-18 23:41                             ` Paul Eggert
2015-08-19  0:29                               ` Óscar Fuentes
2015-08-19  0:38                                 ` Óscar Fuentes
2015-08-19 18:15                               ` Richard Stallman
2015-08-19 18:40                                 ` Paul Eggert
2015-08-20 13:37                               ` Wolfgang Jenkner
2015-08-20 20:23                                 ` Paul Eggert
2015-08-21  7:41                                 ` Eli Zaretskii
2015-08-21 15:27                                   ` Stephen J. Turnbull
2015-08-22 17:29                                   ` Richard Stallman
2015-08-19  6:31                             ` Stephen J. Turnbull
2015-08-19  6:58                               ` Óscar Fuentes
2015-08-19  9:09                                 ` Stephen J. Turnbull
2015-08-19  9:13                                   ` Andreas Schwab
2015-08-19 14:05                                     ` Stephen J. Turnbull
2015-08-19 14:47                                       ` Andreas Schwab
2015-08-19 16:10                                         ` Stephen J. Turnbull
2015-08-20 23:46                                       ` Dmitry Gutov
2015-08-19 14:16                               ` Eli Zaretskii
2015-08-19 16:03                                 ` Stephen J. Turnbull
2015-08-22 17:27                                   ` Richard Stallman
2015-08-23  0:04                                     ` Stephen J. Turnbull
2015-08-24  0:05                                       ` Richard Stallman
2015-08-19 18:16                               ` Richard Stallman
2015-08-21  7:17                                 ` Eli Zaretskii
2015-08-22 17:27                                   ` Richard Stallman
2015-08-19 18:14                             ` Richard Stallman
2015-08-18 23:15                           ` Alan Mackenzie
2015-08-19  4:24                             ` Paul Eggert
2015-08-19  7:37                               ` Óscar Fuentes
2015-08-19 10:10                               ` Nicolas Richard
2015-08-19 14:26                                 ` Marcin Borkowski
2015-08-19 21:53                                 ` Paul Eggert
2015-08-20  7:20                                   ` Andreas Schwab
2015-08-20 13:31                                   ` Óscar Fuentes
2015-08-18 15:09             ` Yuri Khan
2015-08-18 15:24               ` Andreas Schwab
2015-08-18 15:48                 ` Yuri Khan
2015-08-18 15:48               ` Alan Mackenzie
2015-08-18 17:08                 ` Yuri Khan
2015-08-18 18:12                   ` Eli Zaretskii
2015-08-19  4:45                     ` Yuri Khan
2015-08-19 14:14                       ` Eli Zaretskii
2015-08-19  5:19                     ` Stephen J. Turnbull
2015-08-19 14:15                       ` Eli Zaretskii
2015-08-19 16:05                         ` Stephen J. Turnbull
2015-08-19  1:19             ` Richard Stallman
2015-08-17 18:22           ` Dmitry Gutov
2015-08-18  3:55             ` Stephen J. Turnbull
2015-08-18 10:51               ` Dmitry Gutov
2015-08-18 12:31               ` Óscar Fuentes
2015-08-18  3:44           ` Richard Stallman

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=55D909AA.90401@cs.ucla.edu \
    --to=eggert@cs.ucla.edu \
    --cc=dgutov@yandex.ru \
    --cc=emacs-devel@gnu.org \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).