diff --git a/gertty/config.py b/gertty/config.py index b4812a7..97b10f7 100644 --- a/gertty/config.py +++ b/gertty/config.py @@ -186,7 +186,8 @@ class Config(object): self.palettes[p['name']].update(p) self.palette = self.palettes[self.config.get('palette', palette)] - self.keymaps = {'default': gertty.keymap.KeyMap({})} + self.keymaps = {'default': gertty.keymap.KeyMap({}), + 'vi': gertty.keymap.KeyMap(gertty.keymap.VI_KEYMAP)} for p in self.config.get('keymaps', []): if p['name'] not in self.keymaps: self.keymaps[p['name']] = gertty.keymap.KeyMap(p) diff --git a/gertty/keymap.py b/gertty/keymap.py index ff79c59..b482c66 100644 --- a/gertty/keymap.py +++ b/gertty/keymap.py @@ -148,6 +148,13 @@ DEFAULT_KEYMAP = { INTERACTIVE_SEARCH: 'ctrl s', } +# Hi vi users! Add more things here! This overrides the default +# keymap, so anything not defined here will just use what's defined +# above. +VI_KEYMAP = { + QUIT: [[':', 'q']], +} + URWID_COMMANDS = frozenset(( urwid.REDRAW_SCREEN, urwid.CURSOR_UP,