Problems defining markup function to draw lines.

2018-12-21 Thread Mike Stickles
Our choir has developed some "in-house" markings which I'm trying to 
replicate in LilyPond. One is the use of a double slash to visually 
indicate the last section of a piece when the musical pattern changes 
for that last part.


I can replicate that by using a markup like the following:

a2^\markup { \with-dimensions #'(0 . 0) #'(0 . 0) \path #0.3 #'((moveto 
5 -2) (lineto 7 2) (moveto 6 -2) (lineto 8 2)) }


However, when the note I'm using is above the staff, I need to move the 
Y-coordinates down, and sometimes there's a need to shift the slashes 
closer to or further away from the note. So I'm trying to set up a 
markup function to handle this, so I can just annotate the note as:


a2^\markup \double-slash #5 #-2

But I can't seem to get the syntax correct. If I leave the arguments as 
dummy args, this works:


#(define-markup-command (double-box layout props xoff yoff) (number? 
number?)

  (interpret-markup layout props
    #{
        \markup {
            \with-dimensions #'(0 . 0) #'(0 . 0)
            \path #0.3 #'((moveto 5 -2) (lineto 7 2) (moveto 6 -2) 
(lineto 8 2))

        }
    #}
))

But when I try to implement the numbers, I get errors no matter what I 
do. This (while it doesn't work) shows what I'm trying to get to:


#(define-markup-command (double-box layout props xoff yoff) (number? 
number?)

  (interpret-markup layout props
    #{
        \markup {
            \with-dimensions #'(0 . 0) #'(0 . 0)
            \path #0.3 #'((moveto xoff yoff) (lineto (+ xoff 2) (+ yoff 
4)) (moveto (+ xoff 1) yoff) (lineto (+ xoff 3) (+ yoff 4)))

        }
    #}
))


Any ideas on what I'm doing wrong?


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


Re: Tuplets in Metric Modulations

2018-12-21 Thread Saul Tobin
Notice that in my example I included spacer rests in the tuplet. This allow
room for the bracket.

On Fri, Dec 21, 2018 at 2:47 PM Ld2020  wrote:

> Thank you - this is extremely helpful.
>
> One issue I am still trying to solve: how to get tuplet brackets to
> appear as part of the metronome mark.
>
> I.E. triplet eighth = eighth (triplet under the tuplet bracket with the 3.)
>
> Right now I'm doing:
> \rhythmMark "" {\tuplet 3/2 {b'8}} {b'8}
>
> I get the tuplet number but no bracket.
>
> Any leads you can offer on this would be greatly appreciated.
>
>
>
> --
> 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
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread tyronicus
SoundsFromSound wrote
> What are your system specs? I can compile the file on my Linux Mint x64 
> laptop with 16GB of RAM, rockin' an 8th gen i7 but it took about 10 
> minutes almost. That seems very very slow.
> 
> Did you experience the same wait times?

Not Harm obviously but here's my data:

CPU: i5-5200u (2-core, 4-thread mobile processor)
Ram: 8gb
Ubuntu 18.10 64-bit
LilyPond 2.19.80
Page count: 25
LP-reported compile time: 3'57"
Second run: 3'13"



--
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: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Ben


On 12/21/2018 7:46 PM, Thomas Morley wrote:

Am Sa., 22. Dez. 2018 um 00:48 Uhr schrieb Reggie :

I am trying to understand theoretically why this is failing. It's only 16
pages. I am a minimalist composer so as a test I tried this extreme
situation. But yet I don't quite agree rather that it's that extreme. It's
only 16 pages and LilyPond crashes.

\version "2.19.82"
{
   \time 4/4
   \repeat unfold 1000 { c4 d e f } % TEN PAGES of music
   \repeat unfold 1000 { f1 } % + SIX MORE PAGES of music
   \repeat unfold 1000 { c4 d e f } % BUT WHEN ADDING MORE PAGES, fail NOW
}

wHY?

Preprocessing graphical objects...terminate called after throwing an
instance of 'std::bad_alloc'
   what():  std::bad_alloc
Exited with return code 6.

Works here, returning a 25-pages pdf.

I'm on Ubuntu-18.04 64-bit

Cheers,
   Harm

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



Harm,

What are your system specs? I can compile the file on my Linux Mint x64 
laptop with 16GB of RAM, rockin' an 8th gen i7 but it took about 10 
minutes almost. That seems very very slow.


Did you experience the same wait times?

On Windows 10 x64 it flat out crashed, with a different error code 
number but the same family of crash I believe...


Preprocessing graphical objects...terminate called after throwing an 
instance of 'std::bad_alloc'


what(): std::bad_alloc

Exited with return code 3.


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


Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Aaron Hill

On 2018-12-21 4:53 pm, Aaron Hill wrote:

I tried the following approach to break up the piece into three scores:


\score {
  { \time 4/4 \repeat unfold 1000 { c4 d e f } }
}
\score {
  { \set Score.currentBarNumber = #1001 \bar ""
\time 4/4 \repeat unfold 1000 { f1 } }
  \layout { indent = 0 }
}
\score {
  { \set Score.currentBarNumber = #2001 \bar ""
\time 4/4 \repeat unfold 1000 { c4 d e f } }
  \layout { indent = 0 }
}


This only took 42 seconds to complete and I believe it peaked under 
2GiB.


I reran my multi-score version using time -v:

Command being timed: "lilypond allocbug.ly"
User time (seconds): 32.29
System time (seconds): 9.48
Percent of CPU this job got: 99%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:42.05
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 1978288
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 1003509
Voluntary context switches: 0
Involuntary context switches: 0
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0

Providing this is accurate, I suspect this approach may still be too 
much for a 32-bit process, given the overhead of the program executable, 
DLLs and the like.


-- Aaron Hill

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


Re:Combine these segments for same score

2018-12-21 Thread Flaming Hakama by Elaine
-- Forwarded message --
> From: Reggie 
> To: lilypond-user@gnu.org
> Cc:
> Bcc:
> Date: Fri, 21 Dec 2018 15:08:32 -0700 (MST)
> Subject: Re: Re:Combine these segments for same score
> Flaming Hakama by Elaine wrote
> > Yes, you can use tags for segmenting large works into smaller chunks.
> >
> > And it is possible to use them for other things as well.  Besides
> > segmenting the work, I use them for MIDI vs PDF, as well as Score vs
> Parts
> > (vs Lead Sheet), and sometimes for instrument-specific differences (in
> > instrumental doubled or transposed parts), all at the same time.
> >
> > This is something I practice.  I have a script that will create the
> > necessary files for the project that will compile a score and parts that
> > can be built into a blank project.  It relies on some templates, plus a
> > list of instruments.  It works fine enough that I haven't had to look for
> > another solution.
> > https://github.com/flaminghakama/lilypond-project-template
> >
> > Like any of the solutions discussed on the list, this is not a
> > one-size-fits-all bullet and requires wrangling with some decisions about
> > how you want to structure your content.  You will likely have to
> > deconstruct some of what you already have to work in any templating
> > system.  It is also somewhat of an iterative process, since you need to
> > start with a template of the global definitions and timings, before
> > setting
> > up the template used to generate the instrument-specific files of musical
> > content.
> >
> > In any case, your pain is felt.  But it is possible.  I generally do
> > scores
> > of 9-12 staves at 200-400 measures and it took me quite some time to
> > arrive
> > at a solution that works.
> >
> >
> > HTH,
> >
> > Elaine Alt
> > 415 . 341 .4954   "*Confusion is
> > highly underrated*"
>
> > elaine@
>
> > Producer ~ Composer ~ Instrumentalist
> >
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> I am intrigued. How does one use the tag system for concatenating sections
> of the same piece for easy working and compiling speed during edit phase?
> Please, can you provide some code showing how to use tags like this I have
> only seen tags used for differences in music of the score for parts and so
> on.
>
> Tags for combining sections?!
>


So, here is the basic approach.

You need to divide up the entire piece in to secions, each enclosed in a
tag.

These tags need to be in a few places, basically any music or structural
things.  In this example, this includes global info, and then two
instruments.

Besides the tagged sections, we'll have tags for PDF vs MIDI, and Score vs
Part.


\version "2.18.2"

global = {
\key d \major
\tempo "Allegro"
\tag SegmentA {
\time 3/4
\mark "A"
s2.*8
\bar "||"
%  Here is something that will only be in the score, and not the
parts
\tag #'Score { \pageBreak }
}
\tag SegmentB {
\time 4/4
\mark "B"
s1*8
\bar "|."
}
}

violin = {
\tag SegmentA \relative c'' {
% Here we have different content for PDF vs MIDI
\tag #'PDF {
d2.\startTrillSpan d\stopTrillSpan
}
\tag #'MIDI {
d16 e d e  d e d e  d e d e
d2.
}
d2. d  d d d d
}
\tag SegmentB \relative c'' {
e1 e e e e e e e
}
}

bassoon = {
\tag SegmentA {
R2.*8
}
\tag SegmentB {
c1 d e f
%  Here we have content that is only for the part, not the score
\tag #'Part { \break }
g a b c
}
}

% The Visual Score
\book {
\bookOutputSuffix "Full-Score"
\score {
\header {
piece = "Full Score, with score-only page break"
}
\keepWithTag #'(PDF Score
SegmentA
SegmentB
) <<
\new Staff <<
\global
\violin
>>
\new Staff <<
\clef bass
\bassoon
>>
>>
\layout {}
}
}

% The Audio Score
\book {
\bookOutputSuffix "Full-Score"
\score {
\header {
piece = "MIDI score, with written-out trill"
}
\keepWithTag #'(MIDI Score
SegmentA
SegmentB
) <<
\new Staff <<
\global
\violin
>>
\new Staff \bassoon
>>
\midi {}
}
}

% The parts
\book {
\bookOutputSuffix "Violin"
\score {
\header {
piece = "Violin Part, with normal trill and no page break"
}
\keepWithTag #'(PDF Part
SegmentA
SegmentB
) \new Sta

Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Thomas Morley
Am Sa., 22. Dez. 2018 um 00:48 Uhr schrieb Reggie :
>
> I am trying to understand theoretically why this is failing. It's only 16
> pages. I am a minimalist composer so as a test I tried this extreme
> situation. But yet I don't quite agree rather that it's that extreme. It's
> only 16 pages and LilyPond crashes.
>
> \version "2.19.82"
> {
>   \time 4/4
>   \repeat unfold 1000 { c4 d e f } % TEN PAGES of music
>   \repeat unfold 1000 { f1 } % + SIX MORE PAGES of music
>   \repeat unfold 1000 { c4 d e f } % BUT WHEN ADDING MORE PAGES, fail NOW
> }
>
> wHY?
>
> Preprocessing graphical objects...terminate called after throwing an
> instance of 'std::bad_alloc'
>   what():  std::bad_alloc
> Exited with return code 6.

Works here, returning a 25-pages pdf.

I'm on Ubuntu-18.04 64-bit

Cheers,
  Harm

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


Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Andrew Bernard
Hi Reggie,

What OS are you on?

Andrew


On Sat, 22 Dec 2018 at 10:48, Reggie  wrote:

> I am trying to understand theoretically why this is failing. It's only 16
> pages. I am a minimalist composer so as a test I tried this extreme
> situation. But yet I don't quite agree rather that it's that extreme. It's
> only 16 pages and LilyPond crashes.
>
> \version "2.19.82"
> {
>   \time 4/4
>   \repeat unfold 1000 { c4 d e f } % TEN PAGES of music
>   \repeat unfold 1000 { f1 } % + SIX MORE PAGES of music
>   \repeat unfold 1000 { c4 d e f } % BUT WHEN ADDING MORE PAGES, fail NOW
> }
>
> wHY?
>
> Preprocessing graphical objects...terminate called after throwing an
> instance of 'std::bad_alloc'
>   what():  std::bad_alloc
> Exited with return code 6.
>
>
>
> --
> 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
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Karlin High

On 12/21/2018 5:56 PM, Kieren MacMillan wrote:

It's
only 16 pages and LilyPond crashes.

That looks like a [serious] bug to me. I’ve cc'ed the bug list.


Reproduced crash on LilyPond 2.19.80, Windows 7 Pro 64-bit SP1, Intel 
Core i5-3450, 24GB RAM.


At crash, lilypond-windows.exe in Task Manager as showing 1,080,744K of 
Memory (Private Working Set.) Perhaps this problem is similar to other 
large-memory-use crashes reported lately on Windows?

--
Karlin High
Missouri, USA

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


Re: LilyPond can't engrave 16 pages of music

2018-12-21 Thread Kieren MacMillan
Hi Reggie,

> I am trying to understand theoretically why this is failing. It's only 16
> pages. I am a minimalist composer so as a test I tried this extreme
> situation. But yet I don't quite agree rather that it's that extreme. It's
> only 16 pages and LilyPond crashes.

That looks like a [serious] bug to me. I’ve cc'ed the bug list.

Thanks!
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: synchronization of feathered beams

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 23:18 Uhr schrieb Reggie :

>
> Is there a way in LilyPond to simply add a beam line without changing the
> time or anything else behind the elements? I mean, visually say I had a c16
> feather beam measure that had all the math and checks OK. But I wanted 3
> lines for my feather beams. Can you add a "extra" beam line without having
> it impact anyy other elements? In score music.

Well, yes, it's possible, you can always rewrite the stencil, but it
would mean far more work than scaling durations.

> That would help me because I
> am slower than you with math.

I don't see a problem here.

Say you have an 8th: { \time 1/8 c''8[] }
This code creates a single 8th note with a one beam-segments

Now we want an equal lasting note with two beam-segmants.
So write the half duration, i.e. c''16 and double the it's length: {
\time 1/8 c''16*2[] }
Or use \scaleDurations: { \time 1/8 \scaleDurations 2 c''16[] }

