mirror of
https://github.com/kastdeur/pipeband-music.git
synced 2025-06-18 05:06:37 +02:00
Added various tunes
Added a TODO list Added support for backsticking and crosssticking
This commit is contained in:
parent
c85b87dd41
commit
895cade572
44 changed files with 2311 additions and 59 deletions
195
lilydrum.ly
Normal file → Executable file
195
lilydrum.ly
Normal file → Executable file
|
@ -1,7 +1,11 @@
|
|||
\version "2.16.2"
|
||||
%{
|
||||
LilyPond file definitions for Highland snare drum scores.
|
||||
LilyPond file definitions for Pipeband drumming scores.
|
||||
Primarily focused on Snare drumming,
|
||||
occasional bass or tenor scores should be possible.
|
||||
Especially with the use of an external eps file with flourishi symbols
|
||||
|
||||
This file was first created by Simon Froger.
|
||||
This file builds on work done by Simon Froger.
|
||||
|
||||
Include by using :
|
||||
\include "[path]/lilydrum.ly"
|
||||
|
@ -15,70 +19,138 @@
|
|||
|
||||
%}
|
||||
|
||||
% Note name defs :
|
||||
% "d" for the right hand ("droite") and
|
||||
% "g" for the left hand ("gauche")
|
||||
|
||||
% Note names defs : "d" for the right hand and "g" for the left hand
|
||||
drumPitchNames =
|
||||
#(append '(
|
||||
(d . right-hand)
|
||||
(g . left-hand)
|
||||
(right . right-hand)
|
||||
(left . left-hand)
|
||||
|
||||
(dback . right-backstick)
|
||||
(gback . left-backstick)
|
||||
(rightback . right-backstick)
|
||||
(leftback . left-backstick)
|
||||
|
||||
(dcross . right-crossstick)
|
||||
(gcross . right-crossstick)
|
||||
(rightcross . right-crossstick)
|
||||
(leftcross . right-crossstick)
|
||||
)
|
||||
drumPitchNames
|
||||
)
|
||||
|
||||
% position according to the line : right hand up and left hand down
|
||||
#(define pipebandsnaredrums '(
|
||||
(right-hand default #f 1)
|
||||
(left-hand default #f -1))
|
||||
% Position according to the line : right hand above and left hand below
|
||||
#(define pipeband-style '(
|
||||
(right-hand () #f 1)
|
||||
(left-hand () #f -1)
|
||||
(right-backstick cross #f 1)
|
||||
(left-backstick cross #f -1)
|
||||
(right-backstick xcircle #f 1)
|
||||
(left-backstick xcircle #f -1)
|
||||
)
|
||||
)
|
||||
% Built-in noteheads: default, cross, xcircle, diamond
|
||||
|
||||
% Layout tweaks for good defaults
|
||||
% =================================================== %
|
||||
% Layout tweaks for good defaults %
|
||||
% =================================================== %
|
||||
\layout {
|
||||
% no indent
|
||||
indent = 0
|
||||
% rolls number : markups should be preceeded by
|
||||
\textLengthOn
|
||||
|
||||
% dynamics up
|
||||
\dynamicUp
|
||||
\set DrumStaff.drumStyleTable = #(alist->hash-table pipebandsnaredrums)
|
||||
\context {
|
||||
\DrumStaff
|
||||
|
||||
% add hands to note definitions
|
||||
drumStyleTable = #(alist->hash-table pipeband-style)
|
||||
|
||||
% one line per staff
|
||||
\override StaffSymbol.line-positions = #'(0)
|
||||
% bar line length
|
||||
\override BarLine.bar-extent = #'(-2 . 2)
|
||||
|
||||
% stems
|
||||
\override Stem.direction = #-1 % stems down
|
||||
\override Stem.length = #11 % unbeamed stems lenght
|
||||
\override Stem.stemlet-length = #1.5 % short stem length
|
||||
% beam at same height
|
||||
\override Beam.positions = #'(-5.5 . -5.5)
|
||||
\override Stem.direction = #DOWN % stems down
|
||||
\override Stem.length = #9 % unbeamed stems length
|
||||
\override Stem.stemlet-length = #1.5 % short stem length
|
||||
|
||||
% beams
|
||||
\override Beam.beam-thickness = #0.4 % beam-thickness
|
||||
\override Beam.positions = #'(-3.8 . -3.8) % fix beams on one height
|
||||
|
||||
% slurs and ties
|
||||
\override Slur.direction = #UP % Slurs on top
|
||||
\override Tie.direction = #UP % Ties on top
|
||||
|
||||
% dynamics up
|
||||
\dynamicUp
|
||||
|
||||
|
||||
|
||||
% slurs below rolls number
|
||||
\override TextScript.outside-staff-priority = ##f
|
||||
\override TextScript.side-axis = #0
|
||||
\override TextScript.staff-padding = #3
|
||||
\override TextScript.X-offset = #2 % padding to stems
|
||||
\override TextScript.extra-offset = #'(-0.3 . 0)
|
||||
%\override TextScript.outside-staff-priority = ##f
|
||||
%\override TextScript.side-axis = #0
|
||||
%\override TextScript.staff-padding = #3
|
||||
%\override TextScript.X-offset = #2 % padding to stems
|
||||
%\override TextScript.extra-offset = #'(-0.3 . 0)
|
||||
|
||||
% tremolos (rolls)
|
||||
\override StemTremolo.slope = #0.5 % slope
|
||||
\override StemTremolo.beam-width = #1.5 % beam-width
|
||||
\override StemTremolo.beam-thickness = #0.3 % beam-thickness
|
||||
\override StemTremolo.extra-offset = #'(0 . 0.6) % vertical pos. position
|
||||
%\override StemTremolo.Y-offset = #-3.3
|
||||
\override StemTremolo.slope = #0.5 % slope
|
||||
\override StemTremolo.beam-width = #1.5 % beam-width
|
||||
\override StemTremolo.beam-thickness = #0.3 % beam-thickness
|
||||
\override StemTremolo.extra-offset = #'(0 . 0.3) % vertical pos. position
|
||||
|
||||
%\override StemTremolo.Y-offset = #-2.8
|
||||
|
||||
% repeat brackets
|
||||
\consists "Horizontal_bracket_engraver"
|
||||
\override HorizontalBracket.staff-padding = #6.5 % staff-padding
|
||||
\override HorizontalBracket.direction = #DOWN % brackets under thr staff
|
||||
\override HorizontalBracket.bracket-flare = #'(0 . 0) % vertical brackets
|
||||
%\consists "Horizontal_bracket_engraver"
|
||||
%\override HorizontalBracket.staff-padding = #6.5 % staff-padding
|
||||
%\override HorizontalBracket.direction = #DOWN % brackets under thr staff
|
||||
%\override HorizontalBracket.bracket-flare = #'(0 . 0) % vertical brackets
|
||||
|
||||
}
|
||||
\context {
|
||||
\Score
|
||||
|
||||
\override RehearsalMark.break-align-symbols = #'(clef)
|
||||
\override RehearsalMark.padding = #3
|
||||
\override VoltaBracket.edge-height = #'(1.5 . 1.5)
|
||||
}
|
||||
}
|
||||
|
||||
% =================================================== %
|
||||
% Define some tweaks for printing nicely %
|
||||
% =================================================== %\
|
||||
|
||||
|
||||
eighthBeaming = {
|
||||
\set Score.baseMoment = #(ly:make-moment 1 8)
|
||||
\set Score.beatStructure = #'( 2 )
|
||||
}
|
||||
sixteenthBeaming = {
|
||||
\set Score.baseMoment = #(ly:make-moment 1 16)
|
||||
\set Score.beatStructure = #'( 2 2 )
|
||||
}
|
||||
|
||||
\layout{
|
||||
% no indent
|
||||
indent = 0
|
||||
\context{
|
||||
\DrumStaff
|
||||
% always numeric Time Signatures
|
||||
\numericTimeSignature
|
||||
|
||||
% bar line height
|
||||
\override BarLine.bar-extent = #'(-2 . 2)
|
||||
|
||||
% I like being able to identify the 8th notes
|
||||
subdivideBeams = ##t
|
||||
}
|
||||
}
|
||||
|
||||
% ================================================= %
|
||||
% Functions %
|
||||
% ================================================= %
|
||||
|
||||
% dynamics
|
||||
v = #(define-event-function (parser location) ()
|
||||
#{ \upbow #}
|
||||
|
@ -92,7 +164,6 @@ fr = #(define-event-function (parser location) ()
|
|||
#{ \stopGroup #}
|
||||
)
|
||||
|
||||
|
||||
% dynamics with extended lines
|
||||
dynLine = #(define-music-function
|
||||
(parser location text)
|
||||
|
@ -108,14 +179,14 @@ dynLine = #(define-music-function
|
|||
\once \override TextSpanner.bound-details.right.text = \markup { \draw-line #'(0 . -1) }
|
||||
#})
|
||||
|
||||
% =================================================
|
||||
% Flams, Drags & the sort
|
||||
% =================================================
|
||||
% ================================================= %
|
||||
% Flams, Drags & the sort %
|
||||
% ================================================= %
|
||||
drumgrace = #(define-music-function (parser location notes) (ly:music?) #{
|
||||
\stemUp
|
||||
\override Flag.stroke-style = #"grace"
|
||||
\once \override Beam.positions = #'(3 . 3)
|
||||
\once \override DrumStaff.Stem.length = #7
|
||||
\once \override Beam.positions = #'(2 . 2)
|
||||
\once \override DrumStaff.Stem.length = #6
|
||||
\override Score.GraceSpacing #'spacing-increment = #0
|
||||
\override Score.Stem #'beamlet-max-length-proportion = #'(0.5 . 0.5)
|
||||
\tiny \grace $notes \normalsize
|
||||
|
@ -124,26 +195,38 @@ drumgrace = #(define-music-function (parser location notes) (ly:music?) #{
|
|||
\stemNeutral
|
||||
#})
|
||||
|
||||
|
||||
% Flams
|
||||
flamd = \drummode { \drumgrace { g8 } } % right Flam
|
||||
flamd = \drummode { \drumgrace { g8 } } % right Flam, actually flam(left) note(right)
|
||||
flamddr = \drummode { \drumgrace { g8\startGroup } } % with start repeat
|
||||
flamg = \drummode { \drumgrace { d8 } } % left Flam
|
||||
flamgdr = \drummode { \drumgrace { d8\startGroup } } % with start repeat
|
||||
|
||||
% Drags
|
||||
dragd = \drummode { \drumgrace{ g16[ g] }} % right Drag
|
||||
dragddr = \drummode { \drumgrace{ g16[\startGroup g] }} % with start repeat
|
||||
dragg = \drummode { \drumgrace{ d16[ d] }} % left Drag
|
||||
draggdr = \drummode { \drumgrace{ d16[\startGroup d] }} % with start repeat
|
||||
dragd = \drummode { \drumgrace { g16[ g] }} % right Drag
|
||||
dragddr = \drummode { \drumgrace { g16[\startGroup g] }} % with start repeat
|
||||
dragg = \drummode { \drumgrace { d16[ d] }} % left Drag
|
||||
draggdr = \drummode { \drumgrace { d16[\startGroup d] }} % with start repeat
|
||||
|
||||
% Ruff
|
||||
ruffg = \drummode { \drumgrace{ g16[ d g] }} % left Ruff
|
||||
ruffgdr = \drummode { \drumgrace{ g16[\startGroup d g] }} % with start repeat
|
||||
ruffd = \drummode { \drumgrace{ d16[ g d] }} % right Ruff
|
||||
ruffd = \drummode { \drumgrace{ d16[\startGroup g d] }} % with start repeat
|
||||
ruffg = \drummode { \drumgrace { g16[ d g] }} % left Ruff
|
||||
ruffgdr = \drummode { \drumgrace { g16[\startGroup d g] }} % with start repeat
|
||||
ruffd = \drummode { \drumgrace { d16[ g d] }} % right Ruff
|
||||
ruffddr = \drummode { \drumgrace { d16[\startGroup g d] }} % with start repeat
|
||||
|
||||
% Swiss Ruff
|
||||
sruffg = \drummode { \drumgrace{ g16[ d d] }} % left Swiss Ruff
|
||||
sruffgdr = \drummode { \drumgrace{ g16[\startGroup d d] }} % with start repeat
|
||||
sruffd = \drummode { \drumgrace{ d16[ g g] }} % right Swiss Ruff
|
||||
sruffd = \drummode { \drumgrace{ d16[\startGroup g g] }} % with start repeat
|
||||
sruffg = \drummode { \drumgrace { g16[ d d] }} % left Swiss Ruff
|
||||
sruffgdr = \drummode { \drumgrace { g16[\startGroup d d] }} % with start repeat
|
||||
sruffd = \drummode { \drumgrace { d16[ g g] }} % right Swiss Ruff
|
||||
sruffddr = \drummode { \drumgrace { d16[\startGroup g g] }} % with start repeat
|
||||
|
||||
|
||||
flam = #(define-music-function (parser location note) (ly:music?) #{
|
||||
% is note right-handed? then \flamd
|
||||
% if left, then \flamg
|
||||
|
||||
#(if #f \flamg ($\flamd)) % fix \flam{gd} return
|
||||
|
||||
% print the note, else it won't show up
|
||||
$note
|
||||
#})
|
Loading…
Add table
Add a link
Reference in a new issue