aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman <[email protected]>1993-06-11 04:16:13 +0000
committerRichard M. Stallman <[email protected]>1993-06-11 04:16:13 +0000
commitad4ec84a08c386da8ff1a05cc6ece5ab34278e69 (patch)
tree629b6b40f13602da58291812fa31973df14a3826 /src
parent5009d9f0d456066d70e98779d9d50cc1ae0268ef (diff)
(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.
Diffstat (limited to 'src')
-rw-r--r--src/keymap.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 44179806ad..6d0f9e5c05 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -275,7 +275,7 @@ access_keymap (map, idx, t_ok)
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 @@ store_in_keymap (keymap, idx, def)
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 @@ describe_vector_princ (elt)
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)