import os.path
import shutil
-# 'expressive' not available yet
-dirs = ['ancient','chords','connecting','contemporary','expressive','guitar','parts','repeats','spacing','staff','text','vocal']
+dirs = []
+# NR 1
+dirs.extend(['pitches', 'rhythms', 'expressive',
+'repeats', 'simultaneous', 'staff', 'editorial', 'text'])
+# NR 2
+dirs.extend(['vocal', 'chords', 'piano',
+'percussion', 'guitar', 'strings', 'bagpipes', 'ancient'])
+
+
+
+#
+#dirs.extend(['real-music'])
+#dirs = ['ancient','chords','connecting','contemporary','expressive','education','guitar','parts','pitch','repeats','scheme','spacing','staff','text','vocal','other','nonmusic','engravers','instrument']
notsafe=[]
try:
print "Please specify input_file."
sys.exit()
+def copy_with_warning(src, dest):
+ msg = '%% Do not edit this file; it is auto-generated from LSR!\n'
+ open (dest, 'w').write( msg + open (src).read() )
+
+
+def copy_dir_with_test(srcdir, destdir):
+ global notsafe
+ global notconvert
+ if not(os.path.exists(srcdir)):
+ return
+ file_names = os.listdir (srcdir)
+ for file in file_names:
+ if (file.endswith ('.ly')):
+ src = os.path.join (srcdir, file)
+ destname = file.replace (';', '-')
+ dest = os.path.join (destdir, destname)
+ copy_with_warning(src, dest)
+ os.system('convert-ly -e ' + dest)
+ if os.path.exists( dest + '~' ):
+ os.remove( dest + '~' )
+ # the -V seems to make unsafe snippets fail nicer/sooner.
+ s = os.system('nice lilypond -V -dno-print-pages -dsafe -o /tmp/lsrtest ' + dest)
+ #s = os.system('nice lilypond -dno-print-pages -dsafe -o /tmp/lsrtest ' + dest)
+ if s:
+ notsafe.append(dest)
+
+
for dir in dirs:
srcdir = os.path.join (in_dir, dir)
destdir = os.path.join ('input', 'lsr', dir)
print " and/or check that you have the right categories."
sys.exit()
+ ## clean out existing files
file_names = os.listdir (destdir)
for file in file_names:
if (file.endswith ('.ly')):
- if (file[:3] != 'AAA'):
- os.remove( os.path.join(destdir,file) )
+ os.remove( os.path.join(destdir,file) )
+ ## copy in new files from LSR download
+ copy_dir_with_test( srcdir, destdir )
+ ## copy in new files in source tree
+ copy_dir_with_test( os.path.join ('input', 'new', dir), destdir )
- file_names = os.listdir (in_dir + dir)
- for file in file_names:
- src = os.path.join (srcdir, file)
- dest = os.path.join (destdir, file)
- shutil.copyfile (src, dest)
- s = os.system('lilypond -dsafe --ps -o /tmp/lsrtest ' + dest)
- if s:
- notsafe.append(dest)
- #raise 'Failed'
file=open("lsr-unsafe.txt", 'w')
for s in notsafe:
file.write(s+'\n')
file.close()
+
print
print
print "Unsafe files printed in lsr-unsafe.txt: CHECK MANUALLY!"
-print " (probably with xargs git-diff < lsr-unsafe.txt )"
+print " xargs git-diff < lsr-unsafe.txt"
print
-