about summary refs log tree commit diff stats
path: root/ranger/container/fsobject.py
diff options
context:
space:
mode:
authorMilan Svoboda <msvoboda@ra.rockwell.com>2014-11-01 12:50:42 +0100
committerMilan Svoboda <msvoboda@ra.rockwell.com>2014-11-01 18:13:58 +0100
commit1c2a52c0ca265dcd1ef22b0b9f52c3f1bc8e9d80 (patch)
tree809acc69d8d8f6eaa6dfd43e7ce2d78d727a4218 /ranger/container/fsobject.py
parent855ab51414f595a7398674e26973f803c7b56936 (diff)
downloadranger-1c2a52c0ca265dcd1ef22b0b9f52c3f1bc8e9d80.tar.gz
implement flat command
Diffstat (limited to 'ranger/container/fsobject.py')
-rw-r--r--ranger/container/fsobject.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/ranger/container/fsobject.py b/ranger/container/fsobject.py
index 86730fae..5acf9f5f 100644
--- a/ranger/container/fsobject.py
+++ b/ranger/container/fsobject.py
@@ -13,8 +13,8 @@ DOCUMENT_BASENAMES = ('bugs', 'bugs', 'changelog', 'copying', 'credits',
 BAD_INFO = '?'
 
 import re
-from os import lstat, stat
-from os.path import abspath, basename, dirname, realpath, splitext, extsep
+from os import lstat, stat, getcwd
+from os.path import abspath, basename, dirname, realpath, splitext, extsep, relpath
 from ranger.core.shared import FileManagerAware, SettingsAware
 from ranger.ext.shell_escape import shell_escape
 from ranger.ext.spawn import spawn
@@ -78,11 +78,17 @@ class FileSystemObject(FileManagerAware, SettingsAware):
     vcs_outdated = False
     vcs_enabled = False
 
-    def __init__(self, path, preload=None, path_is_abs=False):
+    basename_is_rel = False
+
+    def __init__(self, path, preload=None, path_is_abs=False, basename_is_rel=False):
         if not path_is_abs:
             path = abspath(path)
         self.path = path
-        self.basename = basename(path)
+        self.basename_is_rel = basename_is_rel
+        if not basename_is_rel:
+            self.basename = basename(path)
+        else:
+            self.basename = relpath(path, getcwd())
         self.basename_lower = self.basename.lower()
         self.extension = splitext(self.basename)[1].lstrip(extsep) or None
         self.dirname = dirname(path)