Same for three beam-segments: { \time 1/8 \scaleDurations 4 c''32[] }

etc
Note, if \scaleDurations should be applied to more than one note, {
and } are needed.
Other examples are in the NR

Cheers,
  Harm

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


LilyPond can't engrave 16 pages of music

2018-12-21 Thread Reggie
I am trying to understand theoretically why this is failing. It's only 16
pages. I am a minimalist composer so as a test I tried this extreme
situation. But yet I don't quite agree rather that it's that extreme. It's
only 16 pages and LilyPond crashes.

\version "2.19.82"
{
  \time 4/4
  \repeat unfold 1000 { c4 d e f } % TEN PAGES of music
  \repeat unfold 1000 { f1 } % + SIX MORE PAGES of music
  \repeat unfold 1000 { c4 d e f } % BUT WHEN ADDING MORE PAGES, fail NOW
}

wHY?

Preprocessing graphical objects...terminate called after throwing an
instance of 'std::bad_alloc'
  what():  std::bad_alloc
Exited with return code 6.



--
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:feathered beam calculations

2018-12-21 Thread Flaming Hakama by Elaine
> -- Forwarded message --

From: Reggie 
> To: lilypond-user@gnu.org
> Cc:
> Bcc:
> Date: Fri, 21 Dec 2018 12:10:12 -0700 (MST)
> Subject: Re: feathered beam calculations
> Aaron Hill wrote
> > Given the current implementation, it would be necessary to use an
> > approximate rational like 50/63 as the moment in order to get 'f' to be
> > half of 'c'.  Why that number?  Well, it's a close approximation to the
> > irrational cube root of one half.  We determine this exact value by
> > taking the desired ratio (1/2) and raising it to the reciprocal of the
> > number of scaling steps between the first and last notes (three, in this
> > case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 0.7937; and
> > 50/63 is roughly 0.79365.
> >
> > But before we get lost in the murky details of whether the implemented
> > behavior is right or the documentation is right, let us circle back
> > around to a key point that I feel has not been stressed enough.
> >
> > This means your score really should be bar check clean *before* you ever
> > use \featherDurations.
> >
> > I said earlier we would talk about bar checks *within* the feathered
> > sequence of notes.  Consider the following addition to our example:
> >
> >  << { r64 \featherDurations #(ly:make-moment 2/1)
> >   { c32*127/14[ d e f g a | b] } }
> > { r64 \featherDurations #(ly:make-moment 2/1)
> >   { c32*63/12[ d e f g a] } | b1 }
> > { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
> >
> > You'll see that the 'b' is included within the beamed notes.  Because we
> > now have seven notes covering the period of two measures less one 64th,
> > we had to adjust our scaling fraction to 127/14.  However, what is most
> > important is that \featherDurations fixes the timing of the notes to
> > allow the inside bar check to pass.  Omit it, and you'll see that the
> > bar check fails.  But also try changing the 2/1 moment to anything else,
> > and the bar check will also fail.
> >
> > What we have here is a very fragile element in the score that can be
> > easily avoided by never requiring any note (apart from the first) within
> > a feathered sequence to align to anything else.  The final 'b' above
> > should properly be outside the feathered sequence (or possibly start a
> > new sequence of its own).  In this way, the math to ensure all of the
> > sequences have the right lengths can be done completely independent of
> > \featherDurations.
> >
> > Hopefully some of this will be helpful.
> >
> > -- Aaron Hill
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> Aaron that makes sense but only if you have failed bar checks before
> feathering. Let's say you have a perfect score with no fails. And now you
> want to simply insert feather beamed notes only in one measure but have
> them
> spaced out according to the speed accelerando ritard as standard. How do
> you
> even begin to know what math * * * * you should be doing when there is no
> math to do in the first place??? NO bar check math because everything is
> already fine. Why can't you just spread out the notes according to how
> feathers are supposed to? Prove me please. Here look.
>
>
> \relative c'
> {
>
>   \override Beam.grow-direction = #LEFT
>   \featherDurations #(ly:make-moment 2/1)
>   c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
> }
>
>
> My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
> it's just normal beamed notes with fancy feathers. What math do I need how
> does one even know what math to use since there are no bar bad checks? See?
> :))
>


 \version "2.18.2"

%{

If you want the spacing to be proportionate to duration,
then you are responsible for calculating those durations.

It is basically high school level math, so grab a beer
and let's go.


Let's think this through from the beginning.

In terms of the literal feathered beaming, you have specified
eight notes, which scale in duration from a 32nd to an 8th.
What is the actual duration of this sequence?

Assuming a linear scale, on average, these would sum to 1.25

(For example, add first & last and multiply by N/2:  (1/32 + 1/8) * 8 =
1.25)


So, in order for the written durations of the beams (1.25 measures)
to match the intended duration, based on what else is in the measure
(0.5 measures), the entire passage would need to be scaled by a factor
of 1.25/0.5 = 1/2.5

With that in mind, let's proceed towards an approach
of scaling durations.


The way to get a printed note to scale to a different
duration is like c32*2 (the equivalent of a 16th) or
c32*4 (the equivalent of an 8th).


But in addition to scaling the entire sequence, we need to
specify the relative durations of the notes.

How do you do the math?  There is more than one way.
Note that our goal is to find a sequence that in 16 steps
scales to a value that is about 4x the intial 

Re: Tuplets in Metric Modulations

2018-12-21 Thread Ld2020
Thank you - this is extremely helpful.

One issue I am still trying to solve: how to get tuplet brackets to
appear as part of the metronome mark.

I.E. triplet eighth = eighth (triplet under the tuplet bracket with the 3.)

Right now I'm doing:
\rhythmMark "" {\tuplet 3/2 {b'8}} {b'8}

I get the tuplet number but no bracket.

Any leads you can offer on this would be greatly appreciated.



--
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: Combine these segments for same score

2018-12-21 Thread Kieren MacMillan
Hi Reggie,

> I am intrigued. How does one use the tag system for concatenating sections
> of the same piece for easy working and compiling speed during edit phase?
> Please, can you provide some code showing how to use tags like this I have
> only seen tags used for differences in music of the score for parts and so
> on.
> 
> Tags for combining sections?!

%%%  SNIPPET BEGINS
\version "2.19.80"

tagged-stuff = {
  \tag #'A \repeat unfold 64 { a'4 }
  \tag #'B \repeat unfold 64 { b'4 }
  \tag #'C \repeat unfold 64 { c''4 }
  \tag #'D \repeat unfold 64 { d''4 }
}

\score {
  \keepWithTag #'A \tagged-stuff
}

\score {
  \keepWithTag #'B \tagged-stuff
}

\score {
  \keepWithTag #'(A C) \tagged-stuff
}
%%%  SNIPPET ENDS

As I suggested in another thread: in order to really use Lilypond to its full 
potential, you will need to figure out how to take relatively simple concepts 
(like \tag) and apply them in creative ways to your exact problem(s).

Hope this helps!
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread Knut Petersen

On 20.12.18 12:21, Lukas-Fabian Moser wrote:

Folks,

this is mostly to give a reference to those who might hit the same problems 
that I had:

I decided to switch from my ancient Linux Mint 17.3 to Linux Mint 19.1 
yesterday. In order to set up a working build environment, I had to provide a 
working Guile 1.8 which seems not to be in the repositories any more.


Have a look at the build script attached to 
https://lists.gnu.org/archive/html/bug-lilypond/2017-08/msg00038.html

Knut



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


Re: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
>> Do you think it's even possible to write a function to automatically
>> space
>> according to the feather beam length and duration?
> 
> As said, likely it's possible.
> Speaking only for myself, I doubt I've the time to try.
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Is there a way in LilyPond to simply add a beam line without changing the
time or anything else behind the elements? I mean, visually say I had a c16
feather beam measure that had all the math and checks OK. But I wanted 3
lines for my feather beams. Can you add a "extra" beam line without having
it impact anyy other elements? In score music. That would help me because I
am slower than you with math. 




--
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: Re:Combine these segments for same score

2018-12-21 Thread Reggie
Flaming Hakama by Elaine wrote
> Yes, you can use tags for segmenting large works into smaller chunks.
> 
> And it is possible to use them for other things as well.  Besides
> segmenting the work, I use them for MIDI vs PDF, as well as Score vs Parts
> (vs Lead Sheet), and sometimes for instrument-specific differences (in
> instrumental doubled or transposed parts), all at the same time.
> 
> This is something I practice.  I have a script that will create the
> necessary files for the project that will compile a score and parts that
> can be built into a blank project.  It relies on some templates, plus a
> list of instruments.  It works fine enough that I haven't had to look for
> another solution.
> https://github.com/flaminghakama/lilypond-project-template
> 
> Like any of the solutions discussed on the list, this is not a
> one-size-fits-all bullet and requires wrangling with some decisions about
> how you want to structure your content.  You will likely have to
> deconstruct some of what you already have to work in any templating
> system.  It is also somewhat of an iterative process, since you need to
> start with a template of the global definitions and timings, before
> setting
> up the template used to generate the instrument-specific files of musical
> content.
> 
> In any case, your pain is felt.  But it is possible.  I generally do
> scores
> of 9-12 staves at 200-400 measures and it took me quite some time to
> arrive
> at a solution that works.
> 
> 
> HTH,
> 
> Elaine Alt
> 415 . 341 .4954   "*Confusion is
> highly underrated*"

> elaine@

> Producer ~ Composer ~ Instrumentalist
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

I am intrigued. How does one use the tag system for concatenating sections
of the same piece for easy working and compiling speed during edit phase?
Please, can you provide some code showing how to use tags like this I have
only seen tags used for differences in music of the score for parts and so
on.

Tags for combining sections?!



--
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: Re[2]: feathered beam calculations

2018-12-21 Thread Reggie
Trevor Daniels wrote
> "Reggie" <

> reegistoop@

> > wrote 21/12/2018 19:10:12
>>\relative c'
>>{
>>   \override Beam.grow-direction = #LEFT
>>   \featherDurations #(ly:make-moment 2/1)
>>   c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
>>}
>>
>>My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
>>it's just normal beamed notes with fancy feathers. What math do I need how
>>does one even know what math to use since there are no bar bad checks?
See?
>>:))
> I'm sure in an earlier note you were told to include brackets round the 
> music
> because otherwise \featherDurations affects only the first note.
> 
> Try this
> 
> \relative c'
> {
>\override Beam.grow-direction = #LEFT
>\featherDurations #(ly:make-moment 2/1) {
>  c32[ d e f g f e f d f g f d e d f]
>}
>c4~c | c1 |
> }
> Trevor
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

yes everyone thank you I realized after the posting I made an error. I see
that now.



--
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: synchronization of feathered beams

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 19:26 Uhr schrieb Reggie :
>
> Thomas Morley-2 wrote
> > \featherDurations changes durations, nothing more!! It does not change
> > spacing on it's own.
> > The changed spacing is more a side-effect. Doing note-spacing is a
> > very involved process, durations are only one element of the
> > calculation.
> >
> > So I ensure you \featherDuarations will _always_ affect the
> > _durations_ of it's argument, though, whether the resulting spacing is
> > really what you desire? Probably/likely/sometimes not.
> >
> >> I wouldn't even know how to make this function besides. Sorry.
> >
> > Well, there are some good coders on the list ;)
> > Not sure, if I'll have the time to give it a try ...
> >
> > Cheers,
> >   Harm
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> Harm this is very important you just solved the mystery :)) Sort of. It
> sounds like you just admitted that the spacing out of feather beamed
> duration notes is not always going to work correctly,

Nah, I tried to explain how featherDurations works, nothing else, (and
I may very well be corrected by others with deeper knowledge).

Durations are modified.
The spacing is tackled by the spacing engine, which needs to look at a
plethora of things, surely, among them are durations, but that's not
all...

As an example.
Say you have 4 16th.
Should they be spaced equally? I'd say, depends...

You can't do it equal here:
{
  \set fingeringOrientations = #'(left)
  \set stringNumberOrientations = #'(left)
  16  q q
}

And what's "correctly"?

Admittedly Gould is a strong argument. But in my experience every
other day a user shines up here wanting to do things _(s)he_ likes it
and not like any reference book.

> but the durations
> themselves WILL. Well, according to Gould, it's pretty obvious that feather
> beams need to be spaced out according to the tempo of the feathers, always.
> So, there's no way in LilyPond as of today function wise that simply put
> makes feather beams spaced out correctly according to standard engraving
> rules. Wow.
>
> I would hope beg love for someone to write a function that simply put spaced
> out notes according to the speed of the feathers. Finale Sibelius do this
> for years now. Hack yes but doable every time it works. What's LilyPond work
> around for this? Assume you want to engrave correctly and have your feather
> beams spaced out as they slow or speeden up, how can you do it? manually
> tweak space between notes it seems? Yikes :))
>
> Do you think it's even possible to write a function to automatically space
> according to the feather beam length and duration?

As said, likely it's possible.
Speaking only for myself, I doubt I've the time to try.

Cheers,
  Harm

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


Re: feathered beam calculations

2018-12-21 Thread Reggie
Reggie wrote
> Aaron Hill wrote
>> Given the current implementation, it would be necessary to use an 
>> approximate rational like 50/63 as the moment in order to get 'f' to be 
>> half of 'c'.  Why that number?  Well, it's a close approximation to the 
>> irrational cube root of one half.  We determine this exact value by 
>> taking the desired ratio (1/2) and raising it to the reciprocal of the 
>> number of scaling steps between the first and last notes (three, in this 
>> case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 0.7937; and 
>> 50/63 is roughly 0.79365.
>> 
>> But before we get lost in the murky details of whether the implemented 
>> behavior is right or the documentation is right, let us circle back 
>> around to a key point that I feel has not been stressed enough.
>> 
>> This means your score really should be bar check clean *before* you ever 
>> use \featherDurations.  
>> 
>> I said earlier we would talk about bar checks *within* the feathered 
>> sequence of notes.  Consider the following addition to our example:
>> 
>>  << { r64 \featherDurations #(ly:make-moment 2/1)
>>   { c32*127/14[ d e f g a | b] } }
>> { r64 \featherDurations #(ly:make-moment 2/1)
>>   { c32*63/12[ d e f g a] } | b1 }
>> { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
>> 
>> You'll see that the 'b' is included within the beamed notes.  Because we 
>> now have seven notes covering the period of two measures less one 64th, 
>> we had to adjust our scaling fraction to 127/14.  However, what is most 
>> important is that \featherDurations fixes the timing of the notes to 
>> allow the inside bar check to pass.  Omit it, and you'll see that the 
>> bar check fails.  But also try changing the 2/1 moment to anything else, 
>> and the bar check will also fail.
>> 
>> What we have here is a very fragile element in the score that can be 
>> easily avoided by never requiring any note (apart from the first) within 
>> a feathered sequence to align to anything else.  The final 'b' above 
>> should properly be outside the feathered sequence (or possibly start a 
>> new sequence of its own).  In this way, the math to ensure all of the 
>> sequences have the right lengths can be done completely independent of 
>> \featherDurations.
>> 
>> Hopefully some of this will be helpful.
>> 
>> -- Aaron Hill
>> 
>> ___
>> lilypond-user mailing list
> 
>> lilypond-user@
> 
>> https://lists.gnu.org/mailman/listinfo/lilypond-user
> 
> Aaron that makes sense but only if you have failed bar checks before
> feathering. Let's say you have a perfect score with no fails. And now you
> want to simply insert feather beamed notes only in one measure but have
> them
> spaced out according to the speed accelerando ritard as standard. How do
> you
> even begin to know what math * * * * you should be doing when there is no
> math to do in the first place??? NO bar check math because everything is
> already fine. Why can't you just spread out the notes according to how
> feathers are supposed to? Prove me please. Here look.
> 
> 
> \relative c'
> {
> 
>   \override Beam.grow-direction = #LEFT
>   \featherDurations #(ly:make-moment 2/1)
>   c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
> }
> 
> 
> My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
> it's just normal beamed notes with fancy feathers. What math do I need how
> does one even know what math to use since there are no bar bad checks?
> See?
> :))
> 
> 
> 
> 
> --
> Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user


I gave a small example. Please provide help so I can be wrong :))

What math can I do to my example from up above to show the space out correct
from 2/1?
(in other words c32*127/14) but for my example. No clues for me.



--
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: feathered beam calculations

2018-12-21 Thread Carl Sorensen


On 12/21/18, 12:10 PM, "Reggie"  wrote:


\relative c'
{

  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
}


My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
it's just normal beamed notes with fancy feathers. What math do I need how
does one even know what math to use since there are no bar bad checks? See?
:))

Did you even read Aaron's answer?  Your CODE does have an error.  You are 
missing the braces around the music argument to \featherDurations!

\version "2.19"

\relative c'
{

  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  {c32[ d e f g f e f d f g f d e d f] }c4~c | c1 |
}

This produces a ritardando, with the notes spaced steadily farther apart.

Carl


--
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[2]: feathered beam calculations

2018-12-21 Thread Trevor



 "Reggie"  wrote 21/12/2018 19:10:12

\relative c'
{
  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
}

My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
it's just normal beamed notes with fancy feathers. What math do I need how
does one even know what math to use since there are no bar bad checks? See?
:))
I'm sure in an earlier note you were told to include brackets round the 
music

because otherwise \featherDurations affects only the first note.

Try this

\relative c'
{
  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1) {
c32[ d e f g f e f d f g f d e d f]
  }
  c4~c | c1 |
}
Trevor___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: feathered beam calculations

2018-12-21 Thread Aaron Hill

On 2018-12-21 11:10 am, Reggie wrote:

\relative c'
{

  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
}

My CODE has no errors. And yet the 2/1 does NOT space out any notes at 
ALL
it's just normal beamed notes with fancy feathers. What math do I need 
how
does one even know what math to use since there are no bar bad checks? 
See?

:))


You're missing curly braces.

\relative c'
{
  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  { c32[ d e f g f e f d f g f d e d f] } c4~c | c1 |
}

\featherDurations only operates on the argument you pass in.  Without 
the braces, you are only giving it a single note.


-- Aaron Hill

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


Re: feathered beam calculations

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 20:10 Uhr schrieb Reggie :
>
> Aaron Hill wrote
> > Given the current implementation, it would be necessary to use an
> > approximate rational like 50/63 as the moment in order to get 'f' to be
> > half of 'c'.  Why that number?  Well, it's a close approximation to the
> > irrational cube root of one half.  We determine this exact value by
> > taking the desired ratio (1/2) and raising it to the reciprocal of the
> > number of scaling steps between the first and last notes (three, in this
> > case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 0.7937; and
> > 50/63 is roughly 0.79365.
> >
> > But before we get lost in the murky details of whether the implemented
> > behavior is right or the documentation is right, let us circle back
> > around to a key point that I feel has not been stressed enough.
> >
> > This means your score really should be bar check clean *before* you ever
> > use \featherDurations.
> >
> > I said earlier we would talk about bar checks *within* the feathered
> > sequence of notes.  Consider the following addition to our example:
> >
> >  << { r64 \featherDurations #(ly:make-moment 2/1)
> >   { c32*127/14[ d e f g a | b] } }
> > { r64 \featherDurations #(ly:make-moment 2/1)
> >   { c32*63/12[ d e f g a] } | b1 }
> > { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
> >
> > You'll see that the 'b' is included within the beamed notes.  Because we
> > now have seven notes covering the period of two measures less one 64th,
> > we had to adjust our scaling fraction to 127/14.  However, what is most
> > important is that \featherDurations fixes the timing of the notes to
> > allow the inside bar check to pass.  Omit it, and you'll see that the
> > bar check fails.  But also try changing the 2/1 moment to anything else,
> > and the bar check will also fail.
> >
> > What we have here is a very fragile element in the score that can be
> > easily avoided by never requiring any note (apart from the first) within
> > a feathered sequence to align to anything else.  The final 'b' above
> > should properly be outside the feathered sequence (or possibly start a
> > new sequence of its own).  In this way, the math to ensure all of the
> > sequences have the right lengths can be done completely independent of
> > \featherDurations.
> >
> > Hopefully some of this will be helpful.
> >
> > -- Aaron Hill
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> Aaron that makes sense but only if you have failed bar checks before
> feathering. Let's say you have a perfect score with no fails. And now you
> want to simply insert feather beamed notes only in one measure but have them
> spaced out according to the speed accelerando ritard as standard. How do you
> even begin to know what math * * * * you should be doing when there is no
> math to do in the first place??? NO bar check math because everything is
> already fine. Why can't you just spread out the notes according to how
> feathers are supposed to? Prove me please. Here look.
>
>
> \relative c'
> {
>
>   \override Beam.grow-direction = #LEFT
>   \featherDurations #(ly:make-moment 2/1)
>   c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
> }
>
>
> My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
> it's just normal beamed notes with fancy feathers. What math do I need how
> does one even know what math to use since there are no bar bad checks? See?
> :))

Well, try to reread Aaron's message (as he suggested), you may stumble across:
"
[Side note: Harm made a slight mistake in his example usage.  If you
want to feather a sequence of notes, you must put those notes in curly
braces.  Omitting the braces in the example above will result in no
feathering, as only the first note will be passed to the function.]
"

Aaron's correct ofcourse. And now you made the same mistake.  ;)
The argument of featherDurations needs to be enclosed with { and }, at
least if you want featherDurations be applied to sequential music.
(and I can't imagine a case where one wouldn't want to do so)

Cheers,
  Harm

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


Re: synchronization of feathered beams

2018-12-21 Thread Carl Sorensen


On 12/21/18, 11:25 AM, "Reggie"  wrote:


I would hope beg love for someone to write a function that simply put spaced
out notes according to the speed of the feathers. Finale Sibelius do this
for years now. Hack yes but doable every time it works. What's LilyPond work
around for this? Assume you want to engrave correctly and have your feather
beams spaced out as they slow or speeden up, how can you do it? manually
tweak space between notes it seems? Yikes :))

You could do exactly the hack that you shared with us  from Sibelius.  Put the 
triplets in your source, but tweak the heads, stems, and beams of the first two 
notes in the triplet to be hidden (probably by setting the stencil to ##f)

Do you think it's even possible to write a function to automatically space
according to the feather beam length and duration?

If you want to give up the beautiful optical spacing that LilyPond provides, I 
believe that featherDurations will work exactly the way you want it by using 
Proportional Notation 
(http://lilypond.org/doc/v2.19/Documentation/notation/proportional-notation)

You might be able to keep both the standard spacing and the proportional 
spacing by using \newSpacingSection

Try some examples, and if they don’t work the way you want them to, share them 
on the list along with the problems you are having.  That's a much better way 
to get help.

Sincerely,

Carl




--
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: feathered beam calculations

2018-12-21 Thread Reggie
Aaron Hill wrote
> Given the current implementation, it would be necessary to use an 
> approximate rational like 50/63 as the moment in order to get 'f' to be 
> half of 'c'.  Why that number?  Well, it's a close approximation to the 
> irrational cube root of one half.  We determine this exact value by 
> taking the desired ratio (1/2) and raising it to the reciprocal of the 
> number of scaling steps between the first and last notes (three, in this 
> case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 0.7937; and 
> 50/63 is roughly 0.79365.
> 
> But before we get lost in the murky details of whether the implemented 
> behavior is right or the documentation is right, let us circle back 
> around to a key point that I feel has not been stressed enough.
> 
> This means your score really should be bar check clean *before* you ever 
> use \featherDurations.  
> 
> I said earlier we would talk about bar checks *within* the feathered 
> sequence of notes.  Consider the following addition to our example:
> 
>  << { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*127/14[ d e f g a | b] } }
> { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*63/12[ d e f g a] } | b1 }
> { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
> 
> You'll see that the 'b' is included within the beamed notes.  Because we 
> now have seven notes covering the period of two measures less one 64th, 
> we had to adjust our scaling fraction to 127/14.  However, what is most 
> important is that \featherDurations fixes the timing of the notes to 
> allow the inside bar check to pass.  Omit it, and you'll see that the 
> bar check fails.  But also try changing the 2/1 moment to anything else, 
> and the bar check will also fail.
> 
> What we have here is a very fragile element in the score that can be 
> easily avoided by never requiring any note (apart from the first) within 
> a feathered sequence to align to anything else.  The final 'b' above 
> should properly be outside the feathered sequence (or possibly start a 
> new sequence of its own).  In this way, the math to ensure all of the 
> sequences have the right lengths can be done completely independent of 
> \featherDurations.
> 
> Hopefully some of this will be helpful.
> 
> -- Aaron Hill
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Aaron that makes sense but only if you have failed bar checks before
feathering. Let's say you have a perfect score with no fails. And now you
want to simply insert feather beamed notes only in one measure but have them
spaced out according to the speed accelerando ritard as standard. How do you
even begin to know what math * * * * you should be doing when there is no
math to do in the first place??? NO bar check math because everything is
already fine. Why can't you just spread out the notes according to how
feathers are supposed to? Prove me please. Here look.


\relative c'
{

  \override Beam.grow-direction = #LEFT
  \featherDurations #(ly:make-moment 2/1)
  c32[ d e f g f e f d f g f d e d f] c4~c | c1 |
}


My CODE has no errors. And yet the 2/1 does NOT space out any notes at ALL
it's just normal beamed notes with fancy feathers. What math do I need how
does one even know what math to use since there are no bar bad checks? See?
:))




--
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: feathered beam calculations

2018-12-21 Thread Carl Sorensen
Reggie,

On 12/21/18, 11:30 AM, "Reggie"  wrote:
The fractions do NOT always  accelerando, while fractions greater than one
generate a 
ritardando as intended. That is why I began this mess in the first place :))

 Please show us a specific example that does not work the way you want it to 
work.  And then we can figure out what the specific problem is.  At this point, 
as far as I can see, you have only complained that LilyPond does not work the 
way you want it to; you have not shown us a specific failure.

Please learn to use tiny examples: http://lilypond.org/tiny-examples.html

Also, many of your posts sound whiny to this native English speaker.  I have 
assumed that part of that is due to the fact that you are not a native English 
speaker.  But when possible solutions to your problem are suggested, you have 
simply dismissed them out of hand, telling us (not showing us) how they fail.

If you really want help, you really need to show specific examples.  I'm 
surprised you have received as much help as you have.

Sincerely,

Carl

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


Re: lilypond-book→latex

2018-12-21 Thread N. Andrew Walsh
On Fri, Dec 21, 2018 at 7:24 PM Urs Liska  wrote:

>
> Why do you want this? Is there any specific reason not to use lualatex? I
> know you already run lyluatex in the Kayser project.
>

Well, because in this case it's in a chapter in my dissertation, the whole
of which is in Lyx. I'd rather avoid redoing the whole toolchain if I can.

But as Lyx seems to work less and less well with all the custom nonsense I
keep adding, I might have to take the plunge eventually.

Cheers,

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


Re: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread H. S. Teoh
On Fri, Dec 21, 2018 at 07:06:43PM +0100, Urs Liska wrote:
> 
> Am 21.12.18 um 09:06 schrieb Urs Liska:
> > Hi Lukas,
> > 
> > thanks for putting this together. Indeed since installing a distro
> > that doesn't Guile 1.8 anymore I hadn't been able to compile
> > LilyPond anymore. Once I managed to compile Guile 1.8 and do a build
> > but for some reason I lost this option. I think the point was that
> > after compiling Guile I had to actually change the way LilyPond's
> > make was handled - which of course isn't sustainable.

Some time ago I ran into the same problem with Guile 1.8 no longer being
the default version of Guile in my distro (and in fact, not even
installable anymore from the official repo), but Lilypond does not work
with newer versions of Guile.  Furthermore, Python 2.7 is also no longer
the default in my distro, which is an added level of pain, though
luckily I can still install Python 2.7, it's just not the default Python
that would get invoked.

Fortunately, I can compile my own version of Guile 1.8 as you did.  Once
that is done, I found that I actually don't need to change LilyPond's
makefile; all I needed was to set $PATH and re-run LilyPond's autogen.sh
with the appropriate customizations, like this:

PATH=/usr/src/guile-1.8/bin:$PATH ./autogen.sh \
--with-python-include=/usr/include/python2.7/ \
CFLAGS="-Wno-sequence-point" \
LDFLAGS="-Wl,-rpath,/usr/src/guile-1.8/lib"

Of course, replace /usr/src/guile-1.8 with the path to wherever you
compiled Guile 1.8 (you don't actually need to install Guile 1.8
anywhere on your system; autogen.sh appeared smart enough to pick up the
right files from Guile's source directory once that's built, and once
you hacked $PATH to pick up Guile 1.8 before anything else); and replace
/usr/include/python2.7 with wherever your distro installed Python 2.7's
include files.

After running this step, you should be able to just run make as usual,
and it should be able to build Lilypond successfully.

(I have put the above autogen.sh invocation in a script that I keep with
my lilypond git clone, so that I don't have to type all of that every
time!  Though, truth be told, you really only need to re-run autogen.sh
if you have a fresh git clone / source download, or you did a deep
cleaning of the source tree. I found that I could still just run make
after `git pull` without needing to run autogen.sh again.)

Hope this info helps.


T

-- 
Leather is waterproof.  Ever see a cow with an umbrella?

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


Re: feathered beam calculations

2018-12-21 Thread Ben

On 12/21/2018 11:54 AM, Aaron Hill wrote:

On 2018-12-21 5:14 am, Reggie wrote:
Hello. I see what you are saying thank you. I just feel that feather 
beaming

is so confusing it all depends on so much, it's not simple like "select
these notes and change beam style to feather left or right". It's first,
math. Then, trial error. Then, settling. Then, Repeat. I now 
understand how
to create the feather beams on paper, but the bar line check fails is 
what

remains to be problemsome. [ . . .]


I apologize for the very long email following, although I would 
appreciate you taking the time to read through it.  You may need to 
re-read it a few times, so find a good cup of coffee (or something 
stronger if you are so-inclined).


==

Feathered beams, as far as the visual depiction goes, are as simple as 
you describe.  All you need to do is set Beam.grow-direction to #LEFT 
or #RIGHT, and then any manually beamed notes delimited with [ and ] 
will have the beams feathered.  That's it.  You're done.  No math at all.


However, note that this is *only* the visual aspect of feathering.  
Unless you use \featherDurations, all of the notes will keep their 
straight timing; and MIDI output will not reflect the desired 
ritardando or accelerando.


So when you do need to care about the timing of notes, 
\featherDurations comes into play; and it does bring with it some 
potentially confusing math.  This math is somewhat complicated by the 
fact that the documentation and implementation do not agree with one 
another.  Consider the following:


    \featherDurations #(ly:make-moment 1/2) { c8[ d e f] }

[Side note: Harm made a slight mistake in his example usage.  If you 
want to feather a sequence of notes, you must put those notes in curly 
braces.  Omitting the braces in the example above will result in no 
feathering, as only the first note will be passed to the function.]


The documentation says that \featherDurations will use the specified 
moment to scale the last note relative to the first; however, in 
practice you will see that this scaling is done between each 
subsequent note.  In the example above, we would expect that the 'f' 
should last half as long as the 'c'.  But instead, we find that the 
'f' is half of the 'e'; the 'e', half of the 'd'; and the 'd', half of 
the 'c'.  The result is that the 'f' is one eighth the duration of the 
'c'.


Given the current implementation, it would be necessary to use an 
approximate rational like 50/63 as the moment in order to get 'f' to 
be half of 'c'.  Why that number?  Well, it's a close approximation to 
the irrational cube root of one half.  We determine this exact value 
by taking the desired ratio (1/2) and raising it to the reciprocal of 
the number of scaling steps between the first and last notes (three, 
in this case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 
0.7937; and 50/63 is roughly 0.79365.


But before we get lost in the murky details of whether the implemented 
behavior is right or the documentation is right, let us circle back 
around to a key point that I feel has not been stressed enough.


\featherDurations will change the individual durations and timing of 
the notes in the sequence provided; however it will *not* change the 
overall duration of the sequence.  If bar checks outside the range of 
feathered notes are failing, then the issue is completely unrelated to 
\featherDurations.  Your problem is with the note sequence itself.  
(If you are using bar checks *within* the sequence of notes being 
feathered, then you are asking for trouble.  We'll talk about this in 
a bit.)


This means your score really should be bar check clean *before* you 
ever use \featherDurations.  And that task may involve arithmetic of 
its own.  Consider the following sequence:


    r64 { c64 d32 e16 f8 g4 a2 } | b1

We have a manually-written ritardando of notes.  Note the rest is 
there to ensure the whole note aligns to its own measure, but we are 
mainly interested in the sequence delimited by the braces.


Let us assume we would like to notate this as a simple group of six, 
thirty-secondth notes with a feathered beam:


    r64 { c32[ d e f g a] } | b1

This fails the bar check because our six notes are not long enough to 
fill out the measure.  We fix this by first noting the original 
sequence is 63 * 64th notes long.  We are using 6 * 32nd notes, which 
is equivalent to 12 * 64th notes.  Scaling by the fraction 63/12 will 
get us to our desired goal.  You can confirm this by noting the bar 
check in the following passes:


    r64 { c32*63/12[ d e f g a] } | b1

Now that we have the correct total duration, we can add in 
feathering.  Consider the following to confirm that we have indeed 
achieved what we wanted:


    << { r64 \featherDurations #(ly:make-moment 2/1)
 { c32*63/12[ d e f g a] } | b1 }
   { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>

In this case, we used the moment of 2/1 because we wanted each note to 
be twice 

Re: feathered beam calculations

2018-12-21 Thread Reggie
Aaron Hill wrote
> This means your score really should be bar check clean *before* you ever 
> use \featherDurations. 
> 
> At the end of the day, there is no real need to use any math for the 
> \featherDurations moment.  Any positive rational less than one will 
> produce an accelerando, while fractions greater than one generate a 
> ritardando.  The best thing to do is to listen to the MIDI output and 
> determine if it sounds right to your ear.
> 
> I said earlier we would talk about bar checks *within* the feathered 
> sequence of notes.  Consider the following addition to our example:
> 
>  << { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*127/14[ d e f g a | b] } }
> { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*63/12[ d e f g a] } | b1 }
> { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
> 
> You'll see that the 'b' is included within the beamed notes.  Because we 
> now have seven notes covering the period of two measures less one 64th, 
> we had to adjust our scaling fraction to 127/14.  However, what is most 
> important is that \featherDurations fixes the timing of the notes to 
> allow the inside bar check to pass.  Omit it, and you'll see that the 
> bar check fails.  But also try changing the 2/1 moment to anything else, 
> and the bar check will also fail.
> 
> What we have here is a very fragile element in the score that can be 
> easily avoided by never requiring any note (apart from the first) within 
> a feathered sequence to align to anything else.  The final 'b' above 
> should properly be outside the feathered sequence (or possibly start a 
> new sequence of its own).  In this way, the math to ensure all of the 
> sequences have the right lengths can be done completely independent of 
> \featherDurations.
> 
> Hopefully some of this will be helpful.
> 
> -- Aaron Hill
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

The fractions do NOT always  accelerando, while fractions greater than one
generate a 
ritardando as intended. That is why I began this mess in the first place :))




--
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: feathered beam calculations

2018-12-21 Thread Reggie
Aaron Hill wrote
> At the end of the day, there is no real need to use any math for the 
> \featherDurations moment.  Any positive rational less than one will 
> produce an accelerando, while fractions greater than one generate a 
> ritardando.  The best thing to do is to listen to the MIDI output and 
> determine if it sounds right to your ear.
> 
> I said earlier we would talk about bar checks *within* the feathered 
> sequence of notes.  Consider the following addition to our example:
> 
>  << { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*127/14[ d e f g a | b] } }
> { r64 \featherDurations #(ly:make-moment 2/1)
>   { c32*63/12[ d e f g a] } | b1 }
> { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>
> 
> You'll see that the 'b' is included within the beamed notes.  Because we 
> now have seven notes covering the period of two measures less one 64th, 
> we had to adjust our scaling fraction to 127/14.  However, what is most 
> important is that \featherDurations fixes the timing of the notes to 
> allow the inside bar check to pass.  Omit it, and you'll see that the 
> bar check fails.  But also try changing the 2/1 moment to anything else, 
> and the bar check will also fail.
> 
> What we have here is a very fragile element in the score that can be 
> easily avoided by never requiring any note (apart from the first) within 
> a feathered sequence to align to anything else.  The final 'b' above 
> should properly be outside the feathered sequence (or possibly start a 
> new sequence of its own).  In this way, the math to ensure all of the 
> sequences have the right lengths can be done completely independent of 
> \featherDurations.
> 
> Hopefully some of this will be helpful.
> 
> -- Aaron Hill
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

I read every word. Thank you huge for making that post. Bloody well done. 
But it's sad now. Because according to Harm I believe he said it's not
always reliable if the spacing will be what you want, so to speak. But it
just counts the durations themselves. Spacing is a side effect of sorts.
Never 100% certain correct spacing.

So which can it be? This is so confusing. Sometimes spacing looks correct.
But sometimes I try every number combination I can and the notes don't
budge. Ratio not making a difference. 



--
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: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
> \featherDurations changes durations, nothing more!! It does not change
> spacing on it's own.
> The changed spacing is more a side-effect. Doing note-spacing is a
> very involved process, durations are only one element of the
> calculation.
> 
> So I ensure you \featherDuarations will _always_ affect the
> _durations_ of it's argument, though, whether the resulting spacing is
> really what you desire? Probably/likely/sometimes not.
> 
>> I wouldn't even know how to make this function besides. Sorry.
> 
> Well, there are some good coders on the list ;)
> Not sure, if I'll have the time to give it a try ...
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Harm this is very important you just solved the mystery :)) Sort of. It
sounds like you just admitted that the spacing out of feather beamed
duration notes is not always going to work correctly, but the durations
themselves WILL. Well, according to Gould, it's pretty obvious that feather
beams need to be spaced out according to the tempo of the feathers, always.
So, there's no way in LilyPond as of today function wise that simply put
makes feather beams spaced out correctly according to standard engraving
rules. Wow.

I would hope beg love for someone to write a function that simply put spaced
out notes according to the speed of the feathers. Finale Sibelius do this
for years now. Hack yes but doable every time it works. What's LilyPond work
around for this? Assume you want to engrave correctly and have your feather
beams spaced out as they slow or speeden up, how can you do it? manually
tweak space between notes it seems? Yikes :))

Do you think it's even possible to write a function to automatically space
according to the feather beam length and duration?




--
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: lilypond-book→latex

2018-12-21 Thread Urs Liska


Am 21. Dezember 2018 19:19:21 MEZ schrieb "N. Andrew Walsh" 
:
>Hi Federico,
>
>according to release notes, Lyx has had support for lilypond-book for
>some
>time now. See here:
>
>https://wiki.lyx.org/LyX/NewInLyX20#lb
>
>That's where it says it requires the "lilypond-book→(pdf)latex"
>package,
>which my Lyx says it can't find.
>
>Any advice? Are there any Lyx users who got this working?

Why do you want this? Is there any specific reason not to use lualatex? I know 
you already run lyluatex in the Kayser project.

If it is about existing documents: these *should* readily compile with lyluatex 
that provides a superset of lilypond-boom syntax.

Urs

>
>Cheers,
>
>A
>
>On Fri, Dec 21, 2018 at 7:14 PM Federico Bruni 
>wrote:
>
>>
>>
>> Il giorno ven 21 dic 2018 alle 11:24, "N. Andrew Walsh"
>>  ha scritto:
>> > Hi List,
>> >
>> > dumb question: I'm trying to integrate lilypond into my Lyx
>document,
>> > and while it has the lilypond-book module, it says it can't find
>the
>> > "lilypond-book→(pdf)latex" package. Where do I find this package?
>> >
>> > I have lilypond installed in its own subdirectory, as well as my
>> > texlive installation in another one (so neither are the system
>> > packages from my distribution's repo). I'm using gentoo Linux.
>> >
>>
>> Hi Andrew
>>
>> lilypond-book is a preprocessor and I don't think you can use it in
>Lyx
>> (I have zero experience with Lyx though).
>>
>> Why don't you try lyluatex?
>> https://github.com/jperon/lyluatex/blob/master/README.en.md
>>
>> Then you can process your .tex file directly using lualatex and I
>guess
>> this will play well with Lyx.
>>
>>
>>
>>

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


Re: lilypond-book→latex

2018-12-21 Thread N. Andrew Walsh
Hi Federico,

according to release notes, Lyx has had support for lilypond-book for some
time now. See here:

https://wiki.lyx.org/LyX/NewInLyX20#lb

That's where it says it requires the "lilypond-book→(pdf)latex" package,
which my Lyx says it can't find.

Any advice? Are there any Lyx users who got this working?

Cheers,

A

On Fri, Dec 21, 2018 at 7:14 PM Federico Bruni  wrote:

>
>
> Il giorno ven 21 dic 2018 alle 11:24, "N. Andrew Walsh"
>  ha scritto:
> > Hi List,
> >
> > dumb question: I'm trying to integrate lilypond into my Lyx document,
> > and while it has the lilypond-book module, it says it can't find the
> > "lilypond-book→(pdf)latex" package. Where do I find this package?
> >
> > I have lilypond installed in its own subdirectory, as well as my
> > texlive installation in another one (so neither are the system
> > packages from my distribution's repo). I'm using gentoo Linux.
> >
>
> Hi Andrew
>
> lilypond-book is a preprocessor and I don't think you can use it in Lyx
> (I have zero experience with Lyx though).
>
> Why don't you try lyluatex?
> https://github.com/jperon/lyluatex/blob/master/README.en.md
>
> Then you can process your .tex file directly using lualatex and I guess
> this will play well with Lyx.
>
>
>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: lilypond-book→latex

2018-12-21 Thread Federico Bruni



Il giorno ven 21 dic 2018 alle 11:24, "N. Andrew Walsh" 
 ha scritto:

Hi List,

dumb question: I'm trying to integrate lilypond into my Lyx document, 
and while it has the lilypond-book module, it says it can't find the 
"lilypond-book→(pdf)latex" package. Where do I find this package?


I have lilypond installed in its own subdirectory, as well as my 
texlive installation in another one (so neither are the system 
packages from my distribution's repo). I'm using gentoo Linux.




Hi Andrew

lilypond-book is a preprocessor and I don't think you can use it in Lyx 
(I have zero experience with Lyx though).


Why don't you try lyluatex?
https://github.com/jperon/lyluatex/blob/master/README.en.md

Then you can process your .tex file directly using lualatex and I guess 
this will play well with Lyx.





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


Re: synchronization of feathered beams

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 17:51 Uhr schrieb Reggie :
>
> Thomas Morley-2 wrote
> > Meanwhile I think you didn't understand that feathered beams, done with
> > \override Beam.grow-direction = #RIGHT
> > and
> > \featherDurations
> > are _independant_ from each other. See:
> >
> > \version "2.19.82"
> >
> > {
> >   r2..
> >   \featherDurations #(ly:make-moment 1 2)
> >   { c''32[ 32 32 32 32 32 32 32] } r2..
> > }
> >
> > The old message you quoted previously, explains already that
> > \featherDurations changes the durations of the notes.
> > With those changed durations LilyPonds spacing engine may insert
> > different spacings between those notes.
> > Ofcourse things like barchecks fail if applied to the _unchanged_ notes.
> >
> > So it seems to me your problem has _nothing_ to do with feathered
> > Beams but with featherDurations and it's consequences.
> >
> > Probably don't use featherDurations at all, but use a custom function
> > to space the note-columns, only for the visible output, without
> > changing their durations (midi would not reflect any
> > accelerando/rallentando then ofcourse).
> >
> >
> > Cheers,
> >   Harm
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> Harm I don't use MIDI so a custom function could work great yes for visual
> spacing. But please bear with me on this for a second. If the durations
> command already spaces them out then why doesn't this work *every* time? I
> understand both commands are independent yes thank you. But I presumed that
> I needed durations to space out the notes correctly like Gould and
> publishing houses all over do.
>
> Why would I need a custom function to do what featherdurations does if I'm
> misunderrstanding?

\featherDurations changes durations, nothing more!! It does not change
spacing on it's own.
The changed spacing is more a side-effect. Doing note-spacing is a
very involved process, durations are only one element of the
calculation.

So I ensure you \featherDuarations will _always_ affect the
_durations_ of it's argument, though, whether the resulting spacing is
really what you desire? Probably/likely/sometimes not.

> I wouldn't even know how to make this function besides. Sorry.

Well, there are some good coders on the list ;)
Not sure, if I'll have the time to give it a try ...

Cheers,
  Harm

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


Re: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread Urs Liska


Am 21.12.18 um 09:06 schrieb Urs Liska:

Hi Lukas,

thanks for putting this together. Indeed since installing a distro 
that doesn't Guile 1.8 anymore I hadn't been able to compile LilyPond 
anymore. Once I managed to compile Guile 1.8 and do a build but for 
some reason I lost this option. I think the point was that after 
compiling Guile I had to actually change the way LilyPond's make was 
handled - which of course isn't sustainable.


I'm also running Linux Mint 19.1, and followed your command list (and 
the previous instructions from the CG). Except that I already had some 
of the dependencies installed everything worked flawlessly, and I 
could run a make to compile LilyPond, register that in Frescobaldi and 
compile a .ly file with it. A warning about missing URW fonts was the 
only issue I encountered. make doc took the expected ages but worked 
without errors too!


So I can confirm that the steps work on Linux Mint 19.

Janek Wachoł has written a few scripts to help managing multiple 
LilyPond builds, which I really appreciated when I had them working. 
Basically they provide a configuration layer around the compilation, 
then create a local clone of the main code repository and build from 
that copy. That makes it possible to have multiple different builds 
from different branches (or even states of a branch) in parallel. I 
will see if I can integrate that with compiling through a 
self-compiled Guile and report back. Maybe these scripts are of use 
for others as well.



I have looked again into these scripts and found that they (still) work 
well.
The script that I suggest looking into is located at 
https://github.com/jan-warchol/cli-tools/blob/master/lilypond/build-lily.sh


However, when it is considered of general use I'll ask Janek to extract 
the script from his scripts collection.


In order to use the script two environment variables have to be exported 
(presumably from .bashrc):


LILYPOND_GIT=/path/to/lilypond/source/repository
LILYPOND_BUILD_DIR=/path/to/root/of/lilypond-builds

When invoked without arguments the script will clone the source 
repository in its current state to the "current" subdirectory of 
LILYPOND_BUILD_DIR and build it from there.
Settings to build other branches (or combinations of branches) to other 
target directories are described at the beginning of the script.


Does this look interesting to anybody?
Urs



Best
Urs

Am 20.12.18 um 12:21 schrieb Lukas-Fabian Moser:

Folks,

this is mostly to give a reference to those who might hit the same 
problems that I had:


I decided to switch from my ancient Linux Mint 17.3 to Linux Mint 
19.1 yesterday. In order to set up a working build environment, I had 
to provide a working Guile 1.8 which seems not to be in the 
repositories any more.


So in addition to following the instructions given in 
http://lilypond.org/doc/v2.19/Documentation/contributor/requirements-for-compiling-lilypond#linux-mint 
I also followed the most recent one of the various variations of 
steps for compiling Guile 1.8 that Federico Bruni gave in October 
2017 
(http://lilypond.1069038.n5.nabble.com/compiling-lilypond-in-debian-stretch-with-self-compiled-guile-1-8-td206683.html)


git clone https://git.savannah.gnu.org/git/guile.git
cd guile
git checkout branch_release-1-8
./autogen.sh
./configure --disable-error-on-warning --prefix=/usr/local
make
sudo make install
sudo ldconfig

echo "GUILE_CONFIG=/usr/local/bin/guile-config" >> ~/.bashrc

Then, after restarting Bash, I could proceed to 
http://lilypond.org/doc/v2.19/Documentation/contributor/configuring-make 
and successfully compile current Master.


(On my system, the echo [...] >> ~/.bashrc command added the given 
line without any new-line or whitespace, so I had to insert a newline 
in an editor.)



Probably these instructions would need some more 
testing/polishing/adjusting to other distributions before they could 
reasonably be added to the Contributor's Guide, so I just thought it 
might be helpful to collect them once more here. (In fact I did run 
into a bit of trouble tonight, but this seems to have been because I 
wanted to re-use my old lilypond git directory which had been used 
for compiling on my old system, so it wasn't really a clean start. 
This might also mean my procedure can't be guaranteed to work on a 
really fresh Lilypond git folder, but I think they should - I removed 
the old build/ folder before the first succesful compile, so there 
shouldn't have been any remnants of earlier successful compilations.)


Or would there have been a much easier way to success?

(The upside for me: Now I have the necessary Python/Qt/Lilypond 
bindings to also run current Frescobaldi from the git repository 
following Urs's excellent instructions on 
https://github.com/wbsoft/frescobaldi/wiki/Run-Frescobaldi-3-on-Linux.)


Best
Lukas


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

Re: feathered beam calculations

2018-12-21 Thread Aaron Hill

On 2018-12-21 5:14 am, Reggie wrote:
Hello. I see what you are saying thank you. I just feel that feather 
beaming

is so confusing it all depends on so much, it's not simple like "select
these notes and change beam style to feather left or right". It's 
first,
math. Then, trial error. Then, settling. Then, Repeat. I now understand 
how
to create the feather beams on paper, but the bar line check fails is 
what

remains to be problemsome. [ . . .]


I apologize for the very long email following, although I would 
appreciate you taking the time to read through it.  You may need to 
re-read it a few times, so find a good cup of coffee (or something 
stronger if you are so-inclined).


==

Feathered beams, as far as the visual depiction goes, are as simple as 
you describe.  All you need to do is set Beam.grow-direction to #LEFT or 
#RIGHT, and then any manually beamed notes delimited with [ and ] will 
have the beams feathered.  That's it.  You're done.  No math at all.


However, note that this is *only* the visual aspect of feathering.  
Unless you use \featherDurations, all of the notes will keep their 
straight timing; and MIDI output will not reflect the desired ritardando 
or accelerando.


So when you do need to care about the timing of notes, \featherDurations 
comes into play; and it does bring with it some potentially confusing 
math.  This math is somewhat complicated by the fact that the 
documentation and implementation do not agree with one another.  
Consider the following:


\featherDurations #(ly:make-moment 1/2) { c8[ d e f] }

[Side note: Harm made a slight mistake in his example usage.  If you 
want to feather a sequence of notes, you must put those notes in curly 
braces.  Omitting the braces in the example above will result in no 
feathering, as only the first note will be passed to the function.]


The documentation says that \featherDurations will use the specified 
moment to scale the last note relative to the first; however, in 
practice you will see that this scaling is done between each subsequent 
note.  In the example above, we would expect that the 'f' should last 
half as long as the 'c'.  But instead, we find that the 'f' is half of 
the 'e'; the 'e', half of the 'd'; and the 'd', half of the 'c'.  The 
result is that the 'f' is one eighth the duration of the 'c'.


Given the current implementation, it would be necessary to use an 
approximate rational like 50/63 as the moment in order to get 'f' to be 
half of 'c'.  Why that number?  Well, it's a close approximation to the 
irrational cube root of one half.  We determine this exact value by 
taking the desired ratio (1/2) and raising it to the reciprocal of the 
number of scaling steps between the first and last notes (three, in this 
case, which becomes the fraction 1/3).  (1/2)^(1/3) is about 0.7937; and 
50/63 is roughly 0.79365.


But before we get lost in the murky details of whether the implemented 
behavior is right or the documentation is right, let us circle back 
around to a key point that I feel has not been stressed enough.


\featherDurations will change the individual durations and timing of the 
notes in the sequence provided; however it will *not* change the overall 
duration of the sequence.  If bar checks outside the range of feathered 
notes are failing, then the issue is completely unrelated to 
\featherDurations.  Your problem is with the note sequence itself.  (If 
you are using bar checks *within* the sequence of notes being feathered, 
then you are asking for trouble.  We'll talk about this in a bit.)


This means your score really should be bar check clean *before* you ever 
use \featherDurations.  And that task may involve arithmetic of its own. 
 Consider the following sequence:


r64 { c64 d32 e16 f8 g4 a2 } | b1

We have a manually-written ritardando of notes.  Note the rest is there 
to ensure the whole note aligns to its own measure, but we are mainly 
interested in the sequence delimited by the braces.


Let us assume we would like to notate this as a simple group of six, 
thirty-secondth notes with a feathered beam:


r64 { c32[ d e f g a] } | b1

This fails the bar check because our six notes are not long enough to 
fill out the measure.  We fix this by first noting the original sequence 
is 63 * 64th notes long.  We are using 6 * 32nd notes, which is 
equivalent to 12 * 64th notes.  Scaling by the fraction 63/12 will get 
us to our desired goal.  You can confirm this by noting the bar check in 
the following passes:


r64 { c32*63/12[ d e f g a] } | b1

Now that we have the correct total duration, we can add in feathering.  
Consider the following to confirm that we have indeed achieved what we 
wanted:


<< { r64 \featherDurations #(ly:make-moment 2/1)
 { c32*63/12[ d e f g a] } | b1 }
   { r64 { c64 d32 e16 f8 g4 a2 } | b1 } >>

In this case, we used the moment of 2/1 because we wanted each note to 
be twice the length of its preceding note, which is w

Engraving chord names in Linux

2018-12-21 Thread Jogchum Reitsma

Hi list,

I use lilypond 2.18 on OpenSuse Tumbleweed (the rolling distro from 
Suse). On that combination, displaying chord names in .pdf-form gives 
error messages grom ghostscript (gs) in the transition from a .ps-file 
to a .pdf-file. When for example the snippet from 
http://lilypond.org/doc/v2.18/Documentation/learning/notes-and-chords.nl.html 
is fed to lilypond, with logging set to its maximum,, the last messages 
are:


   Opmaakuitvoer naar `Akkoorden.ps'...
   [/usr/share/fonts/truetype/CenturySchL-Roma.otf]
   [/usr/share/fonts/truetype/Roboto-Regular.ttf]
   [/usr/share/lilypond/2.18.2/ps/music-drawing-routines.ps]
   [/usr/share/lilypond/2.18.2/ps/lilyponddefs.ps]
   Converting to `./Akkoorden.pdf'...
   Aanroepen van 'gs -dSAFER -dDEVICEWIDTHPOINTS=595.28
   -dDEVICEHEIGHTPOINTS=841.89 -dCompatibilityLevel=1.4 -dNOPAUSE
   -dBATCH -r1200 -sDEVICE=pdfwrite -sOutputFile=./Akkoorden.pdf
   -c.setpdfwrite -fAkkoorden.ps'...

   GPL Ghostscript 9.26 (2018-11-20)
   Copyright (C) 2018 Artifex Software, Inc.  All rights reserved.
   This software comes with NO WARRANTY: see the file PUBLIC for details.
   Error: /invalidfont in --glyphshow--
   Operand stack:
   1.7072   43.7677   -7.0809   D
   Execution stack:
   %interp_exit   .runexec2   --nostringval-- --nostringval--  
   --nostringval--   2   %stopped_push --nostringval--  
   --nostringval--   --nostringval--   false 1   %stopped_push   2029  
   1   3   %oparray_pop   2028   1   3 %oparray_pop   2009   1   3  
   %oparray_pop   1868   1   3 %oparray_pop   --nostringval--  
   %errorexec_pop   .runexec2 --nostringval--   --nostringval--  
   --nostringval--   2 %stopped_push   --nostringval--   0  
   --nostringval-- %repeat_continue   --nostringval--
   Dictionary stack:
   --dict:960/1684(ro)(G)--   --dict:0/20(G)-- --dict:114/200(L)--
   Current allocation mode is local
   Current file position is 946206
   GPL Ghostscript 9.26: Warning: 'loca' length 13 is greater than
   numGlyphs 1 in the font Roboto-Regular.
   GPL Ghostscript 9.26: Unrecoverable error, exit code 1

Generating the .ps-file goes withjout warning, but if one opens that .ps 
in a viewer, one does ee the triangle above  the fist bar (between the 
last 2 quarter notes), but no chord names.


The .pdf-file is not generated by gs.

The snippet reads as follows:

\version "2.18.2"

melody = \relative c' {
  \clef treble
  \key c \major
  \time 4/4

  f4 e8[ c] d4 g
  a2 ~ a
}

harmonies = \chordmode {
  c4:m f:min7 g:maj c:aug
  d2:dim b:sus
}

\score {
  <<
    \new ChordNames {
  \set chordChanges = ##t
  \harmonies
    }
    \new Staff \melody
  >>
  \layout{ }
  \midi { }
}

When I comment out the two lines in the chormode section, everything is OK.

What can be/can I do to display chord names?

regards, Jogchum Reitsma

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


Re: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
> Meanwhile I think you didn't understand that feathered beams, done with
> \override Beam.grow-direction = #RIGHT
> and
> \featherDurations
> are _independant_ from each other. See:
> 
> \version "2.19.82"
> 
> {
>   r2..
>   \featherDurations #(ly:make-moment 1 2)
>   { c''32[ 32 32 32 32 32 32 32] } r2..
> }
> 
> The old message you quoted previously, explains already that
> \featherDurations changes the durations of the notes.
> With those changed durations LilyPonds spacing engine may insert
> different spacings between those notes.
> Ofcourse things like barchecks fail if applied to the _unchanged_ notes.
> 
> So it seems to me your problem has _nothing_ to do with feathered
> Beams but with featherDurations and it's consequences.
> 
> Probably don't use featherDurations at all, but use a custom function
> to space the note-columns, only for the visible output, without
> changing their durations (midi would not reflect any
> accelerando/rallentando then ofcourse).
> 
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Harm I don't use MIDI so a custom function could work great yes for visual
spacing. But please bear with me on this for a second. If the durations
command already spaces them out then why doesn't this work *every* time? I
understand both commands are independent yes thank you. But I presumed that
I needed durations to space out the notes correctly like Gould and
publishing houses all over do.

Why would I need a custom function to do what featherdurations does if I'm
misunderrstanding?
I wouldn't even know how to make this function besides. Sorry.




--
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: synchronization of feathered beams

2018-12-21 Thread Kieren MacMillan
Hi Reggie,

 It's impossible to have feather
 beams cross barlines and look correect why is this?

I’m confused… How, exactly, does this not output the kind of thing you want?

%%%  SNIPPET BEGINS
\version "2.19.80"
{
 r2..
 \override Beam.grow-direction = #RIGHT
 \featherDurations #(ly:make-moment 1 2)
 { c''32[ 32 32 32 32 32 32 32] } r2..
}
%%%  SNIPPET ENDS

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: synchronization of feathered beams

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 17:18 Uhr schrieb Reggie :
>
> Thomas Morley-2 wrote
> > Am Fr., 21. Dez. 2018 um 15:21 Uhr schrieb Reggie <
>
> > reegistoop@
>
> > >:
> >
> >> It's impossible to have feather
> >> beams cross barlines and look correect why is this?
> >
> > ??
> >
> > What's wrong with:
> >
> > \version "2.19.82"
> >
> > {
> >   r2..
> >   \override Beam.grow-direction = #RIGHT
> >   c'32[ \repeat unfold 6 c'' c'] r2..
> > }
> >
> > Cheers,
> >   Harm
> >
> > ___
> > lilypond-user mailing list
>
> > lilypond-user@
>
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
>
> Also, as I earlier mentioned over and over, the bar lines fail. Your example
> does not work unless you ignore bar checks. Why needing to be this way is
> silly to me :)

Well, repeating the same over and over again, although several people
declared not to know exactly what you're, after is not likely
increasing the chance to be understood.

Meanwhile I think you didn't understand that feathered beams, done with
\override Beam.grow-direction = #RIGHT
and
\featherDurations
are _independant_ from each other. See:

\version "2.19.82"

{
  r2..
  \featherDurations #(ly:make-moment 1 2)
  { c''32[ 32 32 32 32 32 32 32] } r2..
}

The old message you quoted previously, explains already that
\featherDurations changes the durations of the notes.
With those changed durations LilyPonds spacing engine may insert
different spacings between those notes.
Ofcourse things like barchecks fail if applied to the _unchanged_ notes.

So it seems to me your problem has _nothing_ to do with feathered
Beams but with featherDurations and it's consequences.

Probably don't use featherDurations at all, but use a custom function
to space the note-columns, only for the visible output, without
changing their durations (midi would not reflect any
accelerando/rallentando then ofcourse).


Cheers,
  Harm

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


Re: synchronization of feathered beams

2018-12-21 Thread Reggie
Kieren MacMillan wrote
> Hi Reggie,
> 
>> the notes are not spaced out according to the feathered tempo. […]
>> They should be spaced out to show slow fast change
> 
> Why is that necessary? I mean, you obviously *want* that… but I’m not sure
> they "should" be spaced out like that, necessarily.
> 
>> How do you do that?
> 
> There are dozens of ways, each with advantages and disadvantages.
> Have you tried anything? If so, show us a minimum example, and we’ll help
> you fine-tune it.
> 
> Cheers,
> Kieren.
> 
> 
> Kieren MacMillan, composer
> ‣ website: www.kierenmacmillan.info
> ‣ email: 

> info@

> 
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Gould even says space by speed, if anyone cares :) like me
Make durations never seems to space them correctly unless I am missing it.
Bar checks never not failing if you do get the spacing eventually.
It's just confusing and I feel stupid. Sorry :(( thank you!!



--
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: synchronization of feathered beams

2018-12-21 Thread Reggie
Kieren MacMillan wrote
> Hi Reggie,
> 
>> the notes are not spaced out according to the feathered tempo. […]
>> They should be spaced out to show slow fast change
> 
> Why is that necessary? I mean, you obviously *want* that… but I’m not sure
> they "should" be spaced out like that, necessarily.
> 
>> How do you do that?
> 
> There are dozens of ways, each with advantages and disadvantages.
> Have you tried anything? If so, show us a minimum example, and we’ll help
> you fine-tune it.
> 
> Cheers,
> Kieren.
> 
> 
> Kieren MacMillan, composer
> ‣ website: www.kierenmacmillan.info
> ‣ email: 

> info@

> 
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Respect, but because it's the correct way to do it. Widely accepted.
https://www.scoringnotes.com/wp-content/uploads/2016/09/behind-bars-beams-2-300x81.png
You show speed by clumping notes and then more space between as needed
depends on speed. Very accepted. 

I have seen this in many Lily scores but never saw a clear answer how to
always get this behavior?
https://www.scoringnotes.com/tutorials/feathered-beams-that-look-and-play-back-correctly-in-sibelius/

Maybe someone can show clearly how Lily handles this correct behavior and
not just default spacing.




--
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: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread Urs Liska

Hi Federico and Lukas,

Am 21.12.18 um 09:59 schrieb Federico Bruni:



Il giorno ven 21 dic 2018 alle 9:06, Urs Liska  
ha scritto:

[...]
A warning about missing URW fonts was the only issue I encountered. 
make doc took the expected ages but worked without errors too!


So I can confirm that the steps work on Linux Mint 19.



Hi Urs

this was discussed before but you might have missed it.

You can use part of this script:
https://github.com/fedelibre/LilyDevOS/blob/master/mkosi/debian/mkosi.extra/etc/skel/setup.sh#L39 



to download the needed .otf files.

AFAIK, only Fedora (?) includes .otf files in its URW fonts package, 
because I asked for it:

https://bugzilla.redhat.com/show_bug.cgi?id=1496466#c18



Thanks, this seems to have worked.


Fedora packager wrote that OTF files are not too big and decided that 
they can be distributed along with .t1 and .afm files.
If somebody asked Debian to do the same for fonts-urw-base35 package, 
above script would be not necessary anymore - for Debian nor its 
derivatives (Ubuntu, Mint, etc.).



But until that happens this information should be added to any CG. 
Although if I'm not mistaken this is not related to the "Linux Mint" 
part of the section, isn't it?


Best
Urs







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


Re: synchronization of feathered beams

2018-12-21 Thread Kieren MacMillan
Hi Reggie,

> the notes are not spaced out according to the feathered tempo. […]
> They should be spaced out to show slow fast change

Why is that necessary? I mean, you obviously *want* that… but I’m not sure they 
"should" be spaced out like that, necessarily.

> How do you do that?

There are dozens of ways, each with advantages and disadvantages.
Have you tried anything? If so, show us a minimum example, and we’ll help you 
fine-tune it.

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: synchronization of feathered beams

2018-12-21 Thread Kieren MacMillan
Hi Reggie,

> Thomas Morley wrote
>> What's wrong with:

> as I earlier mentioned over and over, the bar lines fail.
> Your example does not work unless you ignore bar checks.

Harm’s example works fine for me; no bar line "failure".
What’s the log output when you try it?

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
> Am Fr., 21. Dez. 2018 um 15:21 Uhr schrieb Reggie <

> reegistoop@

> >:
> 
>> It's impossible to have feather
>> beams cross barlines and look correect why is this?
> 
> ??
> 
> What's wrong with:
> 
> \version "2.19.82"
> 
> {
>   r2..
>   \override Beam.grow-direction = #RIGHT
>   c'32[ \repeat unfold 6 c'' c'] r2..
> }
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Finally your version is also wrong because the notes are not spaced out
according to the feathered tempo. They just look like default beams
placement with 3 beams. They should be spaced out to show slow fast change
not just like you made it. How do you do that?



--
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: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
> Am Fr., 21. Dez. 2018 um 15:21 Uhr schrieb Reggie <

> reegistoop@

> >:
> 
>> It's impossible to have feather
>> beams cross barlines and look correect why is this?
> 
> ??
> 
> What's wrong with:
> 
> \version "2.19.82"
> 
> {
>   r2..
>   \override Beam.grow-direction = #RIGHT
>   c'32[ \repeat unfold 6 c'' c'] r2..
> }
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Also, as I earlier mentioned over and over, the bar lines fail. Your example
does not work unless you ignore bar checks. Why needing to be this way is
silly to me :)




--
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: synchronization of feathered beams

2018-12-21 Thread Reggie
Thomas Morley-2 wrote
> Am Fr., 21. Dez. 2018 um 15:21 Uhr schrieb Reggie <

> reegistoop@

> >:
> 
>> It's impossible to have feather
>> beams cross barlines and look correect why is this?
> 
> ??
> 
> What's wrong with:
> 
> \version "2.19.82"
> 
> {
>   r2..
>   \override Beam.grow-direction = #RIGHT
>   c'32[ \repeat unfold 6 c'' c'] r2..
> }
> 
> Cheers,
>   Harm
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> https://lists.gnu.org/mailman/listinfo/lilypond-user

Nothing. It works. It's simple. Not the question really sorry my. The
example the other person made was what I mentioned.

\version "2.12.3"
upper = {
 \override Beam #'grow-direction = #RIGHT

 \featherDurations #(ly:make-moment 1 2)
 { \time 7/16 des''16 -. [\p\< es''16 -. e''16 -. f''16 -. ges''16 -. as''16
-. c'''16 -> -. \f \time 3/16 cis''' d''' dis'''] }
}
\score {
   \new Staff \upper
}




--
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: synchronization of feathered beams

2018-12-21 Thread Thomas Morley
Am Fr., 21. Dez. 2018 um 15:21 Uhr schrieb Reggie :

> It's impossible to have feather
> beams cross barlines and look correect why is this?

??

What's wrong with:

\version "2.19.82"

{
  r2..
  \override Beam.grow-direction = #RIGHT
  c'32[ \repeat unfold 6 c'' c'] r2..
}

Cheers,
  Harm

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


Re: synchronization of feathered beams

2018-12-21 Thread Reggie
kontrapunktstefan wrote
> Dear Phil,
> thanks for Your explanations.
> I do have now another problem.
> What can I do, when I want to have feathered beams across barlines, like
> e.g.:
> 
> \version "2.12.3"
> upper = {
>  \override Beam #'grow-direction = #RIGHT
> 
>  \featherDurations #(ly:make-moment 1 2)
>  { \time 7/16 des''16 -. [\p\< es''16 -. e''16 -. f''16 -. ges''16 -.
> as''16
> -. c'''16 -> -. \f \time 3/16 cis''' d''' dis'''] }
> }
> \score {
>\new Staff \upper
> }
> 
> 
> 
> 2010/9/30 Phil Holmes <

> mail@

> >
> 
>>  Top posting because of HTML original.
>>
>> Stefan,
>>
>> featherDurations changes the tempo of the notes.  Thus the notes at the
>> start of the bar have a longer duration than those at the end, and I
>> presume
>> LilyPond is having a problem applying this to the longer rests.  This may
>> not give the appearance you want, but shows that this will work with
>> short
>> duration rests.  (I've replaced all your eighth notes with sixteenth, to
>> show the beam feathering).
>>
>> \version "2.12.3"
>> global = { \time 7/16 }
>> upper = { \global
>>  \override Beam #'grow-direction = #RIGHT
>>
>>  \featherDurations #(ly:make-moment 1 2)
>>  { des''16 -. [\p\< es''16 -. e''16 -. f''16 -. ges''16 -. as''16 -.
>> c'''16
>> -> -. \f] }
>> }
>> lower = { \global
>>\override Beam #'grow-direction = #RIGHT
>>
>>\featherDurations #(ly:make-moment 1 2)
>>  { r16 r r r r r16 -> -. \sfz }
>>
>> }
>> \score {
>>   << \new Staff \upper
>> \new Staff \lower >>
>> }
>>
>> --
>> Phil Holmes
>>
>>
>>
>> - Original Message -
>> *From:* Stefan Thomas <

> kontrapunktstefan@

> >
>> *To:* lilypond-user <

> lilypond-user@

> >
>> *Sent:* Thursday, September 30, 2010 9:42 AM
>> *Subject:* synchronization of feathered beams
>>
>> Dear community,
>> I have a problem with the synchronisation in the below quoted snippet.
>> I expect to have the notes on the end of the bar on the same vertical
>> height.
>> How can I achieve it?
>> Thanks for help,
>> Stefan
>>
>> \version "2.12.3"
>> global = { \time 7/8 }
>> upper = { \global
>>\featherDurations #(ly:make-moment 1 2)
>>  { des''8 -. [\p\< es''8 -. e''8 -. f''8 -. ges''8 -. as''8 -. c'''8 ->
>> -.
>> \f] }
>> }
>> lower = { \global
>>\featherDurations #(ly:make-moment 1 2)
>>  { r2 r4   8 -> -. \sfz }
>> }
>> \score {
>>   << \new Staff \upper
>> \new Staff \lower >>
>> }
>>
>>
>>  --
>>
>> ___
>> lilypond-user mailing list
>> 

> lilypond-user@

>> http://lists.gnu.org/mailman/listinfo/lilypond-user
>>
>>
>>
> 
> ___
> lilypond-user mailing list

> lilypond-user@

> http://lists.gnu.org/mailman/listinfo/lilypond-user


Another feather beaming problem for me. It's impossible to have feather
beams cross barlines and look correect why is this? How can you do this? 8
years ago. What now?



--
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: feathered beam calculations

2018-12-21 Thread Reggie
Michael Gerdau wrote
> First thing you have to answer for yourself is:
> What do I need feathered beams for?
> The answer should be something along the line "to visually notate an
> accellerando or rallentando".
> Assuming that's your answer then you should have a rough idea as to how
> strongly you wish to change the timing, as in double/halve the speed,
> adding 50% to it etc. pp.
> Doubling the speed would mean you'd have to issue
> \featherDurations #(ly:make-moment 1/2)
> Halving the speed would mean
> \featherDurations #(ly:make-moment 2/1)
> Adding 50% to it
> \featherDurations #(ly:make-moment 2/3)
> and so on.
> You come to these numbers by dividing the metronom marks at the beginning
> of your section through the metronom mark at the end of it.
> 
> Basically that's it. No magic. You as the composer have to know what you
> want and you should be able to write it down simply by giving metronom
> marks along the way. Once you can do that you could use feathered beams to
> visually show it.

Hello. I see what you are saying thank you. I just feel that feather beaming
is so confusing it all depends on so much, it's not simple like "select
these notes and change beam style to feather left or right". It's first,
math. Then, trial error. Then, settling. Then, Repeat. I now understand how
to create the feather beams on paper, but the bar line check fails is what
remains to be problemsome. Is there not a way that you can for me please
make it so you can use cadenzaOn for one instrument without effecting the
other instruments? I could use that as needed for feather beam so it would
ignore the barline check fails in those feather measures. But I tried it and

cadenzaon/off always affects other instruments of system staff. Can you
help? Maybe that's a better choice? Just to erase the idea of time fails.
Can Lily not allow to use cadenza on certain staffs but not all, occuring at
the same time that is in a system.



--
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


lilypond-book→latex

2018-12-21 Thread N. Andrew Walsh
Hi List,

dumb question: I'm trying to integrate lilypond into my Lyx document, and
while it has the lilypond-book module, it says it can't find the
"lilypond-book→(pdf)latex" package. Where do I find this package?

I have lilypond installed in its own subdirectory, as well as my texlive
installation in another one (so neither are the system packages from my
distribution's repo). I'm using gentoo Linux.

Thanks for the help,

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


Re: two markups

2018-12-21 Thread David Kastrup
Gianmaria Lari  writes:

> This works perfectly and print ciccio:
>
> \version "2.19.82"
> test = #(define-scheme-function () () #{ \markup "ciccio"  #} )
> \test
>
>
> but if i specify two markups instead of one like here
>
> \version "2.19.82"
> test = #(define-scheme-function () () #{ \markup "ciccio" \markup "ciccio"
> #} )
> \test
>
>
> then it stop to works.
>
> Why?

What is the type of the Scheme expression #{ \markup "ciccio" \markup
"ciccio" #} supposed to be?  It cannot be a markup, because there are
two.

And how should I do if I need to specify two markups?

You can create a markup list from two markups.  You can also combine two
markups in various ways (sometimes by first putting both in a markup
list) into a single markup (\combine, \line, \concat, \column and so
on).

It's your choice.  But just waving your hands and telling the computer
"well, do _something_"  is not
likely to make a programming language like Scheme happy.

-- 
David Kastrup

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


Re: two markups

2018-12-21 Thread Gianmaria Lari
On Fri, 21 Dec 2018 at 09:51, Gianmaria Lari 
wrote:

> This works perfectly and print ciccio:
>
> \version "2.19.82"
> test = #(define-scheme-function () () #{ \markup "ciccio"  #} )
> \test
>
>
> but if i specify two markups instead of one like here
>
> \version "2.19.82"
> test = #(define-scheme-function () () #{ \markup "ciccio" \markup "ciccio"
> #} )
> \test
>
>
> then it stop to works.
> Why? And how should I do if I need to specify two markups?
> Thank you, g.
>

I found a solution to the second question <>

I can specify the markup arguments inside a curly bracket. So instead of

\markup \a \markup \b % doesn't work


it is possible to do

\markup {\a \b}.

That's mean that the previous code become:

\version "2.19.82"
test = #(define-scheme-function () () #{ \markup {"ciccio"  "ciccio"} #} )
\test

(This was just an example it makes sense if you use variables instead
of "ciccio")
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread Federico Bruni




Il giorno ven 21 dic 2018 alle 9:06, Urs Liska  
ha scritto:

[...]
A warning about missing URW fonts was the only issue I encountered. 
make doc took the expected ages but worked without errors too!


So I can confirm that the steps work on Linux Mint 19.



Hi Urs

this was discussed before but you might have missed it.

You can use part of this script:
https://github.com/fedelibre/LilyDevOS/blob/master/mkosi/debian/mkosi.extra/etc/skel/setup.sh#L39

to download the needed .otf files.

AFAIK, only Fedora (?) includes .otf files in its URW fonts package, 
because I asked for it:

https://bugzilla.redhat.com/show_bug.cgi?id=1496466#c18

Fedora packager wrote that OTF files are not too big and decided that 
they can be distributed along with .t1 and .afm files.
If somebody asked Debian to do the same for fonts-urw-base35 package, 
above script would be not necessary anymore - for Debian nor its 
derivatives (Ubuntu, Mint, etc.).





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


Re: Frescobaldi with LilyPond in WSL

2018-12-21 Thread Urs Liska


Am 21. Dezember 2018 09:37:42 MEZ schrieb Michael Gerdau :
>
>>> I'm on a 64bit Windows 10, the copy commands needs to be:
>>> cp /c/Program\ Files\ \(x86\)/Frescobaldi/...
>> 
>> Do you think it would be sufficient to state something like "adjust
>paths to your actual installation"?
>
>Given that 64Bit is likely to be the rule I’d suggest to have that as
>default and have a note stating „On 32bit Systems use...“
>
>Once the GUP toolchain is able to create 64Bit binaries it could be
>changed back.
>
>> The first milestone is having Frescobaldi run from Git at all (which
>you can see from the "Git" menu appearing between "Session" and
>"Help").
>
>That milestone has been reached 😊
>
>
>[time constraint]
>That’s fine. I’m happy to do some hacking myself. While my python could
>use some enhancement I’m fluent in Perl and a few other languages so I
>think I’m fine with some basic experiments.

Great.

>
>If you already know which files I should look at that would give me a
>headstart. Otherwise I’ll find that myself.
>

If you tell me how the command line should look I'll create something to start 
with.

Urs

>Kind regards,
>Michael

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


two markups

2018-12-21 Thread Gianmaria Lari
This works perfectly and print ciccio:

\version "2.19.82"
test = #(define-scheme-function () () #{ \markup "ciccio"  #} )
\test


but if i specify two markups instead of one like here

\version "2.19.82"
test = #(define-scheme-function () () #{ \markup "ciccio" \markup "ciccio"
#} )
\test


then it stop to works.
Why? And how should I do if I need to specify two markups?
Thank you, g.
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Frescobaldi with LilyPond in WSL

2018-12-21 Thread Michael Gerdau

>> I'm on a 64bit Windows 10, the copy commands needs to be:
>> cp /c/Program\ Files\ \(x86\)/Frescobaldi/...
> 
> Do you think it would be sufficient to state something like "adjust paths to 
> your actual installation"?

Given that 64Bit is likely to be the rule I’d suggest to have that as default 
and have a note stating „On 32bit Systems use...“

Once the GUP toolchain is able to create 64Bit binaries it could be changed 
back.

> The first milestone is having Frescobaldi run from Git at all (which you can 
> see from the "Git" menu appearing between "Session" and "Help").

That milestone has been reached 😊


[time constraint]
That’s fine. I’m happy to do some hacking myself. While my python could use 
some enhancement I’m fluent in Perl and a few other languages so I think I’m 
fine with some basic experiments.

If you already know which files I should look at that would give me a 
headstart. Otherwise I’ll find that myself.

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


Re: Compiling LilyPond on Linux Mint 19.1

2018-12-21 Thread Urs Liska

Hi Lukas,

thanks for putting this together. Indeed since installing a distro that 
doesn't Guile 1.8 anymore I hadn't been able to compile LilyPond 
anymore. Once I managed to compile Guile 1.8 and do a build but for some 
reason I lost this option. I think the point was that after compiling 
Guile I had to actually change the way LilyPond's make was handled - 
which of course isn't sustainable.


I'm also running Linux Mint 19.1, and followed your command list (and 
the previous instructions from the CG). Except that I already had some 
of the dependencies installed everything worked flawlessly, and I could 
run a make to compile LilyPond, register that in Frescobaldi and compile 
a .ly file with it. A warning about missing URW fonts was the only issue 
I encountered. make doc took the expected ages but worked without errors 
too!


So I can confirm that the steps work on Linux Mint 19.

Janek Wachoł has written a few scripts to help managing multiple 
LilyPond builds, which I really appreciated when I had them working. 
Basically they provide a configuration layer around the compilation, 
then create a local clone of the main code repository and build from 
that copy. That makes it possible to have multiple different builds from 
different branches (or even states of a branch) in parallel. I will see 
if I can integrate that with compiling through a self-compiled Guile and 
report back. Maybe these scripts are of use for others as well.


Best
Urs

Am 20.12.18 um 12:21 schrieb Lukas-Fabian Moser:

Folks,

this is mostly to give a reference to those who might hit the same 
problems that I had:


I decided to switch from my ancient Linux Mint 17.3 to Linux Mint 19.1 
yesterday. In order to set up a working build environment, I had to 
provide a working Guile 1.8 which seems not to be in the repositories 
any more.


So in addition to following the instructions given in 
http://lilypond.org/doc/v2.19/Documentation/contributor/requirements-for-compiling-lilypond#linux-mint 
I also followed the most recent one of the various variations of steps 
for compiling Guile 1.8 that Federico Bruni gave in October 2017 
(http://lilypond.1069038.n5.nabble.com/compiling-lilypond-in-debian-stretch-with-self-compiled-guile-1-8-td206683.html)


git clone https://git.savannah.gnu.org/git/guile.git
cd guile
git checkout branch_release-1-8
./autogen.sh
./configure --disable-error-on-warning --prefix=/usr/local
make
sudo make install
sudo ldconfig

echo "GUILE_CONFIG=/usr/local/bin/guile-config" >> ~/.bashrc

Then, after restarting Bash, I could proceed to 
http://lilypond.org/doc/v2.19/Documentation/contributor/configuring-make 
and successfully compile current Master.


(On my system, the echo [...] >> ~/.bashrc command added the given 
line without any new-line or whitespace, so I had to insert a newline 
in an editor.)



Probably these instructions would need some more 
testing/polishing/adjusting to other distributions before they could 
reasonably be added to the Contributor's Guide, so I just thought it 
might be helpful to collect them once more here. (In fact I did run 
into a bit of trouble tonight, but this seems to have been because I 
wanted to re-use my old lilypond git directory which had been used for 
compiling on my old system, so it wasn't really a clean start. This 
might also mean my procedure can't be guaranteed to work on a really 
fresh Lilypond git folder, but I think they should - I removed the old 
build/ folder before the first succesful compile, so there shouldn't 
have been any remnants of earlier successful compilations.)


Or would there have been a much easier way to success?

(The upside for me: Now I have the necessary Python/Qt/Lilypond 
bindings to also run current Frescobaldi from the git repository 
following Urs's excellent instructions on 
https://github.com/wbsoft/frescobaldi/wiki/Run-Frescobaldi-3-on-Linux.)


Best
Lukas


___
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