def escape_ly_output_string (input_string):
return_string = input_string
- needs_quotes = not re.match (u"^[a-zA-ZäöüÜÄÖßñ]*$", return_string);
+ needs_quotes = not re.match (u"^[a-zA-ZäöüÜÄÖß,\.!:ñ]*$", return_string);
if needs_quotes:
return_string = "\"" + string.replace (return_string, "\"", "\\\"") + "\""
return return_string
if not (isinstance (n, Note) or isinstance (n, Attributes) or
isinstance (n, Direction) or isinstance (n, Partial) or
isinstance (n, Barline) or isinstance (n, Harmony) or
- isinstance (n, FiguredBass) ):
+ isinstance (n, FiguredBass) or isinstance (n, Print)):
continue
if isinstance (n, Attributes) and not start_attr:
voices[v].add_element (staff_attributes)
continue
- if isinstance (n, Partial) or isinstance (n, Barline):
+ if isinstance (n, Partial) or isinstance (n, Barline) or isinstance (n, Print):
for v in voices.keys ():
voices[v].add_element (n)
continue
def get_type (self):
return self.get_text ()
def is_primary (self):
- return self.number == "1"
+ if hasattr (self, 'number'):
+ return self.number == "1"
+ else:
+ return True
class Wavy_line (Music_xml_spanner):
pass
class PerMinute (Music_xml_node):
pass
+class Print (Music_xml_node):
+ pass
+
## need this, not all classes are instantiated
'pedal': Pedal,
'per-minute': PerMinute,
'pitch': Pitch,
+ 'print': Print,
'rest': Rest,
'root': Root,
'score-part': Score_part,