]> git.donarmstrong.com Git - lilypond.git/commitdiff
* clef-key-distance.ly: add note.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 8 Nov 2005 12:57:27 +0000 (12:57 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 8 Nov 2005 12:57:27 +0000 (12:57 +0000)
* lily/grob-closure.cc (add_offset_callback): bugfix: properly add
offset callbacks. This fixes alignment for Fingering objects.

* scm/define-grobs.scm (all-grob-descriptions): tiny bit less
space for key - timesig combination.

* input/regression/script-stem-tremolo.ly (Module): new file.

* scm/define-grobs.scm (all-grob-descriptions): decrease distance
to key sig.

* lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.

* lily/text-engraver.cc (acknowledge_stem_tremolo): new function.

* lily/script-engraver.cc (acknowledge_stem_tremolo): new function.

* scm/define-grobs.scm (all-grob-descriptions): remove
self-X-offset. Fixes alignment of octavate-8.

* scripts/lilypond-book.py (datadir): look in
LILYPONDPREFIX/share/lilypond/current/

* GNUmakefile.in: symlink current to <VERSION>.

12 files changed:
ChangeLog
GNUmakefile.in
input/regression/script-stem-tremolo.ly [new file with mode: 0644]
lily/dynamic-engraver.cc
lily/grob-closure.cc
lily/mensural-ligature-engraver.cc
lily/script-engraver.cc
lily/text-engraver.cc
lily/vaticana-ligature-engraver.cc
scm/define-grobs.scm
scm/define-markup-commands.scm
scripts/lilypond-book.py

index 200690b9d5dac3550ac7170911433ca6fc056d3a..3d5a4d904f9a520131760d43d10d542484fcbc7c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,37 @@
+2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
+
+       * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
+       offset callbacks. This fixes alignment for Fingering objects.
+
+       * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
+       space for key - timesig combination. 
+
+       * input/regression/script-stem-tremolo.ly (Module): new file.
+
+       * scm/define-grobs.scm (all-grob-descriptions): decrease distance
+       to key sig.
+
+       * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
+
+       * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
+
+       * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
+
+       * scm/define-grobs.scm (all-grob-descriptions): remove
+       self-X-offset. Fixes alignment of octavate-8.
+
+       * scripts/lilypond-book.py (datadir): look in
+       LILYPONDPREFIX/share/lilypond/current/
+
+       * GNUmakefile.in: symlink current to <VERSION>. 
+
 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
 
        * lily/main.cc: eps listed as a backend.
 
 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
-       * scm/lily-library.scm (print-music-as-book): quote $defaultparser.
+       * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
 
 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
index 80c7ad95449d00b017b3b8138692af735483cadd..cc81039dfdb31b548ed1747ebdb6cf90c1d8f2a7 100644 (file)
@@ -108,6 +108,8 @@ $(tree-share-prefix)/lilypond-force link-tree: GNUmakefile
        mkdir -p $(tree-bin)
        mkdir -p $(tree-share-prefix)
        mkdir -p $(tree-lib-prefix)
+       (cd $(tree-lib)/lilypond/ && ln -sf $(TOPLEVEL_VERSION) current)
+       (cd $(tree-share)/lilypond/ && ln -sf $(TOPLEVEL_VERSION) current)
        mkdir -p $(tree-share-prefix)/dvips
        mkdir -p $(tree-share-prefix)/elisp
        mkdir -p $(tree-share-prefix)/fonts
diff --git a/input/regression/script-stem-tremolo.ly b/input/regression/script-stem-tremolo.ly
new file mode 100644 (file)
index 0000000..f370259
--- /dev/null
@@ -0,0 +1,14 @@
+\header {
+
+  texidoc = "Scripts avoid stem tremolos even if there is no visible stem."
+
+}
+\version "2.7.16"
+
+\layout {raggedright =##t}
+{
+  \stemDown
+  g'1:32_"foo"
+  g'1:32_.
+  g'1:32_\f
+}
index c3370d014ddff9ee414089713220c5da94e261ff..bfb0f16b584c45fbed869efc65c662761972d1b8 100644 (file)
@@ -61,6 +61,7 @@ class Dynamic_engraver : public Engraver
 
   TRANSLATOR_DECLARATIONS (Dynamic_engraver);
   DECLARE_ACKNOWLEDGER (script);
+  DECLARE_ACKNOWLEDGER (stem_tremolo);
   DECLARE_ACKNOWLEDGER (note_column);
   DECLARE_ACKNOWLEDGER (slur);
 
@@ -370,6 +371,15 @@ Dynamic_engraver::typeset_all ()
     }
 }
 
