for Python 2.x set encoding to UTF-8
[claws.git] / tools / tbird2claws.py
index 6144a68..aee01c7 100755 (executable)
@@ -17,6 +17,7 @@
 
 import os
 import sys
+from imp import reload
 
 __author__ = 'Rodrigo Senra <rsenra@acm.org>'
 __date__ =  '2005-03-23'
@@ -29,7 +30,7 @@ your Claws Mail MH mailbox tree.
 The script receives two parameters from command-line:
  <Thunderbird folder path> <Claws Mail folder path>
 
-Best way to use it is to go to inside yout Thunderbird
+Best way to use it is to go to inside your Thunderbird
 root mailfolder directory and invoke it as:
 
   <path>\python2.4 <path>\tbird2syl.py . <path to claws mail>\Mail
@@ -54,16 +55,16 @@ def harvest_offsets(filepath):
     """Given the filepath, this runs through the file finding
     the number of the line where a message begins.
     
-    The functions returns a list of integers corresponding to
-    the begining of messages.
+    The function returns a list of integers corresponding to
+    the beginning of messages.
     """        
     offsets = []
     i = 0
     state = 'begin'
     for i,line in enumerate(open(filepath)):
         if line.startswith('From - ') and state!='found_head':
-           offsets.append(i)
-           continue
+           offsets.append(i)
+           continue
 #        elif line.startswith('Return-Path') and state=='found_head':
 #          state = 'found_offset'
 #          offsets.append(i)
@@ -73,7 +74,7 @@ def harvest_offsets(filepath):
 
 def make_messages(outputdir, filepath, offsets, start):
     """Given a filepath holding several messages in Thunderbird format,
-    extarct the messages and create individual files for them, inside
+    extract the messages and create individual files for them, inside
     outputdir with appropriate the appropriate naming scheme.
     """ 
     if not os.path.exists(outputdir):
@@ -84,13 +85,13 @@ def make_messages(outputdir, filepath, offsets, start):
     aux = offsets[:]
     msgoffs = zip(offsets[:-1], aux[1:])
     for i,j in msgoffs:
-       fd  = open(os.path.join(outputdir,"%d"%start),"w")
-       fd.write(''.join(lines[i:j-1])) #-1 to remove first from line
-       fd.close()
-       start +=1
+       fd  = open(os.path.join(outputdir,"%d"%start),"w")
+       fd.write(''.join(lines[i:j-1])) #-1 to remove first from line
+       fd.close()
+       start +=1
 
 def process_file(filepath, outputdir):
-    """Integrates a Thunderbird message file into a claws-mail message diretory.
+    """Integrates a Thunderbird message file into a claws-mail message directory.
     """  
     offs = harvest_offsets(filepath)
     make_messages(outputdir, filepath, offs, 1)
@@ -122,9 +123,12 @@ def convert_tree(in_treepath, out_treepath):
             for f in [x for x in files if not x.endswith('.msf')]:
                 process_file(os.path.join(path,f),
                              os.path.join(out_treepath,outpath,f))
-    
+
 if __name__=='__main__':
     if len(sys.argv)<3:
-        print __doc__
+        print (__doc__)
     else:
+        if sys.version[0] == '2':
+            reload(sys)
+            sys.setdefaultencoding('utf8')
         convert_tree(sys.argv[1], sys.argv[2])