about summary refs log tree commit diff stats
path: root/ranger
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-02-05 05:56:42 +0100
committerhut <hut@lavabit.com>2010-02-05 06:06:47 +0100
commit03b4aefab11192a20d541963d12b61c09738d6d2 (patch)
tree951f7de9b144c54bdaea6481e8f525c69248aa7d /ranger
parent66c5bb9320b908f32fd83493a7a283c62bde959c (diff)
downloadranger-03b4aefab11192a20d541963d12b61c09738d6d2.tar.gz
commands: keep pointer on the file when renaming
Diffstat (limited to 'ranger')
-rw-r--r--ranger/commands.py4
-rw-r--r--ranger/fsobject/fsobject.py3
2 files changed, 6 insertions, 1 deletions
diff --git a/ranger/commands.py b/ranger/commands.py
index c552053f..0903e00a 100644
--- a/ranger/commands.py
+++ b/ranger/commands.py
@@ -324,8 +324,12 @@ class rename(Command):
 	"""
 
 	def execute(self):
+		from ranger.fsobject.file import File
 		line = parse(self.line)
 		self.fm.rename(self.fm.env.cf, line.rest(1))
+		f = File(line.rest(1))
+		self.fm.env.pwd.pointed_obj = f
+		self.fm.env.cf = f
 
 	def tab(self):
 		return self._tab_directory_content()
diff --git a/ranger/fsobject/fsobject.py b/ranger/fsobject/fsobject.py
index 5ede5927..df7a989f 100644
--- a/ranger/fsobject/fsobject.py
+++ b/ranger/fsobject/fsobject.py
@@ -57,8 +57,9 @@ class FileSystemObject(MimeTypeAware, FileManagerAware):
 		if type(self) == FileSystemObject:
 			raise TypeError("Cannot initialize abstract class FileSystemObject")
 
-		from os.path import basename, dirname, realpath
+		from os.path import abspath, basename, dirname, realpath
 
+		path = abspath(path)
 		self.path = path
 		self.basename = basename(path)
 		self.basename_lower = self.basename.lower()
'>171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210