Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
d65a13c5
Commit
d65a13c5
authored
Mar 21, 1994
by
Karl Heuer
Browse files
(Fcopy_keymap): Account for menus and equiv-key cache.
parent
9c52bf47
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
34 additions
and
4 deletions
+34
-4
src/keymap.c
src/keymap.c
+34
-4
No files found.
src/keymap.c
View file @
d65a13c5
...
...
@@ -503,10 +503,40 @@ is not copied.")
XVECTOR
(
elt
)
->
contents
[
i
]
=
Fcopy_keymap
(
XVECTOR
(
elt
)
->
contents
[
i
]);
}
else
if
(
CONSP
(
elt
)
&&
XTYPE
(
XCONS
(
elt
)
->
cdr
)
!=
Lisp_Symbol
&&
!
NILP
(
Fkeymapp
(
XCONS
(
elt
)
->
cdr
)))
XCONS
(
elt
)
->
cdr
=
Fcopy_keymap
(
XCONS
(
elt
)
->
cdr
);
else
if
(
CONSP
(
elt
))
{
/* Skip the optional menu string. */
if
(
CONSP
(
XCONS
(
elt
)
->
cdr
)
&&
STRINGP
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
))
{
Lisp_Object
tem
;
/* Copy the cell, since copy-alist didn't go this deep. */
XCONS
(
elt
)
->
cdr
=
Fcons
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
,
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
cdr
);
elt
=
XCONS
(
elt
)
->
cdr
;
/* Also skip the optional menu help string. */
if
(
CONSP
(
XCONS
(
elt
)
->
cdr
)
&&
STRINGP
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
))
{
XCONS
(
elt
)
->
cdr
=
Fcons
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
,
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
cdr
);
elt
=
XCONS
(
elt
)
->
cdr
;
}
/* There may also be a list that caches key equivalences.
Just delete it for the new keymap. */
if
(
CONSP
(
XCONS
(
elt
)
->
cdr
)
&&
CONSP
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
)
&&
(
NILP
(
tem
=
XCONS
(
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
car
)
->
car
)
||
VECTORP
(
tem
)))
XCONS
(
elt
)
->
cdr
=
XCONS
(
XCONS
(
elt
)
->
cdr
)
->
cdr
;
}
if
(
CONSP
(
elt
)
&&
!
SYMBOLP
(
XCONS
(
elt
)
->
cdr
)
&&
!
NILP
(
Fkeymapp
(
XCONS
(
elt
)
->
cdr
)))
XCONS
(
elt
)
->
cdr
=
Fcopy_keymap
(
XCONS
(
elt
)
->
cdr
);
}
}
return
copy
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment