From 133da6c50208be8ce2f111387aeb8de5969be73b Mon Sep 17 00:00:00 2001 From: Date: Wed, 26 Dec 2012 16:36:02 -0800 Subject: [PATCH] some write work --- rewrite-tags | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/rewrite-tags b/rewrite-tags index 6d47eaa..a5c69f7 100755 --- a/rewrite-tags +++ b/rewrite-tags @@ -3,8 +3,6 @@ import sys from subprocess import Popen, PIPE -from org.diplodocus.util import run_or_die - from flac_archive.tags import Tags class SubprocessError(Exception): @@ -66,6 +64,32 @@ def do_read(filenames): print '\n'.join(coll_tags.all()) return 0 +def do_write(args): + tags = Tags() + tags.load(open(args.pop(0))) + if len(args) != len(tags): + sys.stderr.write('expected %d flac files, got %d\n' + % (len(tags), len(args))) + return 4 + artist = tags.get_path_safe('ARTIST') + album = tags.get_path_safe('ALBUM'), + try: + os.mkdir(artist) + except OSError, e: + if e.errno != EEXIST: + raise + album_path = artist + '/' + album + try: + os.mkdir(album_path) + except OSError, e: + if e.errno != EEXIST: + raise + for i, old_fn in enumerate(args): + track = i + 1 + fn = '%s/%s/%s.flac' % (artist, album, tags.make_filename(track)) + if fn != old_fn: + #os.rename(old_fn, fn) + def main(args): if len(args) < 3: return usage() -- 2.56.0