diff options
Diffstat (limited to 'ranger/gui/widgets/browsercolumn.py')
-rw-r--r-- | ranger/gui/widgets/browsercolumn.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ranger/gui/widgets/browsercolumn.py b/ranger/gui/widgets/browsercolumn.py index b38d0b5b..52ef62b8 100644 --- a/ranger/gui/widgets/browsercolumn.py +++ b/ranger/gui/widgets/browsercolumn.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # This file is part of ranger, the console file manager. # License: GNU GPL version 3, see the file "AUTHORS" for details. @@ -7,6 +6,7 @@ import curses import stat from time import time +from os.path import splitext from . import Widget from .pager import Pager @@ -23,7 +23,6 @@ class BrowserColumn(Pager): scroll_begin = 0 target = None last_redraw_time = -1 - ellipsis = { False: '~', True: '…' } old_dir = None old_thisfile = None @@ -342,8 +341,12 @@ class BrowserColumn(Pager): def _draw_text_display(self, text, space): wtext = WideString(text) + wext = WideString(splitext(text)[1]) wellip = WideString(self.ellipsis[self.settings.unicode_ellipsis]) if len(wtext) > space: + wtext = wtext[:max(1, space - len(wext) - len(wellip))] + wellip + wext + # Truncate again if still too long. + if len(wtext) > space: wtext = wtext[:max(0, space - len(wellip))] + wellip return [[str(wtext), []]] |