]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.3.142
authorfred <fred>
Wed, 27 Mar 2002 00:58:50 +0000 (00:58 +0000)
committerfred <fred>
Wed, 27 Mar 2002 00:58:50 +0000 (00:58 +0000)
input/test/test-german-chords.ly [new file with mode: 0644]
lily/system-start-delimiter-engraver.cc
ly/german-chords.ly [new file with mode: 0644]
scm/chord-name.scm

diff --git a/input/test/test-german-chords.ly b/input/test/test-german-chords.ly
new file mode 100644 (file)
index 0000000..0df2a1a
--- /dev/null
@@ -0,0 +1,14 @@
+\include "german-chords.ly"
+% #(set! german-Bb #t)
+
+ch = \chords { beses1/+beses bes/+bes b/+b bis/+bis ases/+ases as/+as a/+a ais/+ais fisis/+fisis}
+
+
+\score {
+   <
+   \context ChordNames=ch {\ch}
+   \context Staff=st \chords {\ch}
+   >
+   \paper {}
+}
+
index 1f4504a7338c9fa0e9bfc48c2051f94cfb2dba8c..27ee99dc86b22375148e2f4431a1cae7b99432bd 100644 (file)
@@ -53,6 +53,14 @@ System_start_delimiter_engraver::acknowledge_grob (Grob_info inf)
       if (gh_symbol_p (gl) && gl  == ly_symbol2scm ("brace")
          && gh_symbol_p (my_gl) && my_gl == ly_symbol2scm ("bracket"))
        inf.elem_l_->translate_axis (-1.0, X_AXIS); // ugh
+      else if (gh_symbol_p (gl) && gl  == ly_symbol2scm ("bracket")
+              && gh_symbol_p (my_gl) && my_gl == ly_symbol2scm ("bracket"))
+       {
+         inf.elem_l_->translate_axis ( -0.8, X_AXIS); // ugh
+          inf.elem_l_->set_grob_property ("arch-height",
+         gh_double2scm(gh_scm2double(inf.elem_l_->get_grob_property
+                                     ("arch-height"))+0.5));
+        }
     }
 
 }
diff --git a/ly/german-chords.ly b/ly/german-chords.ly
new file mode 100644 (file)
index 0000000..e158592
--- /dev/null
@@ -0,0 +1,39 @@
+
+%  german-chords.ly:
+% german/norwegian/danish?
+
+% To get Bb instead of B, use
+% \include "german-chords.ly"
+% #(set! german-Bb #t)
+
+#(define german-Bb #f)
+
+#(define (pitch->chord-name-text-banter pitch)
+   (if (equal? (cdr pitch) '(6 -1))
+     (if german-Bb
+       (cons "B" (accidental->text -1))
+       '("B")
+     )
+     (cons
+       (list-ref '("C" "D" "E" "F" "G" "A" "H") (cadr pitch))
+       (accidental->text (caddr pitch))
+     )
+   )
+ )   
+
+
+#(define (pitch->note-name-text-banter pitch)
+   (if (equal? (cdr pitch) '(6 -1))
+     '("b")
+     (cons
+       (string-append
+         (list-ref '("c" "d" "e" "f" "g" "a" "h") (cadr pitch))
+         (if (or (equal? (cadr pitch) 2) (equal? (cadr pitch) 5))
+           (list-ref '( "ses"  "s" "" "is" "isis") (+ 2 (caddr pitch)))
+           (list-ref '("eses" "es" "" "is" "isis") (+ 2 (caddr pitch)))
+         )
+       )
+       '()
+     )
+   )
+ )
index bcdf7aaa1f928e754eb0020f261a770582fc97a8..5bbb2017e4d61f904725fb87163f1d1debe96661 100644 (file)
 
 (define (pitch->note-name pitch)
   (cons (cadr pitch) (caddr pitch)))
-  
-(define (pitch->text pitch)
-  (cons
-    (make-string 1 (integer->char (+ (modulo (+ (cadr pitch) 2) 7) 65)))
-    (if (= (caddr pitch) 0)
+
+(define (accidental->text acc)
+    (if (= acc 0)
       '()
       (list
        (append '(music)
                                (list (append '((raise . 0.6))
                                  (list
                                   (string-append "accidentals-" 
-                                                 (number->string (caddr pitch)))))))))))))))
+                                                 (number->string acc))))))))))))
+)
+
+(define (pitch->text pitch)
+  (cons
+    (make-string 1 (integer->char (+ (modulo (+ (cadr pitch) 2) 7) 65)))
+    (accidental->text (caddr pitch))
+  )
+)
 
 ;;; Hooks to override chord names and note names, 
 ;;; see input/tricks/german-chords.ly