X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=python%2Fconvertrules.py;h=0df4b09b1d735a863bd8d4bdd76a66e6a35bfc66;hb=d2762a4f1add2bb04d6fc34d3c7ae03eeb7d500f;hp=1ab911cca2c3f576f103e3eeee8566bfcd0bc481;hpb=3eb0d21c7cac9360c37c3376c8771e6e29c1a588;p=lilypond.git diff --git a/python/convertrules.py b/python/convertrules.py index 1ab911cca2..0df4b09b1d 100644 --- a/python/convertrules.py +++ b/python/convertrules.py @@ -2846,7 +2846,7 @@ def conv(str): if re.search("(Slur|Tie)\w+#\'dash-fraction", str) \ or re.search("(Slur|Tie)\w+#\'dash-period", str): stderr_write (NOT_SMART % "dash-fraction, dash-period") - stderr_write (_ ("Dash parameters for slurs and ties are now in \'dash-details.\n")) + stderr_write (_ ("Dash parameters for slurs and ties are now in \'dash-definition.\n")) stderr_write (UPDATE_MANUALLY) return str @@ -3450,7 +3450,7 @@ def conv (str): if m.group (1): return m.group (0) x = m.group (2) + m.group (4) - + if m.group (3): x = x + re.sub (r"(\s*)(" + symbol_list + ")", fn_path_replace, m.group (3)) @@ -3667,11 +3667,70 @@ def conv(str): def conv(str): str = re.sub (r"\\stringTuning\s*\\notemode(\s*)@?\{\s*(.*?)\s*@?}", r"\\stringTuning\1\2", str) - if re.search (r'\bstaff-padding\b', str): + if re.search (r'[^-\w]staff-padding[^-\w]', str): stderr_write (NOT_SMART % "staff-padding") stderr_write (_ ("Staff-padding now controls the distance to the baseline, not the nearest point.")) return str +@rule((2, 17, 29), r'''Dynamic_engraver -> New_dynamic_engraver+Dynamic_align_engraver +New_dynamic_engraver -> Dynamic_engraver''') +def conv(str): + str = re.sub ("(\r?\n?[ \t]*\\\\(?:consists|remove)\\s*)(\"?)Dynamic_engraver\\2", + r"\1\2New_dynamic_engraver\2\1\2Dynamic_align_engraver\2", + str) +# Should we warn about any remaining Dynamic_engraver? Possibly it +# will do the job just fine. + str = re.sub ("New_dynamic_engraver", "Dynamic_engraver", str) + return str + +@rule ((2, 17, 97), r'''(make-relative (a b) b ...) -> make-relative (a b) #{ a b #}...''') +def conv (str): + str = re.sub (r"(\(make-relative\s+\(\s*(([A-Za-z][-_A-Za-z0-9]*)" + + r"(?:\s+[A-Za-z][-_A-Za-z0-9]*)*)\s*\)\s*)\3(?=\s)", + r"\1(make-event-chord (list \2))", str) + str = re.sub (r"(\(make-relative\s+\(\s*([A-Za-z][-_A-Za-z0-9]*" + + r"(?:\s+([A-Za-z][-_A-Za-z0-9]*))+)\s*\)\s*)\3(?=\s)", + r"\1(make-sequential-music (list \2))", str) + return str + +@rule ((2, 18, 0), + _ ("bump version for release")) +def conv (str): + return str + +@rule ((2, 19, 2), r"\lyricsto \new/\context/... -> \new/\context/... \lyricsto") +def conv (str): + word=r'(?:#?"[^"]*"|\b' + wordsyntax + r'\b)' + str = re.sub (r"(\\lyricsto\s*" + word + r"\s*)(\\(?:new|context)\s*" + word + + r"(?:\s*=\s*" + word + r")?\s*)", + r"\2\1", str) + str = re.sub (r"(\\lyricsto\s*" + word + r"\s*)\\lyricmode\b\s*", + r"\1", str) + str = re.sub (r"(\\lyricsto\s*" + word + r"\s*)\\lyrics\b\s*", + r"\\new Lyrics \1", str) + str = re.sub (r'\\lyricmode\s*(\\lyricsto\b)', r"\1", str) + return str + +@rule ((2, 19, 7), "keySignature -> keyAlterations") +def conv(str): + str = re.sub (r'\bkeySignature\b', 'keyAlterations', str) + str = re.sub (r'\blastKeySignature\b', 'lastKeyAlterations', str) + str = re.sub (r'\blocalKeySignature\b', 'localAlterations', str) + return str + +@rule ((2, 19, 11), "thin-kern -> segno-kern") +def conv(str): + str = re.sub (r'\bthin-kern\b', 'segno-kern', str) + return str + +@rule ((2, 19, 16), """implicitTimeSignatureVisibility -> initialTimeSignatureVisibility +csharp -> c-sharp""") +def conv(str): + str = re.sub (r'\bimplicitTimeSignatureVisibility\b', 'initialTimeSignatureVisibility', str) + str = re.sub (r'\b([a-g])((?:sharp){1,2}|(?:flat){1,2})\b',r'\1-\2', str) + str = re.sub (r'\\shiftOff\b', r'\\undo\\shiftOn', str) + return str + # Guidelines to write rules (please keep this at the end of this file) # # - keep at most one rule per version; if several conversions should be done,