]> git.donarmstrong.com Git - lilypond.git/blobdiff - scripts/convert-ly.py
release: 1.3.122
[lilypond.git] / scripts / convert-ly.py
index e974394f10fac4877177fb78069a8aa90c2f7da7..0c0505f58bb3784915e94cef2ddcdd3d57e3a85b 100644 (file)
@@ -119,8 +119,8 @@ if 1:                                       # need new a namespace
                
                return str
 
-       conversions.append (
-               ((0,1,19), conv, 'deprecated \\octave; can\'t convert automatically'))
+       conversions.append ((
+               ((0,1,19), conv, 'deprecated \\octave; can\'t convert automatically')))
 
 
 if 1:                                  # need new a namespace
@@ -131,8 +131,8 @@ if 1:                                       # need new a namespace
                        
                return str
 
-       conversions.append (
-               ((0,1,20), conv, 'deprecated \\textstyle, new \key syntax'))
+       conversions.append ((
+               ((0,1,20), conv, 'deprecated \\textstyle, new \key syntax')))
 
 
 if 1:
@@ -142,16 +142,16 @@ if 1:
                        
                return str
 
-       conversions.append (
+       conversions.append ((
                ((0,1,21), conv, '\\musical_pitch -> \\musicalpitch, '+
-                '\\meter -> \\time'))
+                '\\meter -> \\time')))
 
 if 1:
        def conv (str):
                return str
 
-       conversions.append (
-               ((1,0,0), conv, '0.1.21 -> 1.0.0 '))
+       conversions.append ((
+               ((1,0,0), conv, '0.1.21 -> 1.0.0 ')))
 
 
 if 1:
@@ -162,9 +162,9 @@ if 1:
                        
                return str
 
-       conversions.append (
+       conversions.append ((
                ((1,0,1), conv, '\\accidentals -> \\keysignature, ' +
-                'specialaccidentals -> keyoctaviation'))
+                'specialaccidentals -> keyoctaviation')))
 
 if 1:
        def conv(str):
@@ -172,7 +172,7 @@ if 1:
                        sys.stderr.write ('\nNot smart enough to convert to new \\header format')
                return str
        
-       conversions.append ((1,0,2), conv, '\\header { key = concat + with + operator }')
+       conversions.append (((1,0,2), conv, '\\header { key = concat + with + operator }'))
 
 if 1:
        def conv(str):
@@ -180,7 +180,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,3), conv, '\\melodic -> \\notes')
+       conversions.append (((1,0,3), conv, '\\melodic -> \\notes'))
 
 if 1:
        def conv(str):
@@ -189,7 +189,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,4), conv, 'default_{paper,midi}')
+       conversions.append (((1,0,4), conv, 'default_{paper,midi}'))
 
 if 1:
        def conv(str):
@@ -198,7 +198,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,5), conv, 'ChoireStaff -> ChoirStaff')
+       conversions.append (((1,0,5), conv, 'ChoireStaff -> ChoirStaff'))
 
 if 1:
        def conv(str):
@@ -207,7 +207,7 @@ if 1:
                        raise FatalConversionError()
                return str
        
-       conversions.append ((1,0,6), conv, 'foo = \\translator {\\type .. } ->\\translator {\\type ..; foo; }')
+       conversions.append (((1,0,6), conv, 'foo = \\translator {\\type .. } ->\\translator {\\type ..; foo; }'))
 
 
 if 1:
@@ -216,7 +216,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,7), conv, '\\lyric -> \\lyrics')
+       conversions.append (((1,0,7), conv, '\\lyric -> \\lyrics'))
 
 if 1:
        def conv(str):
@@ -229,12 +229,12 @@ if 1:
                str =  re.sub ('\\]([0-9/]+)', '] }', str)
                return str
        
-       conversions.append ((1,0,10), conv, '[2/3 ]1/1 -> \\times 2/3 ')
+       conversions.append (((1,0,10), conv, '[2/3 ]1/1 -> \\times 2/3 '))
 
 if 1:
        def conv(str):
                return str
-       conversions.append ((1,0,12), conv, 'Chord syntax stuff')
+       conversions.append (((1,0,12), conv, 'Chord syntax stuff'))
 
 
 if 1:
@@ -245,7 +245,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,13), conv, '<a ~ b> c -> <a b> ~ c')
+       conversions.append (((1,0,13), conv, '<a ~ b> c -> <a b> ~ c'))
 
 if 1:
        def conv(str):
@@ -254,7 +254,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,14), conv, '<[a b> <a b]>c -> [<a b> <a b>]')
+       conversions.append (((1,0,14), conv, '<[a b> <a b]>c -> [<a b> <a b>]'))
 
 
 if 1:
@@ -264,7 +264,7 @@ if 1:
                        
                return str
        
-       conversions.append ((1,0,16), conv, '\\type -> \\context, textstyle -> textStyle')
+       conversions.append (((1,0,16), conv, '\\type -> \\context, textstyle -> textStyle'))
 
 
 if 1:
@@ -274,8 +274,8 @@ if 1:
                        raise FatalConversionError()
                return str
        
-       conversions.append ((1,0,18), conv,
-                           '\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative')
+       conversions.append (((1,0,18), conv,
+                '\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative'))
 
 if 1:
        def conv(str):
@@ -285,8 +285,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,0,19), conv,
-                           'fontsize -> fontSize, midi_instrument -> midiInstrument, SkipBars -> skipBars')
+       conversions.append (((1,0,19), conv,
+                'fontsize -> fontSize, midi_instrument -> midiInstrument, SkipBars -> skipBars'))
 
 
 if 1:
@@ -297,8 +297,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,0,20), conv,
-                           '{,tie,slur}ydirection -> {v,tieV,slurV}erticalDirection')
+       conversions.append (((1,0,20), conv,
+                '{,tie,slur}ydirection -> {v,tieV,slurV}erticalDirection'))
 
 
 if 1:
@@ -307,8 +307,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,0,21), conv,
-                           'hshift -> horizontalNoteShift')
+       conversions.append (((1,0,21), conv,
+                'hshift -> horizontalNoteShift'))
 
 
 if 1:
@@ -317,8 +317,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,1,52), conv,
-                           'deprecate \\grouping')
+       conversions.append (((1,1,52), conv,
+                'deprecate \\grouping'))
 
 
 if 1:
@@ -327,8 +327,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,1,55), conv,
-                           '\\wheel -> \\coda')
+       conversions.append (((1,1,55), conv,
+                '\\wheel -> \\coda'))
 
 if 1:
        def conv(str):
@@ -337,8 +337,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,1,65), conv,
-                           'slurdash -> slurDash, keyoctaviation -> keyOctaviation')
+       conversions.append (((1,1,65), conv,
+                'slurdash -> slurDash, keyoctaviation -> keyOctaviation'))
 
 if 1:
        def conv(str):
@@ -346,8 +346,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,1,66), conv,
-                           'semi -> volta')
+       conversions.append (((1,1,66), conv,
+                'semi -> volta'))
 
 
 if 1:
@@ -356,8 +356,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,1,67), conv,
-                           'beamAuto -> noAutoBeaming')
+       conversions.append (((1,1,67), conv,
+                'beamAuto -> noAutoBeaming'))
 
 if 1:
        def conv(str):
@@ -365,8 +365,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,2,0), conv,
-                           'automaticMelismas -> automaticMelismata')
+       conversions.append (((1,2,0), conv,
+                'automaticMelismas -> automaticMelismata'))
 
 if 1:
        def conv(str):
@@ -374,8 +374,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,2,1), conv,
-                           'dynamicDir -> dynamicDirection')
+       conversions.append (((1,2,1), conv,
+                'dynamicDir -> dynamicDirection'))
 
 if 1:
        def conv(str):
@@ -384,8 +384,8 @@ if 1:
                        
                return str
 
-       conversions.append ((1,3,4), conv,
-                           '\\cadenza -> \cadenza{On|Off}')
+       conversions.append (((1,3,4), conv,
+                '\\cadenza -> \cadenza{On|Off}'))
 
 if 1:
        def conv (str):
@@ -394,7 +394,7 @@ if 1:
                              str)
                return str
 
-       conversions.append ((1,3,5), conv, 'beamAuto moment properties')
+       conversions.append (((1,3,5), conv, 'beamAuto moment properties'))
 
 if 1:
        def conv (str):
