]> git.donarmstrong.com Git - lilypond.git/commitdiff
* make/lilypond.redhat.spec.in: require GUILE >= 1.6.4-7
authorhanwen <hanwen>
Thu, 3 Jul 2003 16:50:35 +0000 (16:50 +0000)
committerhanwen <hanwen>
Thu, 3 Jul 2003 16:50:35 +0000 (16:50 +0000)
* scm/new-markup.scm (box-markup): new function.
(box-markup): new function. Contributed by Dick Schoeller
<schoeller@attbi.com>

* scm/lily.scm: remove reduce-no-unit
(list-insert-separator): use fold-right

ChangeLog
make/lilypond.redhat.spec.in
scm/lily.scm
scm/molecule.scm
scm/new-markup.scm

index 7174edb19e11f24844cd2e83959ad797ac998c79..276799af6a63c186f65a4c709e137682a8a0dc78 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2003-07-03  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
 
+       * make/lilypond.redhat.spec.in: require GUILE >= 1.6.4-7
+
+       * scm/new-markup.scm (box-markup): new function.
+       (box-markup): new function. Contributed by Dick Schoeller
+       <schoeller@attbi.com>
+
        * scm/lily.scm: remove reduce-no-unit 
        (list-insert-separator): use fold-right
 
@@ -33,8 +39,8 @@
 
 2003-07-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
 
-       * lily/parser.yy (Repeated_music): bug fix beam multiplicity was
-       completely borked 
+       * lily/parser.yy (Repeated_music): bug fix, beam multiplicity was
+       completely borked
 
        * lily/chord-tremolo-engraver.cc (try_music): warnings for user-errors.
        (try_music): bug fix: beam multiplicity was completely borked.
index 27895eb85432721edac8655da6c97a631ca15617..9b18151465457e7b0d2277307fc080000e6de1bc 100644 (file)
@@ -16,6 +16,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-root
 
 Buildrequires: t1utils bison flex mftrace texinfo
 Requires: tetex  tetex-latex libstdc++ python 
+Requires: guile >= 1.6.4-7
 
 %description
 LilyPond lets you create music notation.  It produces
index aa6856af3acf3532f9b342b3a4752a3434fe0394..0ed4c0e6ceb985bc83574342163154ee414c5a30 100644 (file)
@@ -227,8 +227,7 @@ L1 is copied, L2 not.
        (list x)
        (cons x  (cons between y))
        ))
-  (fold-right conc #f lst)
-  )
+  (fold-right conc #f lst))
 
 ;;;;;;;;;;;;;;;;
 ; other
index 605cccb515c860065875d399dce0bf8acae26911..cc199b4192e1e64c9cdec15af245a182eeb9f032 100644 (file)
@@ -54,6 +54,7 @@
       xext yext)                      
 )
 
+
 (define-public (box-grob-molecule grob)
   "Make a box of exactly the extents of the grob.  The box precisely
 encloses the contents.
@@ -66,3 +67,21 @@ encloses the contents.
                     (box-molecule xext (cons  (cdr yext) (+ (cdr yext) thick) ))
                     (box-molecule (cons (cdr xext) (+ (cdr xext) thick)) yext)
                     (box-molecule (cons (- (car xext) thick) (car xext)) yext))))
+
+
+;; TODO merge this and prev function. 
+(define-public (box-molecule mol thick padding)
+  "Add a box around MOL, producing a new molecule."
+  (let* (
+        (x-ext (widen-interval (ly:molecule-get-extent mol 0) padding))
+        (y-ext (widen-interval (ly:molecule-get-extent mol 1) padding))
+        (x-rule (box-molecule (widen-interval x-ext thick)
+                              (cons 0 thick)))
+        (y-rule (box-molecule (cons 0 thick) y-ext)))
+    
+    (set! mol (ly:molecule-combine-at-edge mol 0 1 y-rule (* 0.5 padding)))
+    (set! mol (ly:molecule-combine-at-edge mol 0 -1  y-rule (* 0.5 padding)))
+    (set! mol (ly:molecule-combine-at-edge mol 1 1  x-rule 0.0))  
+    (set! mol (ly:molecule-combine-at-edge mol 1 -1 x-rule 0.0))
+    
+    mol))
index a29b9027a8183e5a9153b6e9db82533920f8c8ce..5e91cdd04355ace399bc20be3538b1aea1e50dd7 100644 (file)
@@ -371,6 +371,17 @@ for the reader.
    (car rest))
   ))
 
+(define-public (box-markup grob props . rest)
+  "Syntax: \\box MARKUP"
+  (let*
+      (
+       (th 0.1)
+       (pad 0.2)
+       (m (interpret-markup grob props (car rest)))
+       )
+    (box-molecule m th pad)
+  ))
+
 (define (markup-signature-to-keyword sig)
   " (A B C) -> a0-b1-c2 "
   
@@ -529,6 +540,8 @@ for the reader.
    (cons raise-markup (list number? markup?))
    (cons magnify-markup (list number? markup?))
    (cons fontsize-markup (list number? markup?))
+
+   (cons box-markup  (list markup?))
    )
   )