summary refs log tree commit diff stats
path: root/ranger
diff options
context:
space:
mode:
authorMark Rogalski <interesting.ones.are.already.taken@gmail.com>2016-05-16 18:30:49 +0200
committerMark Rogalski <interesting.ones.are.already.taken@gmail.com>2016-05-16 18:30:49 +0200
commit1bc67ebef2f1515b008b3464eade6745093fc6a5 (patch)
tree7de16fb0edbd9e8d3d3ea81e5b8e8b580ac2cde3 /ranger
parentd427f9cd8331542a8d4c3a64be45e1bc961478bf (diff)
downloadranger-1bc67ebef2f1515b008b3464eade6745093fc6a5.tar.gz
Add calculating the line number field length
Diffstat (limited to 'ranger')
-rw-r--r--ranger/gui/widgets/browsercolumn.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/ranger/gui/widgets/browsercolumn.py b/ranger/gui/widgets/browsercolumn.py
index efecb93d..eff7fda6 100644
--- a/ranger/gui/widgets/browsercolumn.py
+++ b/ranger/gui/widgets/browsercolumn.py
@@ -241,6 +241,8 @@ class BrowserColumn(Pager):
 
         linum_mode_is_set = True
 
+        linum_text_len = len(str(self.scroll_begin + self.hei))
+
         selected_i = self._get_index_of_selected_file()
         for line in range(self.hei):
             i = line + self.scroll_begin
@@ -293,7 +295,12 @@ class BrowserColumn(Pager):
             space = self.wid
 
             if linum_mode_is_set:
-                predisplay_left.append([str(i), ["directory"]])
+                if space - linum_text_len > 2:
+                    linum_format = "{0:>" + str(linum_text_len) + "}"
+                    line_number_text = linum_format.format(str(i))
+
+                    predisplay_left.append([line_number_text, ["directory"]])
+                    space -= linum_text_len
 
             # selection mark
             tagmark = self._draw_tagged_display(tagged, tagged_marker)