diff --git a/powerline/renderers/vim.py b/powerline/renderers/vim.py index fdb0bcf8..145e180e 100644 --- a/powerline/renderers/vim.py +++ b/powerline/renderers/vim.py @@ -11,6 +11,10 @@ import vim vim_mode = vim_get_func('mode') vim_getwinvar = vim_get_func('getwinvar') vim_setwinvar = vim_get_func('setwinvar') +mode_translations = { + chr(ord('V') - 0x40): '^V', + chr(ord('S') - 0x40): '^S', +} class VimRenderer(Renderer): @@ -29,6 +33,7 @@ class VimRenderer(Renderer): ''' if current: mode = vim_mode() + mode = mode_translations.get(mode, mode) else: mode = 'nc' segment_info = { diff --git a/powerline/segments/vim.py b/powerline/segments/vim.py index d9c7f68c..f7dfa1d1 100644 --- a/powerline/segments/vim.py +++ b/powerline/segments/vim.py @@ -43,11 +43,6 @@ vim_modes = { '!': u'SHELL', } -mode_translations = { - chr(ord('V') - 0x40): '^V', - chr(ord('S') - 0x40): '^S', -} - eventcaches = defaultdict(lambda: []) bufeventcaches = defaultdict(lambda: []) @@ -111,7 +106,6 @@ def mode(segment_info, override=None): mode = segment_info['mode'] if mode == 'nc': return None - mode = mode_translations.get(mode, mode) if not override: return vim_modes[mode] try: