Constant Hairpin on line break

2018-03-20 Thread Karim Haddad
Hi,

Does somebody know how to avoid having the vertical hook on a line break and 
just to have it on the end of a constant hairpin ?
Here is a minimal example code :

\relative c'' {
 \override Hairpin.stencil = #constante-hairpin
  c1 \p \< |
  \break
  c1 | %%here the hook should not appear if possible.
  c1 \! |
  }

Best regards
-- 
Karim Haddad



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Tie/Accidental Collision

2018-03-20 Thread Sam Bivens

Hi all,

In the attached MWE, I'm having difficulties correcting the collision 
between the tie and the accidental.


The documentation has ample support for /slur//accidental collisions, 
but I'm having trouble fixing the collision with /ties/.


I'd appreciate any help you can offer!

Thanks,

Sam
\version "2.19.81"
\language "english"

left = \relative c {
  \time 2/2
  <<
{
  s4 2 q4~ |
  q q2 4 |
}
\\
{
  2-> -> |
  -> -> |
}
  >>
}

\score {
\new Staff = "left" { \clef bass \left }
  \layout { }
}


mwe.pdf
Description: Adobe PDF document
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: score beginning at end of first page of a bookpart

2018-03-20 Thread Ali Cuota
Many thanks, This looks like what I need. But I have to study this
home (I have internet only in an internet-shop).

Francois 

  http://www.avg.com/email-signature?utm_medium=email_source=link_campaign=sig-email_content=webmail;
target="_blank">https://ipmcdn.avast.com/images/icons/icon-envelope-tick-green-avg-v1.png;
alt="" width="46" height="29" style="width: 46px; height: 29px;"
/>
Libre de virus. http://www.avg.com/email-signature?utm_medium=email_source=link_campaign=sig-email_content=webmail;
target="_blank" style="color: #4453ea;">www.avg.com 




2018-03-19 15:52 GMT-05:00, Karlin High :
> On 3/19/2018 12:03 PM, Ali Cuota wrote:
>> I need to start a score at the end of page (in one case one system,
>> other case 3 systems), but I don't know how to fix it.
>
> To get good help, provide a tiny example.
> 
>
> This notation manual page might have the information you need.
> 
>
> And the Joram Berger LilyPond spacing map often clarifies things for me:
> 
> --
> Karlin High
> Missouri, USA
>

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: trillspann without trill

2018-03-20 Thread Ali Cuota
Many thanks. I will try it this afternoon.

Francois 

  http://www.avg.com/email-signature?utm_medium=email_source=link_campaign=sig-email_content=webmail;
target="_blank">https://ipmcdn.avast.com/images/icons/icon-envelope-tick-green-avg-v1.png;
alt="" width="46" height="29" style="width: 46px; height: 29px;"
/>
Libre de virus. http://www.avg.com/email-signature?utm_medium=email_source=link_campaign=sig-email_content=webmail;
target="_blank" style="color: #4453ea;">www.avg.com 




2018-03-19 16:25 GMT-05:00, Susan Buckingham :
> If you set the TrillSpanner.bound-details.left.text = ##f this gets rid of
> the "tr"
>
> On Mar 19, 2018 2:06 PM, "Malte Meyn"  wrote:
>
>>
>>
>> Am 19.03.2018 um 18:11 schrieb Ali Cuota:
>>
>>> Hi again,
>>>
>>> for Bach BWV 528, 2nd mvt,  meas. 38-39, I need a trillspann without
>>> trill (see not-so-tiny pic).
>>>
>>> How can I achieve this?
>>>
>>
>> Try one of the following:
>>
>> \version "2.19.81"
>>
>> {
>>   \override TrillSpanner.bound-details.left.text = #'()
>>   b1\startTrillSpan b\stopTrillSpan
>>   b\prall
>>   b\prallprall
>> }
>>
>> ___
>> lilypond-user mailing list
>> lilypond-user@gnu.org
>> https://lists.gnu.org/mailman/listinfo/lilypond-user
>>
>

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: predicate for \lyricmode

2018-03-20 Thread Jan-Peter Voigt
Yes, but you might write one that checks if the music expression does contain 
elements of a certain type. It is possible, but I can't tell if its reasonable.


Am 20. März 2018 17:35:44 MEZ schrieb David Kastrup :
>Urs Liska  writes:
>
>> Hi all,
>>
>> is there a LilyPond predicate for a \lyricmode expression?
>>
>> \version "2.19.80"
>>
>> test =
>> #(define-void-function (text)(ly:music?)
>>(display text))
>>
>> text = \lyricmode { a b c }
>> \test \text
>>
>> does work, so ly:music? accepts the lyricmode expression. But is
>there
>> a narrower predicate I can use to expect lyrics to be arguments for a
>> function?
>
>No.  It's just an ordinary music expression containing different
>elements conveniently entered with \lyricmode .
>
>-- 
>David Kastrup
>
>___
>lilypond-user mailing list
>lilypond-user@gnu.org
>https://lists.gnu.org/mailman/listinfo/lilypond-user

-- 
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: predicate for \lyricmode

2018-03-20 Thread Urs Liska



Am 20.03.2018 um 17:35 schrieb David Kastrup:

Urs Liska  writes:


Hi all,

is there a LilyPond predicate for a \lyricmode expression?

\version "2.19.80"

test =
#(define-void-function (text)(ly:music?)
(display text))

text = \lyricmode { a b c }
\test \text

does work, so ly:music? accepts the lyricmode expression. But is there
a narrower predicate I can use to expect lyrics to be arguments for a
function?

No.  It's just an ordinary music expression containing different
elements conveniently entered with \lyricmode .


Thank you.

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: predicate for \lyricmode

2018-03-20 Thread David Kastrup
Urs Liska  writes:

> Hi all,
>
> is there a LilyPond predicate for a \lyricmode expression?
>
> \version "2.19.80"
>
> test =
> #(define-void-function (text)(ly:music?)
>(display text))
>
> text = \lyricmode { a b c }
> \test \text
>
> does work, so ly:music? accepts the lyricmode expression. But is there
> a narrower predicate I can use to expect lyrics to be arguments for a
> function?

No.  It's just an ordinary music expression containing different
elements conveniently entered with \lyricmode .

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


predicate for \lyricmode

2018-03-20 Thread Urs Liska

Hi all,

is there a LilyPond predicate for a \lyricmode expression?

\version "2.19.80"

test =
#(define-void-function (text)(ly:music?)
   (display text))

text = \lyricmode { a b c }
\test \text

does work, so ly:music? accepts the lyricmode expression. But is there a 
narrower predicate I can use to expect lyrics to be arguments for a 
function?


Urs


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lyrics "polyphony"

2018-03-20 Thread Urs Liska

Hi Trevor (and David),


Am 20.03.2018 um 15:54 schrieb Trevor:

Hi Urs, you wrote 20/03/2018 11:32:30

I've come across the need to temporarily split lyrics into two 
"stanzas" (in repeated sections).
The code I am confronted with does this by using some kind of 
polyphony construct, but this ends up creating a new \Lyrics context 
that is added below the lowest staff instead of directly below the 
original Lyrics context:

...

How can I make sure the split lyrics end up next to each other?


There is a nuisance with the second associated lyric voice starting 
too late, so you have to compensate somehow, perhaps like this:


\version "2.19.80"

notesA = \relative {
  \autoBeamOff
  c'' d e d | c8 [ b ] c  d  c4 g
}

notesB = \relative {
  c' d e d | c b c e
}

words = \lyricmode {
  A B C
  <<
    {
      D e -- f g
    }
    \new Lyrics \with { alignBelowContext = "LyricsA" }
    {
      \lyricsto "upper" { E -- F G }
    }
  >>
  C  G
}

\score {
  <<
    \new Staff \new Voice = "upper" \notesA
    \new Lyrics = "LyricsA" \lyricsto "upper" \words
    \new Staff \new Voice = "lower" \notesB
  >>
}

Trevor



Thank you, this gets me on the right track (although I'll have to think 
if I can nicely integrate this in the infrastructure so the editor 
doesn't have to add the low-level code in the actual content file).


Urs
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lyrics "polyphony"

2018-03-20 Thread Trevor

Hi Urs, you wrote 20/03/2018 11:32:30

I've come across the need to temporarily split lyrics into two 
"stanzas" (in repeated sections).


The code I am confronted with does this by using some kind of polyphony 
construct, but this ends up creating a new \Lyrics context that is 
added below the lowest staff instead of directly below the original 
Lyrics context:



%%%
\version "2.19.80"

notesA = \relative {
\autoBeamOff
c'' d e d | c8 [ b ] c d c4 g
}

notesB = \relative {
c' d e d | c b c e
}

words = \lyricmode {
A B C D
<<
{
e -- f g
}
\new Lyrics {
E F G
}
>>
C G
}

\score {
<<
\new Staff \new Voice = "upper" \notesA
\new Lyrics \lyricsto "upper" \words
\new Staff \new Voice = "lower" \notesB
>>
}
%%%

How can I make sure the split lyrics end up next to each other?


There is a nuisance with the second associated lyric voice starting too 
late, so you have to compensate somehow, perhaps like this:


\version "2.19.80"

notesA = \relative {
  \autoBeamOff
  c'' d e d | c8 [ b ] c  d  c4 g
}

notesB = \relative {
  c' d e d | c b c e
}

words = \lyricmode {
  A B C
  <<
{
  D e -- f g
}
\new Lyrics \with { alignBelowContext = "LyricsA" }
{
  \lyricsto "upper" { E -- F G }
}
  >>
  C  G
}

\score {
  <<
\new Staff \new Voice = "upper" \notesA
\new Lyrics = "LyricsA" \lyricsto "upper" \words
\new Staff \new Voice = "lower" \notesB
  >>
}

Trevor
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: summer of code registration

2018-03-20 Thread Urs Liska

Dear Nguyen,

welcome to the LilyPond community, we are looking forward to your 
application.


If you are familiar with Racket it should not be too hard to get used to 
the Guile implementation of Scheme (although the interplay between 
Scheme as a language and the LilyPond internals are not too 
straightforward ...). C should not be needed in that project at all.


There are two areas of work you should look at before you can write a 
good proposal: getting an idea about the openLilyLib package 
infrastructure, and forming a "picture" of what your project might want 
to achieve and how that could be organized.


a)
The goal is to create an openLilyLib package that can serve (at least) 
as the basis for making contemporary notation techniques easily 
accessible to LilyPond users. So it's of course a prerequisite to have 
an understanding of what an openLilyLib package is and how it works.


I suggest you go to https://github.com/openlilylib and clone all 
existing repositories from there. Further information on how to get 
things set up and running is available at 
https://github.com/openlilylib/oll-core/wiki.
From there you could go through the packages and try out the example 
files that should be in "usage-examples" directories in all the packages.


Learning about the core of how things work internally can be found in 
the oll-core repository, but maybe more interestingly you could inspect 
how the other packages are set up.


b)
The project suggestion on lilypond.org is (deliberately) not very 
specific as to what kinds of contemporary notation should be covered. A 
GSoC project will presumably include the fundamental infrastructure and 
only selected actual notation features, so the student can get quite 
some liberty on which notation is interesting to them.
So a first step is to get an idea what would be interesting to you and 
to talk about that on the mailing list (I think for this the 
lilypond-user list is much better than the lilypond-devel list as you 
will want to get feedback from *users* for this discussion.
But it is equally important to get an idea of how a "contemporary 
notation library" could be organized technically in order to get a 
maintainble structure that is modular and (maybe) hierarchical. It's not 
on you to come up with that alone, but you should get a discussion about 
this started.
So maybe think about what kinds of notation you'd be interested and 
start a discussion here.


And maybe you could share a little bit of your 
(musical/notational/programming) background.


Best regards
Urs


Am 20.03.2018 um 09:13 schrieb Nguyen Linh Chi:

Dear mentors,
I would like to join the project Lilypond, Comtemporary Notation.
As a student, I have done programming in Racket and C. So it is close 
to Scheme.

Anyone can provide some help?
Best,
--
*Nguyen Linh Chi*


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lyrics "polyphony"

2018-03-20 Thread David Wright
On Tue 20 Mar 2018 at 12:32:30 (+0100), Urs Liska wrote:
> Hi,
> 
> I've come across the need to temporarily split lyrics into two
> "stanzas" (in repeated sections).
> 
> The code I am confronted with does this by using some kind of
> polyphony construct, but this ends up creating a new \Lyrics context
> that is added below the lowest staff instead of directly below the
> original Lyrics context:
> 
> 
> %%%
> \version "2.19.80"
> 
> notesA = \relative {
>   \autoBeamOff
>   c'' d e d | c8 [ b ] c  d  c4 g
> }
> 
> notesB = \relative {
>   c' d e d | c b c e
> }
> 
> words = \lyricmode {
>   A B C D
>   <<
> {
>   e -- f g
> }
> \new Lyrics {
>   E F G
> }
>   >>
>   C  G
> }
> 
> \score {
>   <<
> \new Staff \new Voice = "upper" \notesA
> \new Lyrics \lyricsto "upper" \words
> \new Staff \new Voice = "lower" \notesB
>   >>
> }
> %%%
> 
> How can I make sure the split lyrics end up next to each other?

I think you have to name your Staff contexts and use, eg,
 \with { alignAboveContext = bottom }

However, that doesn't seem to get you out of the woods. You also need
\lyricsto to get the X-alignment of melismas sorted, and once I tried
adding that, I ran into difficulties with the new lyrics being one
step late. (I don't know if this has any connection with that oddity of
\set associatedVoice where you always have to switch voices one
syllable earlier for it to work properly.)

Cheers,
David.

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


summer of code registration

2018-03-20 Thread Nguyen Linh Chi
Dear mentors,
I would like to join the project Lilypond, Comtemporary Notation.
As a student, I have done programming in Racket and C. So it is close to
Scheme.
Anyone can provide some help?
Best,
-- 
*Nguyen Linh Chi*
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Lyrics "polyphony"

2018-03-20 Thread Urs Liska

Hi,

I've come across the need to temporarily split lyrics into two "stanzas" 
(in repeated sections).


The code I am confronted with does this by using some kind of polyphony 
construct, but this ends up creating a new \Lyrics context that is added 
below the lowest staff instead of directly below the original Lyrics 
context:



%%%
\version "2.19.80"

notesA = \relative {
  \autoBeamOff
  c'' d e d | c8 [ b ] c  d  c4 g
}

notesB = \relative {
  c' d e d | c b c e
}

words = \lyricmode {
  A B C D
  <<
{
  e -- f g
}
\new Lyrics {
  E F G
}
  >>
  C  G
}

\score {
  <<
\new Staff \new Voice = "upper" \notesA
\new Lyrics \lyricsto "upper" \words
\new Staff \new Voice = "lower" \notesB
  >>
}
%%%

How can I make sure the split lyrics end up next to each other?

Thanks for any hints
Urs
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI tick resolution

2018-03-20 Thread Gilberto Agostinho
Just one more example, this time from old music, from Beethoven's/ Sonata
Pathétique/. Look at the last beat of the last bar in the image below:


 

At 384 PPQ, the very last beat is a quarter note and therefore has 384
ticks. This means that each group totalling a sixteenth-note has 96.
Therefore the last group, the tuplet of 9 notes, has 96 ticks to be
executed. Since 96 / 9 = 10.6667, this will likely be divided as 11 11 10 11
11 10 11 11 10 or something similar.

Cheers,
Gilberto



--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI tick resolution

2018-03-20 Thread Gilberto Agostinho
Hi all, thanks for all replies.

I will not enter on the merit of what can be perceived by ear or not at a
reasonable tempo, we already have plenty of that in the audio parameter wars
(44100 vs 48000 Hz, 16 vs 24 bit, etc.) But akin to those, it's a fact that
modern DAWs have much higher MIDI tick resolution by default than what
LilyPond outputs, and since these files have insignificant sizes (in
particular in the context of hard drive sizes today) and given that modern
sound cards can play them back with ease (unlike , I just don't see why to
limit the MIDI outputs to a lower value than the 'standards' you find out
there.

Also keep in mind that tick resolution is given in pulses per quarter note
(PPQ), not seconds. This means that a slow piece will have a lower
resolution in true time, i.e. ticks per second. Finally note that the
reference is a quarter note, so if you have 384 PPQ, you then have 192 ticks
per eighth note, 96 per sixteenth note, 48 per thirty-second-notes. Given
that contemporary music can very much look like the image below, I think
there is a strong case for higher PPQ in order to have decent
representations of tuplets of very short note values:

 

My 2 cents.

Cheers,
Gilberto 



--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI tick resolution

2018-03-20 Thread Gilberto Agostinho
Hi all, thanks for all replies.

I will not enter on the merit of what can be perceived by ear or not at a
reasonable tempo, we already have plenty of that in the audio parameter wars
(44100 vs 48000 Hz, 16 vs 24 bit, etc.) But akin to those, it's a fact that
modern DAWs have much higher MIDI tick resolution by default than what
LilyPond outputs, and since these files have insignificant sizes (in
particular in the context of hard drive sizes today) and given that modern
sound cards can play them back with ease (unlike , I just don't see why to
limit the MIDI outputs to a lower value than the 'standards' you find out
there. 

Also keep in mind that tick resolution is given in pulses per quarter note
(PPQ), not seconds. This means that a slow piece will have a lower
resolution /in true time/, i.e. ticks per second. Finally note that the
reference is a quarter note, so if you have 384 PPQ, you then have 192 ticks
per eighth note, 96 per sixteenth note, 48 per thirty-second-notes. Given
that contemporary music can very much look like the image below, I think
there is a strong case for higher PPQ in order to have decent
representations of tuplets of very short note values:

 

My 2 cents.

Cheers,
Gilberto



--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI tick resolution

2018-03-20 Thread David Kastrup
Thomas Morley  writes:

> 2018-03-20 2:49 GMT+01:00 Ivan Kuznetsov :
>> Gilberto Agostinho  wrote:
>>>
>>> Does anyone know if it possible to change the tick resolution of LilyPond's
>>> MIDI output to a value other than the default 384? One reason for wanting
>>> this change is due to the fact that 384 cannot be divided by 5 and so
>>> quintuplets on a crotchet are not precise.
>>
>> No, they would not be precise but they would perceptually be
>> exact enough.  Without knowing precisely how these midi clock
>> values work, I would imagine that the five notes of a quintuplet
>> in a MIDI file would have the following clock durations: 77 77 77 77 76.
>>
>> So what if four notes are of length 77 and one note is length 76?
>> No one can hear the difference.
>
> I tested two files
>
> (2)
> \score {
>   {
> \time 2/4
> \tuplet 5/4 { c'8 8 8 8 8 }
>   }
>   \layout {}
>   \midi {}
> }

[...]

> Looks correct.
>
> (2)
> trackBchannelB = \relative c {
>   c'4*153/384 c r4*1/384 c4*153/384 c r4*1/384 c4*153/384
> }
>
> Inserting rests here is surely not that nice.
>
>
> So I'd say there are use-cases where the midi-tick has direct and
> visible impact.

"visible" is the key here.  "audible" not so much, but for better or
worse, Midi files are also being used as an information exchange format
without ever passing through a physical Midi interface.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI tick resolution

2018-03-20 Thread Thomas Morley
2018-03-20 2:49 GMT+01:00 Ivan Kuznetsov :
> Gilberto Agostinho  wrote:
>>
>> Does anyone know if it possible to change the tick resolution of LilyPond's
>> MIDI output to a value other than the default 384? One reason for wanting
>> this change is due to the fact that 384 cannot be divided by 5 and so
>> quintuplets on a crotchet are not precise.
>
> No, they would not be precise but they would perceptually be
> exact enough.  Without knowing precisely how these midi clock
> values work, I would imagine that the five notes of a quintuplet
> in a MIDI file would have the following clock durations: 77 77 77 77 76.
>
> So what if four notes are of length 77 and one note is length 76?
> No one can hear the difference.

I tested two files

(1)
\score {
  {
\time 2/4
\tuplet 3/2 { c'8 8 8 8 8 8 }
  }
  \layout {}
  \midi {}
}

(2)
\score {
  {
\time 2/4
\tuplet 5/4 { c'8 8 8 8 8 }
  }
  \layout {}
  \midi {}
}

with the sequence

lilypond file.ly
mid2ly file.midi
lilypond file-midi.ly

The resulting file-midi.ly shows (only excerpts)
(1)
trackBchannelB = \relative c {
  c'4*128/384 c c c c c
  | % 2

}

Looks correct.

(2)
trackBchannelB = \relative c {
  c'4*153/384 c r4*1/384 c4*153/384 c r4*1/384 c4*153/384
}

Inserting rests here is surely not that nice.


So I'd say there are use-cases where the midi-tick has direct and
visible impact.

Cheers,
  Harm

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user