Gschisti Gschasti/score
Zur Navigation springen
Zur Suche springen
Lilypond-Score
\version "2.20.0"
\language "deutsch"
myTitel = "Gschisti Gschasti"
mycomp= \markup "Carl Czerny, 1791-1857"
AkkI = {
\set Staff.shortInstrumentName = \markup \caps "Disc"
\set Staff.instrumentName = \markup \caps "Dis"
}
AkkII = {
\set Staff.shortInstrumentName = \markup \caps "Akk II"
\set Staff.instrumentName = \markup \caps "Akk II"
}
BassI = {
\set Staff.shortInstrumentName = \markup \caps "Bass"
\set Staff.instrumentName = \markup \caps "Bass"
}
#(define (MM->Script-text evt)
(if (eq? 'MultiMeasureTextEvent (ly:music-property evt 'name))
(let ((res (make-music 'TextScriptEvent)))
(newline) (display (ly:music-mutable-properties evt)) ; if you are curious ...
(for-each (lambda(props)
(ly:music-set-property! res (car props) (cdr props)))
(ly:music-mutable-properties evt))
res)
evt))
ghostMusic =
#(define-music-function (music) (ly:music? )
(map-some-music
(lambda(x)
(let
((dur (ly:music-property x 'duration #f)))
(and
(or dur (eq? 'EventChord (ly:music-property x 'name)))
(let
((skip (make-music 'SkipEvent 'duration
(or dur (make-duration-of-length (ly:music-length x)))))
(artis (let ((elts (ly:music-property x 'elements #f)))
(if elts
(filter
(lambda(y) ;; EventChord
(not (eq? 'NoteEvent (ly:music-property y 'name))))
elts)
(map MM->Script-text (ly:music-property x 'articulations '()))))))
(ly:music-set-property! skip 'articulations artis)
skip))))
music))
make-midi-list =
#(define-void-function (name score tempolist)
((string? #f) ly:score? list?)
(for-each
(lambda (tempo)
(ly:book-process
(apply
ly:make-book
$defaultpaper
$defaultheader
(list score))
$defaultpaper
#{
\midi {
\tempo 4 = $tempo
}
#}
(format #f "~a_~a"
(or name "midi")
tempo)))
tempolist))
chExBass = {
<c es g heses>1-\markup \whiteout { "m" } %% halbverminderter Septakkord
<c es g b d'>1-\markup \whiteout { "m" } %% c:m9
<c es ges b d'>1-\markup \whiteout { "m)" \hspace #-3.4 "(" } %% c:m9.5- eingeklammerter Akkord für einbuchstabige AKkordnamen
<c es g b>1-\markup { "7" } %% c:m7
< c es g b d' f' a' >1-\markup { \normal-size-super "o" } %% c:m13
<c es g b d' f'>1-\markup { \fontsize #-0.5 "(7)" } %% c:m11, die 7 in Klammer
}
#(define (pitch-alteration-semitones pitch)
(inexact->exact (round (* (ly:pitch-alteration pitch) 2))))
#(define (conditional-string-downcase str condition)
(if condition
(string-downcase str)
str))
#(define ((chord-name->german-markup-text-alteration B-instead-of-Bb) pitch lowercase?)
(define (pitch-alteration-semitones pitch)
(inexact->exact (round (* (ly:pitch-alteration pitch) 2))))
(define (conditional-string-downcase str condition)
(if condition
(string-downcase str)
str))
(let* ((name (ly:pitch-notename pitch))
(alt-semitones (pitch-alteration-semitones pitch))
(n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -1)))
(cons 7 (+ (if B-instead-of-Bb 1 1) alt-semitones))
(cons name alt-semitones))))
(make-line-markup
(list
(make-simple-markup
(conditional-string-downcase
(vector-ref #("C" "D" "E" "F" "G" "A" "H" "B") (car n-a))
lowercase?))
(let ((alteration (/ (cdr n-a) 2)))
(cond
((and (equal? lowercase? #f) (= alteration FLAT) (= (car n-a) 7)) (make-simple-markup ""))
((and (= alteration FLAT) (or (= (car n-a) 5) (= (car n-a) 2) )) (make-simple-markup "s"))
((= alteration FLAT) (make-simple-markup "es"))
((and (= alteration DOUBLE-FLAT) (or (= (car n-a) 5)(= (car n-a) 2) )) (make-simple-markup "ses"))
((= alteration DOUBLE-FLAT) (make-simple-markup "eses"))
((= alteration SHARP) (make-simple-markup "is"))
((= alteration DOUBLE-SHARP) (make-simple-markup "isis"))
(else empty-markup)))))))
#(define germanChords (chord-name->german-markup-text-alteration #t))
#(define (note-name->my-german-markup pitch lowercase?)
(let* ((name (ly:pitch-notename pitch))
(alt-semitones (pitch-alteration-semitones pitch))
(n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -2)))
(cons 7 (+ 1 alt-semitones))
(cons name alt-semitones))))
(make-line-markup
(list
(string-append
(list-ref '("C" "D" "E" "F" "G" "A" "H" "B") (car n-a))
(if (or (equal? (car n-a) 2) (equal? (car n-a) 5))
(list-ref '( "ses" "s" "" "is" "isis") (+ 2 (cdr n-a)))
(list-ref '("eses" "es" "" "is" "isis") (+ 2 (cdr n-a)))))))))
#(define (note-name->underlined-markup pitch lowercase?)
"Return pitch markup for @var{pitch}."
(make-underline-markup
(make-line-markup
(list
(make-simple-markup
(conditional-string-downcase
(vector-ref #("C" "D" "E" "F" "G" "A" "B") (ly:pitch-notename pitch))
lowercase?))
(accidental->markup (ly:pitch-alteration pitch))))))
#(define (note-name->german-underlined-markup pitch lowercase?)
(make-underline-markup
(make-line-markup
(list
((chord-name->german-markup-text-alteration #t) pitch lowercase?)))))
gRoot= \once \set ChordNames.chordRootNamer = #note-name->german-underlined-markup
chExceptionMusic = {
<c es g heses>1-\markup \whiteout { "m" } %% halbverminderter Septakkord
<c es g b d'>1-\markup \whiteout { "m" } %% c:m9
<c es ges b d'>1-\markup \whiteout { "m)" \hspace #-3.4 "(" } %% c:m9.5- eingeklammerter Akkord für einbuchstabige AKkordnamen
%<c es g b>1-\markup { "7" } %% c:m7
< c es g b d' f' a' >1-\markup { "v" } %% c:m13
<c es g b d' f'>1-\markup { \fontsize #-0.5 "(7)" } %% c:m11, die 7 in Klammer
}
chUpperBass =
{
<c g>1-\markup { "" }
}
chExBasses =
#(append
(sequential-music-to-chord-exceptions chExBass #t)
(sequential-music-to-chord-exceptions chUpperBass #t)
ignatzekExceptions)
firstNote =
#(define-music-function (music )
(ly:music?)
(event-chord-reduce music))
#(use-modules (scm accreg))
myBlue = #(x11-color 'sienna4)
\layout {
\context {
\Voice
beamExceptions = #'()
\override BreathingSign.text =
\markup { \musicglyph #"scripts.lvarcomma" }
\override Stem.neutral-direction = #down
\override Script.outside-staff-priority = #'()
\override Script.padding = #1
\override Tie.thickness = #1
\override PhrasingSlur.thickness = #3
\override Rest.voiced-position = #0
\override MultiMeasureRest.expand-limit = #3
}
\context {
\Staff
beamExceptions = #'()
\override BreathingSign.text =
\markup { \musicglyph #"scripts.lvarcomma" }
\override InstrumentName.font-features = #'("smcp")
}
\context {
\ChordNames
chordNameLowercaseMinor = ##t
chordNameExceptions = #chExBasses
\remove Staff_performer
chordRootNamer = #germanChords
\override ChordName.font-name = #"Orator10 BT"
chordNoteNamer = #(chord-name->german-markup #f)
\override ChordName.X-offset =
#ly:self-alignment-interface::aligned-on-x-parent
\override ChordName.self-alignment-X = #CENTER
\override ChordName.font-name = #"Arial Narrow"
\override ChordName.layer = #2
\override ChordName.font-size = #-0.5
noChordSymbol = ##f
}
\context {
\ChordNames
\name SecondChords
\alias ChordNames
\override Rest.stencil = ##f
alignAboveContext = #"oben"
}
\context {
\Score
\accepts SecondChords
\accepts MyFingers
\accepts BarNumberStaff
\override VerticalAxisGroup.remove-first = ##t
skipBars = ##f
\override MetronomeMark.font-size = #1
\override MetronomeMark.font-shape = #'caps
\override BarLine.thick-thickness = 5
barNumberVisibility = #all-bar-numbers-visible
\override Timing.beamExceptions = #'()
\override BarNumber.color = #(rgb-color 0.7 0.7 0.7)
\override BarNumber.layer = #-200
\override BarNumber.outside-staff-priority =#'()
\override BarNumber.padding = #1
\override BarNumber.font-size = #-1
\override BarNumber.font-series = #'bold
\override BarNumber.self-alignment-X = #0
\override BarNumber.break-visibility = #end-of-line-invisible
}
\context {
\Dynamics
\override Hairpin.to-barline = ##f
alignBelowContext = melodie
\override TextSpanner.outside-staff-priority = ##f
\override TextSpanner.padding = #'()
\override DynamicText.outside-staff-priority = ##f
\override DynamicText.padding = #4
}
\context {
\RhythmicStaff
\accepts MyFingers
\consists Clef_engraver
clefGlyph = #"clefs.percussion"
clefPosition = #0
printPartCombineTexts = ##f
fontSize = #-1
\override StaffSymbol.staff-space = #(magstep -1)
\remove Ledger_line_engraver
\override NoteColumn.before-line-breaking =
#(lambda (grob)
(let* ((pap-col (ly:grob-parent grob X))
(pap-col-elts (ly:grob-object pap-col 'elements))
(chord-names
(if (ly:grob-array? pap-col-elts)
(filter
(lambda (elt)
(grob::has-interface elt 'chord-name-interface))
(ly:grob-array->list pap-col-elts))
'())))
(for-each
(lambda (chrd)
(ly:grob-set-parent! chrd X grob))
chord-names)))
}
\context {
\StaffGroup
\accepts SecondChords
\accepts BarNumberStaff
}
}
sequ = \chordmode {
c8 c:m d d:m9 c c:m g g:m7
a a:m9 g g:m f f:m e e:m9
d d:m9 e e:m9 f f:m g g:m
a a:m9 g g:m7 c c:m g g:m7
}
xsdur = \chordmode {
as8 as:m es es:m7 as as:m es es:m7
f f:m9 es es:m des des:m c c:m9
b b:m9 c c:m9 des des:m es es:m7
f f:m9 es es:m7 as as:m es es:m7
}
Bassi = \chordmode {
\BassI
\repeat volta 2 {
\sequ
}
\repeat volta 2 {
\sequ
}
\repeat volta 2 {
\sequ
}
\repeat volta 2 {
\sequ
}
\repeat volta 2 {
\xsdur
}
\repeat volta 2 {
\xsdur
}
as4 des b es as r r2
}
sequx = {
c,8 < c e g > d, < d f a > c, < c e g > g, < g h d >
a, < a c e > g, < g h d > f, < f a c > e, < e g h >
d, < d f a > e, < e g h > f, < f a c > g, < g h d >
a, < a c e > g, < g h d > c, < c e g > g, < g h d >
}
xsdurx = {
as,8 < as c es > es, < es g b > as, < as c es > es, < es g b >
f, < f as c > es, < es g b > des < des f as > c, < c es g >
b, < b d f > c, < c es g > des < des f as > es, < es g b >
f, < f as c > es, < es g b > as, < as c es > es, < es g b >
}
Massi = {
\key c \major
\repeat volta 2 {
\sequx
}
\repeat volta 2 {
\sequx
}
\repeat volta 2 {
\sequx
}
\repeat volta 2 {
\sequx
}
\repeat volta 2 {
\xsdurx
}
\repeat volta 2 {
\xsdurx
}
< as, as c es >4 < des, des f as >
< b, b des as > < es, es g des >
< as, as c es >
}
Akk = \chordmode {
s1 * 24
as4:m des:m b:m7 es:m7 as:m
}
AccordionI= \relative c''' {
\AkkI
\key c \major
\time 4/4
\repeat volta 2 {
e16 c g e' d a f d' c g e c' h f d h'
a e c a' g d h g' f c a f' e h g e'
d a f d' e h g e' f c a f' g d h g'
a e c a' h f d h' c g e c' d h f d'
}
\repeat volta 2 {
e g, c e d f, a d c e, g c h d, f h
a c, e a g h, d g f a, c f e g, h e
d f, a d e g, h e f a, c f g h, d g
a c, e a h d, f h c e, g c d f, h d
}
\repeat volta 2 {
g, c e g, f h d f, e g c e, d f h d,
c e a c, h d g h, a c f a, g h e g,
f a d f, g h e g, a c f a, h d g h,
c e a c, d f h d, e g c e, f h d f,
}
\repeat volta 2 {
g e' c g f d' h f e c' g e d h' f d
c a' e c h g' d h a f' c a g e' h g
f d' a f g e' h g a f' c a h g' d h
c a' e c d h' f d e c' g e f d' h f
}
\key as \major
\repeat volta 2 {
es c' as es des b' g des c as' es c b g' des b
f' as, c f es g, b es des f, as des c es, g c
des, f b des, es g c es, f as des f, g b es g,
as f' c as b g' des b c as' es c des b' g des
}
\repeat volta 2 {
es des' c es, des c' b des, c b' as c, b as' g b,
as g' f as, g f' es g, f es' des f, es des' c es,
des c' b des, es des' c es, f es' des f, g f' es g,
as g' f as, b as' g b, c b' as c, des c' b des,
}
\mark \markup \box "Coda"
< as c >4 <as des des, > < as b f > < b g des es' >
< as es c > r r2
}
midI =
{
\override Script.direction = #DOWN
}
fingerc = {
s16-5 s-3 s-1 s-5 s-4 s-4 s-1 s-3 s-4 s s s-5 s4
s1
s16 s s s-4 s-5 s-2 s-1 s-4 s4
s s s s16 s4 s16-2 s-1 s-4
s-5 s-1 s-3 s-5 s-4 s-1 s-2 s-5 s-4 s-1 s-2 s-5 s-4 s-1 s-2 s-5
s1
s16 s s s-4 s-5 s-1 s-2 s-4 s s s s s s s s
s s s s s s s s s s s s s s s s-4
s^1_2 s^3_4 s-5 s-2 s-1 s-4 s-5 s-2 s s-3 s s-2 s s-3 s s-2
s s s s s s s s s s s s s s s s-2
s-1 s-3 s-5 s-1 s-2 s-3 s s-1 s2
s s4 s16-2 s-4 s-5 s-1
s-2 s-5 s-4 s-2 s-1 s s s-2 s-1 s-5 s-3 s-2 s4
s1
s16 s s-2 s-1 s-2 s-5 s-3 s-1 s-2 s s s-1 s s s s
s s s s s s s s s s s s s s s-4 s-1
s-2 s-5 s-4 s-2 s-1 s-5 s-4 s-2 s-1 s-5 s-3 s-2 s-1 s-5 s-3 s-2 %% As-Dur
s-5 s-1 s-2 s-5 s-4 s-1 s-2 s-5 s2
s16-1 s-2 s-5 s-1 s-2 s-3 s-5 s-1 s s s s-1 s s s s-1
s-2 s-5 s-3 s-1 s-2 s-5 s-3 s-1 s-2 s s s-1 s-2 s-5 s-4 s-1
s-2 s-5 s-4 s-2 s-1 s-5 s-4 s-2 s-1 s s s-2 s s s s
s1
s16 s s s-1 s-2 s-5 s-4 s-1 s-2 s-5 s-4 s-1 s s s s
}
AccordionII = \relative c' {
\AkkII
\key c \major
}
midII =
{
\override Script.direction = #DOWN
}
Struktur = {
%\override Score.NonMusicalPaperColumn.page-break-permission = ##f
\override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/16)
%\override NonMusicalPaperColumn.line-break-permission = ##f
s2 * 16 \break
s2 * 16 \break
}
kopf=\header {
title = \markup \line
{
#myTitel
}
subtitle = ##f
subsubtitle = ##f
poet = ##f
composer = \markup { #mycomp }
piece = ##f
subtitle =\markup { "spielbar mit 34 Diskant-Tasten" }
opus = ##f
composer = \markup \override #'(baseline-skip . 3)
\right-column {
\fontsize #1.5 " "
\line { "für Akkordeon adaptiert" }
\line { von Manuela }
}
poet= \markup \override #'(baseline-skip . 3)
\left-column {
\fontsize #1.5 "Die Schule des Virtousen"
#mycomp
\line { "op." \number "365," " №" \number "3" }
}
}
\paper {
top-margin = 10\mm
ragged-right = ##f
ragged-last = ##f
ragged-bottom = ##f
ragged-last-bottom = ##f
bottom-margin = 20\mm
indent = #10
line-width = 160\mm
print-all-headers = ##f
#(include-special-characters)
print-first-page-number = ##t
first-page-number = #1
oddFooterMarkup = ##f
evenFooterMarkup = ##f
oddHeaderMarkup = #oddFooterMarkup
evenHeaderMarkup = #evenFooterMarkup
top-markup-spacing.padding = #5
top-system-spacing.padding = #10
}
%zzz =
\bookpart {
\kopf
\score {
\new StaffGroup
<<
%\override StaffGroup.VerticalAxisGroup.staff-staff-spacing.basic-distance = #12
\new Staff
<<
\new Voice \AccordionI
\context Voice \fingerc
>>
\new ChordNames \Akk
\new ChordNames="oben"
{
\override Rest.stencil = ##f
\Bassi
}
\new RhythmicStaff
<<
\new Voice
{
\stemDown
\override Rest.staff-position = #0
\override Dots.staff-position = #0
\override Beam.staff-position = #0
\override NoteHead.staff-position = #0
\firstNote \Bassi
}
\new NullVoice \Struktur
>>
>>
}
}
alle=
\score {
\new StaffGroup
%\unfoldRepeats
<<
\new Staff {
<<
\new Voice {
\set Staff.midiInstrument = "concertina"
\AccordionI
}
\context Voice {
\midI
}
>>
}
\new Staff {
\set Staff.midiInstrument = "acoustic bass"
\clef bass
\Massi
}
>>
}
%\make-midi-list "gschisti" \alle #'(40 50 60 70 80 90 100 108 112 120)
%\alle