@@ -403,7 +403,7 @@ if 1:
                              str)
                return str
 
-       conversions.append ((1,3,17), conv, 'stemStyle -> flagStyle')
+       conversions.append (((1,3,17), conv, 'stemStyle -> flagStyle'))
 
 if 1:
        def conv (str):
@@ -412,7 +412,7 @@ if 1:
                              str)
                return str
 
-       conversions.append ((1,3,18), conv, 'staffLineLeading -> staffSpace')
+       conversions.append (((1,3,18), conv, 'staffLineLeading -> staffSpace'))
 
 if 1:
        def conv (str):
@@ -424,7 +424,7 @@ if 1:
                              str)
                return str
 
-       conversions.append ((1,3,35), conv, 'textEmptyDimension -> textNonEmpty')
+       conversions.append (((1,3,35), conv, 'textEmptyDimension -> textNonEmpty'))
 
 if 1:
        def conv (str):
@@ -436,7 +436,7 @@ if 1:
                        sys.stderr.write ('\nNot smart enough to convert to new \\notenames format')
                return str
 
-       conversions.append ((1,3,38), conv, '\musicalpitch { a b c } -> #\'(a b c)')
+       conversions.append (((1,3,38), conv, '\musicalpitch { a b c } -> #\'(a b c)'))
 
 if 1:
        def conv (str):
@@ -446,7 +446,7 @@ if 1:
                str = re.sub ("\\\\key ([^;]+);",  replace, str)
                return str
        
-       conversions.append ((1,3,39), conv, '\\key A ;  ->\\key a;')
+       conversions.append (((1,3,39), conv, '\\key A ;  ->\\key a;'))
 
 if 1:
        def conv (str):
@@ -454,31 +454,31 @@ if 1:
                        sys.stderr.write ('\nNot smart enough to convert to new tremolo format')
                return str
 
-       conversions.append ((1,3,41), conv,
-                           '[:16 c4 d4 ] -> \\repeat "tremolo" 2 { c16 d16 }')
+       conversions.append (((1,3,41), conv,
+                '[:16 c4 d4 ] -> \\repeat "tremolo" 2 { c16 d16 }'))
 
 if 1:
        def conv (str):
                str = re.sub ('Staff_margin_engraver' , 'Instrument_name_engraver', str)
                return str
 
-       conversions.append ((1,3,42), conv,
-                           'Staff_margin_engraver deprecated, use Instrument_name_engraver')
+       conversions.append (((1,3,42), conv,
+                'Staff_margin_engraver deprecated, use Instrument_name_engraver'))
 
 if 1:
        def conv (str):
                str = re.sub ('note[hH]eadStyle\\s*=\\s*"?(\\w+)"?' , "noteHeadStyle = #'\\1", str)
                return str
 
-       conversions.append ((1,3,49), conv,
-                           'noteHeadStyle value: string -> symbol')
+       conversions.append (((1,3,49), conv,
+                'noteHeadStyle value: string -> symbol'))
 
 if 1:
        def conv (str):
                str = re.sub (r"""\\key *([a-z]+) *;""", r"""\\key \1 \major;""",str);
                return str
