]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/key-performer.cc
* scripts/abc2ly.py (dump_slyrics): add ord().
[lilypond.git] / lily / key-performer.cc
index 50a352bed115203f2d057bc407dacc8f2b7623a9..09e0ce0aac77db42adbcb85956d014ffd113ac16 100644 (file)
@@ -6,13 +6,10 @@
   (c) 1997--2004 Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
-#include "lily-guile.hh"
-
 #include "audio-item.hh"
 #include "performer.hh"
 #include "warn.hh"
 
-
 class Key_performer : public Performer
 {
 public:
@@ -45,26 +42,24 @@ Key_performer::create_audio_elements ()
   if (key_req_) 
     {
       SCM pitchlist = key_req_->get_property ("pitch-alist");
-      static SCM proc;
-      if (!proc)
-       proc = scm_primitive_eval (ly_symbol2scm ("alterations-in-key"));
+      SCM proc = ly_scheme_function ("alterations-in-key");
       
-      SCM acc = gh_call1 (proc, pitchlist);
+      SCM acc = scm_call_1 (proc, pitchlist);
       
       Pitch key_do (0, 
-                   gh_scm2int (ly_caar (pitchlist)),
-                   gh_scm2int (ly_cdar (pitchlist)));
+                   scm_to_int (scm_caar (pitchlist)),
+                   scm_to_int (scm_cdar (pitchlist)));
 
       Pitch c_do (0, 0, 0);
                  
       SCM c_pitchlist
        = ly_transpose_key_alist (pitchlist,
-                                 interval (key_do, c_do).smobbed_copy ());
+                                 pitch_interval (key_do, c_do).smobbed_copy ());
 
       /* MIDI keys are too limited for lilypond scales.
         We check for minor scale and assume major otherwise.  */
-      SCM minor = scm_primitive_eval (ly_symbol2scm ("minor"));
-      audio_ = new Audio_key (gh_scm2int (acc),
+      SCM minor = scm_c_eval_string ("minor");
+      audio_ = new Audio_key (scm_to_int (acc),
                              SCM_BOOL_T != scm_equal_p (minor, c_pitchlist));
 
       Audio_element_info info (audio_, key_req_);