GNU bug report logs - #8262
string-make-*byte in elisp manual

Previous Next

Package: emacs;

Reported by: Arni Magnusson <arnima <at> hafro.is>

Date: Tue, 15 Mar 2011 21:37:02 UTC

Severity: normal

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


Message #10 received at 8262-done <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Arni Magnusson <arnima <at> hafro.is>
Cc: 8262-done <at> debbugs.gnu.org
Subject: Re: bug#8262: string-make-*byte in elisp manual
Date: Wed, 16 Mar 2011 13:40:50 -0400
> The elisp manual mentions the functions `string-make-multibyte' and
> string-make-unibyte' in two places (Sections 4.6 and 22.15), indicating that
> these functions are defined in greater detail in Section 33.2.

> This is not the case, however. Shouldn't these functions be defined in
> Section 33.2?

Thanks for spotting this.  Indeed, the functions now documented are
string-to-*byte instead, whose semantic is less likely to introduce bugs
(or rather more likely to make those bugs apparent rather than latent).
So I've installed the patch below.


        Stefan


=== modified file 'doc/lispref/keymaps.texi'
--- doc/lispref/keymaps.texi	2011-02-19 19:40:59 +0000
+++ doc/lispref/keymaps.texi	2011-03-16 14:39:56 +0000
@@ -1705,15 +1705,11 @@
 
 @noindent
 and your language environment is multibyte Latin-1, these commands
-actually bind the multibyte character with code 2294, not the unibyte
-Latin-1 character with code 246 (@kbd{M-v}).  In order to use this
-binding, you need to enter the multibyte Latin-1 character as keyboard
-input.  One way to do this is by using an appropriate input method
-(@pxref{Input Methods, , Input Methods, emacs, The GNU Emacs Manual}).
-
-  If you want to use a unibyte character in the key binding, you can
-construct the key sequence string using @code{multibyte-char-to-unibyte}
-or @code{string-make-unibyte} (@pxref{Converting Representations}).
+actually bind the multibyte character with code 246, not the byte
+code 246 (@kbd{M-v}) sent by a Latin-1 terminal.  In order to use this
+binding, you need to teach Emacs how to decode the keyboard by using an
+appropriate input method (@pxref{Input Methods, , Input Methods, emacs, The GNU
+Emacs Manual}).
 
 @deffn Command global-set-key key binding
 This function sets the binding of @var{key} in the current global map

=== modified file 'doc/lispref/nonascii.texi'
--- doc/lispref/nonascii.texi	2011-01-25 04:08:28 +0000
+++ doc/lispref/nonascii.texi	2011-03-16 14:44:14 +0000
@@ -167,7 +167,7 @@
 user that cannot be overridden automatically.
 
   Converting unibyte text to multibyte text leaves @acronym{ASCII}
-characters unchanged, and converts bytes with codes 128 through 159 to
+characters unchanged, and converts bytes with codes 128 through 255 to
 the multibyte representation of raw eight-bit bytes.
 
   Converting multibyte text to unibyte converts all @acronym{ASCII}

=== modified file 'doc/lispref/strings.texi'
--- doc/lispref/strings.texi	2011-01-25 04:08:28 +0000
+++ doc/lispref/strings.texi	2011-03-16 14:47:55 +0000
@@ -554,8 +554,8 @@
 @code{prin1-to-string} (@pxref{Output Functions}) can also convert
 Lisp objects into strings.  @code{read-from-string} (@pxref{Input
 Functions}) can ``convert'' a string representation of a Lisp object
-into an object.  The functions @code{string-make-multibyte} and
-@code{string-make-unibyte} convert the text representation of a string
+into an object.  The functions @code{string-to-multibyte} and
+@code{string-to-unibyte} convert the text representation of a string
 (@pxref{Converting Representations}).
 
   @xref{Documentation}, for functions that produce textual descriptions





This bug report was last modified 14 years and 129 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.