-       conversions.append ((1,3,59), conv,
-                           '\key X ; -> \key X major; '
+       conversions.append (((1,3,59), conv,
+                '\key X ; -> \key X major; ')
 
 if 1:
        def conv (str):
@@ -486,7 +486,7 @@ if 1:
                              'latexheaders = "',
                              str)
                return str
-       conversions.append ((1,3,68), conv, 'latexheaders = "\\input global" -> latexheaders = "global"')
+       conversions.append (((1,3,68), conv, 'latexheaders = "\\input global" -> latexheaders = "global"'))
 
 
 
@@ -508,7 +508,7 @@ if 1:
                str = re.sub ('basic([A-Za-z_]+)Properties', '\\1', str)
                return str
        
-       conversions.append ((1,3,92), conv, 'basicXXXProperties -> XXX')
+       conversions.append (((1,3,92), conv, 'basicXXXProperties -> XXX'))
 
 if 1:
        def conv (str):
@@ -534,8 +534,8 @@ if 1:
                
                return str
        
-       conversions.append ((1,3,93), conv,
-                           'property definiton case (eg. onevoice -> oneVoice)')
+       conversions.append (((1,3,93), conv,
+                'property definiton case (eg. onevoice -> oneVoice)'))
 
 
 if 1:
@@ -548,7 +548,7 @@ if 1:
 
                return str
        
-       conversions.append ((1,3,97), conv, 'ChordName -> ChordNames')
+       conversions.append (((1,3,97), conv, 'ChordName -> ChordNames'))
 
 if 1:
        def conv (str):
@@ -560,7 +560,84 @@ if 1:
 
                return str
        
-       conversions.append ((1,3,102), conv, 'beamAutoEnd -> autoBeamSettings \\push (end * * * *)')
+       conversions.append (((1,3,102), conv, 'beamAutoEnd -> autoBeamSettings \\push (end * * * *)'))
+
+
+if 1:
+       def conv (str):
+               str = re.sub ('\\\\push', '\\\\override', str)
+               str = re.sub ('\\\\pop', '\\\\revert', str)
+
+               return str
+       
+       conversions.append (((1,3,111), conv, '\\push -> \\override, \\pop -> \\revert'))
+
+if 1:
+       def conv (str):
+               str = re.sub ('LyricVoice', 'LyricsVoice', str)
+               # old fix
+               str = re.sub ('Chord[Nn]ames*.Chord[Nn]ames*', 'ChordNames.ChordName', str)
+               return str
+       
+       conversions.append (((1,3,113), conv, 'LyricVoice -> LyricsVoice'))
+
+def regularize_id (str):
+       s = ''
+       lastx = ''
+       for x in str:
+               if x == '_':
+                       lastx = x
+                       continue
+               elif x in string.digits:
+                       x = chr(ord (x) - ord ('0')  +ord ('A'))
+               elif x not in string.letters:
+                       x = 'x'
+               elif x in string.lowercase and lastx == '_':
+                       x = string.upper (x)
+               s = s + x
+               lastx = x
+       return s
+
+if 1:
+       def conv (str):
+               
+               def regularize_dollar_reference (match):
+                       return regularize_id (match.group (1))
+               def regularize_assignment (match):
+                       return '\n' + regularize_id (match.group (1)) + ' = '
+               str = re.sub ('\$([^\t\n ]+)', regularize_dollar_reference, str)
+               str = re.sub ('\n([^ \t\n]+) = ', regularize_assignment, str)
+               return str
+       
+       conversions.append (((1,3,117), conv, 'identifier names: $!foo_bar_123 -> xfooBarABC'))
+
+
+if 1:
+       def conv (str):
+               def regularize_paper (match):
+                       return regularize_id (match.group (1))
+               
+               str = re.sub ('(paper_[a-z]+)', regularize_paper, str)
+               str = re.sub ('sustainup', 'sustainUp', str)
+               str = re.sub ('nobreak', 'noBreak', str)
+               str = re.sub ('sustaindown', 'sustainDown', str)
+               str = re.sub ('sostenutoup', 'sostenutoUp', str)
+               str = re.sub ('sostenutodown', 'sostenutoDown', str)
+               str = re.sub ('unachorda', 'unaChorda', str)
+               str = re.sub ('trechorde', 'treChorde', str)
+       
+               return str
+       
+       conversions.append (((1,3,120), conv, 'paper_xxx -> paperXxxx, pedalup -> pedalUp.'))
+
+if 1:
+       def conv (str):
+               str = re.sub ('drarnChords', 'chordChanges', str)
+               str = re.sub ('\\musicalpitch', '\\pitch', str)
+               return str
+       
+       conversions.append (((1,3,122), conv, 'drarnChords -> chordChanges, \\musicalpitch -> \\pitch'))
+
 
 ############################
        
@@ -591,9 +668,9 @@ def do_conversion (infile, from_version, outfile, to_version):
 
        if last_conversion:
                sys.stderr.write ('\n')
-               new_ver =  '\\\\version \"%s\"' % tup_to_str (last_conversion)
+               new_ver =  '\\version \"%s\"' % tup_to_str (last_conversion)
                if re.search (lilypond_version_re_str, str):
-                       str = re.sub (lilypond_version_re_str,new_ver , str)
+                       str = re.sub (lilypond_version_re_str,'\\'+new_ver , str)
                else:
                        str = new_ver + '\n' + str