Re: `read-from-minibuffer' seems to always return a multibyte string, but why?
Eli Zaretskii <[email protected]>
| Newsgroups | gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
> From: Nickolai Dobrynin <[email protected]> > Cc: [email protected] > Date: Tue, 25 Aug 2026 20:46:40 +0200 > > One question remains, though: what is the mechanism by which > `read-from-minibuffer' is returning a multibyte string here? The value it returns is a string produced from minibuffer text. When Emacs does this (with functions like buffer-string), it makes sure the resulting string is multibyte if the buffer is multibyte, else unibyte. Because nothing else makes sense, right? > Since `inherit-input-method' is nil, the minibuffer, according to > the manual, does NOT inherit the current input method and the > multibyteness of the previous current buffer. This description makes > it sound like setting the final argument to nil places the function > in the unibyte mode. > > I know, I'm wrong, but where exactly am I wrong? I think you forget that by default all Emacs buffers are multibyte. See the doc string of enable-multibyte-characters, which is a per-buffer variable.