+
+void
+Dynamic_engraver::acknowledge_stem_tremolo (Grob_info info)
+{
+  if (line_spanner_)
+    Side_position_interface::add_support (line_spanner_, info.grob ());
+}
+
+
 void
 Dynamic_engraver::acknowledge_slur (Grob_info info)
 {
@@ -377,6 +387,7 @@ Dynamic_engraver::acknowledge_slur (Grob_info info)
     Side_position_interface::add_support (line_spanner_, info.grob ());
 }
 
+
 void
 Dynamic_engraver::acknowledge_note_column (Grob_info info)
 {
@@ -437,6 +448,7 @@ Dynamic_engraver::acknowledge_script (Grob_info info)
 ADD_ACKNOWLEDGER (Dynamic_engraver, script);
 ADD_ACKNOWLEDGER (Dynamic_engraver, note_column);
 ADD_ACKNOWLEDGER (Dynamic_engraver, slur);
+ADD_ACKNOWLEDGER (Dynamic_engraver, stem_tremolo);
 
 ADD_TRANSLATOR (Dynamic_engraver,
                /* doc */
index 519055bdb77557cf9794b5c2ee02e730224c58cf..a3075e2cd1e4eb2ad733ab71f6884132728519e5 100644 (file)
@@ -33,22 +33,26 @@ void
 add_offset_callback (Grob *g, SCM proc, Axis a)
 {
   SCM data = g->get_property_data (axis_offset_symbol (a));
+  if (!scm_is_number (data)
+      && !ly_is_procedure (data)
+      && !is_simple_closure (data))
+    {
+      g->internal_set_property (axis_offset_symbol (a),
+                               proc);
+      return ;
+    }
+
   if (ly_is_procedure (data))
     data = ly_make_simple_closure (scm_list_1  (data));
   else if (is_simple_closure (data))
     data = simple_closure_expression (data);
-  else if (!scm_is_number (data))
-    g->internal_set_property (axis_offset_symbol (a),
-                             proc);
-  else
-    {
-      SCM plus = ly_lily_module_constant ("+");
-      SCM expr = scm_list_3 (plus,
-                            ly_make_simple_closure (scm_list_1 (proc)),
-                            data);
-      g->internal_set_property (axis_offset_symbol (a),
-                               ly_make_simple_closure (expr));
-    }
+
+  SCM plus = ly_lily_module_constant ("+");
+  SCM expr = scm_list_3 (plus,
+                        ly_make_simple_closure (scm_list_1 (proc)),
+                        data);
+  g->internal_set_property (axis_offset_symbol (a),
+                           ly_make_simple_closure (expr));
 }
 
 
index 5818c73c7d111d440ce4d93a82b3f1c2b06ebce0..b95f96ccabd559b5b89ccec2ee1409eceb3a9e76 100644 (file)
@@ -58,6 +58,8 @@ private:
 
 Mensural_ligature_engraver::Mensural_ligature_engraver ()
 {
+  brew_ligature_primitive_proc = 
+    Mensural_ligature::brew_ligature_primitive_proc;
 }
 
 Spanner *
index 7369a11474409c17a512ae268e2315a645f8eec6..6baa67bfc05d8d20536fc4b18d88afe63499780d 100644 (file)
@@ -43,6 +43,7 @@ protected:
   DECLARE_ACKNOWLEDGER (slur);
   DECLARE_ACKNOWLEDGER (rhythmic_head);
   DECLARE_ACKNOWLEDGER (stem);
+  DECLARE_ACKNOWLEDGER (stem_tremolo);
   DECLARE_ACKNOWLEDGER (note_column);
 
 public:
@@ -180,6 +181,18 @@ Script_engraver::acknowledge_stem (Grob_info info)
     }
 }
 
+void
+Script_engraver::acknowledge_stem_tremolo (Grob_info info)
+{
+  int script_count = scripts_.size ();
+  for (int i = 0; i < script_count; i++)
+    {
+      Grob *e = scripts_[i].script_;
+      Side_position_interface::add_support (e, info.grob ());
+    }
+}
+
+
 void
 Script_engraver::acknowledge_rhythmic_head (Grob_info info)
 {
@@ -236,6 +249,7 @@ ADD_ACKNOWLEDGER (Script_engraver, slur);
 ADD_ACKNOWLEDGER (Script_engraver, rhythmic_head);
 ADD_ACKNOWLEDGER (Script_engraver, stem);
 ADD_ACKNOWLEDGER (Script_engraver, note_column);
+ADD_ACKNOWLEDGER (Script_engraver, stem_tremolo);
 
 ADD_TRANSLATOR (Script_engraver,
                /* doc */ "Handles note scripted articulations.",
index 4b5904abf208e7567a78c9a4437b28f745ced074..62a81ce2b21e4b9d9be23a45854b73e6cd18c193 100644 (file)
@@ -27,6 +27,7 @@ protected:
   void stop_translation_timestep ();
   void process_acknowledged ();
 
+  DECLARE_ACKNOWLEDGER (stem_tremolo);
   DECLARE_ACKNOWLEDGER (stem);
   DECLARE_ACKNOWLEDGER (rhythmic_head);
 };
@@ -69,6 +70,13 @@ Text_engraver::acknowledge_stem (Grob_info inf)
     Side_position_interface::add_support (texts_[i], inf.grob ());
 }
 
