]> git.donarmstrong.com Git - lilypond.git/commitdiff
''
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 16 Jun 2002 22:22:04 +0000 (22:22 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 16 Jun 2002 22:22:04 +0000 (22:22 +0000)
autogen.sh
lily/paper-column.cc
lily/simple-spacer.cc
lily/spacing-spanner.cc
make/ly-rules.make
scm/basic-properties.scm
scripts/lilypond-book.py

index 20119e883179215f2939e7fdbc3ec69650454a24..c9128e998d645348b257b95eed49182364f62fc0 100755 (executable)
@@ -13,7 +13,6 @@ srcdir=`dirname $0`
 # advertises itself as autoconf 2.13.
 # If you have such a setup, invoke this script as:
 #   autoconf=autoconf ./autogen.sh
-set -x
 for i in in autoconf autoconf2.50 false; do
   version=`$i --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 100 + $2}'`
   if test "0$version" -ge 250; then
index 5c344836d4bf576e5407c629b9eed5d87be6058c..e68395807dff33e84c7d4e496ef4bb5cbdce0aa6 100644 (file)
@@ -36,6 +36,7 @@ ADD_INTERFACE (Paper_column, "paper-column-interface",
   Don't be confused by right-items: each spacing wish can also contain
   a number of items, with which a spacing constraint may be kept. It's
   a little baroque, but it might come in handy later on?
+
 ",
   "between-cols between-system-string when bounded-by-me shortest-playing-duration shortest-starter-duration");
 
index b83f13aebf6afc8b02be252a4e5a0d12effd9fd8..fb928d393a25df84f57a72497aba85c2b6bbdacf 100644 (file)
@@ -333,15 +333,10 @@ Simple_spacer::solve (Column_x_positions *positions, bool ragged) const
   positions->config_.push (indent_f_);
   for (int i=0; i <springs_.size (); i++)
     {
-      if (ragged)
-        {
-         // ragged right operation: do not apply any force
-         positions->config_.push (positions->config_.top () + springs_[i].length (0.0));
-       }
-      else
-        {
-         positions->config_.push (positions->config_.top () + springs_[i].length (force_f_));
-       }
+      Real  l = springs_[i].length ((ragged) ? 0.0 : force_f_);
+      positions->config_.push (positions->config_.top () + l);
+
+      assert (l >= 0);
     }
   positions->cols_ = spaced_cols_;
   positions->loose_cols_ = loose_cols_;
index 7afd12e77cd3e275eb7c6d3be26174b5dd897925..803265d12a6c9daa17dc9ef955fbf28e287b31d4 100644 (file)
 #include "spring.hh"
 #include "paper-column.hh"
 #include "spaceable-grob.hh"
+#include "break-align-interface.hh"
+
+
+
 
 /*
   paper-column:
-
-  Don't be confused by right-items: each spacing wish can also contain
-  a number of items, with which a spacing constraint may be kept. It's
-  a little baroque, but it might come in handy later on?
-    
  */
 class Spacing_spanner
 {
@@ -104,6 +103,28 @@ loose_column (Grob *l, Grob *c, Grob *r)
   if (!l_neighbor || !r_neighbor)
     return false;
 
+
+  /*
+    A rather hairy check, but we really only want to move around clefs. (anything else?)
+
+    in any case, we don't want to move bar lines.
+   */
+  for (SCM e = c->get_grob_property ("elements"); gh_pair_p (e); e = gh_cdr (e))
+    {
+      Grob * g = unsmob_grob (gh_car (e));
+      if (g && Break_align_interface::has_interface (g))
+       {
+         for (SCM s = g->get_grob_property ("elements"); gh_pair_p (s);
+              s = gh_cdr (s))
+           {
+             Grob *h = unsmob_grob (gh_car (s));
+
+             if (h  && h->get_grob_property ("break-align-symbol") == ly_symbol2scm ("bar-line"))
+               return false;
+           }
+       }
+    }
+  
   /*
     Only declare loose if the bounds make a little sense.  This means
     some cases (two isolated, consecutive clef changes) won't be
index 6c21074901098ac365b0774620c42ffaf9cafa30..acaa410b18785742f3bafddfac3b6b5712019cd4 100644 (file)
@@ -6,14 +6,16 @@
 $(outdir)/%.latex: %.doc
        rm -f $@
        $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES)\
-$(LILYPOND_BOOK_FLAGS) --dependencies --outdir=$(outdir) $<
+$(LILYPOND_BOOK_FLAGS) --verbose --dependencies --outdir=$(outdir) $<
        chmod -w $@
 
 # don't do ``cd $(outdir)'', and assume that $(outdir)/.. is the src dir.
 # it is not, for --srcdir builds
 $(outdir)/%.texi: %.tely
        rm -f $@
-       $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi $(LILYPOND_BOOK_FLAGS) $<
+       set|egrep '(TEX|LILY)'
+
+       $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --verbose $(LILYPOND_BOOK_FLAGS) $<
        chmod -w $@
 
 $(outdir)/%.texi: $(outdir)/%.tely
index be293a5b7609952c1a130f65274b7c3eef989ed7..5217d00c813b8c2b0bf57f2a380e447c86433c09 100644 (file)
@@ -27,7 +27,9 @@
                          ("|s" . (() . "|"))
                          ("|:" . ("|" . "|:"))
                          ("|." . ("|." . ()))
-                         (".|" . (() . ".|"))
+
+                         ;; hmm... should we end with a barline here?
+                         (".|" . ("|" . ".|"))
                          (":|" . (":|" . ()))
                          ("||" . ("||" . ()))
                          (".|." . (".|." . ()))
index 2f0bf3a7a0b0cf6df61504dfce4bf19b834f144b..cbb84e7b84ef6843c0e7f15f564b0a2184771d57 100644 (file)
@@ -631,7 +631,7 @@ re_dict = {
                 'verb': r'''(?P<code>@code{.*?})''',
                 'lilypond-file': '(?m)^(?P<match>@lilypondfile(\[(?P<options>[^]]*)\])?{(?P<filename>[^}]+)})',
                 'lilypond' : '(?m)^(?P<match>@lilypond(\[(?P<options>[^]]*)\])?{(?P<code>.*?)})',
-                'lilypond-block': r'''(?ms)^(?P<match>@lilypond(\[(?P<options>[^]]*)\])?\s(?P<code>.*?)@end lilypond)\s''',
+                'lilypond-block': r'''(?ms)^(?P<match>@lilypond(\[(?P<options>[^]]*)\])?\s(?P<code>.*?)@end +lilypond)\s''',
                 'option-sep' : ',\s*',
                 'intertext': r',?\s*intertext=\".*?\"',
                 'multiline-comment': r"(?sm)^\s*(?!@c\s+)(?P<code>@ignore\s.*?@end ignore)\s",