summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorWojciech Siewierski <wojciech.siewierski@onet.pl>2016-04-05 08:54:25 +0200
committerWojciech Siewierski <wojciech.siewierski@onet.pl>2016-04-05 08:54:25 +0200
commit94ce103247332a8ad56bb41a7245546f824971c3 (patch)
tree96f1db0d2f4949daab318750a8711091539f78d3
parentb90640b0a99a98eb0db71417b0447eb077412785 (diff)
downloadranger-94ce103247332a8ad56bb41a7245546f824971c3.tar.gz
core.linemode: Implement ModificationTimeLinemode
Closes #520.
-rw-r--r--ranger/container/fsobject.py3
-rw-r--r--ranger/core/linemode.py11
2 files changed, 13 insertions, 1 deletions
diff --git a/ranger/container/fsobject.py b/ranger/container/fsobject.py
index db6772ac..1d91aff8 100644
--- a/ranger/container/fsobject.py
+++ b/ranger/container/fsobject.py
@@ -79,7 +79,8 @@ class FileSystemObject(FileManagerAware, SettingsAware):
     _linemode = DEFAULT_LINEMODE
     linemode_dict = dict(
         (linemode.name, linemode()) for linemode in
-        [DefaultLinemode, TitleLinemode, PermissionsLinemode, FileInfoLinemode]
+        [DefaultLinemode, TitleLinemode, PermissionsLinemode, FileInfoLinemode,
+         ModificationTimeLinemode]
     )
 
     def __init__(self, path, preload=None, path_is_abs=False, basename_is_rel_to=None):
diff --git a/ranger/core/linemode.py b/ranger/core/linemode.py
index 76e8f7cc..d3aff064 100644
--- a/ranger/core/linemode.py
+++ b/ranger/core/linemode.py
@@ -102,3 +102,14 @@ class FileInfoLinemode(LinemodeBase):
             return fileinfo
         else:
             raise NotImplementedError
+
+
+class ModificationTimeLinemode(LinemodeBase):
+    name = "mtime"
+
+    def filetitle(self, file, metadata):
+        import time
+        return "%s %s" % (time.ctime(file.stat.st_mtime), file.relative_path)
+
+    def infostring(self, file, metadata):
+        return ""