Mercurial > hg > xemacs-beta
comparison src/editfns.c @ 4329:d9eb5ea14f65
Provide %b in #'format; use it for converting between ints and bit vectors.
lisp/ChangeLog addition:
2007-12-17 Aidan Kehoe <kehoea@parhasard.net>
* subr.el (integer-to-bit-vector): New.
* subr.el (bit-vector-to-integer): New.
Provide naive implementations using the Lisp reader for these.
src/ChangeLog addition:
2007-12-17 Aidan Kehoe <kehoea@parhasard.net>
* doprnt.c (emacs_doprnt_1):
Add support for formatted printing of both longs and bignums as
base 2.
* editfns.c (Fformat):
Document the new %b escape for #'format.
* lisp.h:
Make ulong_to_bit_string available beside long_to_string.
* lread.c:
Fix a bug where the integer base was being ignored in certain
contexts; thank you Sebastian Freundt. This is necessary for
correct behaviour of #'integer-to-bit-vector and
#'bit-vector-to-integer, just added to subr.el
* print.c (ulong_to_bit_string): New.
Analagous to long_to_string, but used all the time when %b is
encountered, since we can't pass that to sprintf.
man/ChangeLog addition:
2007-12-17 Aidan Kehoe <kehoea@parhasard.net>
* lispref/strings.texi (Formatting Strings):
Document %b for binary output.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Mon, 17 Dec 2007 08:44:14 +0100 |
parents | c5a2b80bc4fa |
children | c661944aa259 |
comparison
equal
deleted
inserted
replaced
4328:dfd878799ef0 | 4329:d9eb5ea14f65 |
---|---|
2153 The other arguments are substituted into it to make the result, a string. | 2153 The other arguments are substituted into it to make the result, a string. |
2154 It may contain %-sequences meaning to substitute the next argument. | 2154 It may contain %-sequences meaning to substitute the next argument. |
2155 %s means print all objects as-is, using `princ'. | 2155 %s means print all objects as-is, using `princ'. |
2156 %S means print all objects as s-expressions, using `prin1'. | 2156 %S means print all objects as s-expressions, using `prin1'. |
2157 %d or %i means print as an integer in decimal (%o octal, %x lowercase hex, | 2157 %d or %i means print as an integer in decimal (%o octal, %x lowercase hex, |
2158 %X uppercase hex). | 2158 %X uppercase hex, %b binary). |
2159 %c means print as a single character. | 2159 %c means print as a single character. |
2160 %f means print as a floating-point number in fixed notation (e.g. 785.200). | 2160 %f means print as a floating-point number in fixed notation (e.g. 785.200). |
2161 %e or %E means print as a floating-point number in scientific notation | 2161 %e or %E means print as a floating-point number in scientific notation |
2162 (e.g. 7.85200e+03). | 2162 (e.g. 7.85200e+03). |
2163 %g or %G means print as a floating-point number in "pretty format"; | 2163 %g or %G means print as a floating-point number in "pretty format"; |