[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Single line percussion staff with automatic note splitting
From: |
Thomas Morley |
Subject: |
Re: Single line percussion staff with automatic note splitting |
Date: |
Sun, 11 Dec 2011 13:16:35 +0100 |
Hi,
2011/12/11 James <address@hidden>:
> Hello,
>
> On 11 December 2011 09:00, Bart Nagel <address@hidden> wrote:
>>
>> Hi. I'm trying to make a single line percussion staff with automatic
>> note splitting.
>>
>> The single staff is confusing but I got it working by following an
>> example in the documentation. I have this:
>>
>> \version "2.12.3"
>>
>> #(define snaredrum '((snare default #t 0)))
>>
>> \new DrumStaff {
>> \override Staff.StaffSymbol #'line-positions = #'( 0 )
>> \override Staff.BarLine #'bar-size = #2
>> \set DrumStaff.drumStyleTable = #(alist->hash-table snaredrum)
>>
>> \drummode {
>> \time 4/4
>> sn2. sn16 sn2. sn2. sn4 sn16
>> }
>> }
>>
>> (The notes are just random values.)
>>
>> That works, but when I try to add the code to enable automatic note
>> splitting things go wrong. Following the documentation again I modify
>> my source to this:
>>
>> \version "2.12.3"
>>
>> #(define snaredrum '((snare default #t 0)))
>>
>> \new DrumStaff \with {
>> \remove "Note_heads_engraver"
>> \consists "Completion_heads_engraver"
>> } {
>> \override Staff.StaffSymbol #'line-positions = #'( 0 )
>> \override Staff.BarLine #'bar-size = #2
>> \set DrumStaff.drumStyleTable = #(alist->hash-table snaredrum)
>>
>> \drummode {
>> \time 4/4
>> sn2. sn16 sn2. sn2. sn4 sn16
>> }
>> }
>>
>> But now Lilypond exits with a segmentation fault.
>
>
> In 2.14.1 it does but the message is more explicit (I don't know what 2.12.x
> message is perhaps the same?)
>
> --snip--
>
> GNU LilyPond 2.14.1
> Processing `untitled.ly'
> Parsing...
> Interpreting music...
> warning: cannot find property type-check for `bar-size' (backend-type?).
> perhaps a typing error?
> warning: doing assignment anyway
> Segmentation fault
>
> --snip--
>
> So that is a clue. Although it is beyond me.
>
> regards
>
> --
> --
>
> James
engraver-init.ly states, that the "Note_heads_engraver" is removed
from the DrumVoice per default. Instead the "Drum_notes_engraver" is
used.
But
\new DrumVoice
\with {
\remove "Drum_notes_engraver"
\consists "Completion_heads_engraver"
}
{
\override Staff.StaffSymbol #'line-positions = #'( 0 )
\override Staff.BarLine #'bar-size = #2
\set DrumStaff.drumStyleTable = #(alist->hash-table snaredrum)
\drummode {
\time 4/4
sn2. sn16 sn2. sn2. sn4 sn16
}
}
gives the same error. So I don't know if it's possible.
BTW in "2.14" t'bar-size was altered to 'bar-extent (expecting a pair).
Cheers,
Harm