From 33592145ae9895ccbbcea88d6c3fd22723f4897a Mon Sep 17 00:00:00 2001 From: ZyX Date: Sun, 24 Mar 2013 05:56:55 +0400 Subject: [PATCH] Also fix VimRenderer.strwidth Fixes #356 --- powerline/renderers/vim.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/powerline/renderers/vim.py b/powerline/renderers/vim.py index 2e3af3a7..1631e694 100644 --- a/powerline/renderers/vim.py +++ b/powerline/renderers/vim.py @@ -8,6 +8,7 @@ from powerline.colorscheme import ATTR_BOLD, ATTR_ITALIC, ATTR_UNDERLINE from powerline.theme import Theme import vim +import sys vim_mode = vim_get_func('mode', rettype=str) @@ -51,11 +52,16 @@ class VimRenderer(Renderer): return self.theme if hasattr(vim, 'strwidth'): - @staticmethod - def strwidth(string): - # Does not work with tabs, but neither is strwidth from default - # renderer - return vim.strwidth(string.encode('utf-8')) + if sys.version_info < (3,): + @staticmethod + def strwidth(string): + # Does not work with tabs, but neither is strwidth from default + # renderer + return vim.strwidth(string.encode('utf-8')) + else: + @staticmethod + def strwidth(string): + return vim.strwidth(string) def render(self, window_id, winidx, current): '''Render all segments.