all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Lars Ingebrigtsen <larsi@gnus.org>
Cc: emacs-devel@gnu.org
Subject: Re: master 28bf387: Tweak Fdirectory_append for efficiency
Date: Sun, 25 Jul 2021 10:08:15 +0300	[thread overview]
Message-ID: <837dheyiow.fsf@gnu.org> (raw)
In-Reply-To: <87h7gizynp.fsf@gnus.org> (message from Lars Ingebrigtsen on Sun,  25 Jul 2021 08:38:02 +0200)

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: emacs-devel@gnu.org
> Date: Sun, 25 Jul 2021 08:38:02 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > You should indeed be able to do that, that's my case #2.  The case
> > that doesn't have to work and doesn't make sense is this
> >
> >   (multibyte-string-p (encode-coding-string "bár" 'latin-1))
> >   => nil
> >
> >   (multibyte-string-p "/tmp/bár")
> >   => t
> >
> >   (directory-append "/tmp/bár" (encode-coding-string "bár" 'latin-1))
> >   => "/tmp/b\303\241r/b\341r"
> 
> The function isn't really concerned with charsets -- that's an
> orthogonal issue.

I wasn't talking about charsets.  I used encode-coding-string just to
make sure the string is unibyte and emulates the file names we get
from the filesystem before file-coding-system and friends is set up
during startup.

IOW, what you see above is what will happen when the function gets
passed COMPONENTS some of which are multibyte, and some unibyte but
non-ASCII.  I'm saying that such a situation makes no sense, and
perhaps should be even flagged as an error, because it probably means
one of the COMPONENTS wasn't decoded correctly.  If you can describe a
situation where this is legitimate, please do.

> The user may well have a unibyte string that contains non-ASCII octets
> (note -- not characters), and I see no reason why a string concatenating
> function should refuse to handle those.  It's up to the caller.

I tried to explain that above.  If you are still unconvinced, so be
it.



      reply	other threads:[~2021-07-25  7:08 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-24 16:27 master 28bf387: Tweak Fdirectory_append for efficiency Eli Zaretskii
2021-07-24 16:29 ` Lars Ingebrigtsen
2021-07-24 16:36   ` Eli Zaretskii
2021-07-24 16:49     ` Lars Ingebrigtsen
2021-07-24 16:58       ` Eli Zaretskii
2021-07-24 17:05         ` Lars Ingebrigtsen
2021-07-24 17:13           ` Eli Zaretskii
2021-07-25  6:38             ` Lars Ingebrigtsen
2021-07-25  7:08               ` Eli Zaretskii [this message]

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=837dheyiow.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=larsi@gnus.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 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.