]> git.donarmstrong.com Git - lilypond.git/blob - input/regression/accidental-octave.ly
* lily/lily-guile.cc (type_check_assignment): if
[lilypond.git] / input / regression / accidental-octave.ly
1
2 \version "1.5.68"
3
4 \header {
5 texidoc="
6 This shows how accidentals in different octaves are handled.
7 FIXME: Shorten and docu
8
9 "
10 }
11
12 #(define  (lo-octave p)
13   (let* ((a (pitch-alteration p))
14          (n (pitch-notename p)))
15     (make-pitch -1 n a)))
16
17 #(define (no-octaves music)
18   (let* ((es (ly-get-mus-property music 'elements))
19          (e (ly-get-mus-property music 'element))
20          (p (ly-get-mus-property music 'pitch)))
21
22     (if (pair? es)
23         (ly-set-mus-property!
24          music 'elements
25          (map no-octaves es)))
26
27     (if (music? e)
28         (ly-set-mus-property!
29          music 'element
30          (no-octaves e)))
31
32     (if (pitch? p)
33         (begin
34           (set! p (lo-octave p))
35           (ly-set-mus-property! music 'pitch p)))
36
37
38     music))
39
40
41 \include "paper16.ly"
42
43 mel = \notes \transpose c'' {
44   \time 4/4 \key d \major
45   gis4 g' g gis' | gis2 g' | g1 | gis | g | gis' | g |
46   fis4 f' f fis' | fis2 f' | f1 | fis | f | fis' | f |
47   \bar "|." \break
48 }
49
50 mus = \notes {
51    \mel
52
53 %% FIXME.
54 %   \property Score.oneMeasureLazy = ##t
55
56
57    \property Score.autoAccidentals = #'(Staff (same-octave . 0))
58    < s1^""^""^"$\\backslash$property Score.autoAccidentals = \\#'(Staff (same-octave . 0))" \mel >
59    \property Score.autoAccidentals = #'(Staff (same-octave . 1))
60    < s1^""^""^"$\\backslash$property Score.autoAccidentals = \\#'(Staff (same-octave . 1))" \mel >
61    \property Score.autoAccidentals = #'(Staff (any-octave . 0))
62    < s1^""^""^"$\\backslash$property Score.autoAccidentals = \\#'(Staff (any-octave . 0))" \mel >
63    \property Score.autoAccidentals = #'(Staff (any-octave . 1))
64    < s1^""^""^"$\\backslash$property Score.autoAccidentals = \\#'(Staff (any-octave . 1))" \mel >
65    \modernAccidentals
66    < s1^""^""^"$\\backslash$modernAccidentals" \mel >
67    \modernCautionaries
68    < s1^""^""^"$\\backslash$modernCautionaries" \mel >
69    \noResetKey
70    < s1^""^""^"$\\backslash$noResetKey" \mel >
71    \forgetAccidentals
72    < s1^""^""^"$\\backslash$forgetAccidentals" \mel >
73 }
74
75
76 \score {
77   < \context Staff \mus
78     \context NoteNames \apply #no-octaves \mus
79   >
80   \paper {
81     indent=0.0
82   }
83 }