Mercurial > emacs
changeset 3632:72cfde0cd8cd
(Fdescribe_vector): Use current buf, not standard-output.
(describe_vector_princ): Add newline at end.
(store_in_keymap, access_keymap): Use CHAR_META
when clearing excess high bits.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 11 Jun 1993 04:16:13 +0000 |
parents | 0c063224b5d2 |
children | 47680ad33068 |
files | src/keymap.c |
diffstat | 1 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/keymap.c Fri Jun 11 03:56:44 1993 +0000 +++ b/src/keymap.c Fri Jun 11 04:16:13 1993 +0000 @@ -275,7 +275,7 @@ else if (INTEGERP (idx)) /* Clobber the high bits that can be present on a machine with more than 24 bits of integer. */ - XFASTINT (idx) = XINT (idx) & ((1 << 24) - 1); + XFASTINT (idx) = XINT (idx) & (CHAR_META | (CHAR_META - 1)); { Lisp_Object tail; @@ -375,7 +375,7 @@ else if (INTEGERP (idx)) /* Clobber the high bits that can be present on a machine with more than 24 bits of integer. */ - XFASTINT (idx) = XINT (idx) & ((1 << 24) - 1); + XFASTINT (idx) = XINT (idx) & (CHAR_META | (CHAR_META - 1)); /* Scan the keymap for a binding of idx. */ { @@ -1861,16 +1861,22 @@ Lisp_Object elt; { Fprinc (elt, Qnil); + Fterpri (Qnil); } DEFUN ("describe-vector", Fdescribe_vector, Sdescribe_vector, 1, 1, 0, - "Print on `standard-output' a description of contents of VECTOR.\n\ + "Insert a description of contents of VECTOR.\n\ This is text showing the elements of vector matched against indices.") (vector) Lisp_Object vector; { + int count = specpdl_ptr - specpdl; + + specbind (Qstandard_output, Fcurrent_buffer ()); CHECK_VECTOR (vector, 0); describe_vector (vector, Qnil, describe_vector_princ, 0, Qnil); + + return unbind_to (count, Qnil); } describe_vector (vector, elt_prefix, elt_describer, partial, shadow)