]> git.donarmstrong.com Git - lilypond.git/blobdiff - scripts/convert-ly.py
release commit
[lilypond.git] / scripts / convert-ly.py
index 272833d4a00bda040a1dda54f3a8d59a5b673e08..870310f6a234ddfa5a407ae55890287aa6a5b514 100644 (file)
@@ -58,11 +58,11 @@ version taken from the \\version command, to the current LilyPond version."""))
        sys.stdout.write ('\n')
        sys.stdout.write (_ ("""\
   -e, --edit             edit in place
-  -f, --from=VERSION     start from version [default: \\version found in file]
+  -f, --from=VERSION     start from VERSION [default: \\version found in file]
   -h, --help             print this help
   -n, --no-version       do not add \\version command if missing
   -s, --show-rules       print rules [default: --from=0, --to=@TOPLEVEL_VERSION@]
-  -t, --to=VERSION       convert to version [default: @TOPLEVEL_VERSION@]
+  -t, --to=VERSION       convert to VERSION [default: @TOPLEVEL_VERSION@]
   -v, --version          print program version"""))
        sys.stdout.write ('\n\n')
        sys.stdout.write (_ ("Report bugs to %s.") % "bug-lilypond@gnu.org")
@@ -439,7 +439,7 @@ if 1:
                if re.search ('\\\\repetitions',str):
                        sys.stderr.write ('\n')
                        sys.stderr.write (NOT_SMART % "\\repetitions")
-               #       raise FatalConversionError()
+               #       raise FatalConversionError ()
                return str
 
        conversions.append (((1,3,23), conv,
@@ -939,7 +939,7 @@ if 1:
                       and re.search ('automaticMelismata', str)  == None:
                        sys.stderr.write ('\n')
                        sys.stderr.write (NOT_SMART % "automaticMelismata; turned on by default since 1.5.67.")
-                       raise FatalConversionError()
+                       raise FatalConversionError ()
                return str
 
        conversions.append (((1,5,67), conv,
@@ -1204,7 +1204,7 @@ if 1:
                        sys.stderr.write ('\n')
                        sys.stderr.write (UPDATE_MANUALLY)
                        sys.stderr.write ('\n')
-                       raise FatalConversionError()
+                       raise FatalConversionError ()
 
                str = re.sub ('HaraKiriStaffContext', 'RemoveEmptyStaffContext', str)
                return str
@@ -1247,7 +1247,7 @@ if 1:
                        sys.stderr.write (UPDATE_MANUALLY)
                        sys.stderr.write ('\n')
 
-                       raise FatalConversionError()
+                       raise FatalConversionError ()
 
                return str
 
@@ -1472,7 +1472,7 @@ if 1:
                        sys.stderr.write (UPDATE_MANUALLY)
                        sys.stderr.write ('\n')
 
-                       raise FatalConversionError()
+                       raise FatalConversionError ()
 
                str = re.sub (r'-\\markup', r'@\\markup', str)
                str = re.sub (r'-\\', r'\\', str)
@@ -1515,7 +1515,7 @@ if 1:
                        sys.stderr.write (UPDATE_MANUALLY)
                        sys.stderr.write ('\n')
 
-                       raise FatalConversionError()
+                       raise FatalConversionError ()
 
                str = re.sub ('fingerHorizontalDirection *= *#(LEFT|-1)',
                              "fingeringOrientations = #'(up down left)", str)
@@ -1579,7 +1579,7 @@ def conv (str):
                                     "(ly:paper-get-font (ly:grob-get-paper foo) .. )"))
                sys.stderr.write (UPDATE_MANUALLY)
                sys.stderr.write ('\n')
-               raise FatalConversionError()
+               raise FatalConversionError ()
 
        if re.search ("\\pitch *#", str) :
                sys.stderr.write ('\n')
@@ -1587,7 +1587,7 @@ def conv (str):
                sys.stderr.write ('\n')
                sys.stderr.write ("Use Scheme code to construct arbitrary note events.")
 
-               raise FatalConversionError()
+               raise FatalConversionError ()
 
        return str
 
@@ -1654,7 +1654,7 @@ def conv (str):
                sys.stderr.write ('\n')
                sys.stderr.write (UPDATE_MANUALLY)
                sys.stderr.write ('\n')
-               raise FatalConversionError()
+               raise FatalConversionError ()
        return str
 
 conversions.append (((1,9,8), conv, """dash-length -> dash-fraction"""))
@@ -1804,7 +1804,7 @@ def conv (str):
                sys.stderr.write ('\n')
                sys.stderr.write (UPDATE_MANUALLY)
                sys.stderr.write ('\n')
-               raise FatalConversionError()
+               raise FatalConversionError ()
 
        # this rule doesn't really work,
        # too lazy to figure out why.
@@ -1982,7 +1982,7 @@ def conv (str):
                sys.stderr.write (NOT_SMART % "ly:paper-get-variable")
                sys.stderr.write ('\n')
                sys.stderr.write ('use (ly:paper-lookup (ly:grob-paper ))')
-               raise FatalConversionError()
+               raise FatalConversionError ()
 
        str = re.sub (r'\\defaultAccidentals', "#(set-accidental-style 'default)", str)
        str = re.sub (r'\\voiceAccidentals', "#(set-accidental-style 'voice)", str)
@@ -2354,12 +2354,17 @@ conversions.append (((2, 5, 1),
                     'ly:import-module -> ly:module-copy'))
 
 def conv (str):
-       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
                      r'\\\1 {\2}', str)
-       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
                      r'\\\1 {\2}', str)
-       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+       str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
                      r'\\\1 {\2}', str)
+       def get_markup (m):
+               s = m.group (0)
+               s = re.sub (r'''((\\"|})\s*){''', '\2 \\line {', s)
+               return s
+       str = re.sub (r'\\markup\s*{([^}]|{[^}]*})*}', get_markup, str)
        return str
 
 conversions.append (((2, 5, 2),
@@ -2423,19 +2428,53 @@ def conv (str):
        en_utf_8 = codecs.getencoder ('utf_8')
        try:
                de_ascii (str)
-       except UnicodeDecodeError:
+       # only in python >= 2.3
+       # except UnicodeDecodeError:
+       except UnicodeError:
                # do not re-recode UTF-8 input
                try:
                        de_utf_8 (str)
-               except UnicodeDecodeError:
+               #except UnicodeDecodeError:
+               except UnicodeError:
                        str = en_utf_8 (de_input (str)[0])[0]
+
+
+
+       str = re.sub (r"#\(ly:set-point-and-click '[a-z-]+\)", '', str)
        return str
 
 conversions.append (((2, 5, 13),
                     conv,
-                    '\\encoding: smart recode latin1..utf-8'))
+                    '\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click'))
+
+
+def conv (str):
+       if re.search ("ly:stencil-set-extent!", str):
+               sys.stderr.write ('\n')
+               sys.stderr.write (NOT_SMART % "ly:stencil-set-extent!")
+               sys.stderr.write ('\n')
+               sys.stderr.write ('use (set! VAR (ly:make-stencil (ly:stencil-expr VAR) X-EXT Y-EXT))\n')
+               raise FatalConversionError ()
+       if re.search ("ly:stencil-align-to!", str):
+               sys.stderr.write ('\n')
+               sys.stderr.write (NOT_SMART % "ly:stencil-align-to!")
+               sys.stderr.write ('\n')
+               sys.stderr.write ('use (set! VAR (ly:stencil-aligned-to VAR AXIS DIR))\n')
+               raise FatalConversionError ()
+       return str
 
+conversions.append (((2, 5, 17),
+                    conv,
+                    'ly:stencil-set-extent! removed'))
+                   
+def conv (str):
+       str = re.sub (r"ly:warn\b", 'ly:warning', str)
+       return str
 
+conversions.append (((2, 5, 18),
+                    conv,
+                    'ly:warn -> ly:warning'))
+                   
 ################################
 #      END OF CONVERSIONS
 ################################
@@ -2590,7 +2629,7 @@ for f in files:
                do_one_file (f)
        except UnknownVersion:
                sys.stderr.write ('\n')
-               sys.stderr.write (_ ("%s: cannot determine version for `%s'") \
+               sys.stderr.write (_ ("%s: can't determine version for `%s'") \
                                  % (program_name, f))
                sys.stderr.write ('\n')
                if assume_old:
@@ -2599,7 +2638,7 @@ for f in files:
                        do_one_file (f)
                        from_version = fv
                else:
-                       sys.stderr.write (_ ("%s: skipping: `%s' ") \
+                       sys.stderr.write (_ ("%s: skipping: `%s'") \
                                          % (program_name,  f))
                pass