+void
+Text_engraver::acknowledge_stem_tremolo (Grob_info info)
+{
+  for (int i = 0; i < texts_.size (); i++)
+    Side_position_interface::add_support (texts_[i], info.grob ());
+}
+
 void
 Text_engraver::process_acknowledged ()
 {
@@ -120,6 +128,7 @@ Text_engraver::Text_engraver ()
 #include "translator.icc"
 
 ADD_ACKNOWLEDGER (Text_engraver, stem);
+ADD_ACKNOWLEDGER (Text_engraver, stem_tremolo);
 ADD_ACKNOWLEDGER (Text_engraver, rhythmic_head);
 ADD_TRANSLATOR (Text_engraver,
                /* doc */ "Create text-scripts",
index 8bb63c6ccd08b71b3a33f0092dca94e9b9d19dcf..90e6e59a97128687f485bb2a6af5396dcca3dfb6 100644 (file)
@@ -47,6 +47,8 @@ protected:
 
 Vaticana_ligature_engraver::Vaticana_ligature_engraver ()
 {
+  brew_ligature_primitive_proc = 
+    Vaticana_ligature::brew_ligature_primitive_proc;
 }
 
 Spanner *
index 30d393130497c977bd3087a888adf39a03453faf..958e875f183d872a49cf328bb16a38a5a326ae81 100644 (file)
        (break-visibility . ,begin-of-line-visible)
        (space-alist . ((ambitus . (extra-space . 2.0))
                        (staff-bar . (extra-space . 0.7))
-                       (key-cancellation . (minimum-space . 4.0))
-                       (key-signature . (minimum-space . 4.0))
+                       (key-cancellation . (minimum-space . 3.5))
+                       (key-signature . (minimum-space . 3.5))
                        (time-signature . (minimum-space . 4.2))
                        (first-note . (minimum-fixed-space . 5.0))
                        (next-note . (extra-space . 0.5))
        (stencil . ,Key_signature_interface::print)
 
        (space-alist . (
-                       (time-signature . (extra-space . 1.25))
+                       (time-signature . (extra-space . 1.15))
                        (staff-bar . (extra-space . 1.1))
                        (right-edge . (extra-space . 0.5))
                        (first-note . (fixed-space . 2.5))))
      . (
        (self-alignment-X . 0)
        (break-visibility . ,begin-of-line-visible)
-       (self-X-offset . ,(ly:make-simple-closure `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))
-                                                      ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_x_parent)))))
+       (X-offset . ,(ly:make-simple-closure
+                     `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))
+                          ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_x_parent)))))
        
        (Y-offset . ,Side_position_interface::y_aligned_side)
 
index 2eeb3fae06169717a66c48247d689b3199e5bd5d..3597686ef8d6a7f6ff638df32a49ecbd958be8a2 100644 (file)
@@ -559,7 +559,7 @@ linewidth, where X is the number of staff spaces."
       (ly:make-stencil '()  '(1 . -1) '(1 . -1)))))
 
 (def-markup-command (justify-field layout props symbol) (symbol?)
-   (let* ((m (chain-assoc-get symbol props)))
+-   (let* ((m (chain-assoc-get symbol props)))
      (if (string? m)
       (interpret-markup layout props
        (list justify-string-markup m))
index 2dbf727b0b86b627266a3712f05195775eb33762..460a814fed5f183bbccc4ddd38359fdbb792f7f6 100644 (file)
@@ -50,7 +50,9 @@ if os.environ.has_key ('LILYPONDPREFIX'):
        datadir = os.environ['LILYPONDPREFIX']
        while datadir[-1] == os.sep:
                datadir= datadir[:-1]
-
+               
+       datadir = os.path.join (datadir, "share/lilypond/current/")
+       
 sys.path.insert (0, os.path.join (datadir, 'python'))
 
 # Customize these.