aboutsummaryrefslogtreecommitdiffstats
path: root/src/keymap.c
diff options
context:
space:
mode:
authorMiles Bader2005-01-16 03:40:12 +0000
committerMiles Bader2005-01-16 03:40:12 +0000
commit54c4c5465ff6dcf158fc47b5894a688ec356f900 (patch)
tree7fd504f98080bd7c498874d3662ef67086a09b66 /src/keymap.c
parentd570d39f949427c4a5041375529c3748d72c6e3c (diff)
parent42187e99f8adc31d93d027b9017160731aab8972 (diff)
downloademacs-54c4c5465ff6dcf158fc47b5894a688ec356f900.tar.gz
emacs-54c4c5465ff6dcf158fc47b5894a688ec356f900.zip
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-2
Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-83 - miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-84 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-3 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-4 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-5 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-6 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-11 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-12 Remove "-face" suffix from lazy-highlight face name * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-13 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-16 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-17 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-18 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-21 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-22 <no summary provided> * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-23 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-39 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-40 Fix regressions from latest reftex update * miles@gnu.org--gnu-2005/gnus--rel--5.10--base-0 tag of miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-82 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-1 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-2 Merge from miles@gnu.org--gnu-2004 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-3 Merge from emacs--cvs-trunk--0
Diffstat (limited to 'src/keymap.c')
-rw-r--r--src/keymap.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 5a7c8b19123..ea0b1843b85 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1519,10 +1519,13 @@ OLP if non-nil indicates that we should obey `overriding-local-map' and
1519 1519
1520 if (!NILP (olp)) 1520 if (!NILP (olp))
1521 { 1521 {
1522 if (!NILP (Voverriding_local_map))
1523 keymaps = Fcons (Voverriding_local_map, keymaps);
1524 if (!NILP (current_kboard->Voverriding_terminal_local_map)) 1522 if (!NILP (current_kboard->Voverriding_terminal_local_map))
1525 keymaps = Fcons (current_kboard->Voverriding_terminal_local_map, keymaps); 1523 keymaps = Fcons (current_kboard->Voverriding_terminal_local_map, keymaps);
1524 /* The doc said that overriding-terminal-local-map should
1525 override overriding-local-map. The code used them both,
1526 but it seems clearer to use just one. rms, jan 2005. */
1527 else if (!NILP (Voverriding_local_map))
1528 keymaps = Fcons (Voverriding_local_map, keymaps);
1526 } 1529 }
1527 if (NILP (XCDR (keymaps))) 1530 if (NILP (XCDR (keymaps)))
1528 { 1531 {
@@ -1530,16 +1533,20 @@ OLP if non-nil indicates that we should obey `overriding-local-map' and
1530 Lisp_Object *maps; 1533 Lisp_Object *maps;
1531 int nmaps, i; 1534 int nmaps, i;
1532 1535
1536 /* This usually returns the buffer's local map,
1537 but that can be overridden by a `local-map' property. */
1533 local = get_local_map (PT, current_buffer, Qlocal_map); 1538 local = get_local_map (PT, current_buffer, Qlocal_map);
1534 if (!NILP (local)) 1539 if (!NILP (local))
1535 keymaps = Fcons (local, keymaps); 1540 keymaps = Fcons (local, keymaps);
1536 1541
1542 /* Now put all the minor mode keymaps on the list. */
1537 nmaps = current_minor_maps (0, &maps); 1543 nmaps = current_minor_maps (0, &maps);
1538 1544
1539 for (i = --nmaps; i >= 0; i--) 1545 for (i = --nmaps; i >= 0; i--)
1540 if (!NILP (maps[i])) 1546 if (!NILP (maps[i]))
1541 keymaps = Fcons (maps[i], keymaps); 1547 keymaps = Fcons (maps[i], keymaps);
1542 1548
1549 /* This returns nil unless there is a `keymap' property. */
1543 local = get_local_map (PT, current_buffer, Qkeymap); 1550 local = get_local_map (PT, current_buffer, Qkeymap);
1544 if (!NILP (local)) 1551 if (!NILP (local))
1545 keymaps = Fcons (local, keymaps); 1552 keymaps = Fcons (local, keymaps);