lilypond-1.4.3
authorfred <fred>
Wed, 27 Mar 2002 01:19:51 +0000 (01:19 +0000)
committerfred <fred>
Wed, 27 Mar 2002 01:19:51 +0000 (01:19 +0000)
CHANGES
scripts/abc2ly.py

diff --git a/CHANGES b/CHANGES
index 6eadd906641586113414255ab46e1fb177d633b2..af019b8376e81d2f342822705e2fd9ae151ad7a4 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,55 @@
-1.4.1.jcn4
+1.4.2.jcn4
 ==========
 
+* Windows: bugfix for tex-wrappers, added tex wrapper for dvips.
+LilyPond (read: ly2dvi) should now work right out of the box.
+
+Amazing; it seems that ly2dvi won't generate PK files without this
+dvips wrapper.  We had over 200 downloads of setup.exe, yet only one
+`call for help'.  Did all the others give up, or did none of them
+bother to share their fix/file a bug report?  Urg.
+
+* Included mktexnam.patch (again?).
+
+* Documentation fix (Mark Hindley).
+
+* Debian patch and bashism fix (Anthony).
+
+* Bugfix: local-install should depend on $(INSTALLATION_FILES).  This fixes
+./configure; make install in buildscripts/ (Michael Vanier).
+
+* Removed les-nereides from short-examples, as it is tweaked a lot,
+contrary to what the webpage claims (didn't know that).
+
+1.4.2.mb1
+==========
+
+* ly2dvi, titledefs.tex: Typeset copyright notice at the bottom of the
+first page. Make separate page styles for first and last page.
+
+* Bugfix: Default RehearsalMark font-family changed to roman (only
+affects Scheme text markups).
+
+1.4.2.hwn1
+==========
+
+* Added support for Q: statement to abc2ly. (Laura Conrad)
+
+* Tie shape bugfix (Mark Hindley).
+
+* Bugfix: lilypond-book LatexPaper.__setattr__()
+
+* Bugfix: make Hyphen_spanner::brew_molecule() more robust.
+
+* Don't use stdin when no argument specified.
+
+* Naming smobs -> grobs 
+
+* Bugfix: ledger lines on easy-notation note heads.
+
+1.4.2
+=====
+
 * Glossary fixes (Thanks Jean-Pierre Coulon).
 
 1.4.1.jcn3
index c76574eba30b58233fbdf401139c634eca83d966..b4295e933f597fa6db6b0a7ca854b1c298d1b074 100644 (file)
@@ -87,7 +87,7 @@ names = ["One", "Two", "Three"]
 DIGITS='0123456789'
 alphabet="ABCDEFGHIJKLMNOPQRSTUVWXYZ"  
 HSPACE=' \t'
-
+midi_specs = ''
        
 def check_clef(s):
       if not s:
@@ -205,6 +205,23 @@ def dump_voices (outf):
                                outf.write("}")
                outf.write ("\n}")
 
+def try_parse_q(a):
+       global midi_specs
+       #assume that Q takes the form "Q:1/4=120"
+       #There are other possibilities, but they are deprecated
+       if string.count(a, '/') == 1:
+               array=string.split(a,'/')
+               numerator=array[0]
+               if numerator != 1:
+                       sys.stderr.write("abc2ly: Warning, unable to translate a Q specification with a numerator of %s: %s\n" % (numerator, a))
+               array2=string.split(array[1],'=')
+               denominator=array2[0]
+               perminute=array2[1]
+               duration=str(string.atof(denominator)/string.atoi(numerator))
+               midi_specs=string.join(["\\tempo", duration, "=", perminute])
+       else:
+               sys.stderr.write("abc2ly: Warning, unable to parse Q specification: %s\n" % a)
+        
 def dump_score (outf):
        outf.write (r"""\score{
         \notes <
@@ -243,7 +260,7 @@ def dump_score (outf):
                outf.write ("\t\t\\StaffContext\n")
 #              outf.write ("\t\t\\consists Staff_margin_engraver\n")
                outf.write ("\t    }\n")
-       outf.write ("\t}\n\t\\midi {}\n}\n")
+       outf.write ("\t}\n\t\\midi {%s}\n}\n" % midi_specs)
 
 
 
@@ -631,7 +648,8 @@ def try_parse_header_line (ln, state):
                        lyrics_append(a)
                if g == 'w':    # vocals
                        slyrics_append (a)
-
+               if g == 'Q':    #tempo
+                       try_parse_q (a)
                return ''
        return ln