@@ -3698,6 +3698,13 @@ def action_help_quit(self) -> None:
3698
3698
)
3699
3699
return
3700
3700
3701
+ @classmethod
3702
+ def _normalize_keymap (cls , keymap : Keymap ) -> Keymap :
3703
+ """Normalizes the keys in a keymap, so they use long form, i.e. "question_mark" rather than "?"."""
3704
+ return {
3705
+ binding_id : _normalize_key_list (keys ) for binding_id , keys in keymap .items ()
3706
+ }
3707
+
3701
3708
def set_keymap (self , keymap : Keymap ) -> None :
3702
3709
"""Set the keymap, a mapping of binding IDs to key strings.
3703
3710
@@ -3711,9 +3718,7 @@ def set_keymap(self, keymap: Keymap) -> None:
3711
3718
keymap: A mapping of binding IDs to key strings.
3712
3719
"""
3713
3720
3714
- self ._keymap = {
3715
- binding_id : _normalize_key_list (keys ) for binding_id , keys in keymap .items ()
3716
- }
3721
+ self ._keymap = self ._normalize_keymap (keymap )
3717
3722
self .refresh_bindings ()
3718
3723
3719
3724
def update_keymap (self , keymap : Keymap ) -> None :
@@ -3725,10 +3730,8 @@ def update_keymap(self, keymap: Keymap) -> None:
3725
3730
Args:
3726
3731
keymap: A mapping of binding IDs to key strings.
3727
3732
"""
3728
- keymap = {
3729
- binding_id : _normalize_key_list (keys ) for binding_id , keys in keymap .items ()
3730
- }
3731
- self ._keymap = {** self ._keymap , ** keymap }
3733
+
3734
+ self ._keymap = {** self ._keymap , ** self ._normalize_keymap (keymap )}
3732
3735
self .refresh_bindings ()
3733
3736
3734
3737
def handle_bindings_clash (
0 commit comments