From 8c769fc52f092210a21288e81d008dc3f700a626 Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Wed, 27 May 2015 14:33:34 +0200 Subject: [PATCH] Some more issue 3229 rules --- python/convertrules.py | 55 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/python/convertrules.py b/python/convertrules.py index 68c7288de8..9f628e60b6 100644 --- a/python/convertrules.py +++ b/python/convertrules.py @@ -3746,6 +3746,61 @@ def conv(str): + after_id, r'\1-\2', str) return str +@rule ((2, 19, 21), r"""\relative x''' { y ... -> \relative { z''' ...""") +def conv(str): + # If the file contains a language switch to a language where the + # name of c is not "c", we can't reliably convert. + m = re.search (r'\\language\s(?!\s*#?"(?:nederlands|deutsch|english|norsk|suomi|svenska))"', str) + if True: # not m: + def subst(m): + oct = (len (re.findall ("'", m.group (1) + m.group (4))) + - len (re.findall (",", m.group (1) + m.group (4)))) + if (re.search (m.group (1)[0] + r".{7,}" + m.group (3)[0], + "c d e f g a bh")): + oct = oct - 1 + elif (re.search (m.group (3)[0] + r".{7,}" + m.group (1)[0], + "c d e f g a bh")): + oct = oct + 1 + return m.expand (r"\\relative\2\3" + oct * "'" + (-oct) * ",") + str = re.sub (r"\\relative\s+([a-z]+[',]*)" + + r"(\s+(?:@?\{|<