gnu-music-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: LilyPond 1.3.103


From: janneke
Subject: Re: LilyPond 1.3.103
Date: 05 Nov 2000 12:54:08 +0100
User-agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7

Laura Conrad <address@hidden> writes:

> Also, I may be sounding like a broken record, but there still doesn't
> seem to be a  way to get a C time signature.  This broke between
> 1.3.99 and 1.3.100.  I looked at the diff between those two releases
> without success.  If there's someone who knows where to look but
> doesn't have time, I'd be willing to followup a hint.

Ok, try the patch below.

 \score{
      \notes{
              \property Staff.TimeSignature \push #'style = #"C"
            a
      }

 }

diff -urN ../lilypond-1.3.103.jcn3/lily/time-signature.cc 
./lily/time-signature.cc
--- ../lilypond-1.3.103.jcn3/lily/time-signature.cc     Mon Oct 30 20:15:33 2000
+++ ./lily/time-signature.cc    Sun Nov  5 12:50:14 2000
@@ -50,24 +50,36 @@
 Molecule
 Time_signature::special_time_signature (Score_element*me, String s, int n, int 
d)
 {
-  // First guess: s contains only the signature style
-  String symbolname = "timesig-" + s + to_str (n) + "/" + to_str (d);
+  /*
+    Randomly probing the font sucks?
+  */
+  
+  SCM alist_chain = Font_interface::font_alist_chain (me);
+  
+  SCM style_chain =
+    Font_interface::add_style (me, ly_symbol2scm ("timesig-symbol"),
+                              alist_chain);
+
+  Font_metric *feta = Font_interface::get_font (me, style_chain);
 
   /*
-     Randomly probing the font sucks?
-   */
+    First guess: s contains only the signature style, append fraction.
+  */
+  String symbolname = "timesig-" + s + to_str (n) + "/" + to_str (d);
   
-  Molecule m = Font_interface::get_default_font (me)->find_by_name 
(symbolname);
+  Molecule m = feta->find_by_name (symbolname);
   if (!m.empty_b()) 
     return m;
 
-  // Second guess: s contains the full signature name
-  m = Font_interface::get_default_font (me)->find_by_name ("timesig-"+s);
+  /*
+    Second guess: s contains the full signature name
+  */
+  m = feta->find_by_name ("timesig-" + s);
   if (!m.empty_b ()) 
     return m;
 
   // Resort to default layout with numbers
-  return time_signature (me, n,d);
+  return time_signature (me, n, d);
 }
 
 
diff -urN ../lilypond-1.3.103.jcn3/scm/font.scm ./scm/font.scm
--- ../lilypond-1.3.103.jcn3/scm/font.scm       Fri Nov  3 16:14:18 2000
+++ ./scm/font.scm      Sun Nov  5 12:46:25 2000
@@ -172,7 +172,9 @@
      . ((finger . ((font-family . number) (font-relative-size . -3)))
        (volta . ((font-family . number) (font-relative-size . -2)))
        (tuplet . ((font-family . roman) (font-shape . italic) 
(font-relative-size . -1)))
-       (timesig . ((font-family .  number) (font-relative-size . 0)))
+
+       (timesig . ((font-family . number) (font-relative-size . 0)))
+       (timesig-symbol . ((font-family . music) (font-relative-size . 0)))
        
        (mmrest . ((font-family . number) (font-relative-size . 1)))
        (mmrest-symbol . ((font-family . music) (font-relative-size . 0)))

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]