--- a/degal/filesystem.py Fri Jun 05 23:42:03 2009 +0300
+++ b/degal/filesystem.py Fri Jun 05 23:59:14 2009 +0300
@@ -205,9 +205,11 @@
else :
raise
- # alias str/unicode
- __str__ = path
- __unicode__ = unicodepath
+ def __str__ (self) :
+ return self.path
+
+ def __unicode__ (self) :
+ return self.unicodepath
def __repr__ (self) :
"""
@@ -314,7 +316,8 @@
_, fileext = os.path.splitext(self.name)
- return fileext.rstrip('.')
+ # strip leading .
+ return fileext[1:]
def matchext (self, ext_list) :
"""
@@ -347,14 +350,14 @@
return codecs.open(self.path, mode, encoding, errors, bufsize)
else :
- return open(self.path, mode, bufsize)
+ return open(self.path, mode, *(arg for arg in (bufsize, ) if arg is not None))
- def open_write (self, encoding=None, errors=None, bufsize=None) :
+ def open_write (self, *args, **kwargs) :
"""
Open for write using open('w').
"""
- return self.open('w', encoding, errors, bufsize)
+ return self.open('w', *args, **kwargs)
def copy_from (self, file) :
"""
@@ -393,7 +396,7 @@
# create it!
subdir.mkdir()
- return dir
+ return subdir
def test_subdir (self, name, create=False) :
"""
@@ -429,7 +432,7 @@
Returns a File object representing the name underneath this dir
"""
- return Directory(self, name=name)
+ return File(self, name=name)
def test (self) :
"""