Replace buggy str.split with manual replacement in album-art spec
authorIvan Frade <ivan.frade@nokia.com>
Fri, 22 Jan 2010 12:30:01 +0000 (14:30 +0200)
committerIvan Frade <ivan.frade@nokia.com>
Fri, 22 Jan 2010 12:30:01 +0000 (14:30 +0200)
This should fix (some) of the issues with special characters in
album names

src/album_art_spec.py

index 4f1c90c..d1d264a 100644 (file)
@@ -16,15 +16,13 @@ def getCoverArtFileName (album):
     album = unicode (album)
     albumString=dropInsideContent(album,"[","]" )
     albumString=dropInsideContent(albumString,"{","}" )
-    albumString=dropInsideContent(albumString,"(",")" )    
-    albumString=albumString.strip('()_{}[]!@#$^&*+=|\\/"\'?<>~`')
-    albumString=albumString.lstrip(' ')
-    albumString=albumString.rstrip(' ')
+    albumString=dropInsideContent(albumString,"(",")" )
+    for special_char in '()_{}[]!@#$^&*+=|\\/"\'?<>~`':
+        albumString=albumString.replace(special_char, " ")
     albumString=dropInsideContent(albumString,"{","}" )
     albumString=albumString.lower()
     albumString=string.replace(albumString,"\t"," ")
-    albumString=string.replace(albumString,"  "," ")    
-    
+    albumString=" ".join (albumString.split ())
     try:
         albumString=unicodedata.normalize('NFKD',albumString).encode()
         albumString=albumString.encode()