Re: Default length of laissezvibrer ties

2012-03-13 Thread Nick Payne

On 13/03/12 10:21, Thomas Morley wrote:

2012/3/11 David Kastrupd...@gnu.org:

Thomas Morleythomasmorle...@googlemail.com  writes:


Hi Nick,

2012/3/9 Nick Paynenick.pa...@internode.on.net:


Thanks. I gave it a try. The one shortcoming I've found is that the ends of
LV ties on a chord containing a second no longer align.

That's because factor is used in a multiplication. An easy fix would
be to change that to an addition. But now a new problem arises: If you
use customised staff-sizes the length isn't scaled accurate. For
smaller staffs the LaissezVibrerTie should be still smaller and for
greater staffs still greater.
Currently I don't know how to make it better.

You can get the system grob (ly:grob-system) from the tie, and then base
your additional size on some dimension calculated from that in some
manner.

--
David Kastrup

Hi David,

thanks for the hint, it let me rethink the definition.
Now I've done it a little different and currently I see no drawback.

Well, one could argue about the values, but that's another question ...

\version 2.14.2

#(define adding 1.5)

#(define (enlarged-extent-laissez-vibrer::print grob)
   (let* ((ssymb (ly:grob-object grob 'staff-symbol))
  (staff-space (ly:grob-property ssymb 'staff-space))
  (adding-factor (if (null? staff-space)
  1
  (expt staff-space 2)))
  (stil (laissez-vibrer::print grob))
  (stil-ext (ly:stencil-extent stil X))
  (stil-length (interval-length stil-ext))
  (new-stil-length (+ stil-length (* adding-factor adding)))
  (scale-factor (/ new-stil-length stil-length))
  (new-stil (ly:stencil-scale stil scale-factor 1))
  (new-stil-ext (ly:stencil-extent new-stil X))
  (x-corr (- (car stil-ext) (car new-stil-ext
   (ly:stencil-translate-axis
  new-stil
  x-corr
  X)))

#(assoc-set! (assoc-ref all-grob-descriptions 'LaissezVibrerTie)
'stencil enlarged-extent-laissez-vibrer::print)

music = \relative c' {
 c e g c\laissezVibrer s s s
 d c f,\laissezVibrer s s s
}
\new StaffGroup

\new Staff \with { fontSize = #-3
   \override StaffSymbol #'staff-space = #(magstep -3)
   \override StaffSymbol #'thickness = #(magstep -3) }
 \music

  \new Staff
  \music

\new Staff \with { fontSize = #3
\override StaffSymbol #'staff-space = #(magstep 3)
\override StaffSymbol #'thickness = #(magstep 3) }
  \music


Thanks. I was playing around with your code, trying to figure out how to 
stop the tie getting flattened out, but couldn't manage it. If your code 
is used for an LV tie that is part of a succession of slurs/ties, then 
the LV tie looks out of place because it is flatter than the others:


\relative c' {
d8( e) ~ e4 ~ e2\laissezVibrer
}
I also played around with trying to make a callback function for 
\override LaissezVibrerTie #'control-points, but although Lilypond gives 
no error on the console, the LV tie doesn't appear at all when I try to 
use the callback.


\version 2.15.33

#(define ((alter-lv-tie-curve offsets) grob)
(let ((coords (ly:semi-tie::calc-control-points grob))
(n 0))
(define loop (lambda (n)
(set-car! (list-ref coords n)
(+ (list-ref offsets (* 2 n))
(car (list-ref coords n
(set-cdr! (list-ref coords n)
(+ (list-ref offsets (1+ (* 2 n)))
(cdr (list-ref coords n
(if ( n 3)
(loop (1+ n)
(loop n)
coords))

shapeLVTie = #(define-music-function (parser location offsets) (list?)
#{
\once \override LaissezVibrerTie #'control-points = 
#(alter-lv-tie-curve offsets)

#})

\relative c' {
d8( e) ~ e4 ~ \shapeLVTie #'(0 0 0.75 -0.7 2.25 -0.7 3 0) 
e2\laissezVibrer

}

\relative c' {
\override LaissezVibrerTie #'control-points = #(lambda (grob)
(if (= UP (ly:grob-property grob 'direction))
(alter-lv-tie-curve '(0 0 0.75 0.7 2.25 0.7 3 0))
(alter-lv-tie-curve '(0 0 0.75 -0.7 2.25 -0.7 3 0
d8( e) ~ e4 ~ e2\laissezVibrer
}

Nick

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


Re: Aleatoric / modern notation

2012-03-13 Thread m...@apollinemike.com
On Mar 13, 2012, at 4:25 AM, David Nalesnik wrote:

 I've defined a grob, Frame, and given it several properties.  One of these, 
 'padding, adds space between the frame and its contents, as you would expect. 
  The length of the continuation line is controlled by the property 
 'extender-length.  Then, there's 'extra-left-padding and 
 'extra-right-padding.  These last are there to correct a shortcoming: I can't 
 think of an artful way to accomodate an accidental before the first note of a 
 group so there isn't a collision.
 
 Another problem is that the horizontal spacing doesn't adapt to the frame.  I 
 suppose this comes from the fact that I've hijacked a TextSpanner, so that 
 collisions are reckoned with outside staff objects.  Is there anything I can 
 do about this?
 

Excellent work!

I've attached a new file that addresses some of the issues you identify above:

--) It uses axis-group::width to box accidentals
--) It creates a FrameStub grob to occupy the horizontal space that a frame 
line takes up (note that I don't know if this actually works - I'm not sure how 
to test it - but at least it doesn't crash!).  Whenever you have a spanner that 
somehow occupies horizontal space at its bounds, you can create stub grobs that 
approximate this space.  This technique also works for items that, for whatever 
reason, have heights that are difficult to approximate (see SpanBarStub and 
StemStub, for example).
--) It gets rid of some dead or unused code.

Cheers,
MS


frameEngraver2.ly
Description: Binary data
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Phil Holmes
- Original Message - 
From: Kieren MacMillan kieren_macmil...@sympatico.ca

To: Vaughan McAlley vaug...@mcalley.net.au
Cc: lilypond-user lilypond-user@gnu.org
Sent: Tuesday, March 13, 2012 4:09 AM
Subject: Re: Sibelius user looking for the easiest way to learn LilyPond


Hi Vaughan,


Finale does automatic word extensions for lyrics.


Um… so does Lilypond.

Cheers,
Kieren.
__


Strictly, I don't believe it does automatic extenders - you need to add 
underscores to get them.


Anyway, I'm a reluctant Sibelius user (need to use it for college) and I 
find its inability to edit music a complete PITA.  For example, I'd created 
a chord with 3 notes and then moved onto other notes.  I then wanted to add 
a further note to the chord.  Whenever I tried, it deleted the chord and 
replaced it with a note.  The tutor and all the class could offer no better 
answer than to delete the chord and recreate it.  There may be a way, but 
no-one knew it.  Oh - and I'd entered some music which ran to 2 lines.  I 
wanted it on one.  I reduced the font size.  No effect.  I tried for at 
least 30 minutes before giving up.  The way you edit in Sibelius is just so 
c**p.  I don't edit directly into LilyPond (I use Noteworthy and convert) 
but anyone swapping to LilyPond must save time over Sibelius's arcane ways.


--
Phil Holmes



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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Stjepan Horvat
Did you try to press number 3 in sibelius..i think it would create a
third interval..and so on..i'm not sure..

On Tue, Mar 13, 2012 at 8:57 AM, Phil Holmes m...@philholmes.net wrote:
 - Original Message - From: Kieren MacMillan
 kieren_macmil...@sympatico.ca
 To: Vaughan McAlley vaug...@mcalley.net.au
 Cc: lilypond-user lilypond-user@gnu.org
 Sent: Tuesday, March 13, 2012 4:09 AM
 Subject: Re: Sibelius user looking for the easiest way to learn LilyPond



 Hi Vaughan,

 Finale does automatic word extensions for lyrics.


 Um... so does Lilypond.

 Cheers,
 Kieren.
 __


 Strictly, I don't believe it does automatic extenders - you need to add
 underscores to get them.

 Anyway, I'm a reluctant Sibelius user (need to use it for college) and I
 find its inability to edit music a complete PITA.  For example, I'd created
 a chord with 3 notes and then moved onto other notes.  I then wanted to add
 a further note to the chord.  Whenever I tried, it deleted the chord and
 replaced it with a note.  The tutor and all the class could offer no better
 answer than to delete the chord and recreate it.  There may be a way, but
 no-one knew it.  Oh - and I'd entered some music which ran to 2 lines.  I
 wanted it on one.  I reduced the font size.  No effect.  I tried for at
 least 30 minutes before giving up.  The way you edit in Sibelius is just so
 c**p.  I don't edit directly into LilyPond (I use Noteworthy and convert)
 but anyone swapping to LilyPond must save time over Sibelius's arcane ways.

 --
 Phil Holmes




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



-- 
Nesmotren govori kao da mačem probada, a jezik je mudrih iscjeljenje.
Izreke 12:18

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


Re: Aleatoric / modern notation

2012-03-13 Thread David Nalesnik
Hi Mike,

Excellent work!


I'm glad you think so!



 I've attached a new file that addresses some of the issues you identify
 above:

 --) It uses axis-group::width to box accidentals


Beautiful!  Now there's really no need for the extra padding properties.
 (I've kept them in the attached file, but combined them into a single
property which takes a pair = 'extra-padding.)


 --) It creates a FrameStub grob to occupy the horizontal space that a
 frame line takes up (note that I don't know if this actually works - I'm
 not sure how to test it - but at least it doesn't crash!).  Whenever you
 have a spanner that somehow occupies horizontal space at its bounds, you
 can create stub grobs that approximate this space.  This technique also
 works for items that, for whatever reason, have heights that are difficult
 to approximate (see SpanBarStub and StemStub, for example).


This works great for spacing on the left side.  It wasn't working on the
right, so I added 'extender-length in (plus a slight correction accounting
for arrow-length, etc., which should be fairly easy to calculate). Now it
will push everything forward nicely.

One thing I've noticed, though, is that the line will not cross a bar line.
 If I increase the length of the extender, the bar line is simply pushed to
the right.  I figured out one way around this--namely, setting the X-extent
of the bar line to (+inf.0 . -inf.0), which is what I do in the attached
file. Of course this has other consequences.  Is there any other way?

--) It gets rid of some dead or unused code.


Thank you very much for your improvements and explanations--I think I've
learned quite a bit!

Best,
David


frameEngraver3.ly
Description: Binary data
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: addl. normal staff (ossia) in drummode or DrumStaff context

2012-03-13 Thread Uwe Falke

Thanks for saving me.
I knew it would be possible :-)

Uwe
--




Quoting Trevor Daniels t.dani...@treda.co.uk:



Uwe, you wrote  Monday, March 12, 2012 2:32 AM

I have just started to use lilypond to set some drum scores. As I  
need to add a

few patches of backing vocals, I'd attempted to add extra (normal) staffs at
those places, however, lilypond seems to refuse doing that.
Example:
\score {
\new DrumStaff 
\drummode {
 bd4 sn bd bd4  
{ bd  bd8 sn sn4 bd }
\new Staff { c8 d8 e8 f8 g4 c4 }  
}   
}

This produces an error like
t.ly:23:27: error: syntax error, unexpected STRING
\new Staff {
 c8 d8 e8 f8 g4 c4 }
t.ly:18:2: error: errors found, ignoring music expression

I suppose that either the \drummode or the \DrumStaff context do  
not allow this.


Yes, drummode doesn't allow it.  You need to switch temporarily
back to notemode, like this:

\score {
 \new DrumStaff 
 \drummode {
  bd4 sn bd bd4  
 { bd  bd8 sn sn4 bd }
 \notemode { \new Staff { c8 d8 e8 f8 g4 c4 } }  
 }   
}

Trevor






smime.p7s
Description: S/MIME Cryptographic Signature
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: addl. normal staff (ossia) in drummode or DrumStaff context

2012-03-13 Thread Uwe Falke

Ah, Trevor, the simple example worked well with your advice (thanks again),
but I am lost in real life ...:
\score {
\new DrumStaff 
%% done some redefinitions, hope that doesn't affect anything, omitted  
here ...

%  \set DrumStaff.drumStyleTable = #(alist-hash-table mydrums)
  \new DrumVoice = 1 { s1*2 }
  \new DrumVoice = 2 { s1*2 }
  \drummode {
 { \repeat unfold 8 cymr8 } \\ { bd4 sn4 bd4 sn4 } 
%Reggae

   { r1 } \\ { bd4 bd bd bd } 
  \notemode { \new staff { r4 a4 fis2 } }

 { r1 } \\ { bd4 bd bd bd8 sn8 } 
   }



}

gives error messages like
t2.ly:380:21: warning: ignoring too many clashing note columns
   { r1 } \\ {
 bd4 bd bd bd } 
t2.ly:380:25: warning: ignoring too many clashing note columns
   { r1 } \\ { bd4
 bd bd bd } 
t2.ly:380:28: warning: ignoring too many clashing note columns
   { r1 } \\ { bd4 bd
bd bd } 


No new score appears ...
I seem to miss something important here ...
The code with the \notemode line uncommented compiles well ...

Uwe

--




Quoting Trevor Daniels t.dani...@treda.co.uk:



Uwe, you wrote  Monday, March 12, 2012 2:32 AM

I have just started to use lilypond to set some drum scores. As I  
need to add a

few patches of backing vocals, I'd attempted to add extra (normal) staffs at
those places, however, lilypond seems to refuse doing that.
Example:
\score {
\new DrumStaff 
\drummode {
 bd4 sn bd bd4  
{ bd  bd8 sn sn4 bd }
\new Staff { c8 d8 e8 f8 g4 c4 }  
}   
}

This produces an error like
t.ly:23:27: error: syntax error, unexpected STRING
\new Staff {
 c8 d8 e8 f8 g4 c4 }
t.ly:18:2: error: errors found, ignoring music expression

I suppose that either the \drummode or the \DrumStaff context do  
not allow this.


Yes, drummode doesn't allow it.  You need to switch temporarily
back to notemode, like this:

\score {
 \new DrumStaff 
 \drummode {
  bd4 sn bd bd4  
 { bd  bd8 sn sn4 bd }
 \notemode { \new Staff { c8 d8 e8 f8 g4 c4 } }  
 }   
}

Trevor






smime.p7s
Description: S/MIME Cryptographic Signature
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: articulate.ly with rall not working?

2012-03-13 Thread Peter Chubb
 Thomas == Thomas Morley thomasmorle...@googlemail.com writes:

Thomas \version 2.14.2 \include articulate.ly

Thomas \score { \unfoldRepeats \articulate  \relative c' { c8-. d-.
Thomas e-.  f-.  g-.-rall f-.  e-.  d-.  c-.  d-.  e-.  f-.  g-.
Thomas f-.  e-.  d-.  c1-.  }
 
Thomas   \midi { } }

The rallentendo actually does happen, but at the tempo you're going, it's not
paticularly deep.

If I add a \displayLilyMusic before the \unfoldRepeats I see:

 {
 { c'8*1/2 r } { d' r } { e' r } { f' r } { \set tempoWholesPerMinute = 
#(ly:make-moment 9 1 0 1)


   { g'-rall  r } } { f' r } { e' r } { d' r } { c' r } { d' r } { e' r } 
{ f' r } { g' r } { f' r } { e' r } { d' r } { c'1*1/2 r } 
   } 


Note the setting of tempoWholesPerMinute.  This corresponds to a 40% slowdown.
The default is MM crotchet=60, this should slow down to about MM
crotchet=36.  However, note this is the *only* tempo adjustment ---
you need to start with a tempo.

I suggest
\version 2.14.2
\include articulate.ly

\score {
\displayLilyMusic\unfoldRepeats \articulate

 \relative c' {
 \set tempoWholesPerMinute = #(ly:make-moment 4 80)
 c8-. d-.  e-.  f-.
g-.-rall f-.  e-.  d-.
 c-.  d-.  e-.  f-.
 g-.  f-.  e-.  d-.
 c1-.
}
  
  \midi { }
}

--
Dr Peter Chubb  peter.chubb AT nicta.com.au
http://www.ssrg.nicta.com.au  Software Systems Research Group/NICTA

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


Fwd: Re: addl. normal staff (ossia) in drummode or DrumStaff context

2012-03-13 Thread Uwe Falke
Dear all, I had not subscribed to the lsit until just a few minutes  
ago, hence my reply below was received by trevor but not by the list.

Should work now ..
Uwe

- Forwarded message from fa...@horst.in-chemnitz.de -
Date: Mon, 12 Mar 2012 18:05:11 +0100
From: Uwe Falke fa...@horst.in-chemnitz.de
 Subject: Re: addl. normal staff (ossia) in drummode or DrumStaff  context
  To: Trevor Daniels t.dani...@treda.co.uk
  Cc: lilypond-user@gnu.org

Ah, Trevor, the simple example worked well with your advice (thanks again),
but I am lost in real life ...:
\score {
\new DrumStaff 
%% done some redefinitions, hope that doesn't affect anything, omitted  
 here ...

%  \set DrumStaff.drumStyleTable = #(alist-hash-table mydrums)
  \new DrumVoice = 1 { s1*2 }
  \new DrumVoice = 2 { s1*2 }
  \drummode {
 { \repeat unfold 8 cymr8 } \\ { bd4 sn4 bd4 sn4 } 
%Reggae

   { r1 } \\ { bd4 bd bd bd } 
  \notemode { \new staff { r4 a4 fis2 } }

 { r1 } \\ { bd4 bd bd bd8 sn8 } 
   }



}

gives error messages like
t2.ly:380:21: warning: ignoring too many clashing note columns
   { r1 } \\ {
 bd4 bd bd bd } 
t2.ly:380:25: warning: ignoring too many clashing note columns
   { r1 } \\ { bd4
 bd bd bd } 
t2.ly:380:28: warning: ignoring too many clashing note columns
   { r1 } \\ { bd4 bd
bd bd } 


No new score appears ...
I seem to miss something important here ...
The code with the \notemode line uncommented compiles well ...

Uwe

--




Quoting Trevor Daniels t.dani...@treda.co.uk:



Uwe, you wrote  Monday, March 12, 2012 2:32 AM

I have just started to use lilypond to set some drum scores. As I   
need to add a

few patches of backing vocals, I'd attempted to add extra (normal) staffs at
those places, however, lilypond seems to refuse doing that.
Example:
\score {
\new DrumStaff 
   \drummode {
bd4 sn bd bd4  
   { bd  bd8 sn sn4 bd }
   \new Staff { c8 d8 e8 f8 g4 c4 }  
   }   
}

This produces an error like
t.ly:23:27: error: syntax error, unexpected STRING
   \new Staff {
c8 d8 e8 f8 g4 c4 }
t.ly:18:2: error: errors found, ignoring music expression

I suppose that either the \drummode or the \DrumStaff context do   
not allow this.


Yes, drummode doesn't allow it.  You need to switch temporarily
back to notemode, like this:

\score {
\new DrumStaff 
\drummode {
 bd4 sn bd bd4  
{ bd  bd8 sn sn4 bd }
\notemode { \new Staff { c8 d8 e8 f8 g4 c4 } }  
}   
}

Trevor






- End forwarded message -

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


localized horizontal spacing

2012-03-13 Thread eriksbike

Is there a way to expand and contract the horizontal spacing on a
measure-to-measure basis? For a simple example, three measures of quarter
notes:
a4 a4 a4 a4
a4 a4 a4 a4
a4 a4 a4 a4

Can I get the second measure to be widely spaced and then the third measure
back to more closely spaced?

Many thanks,
Erik
-- 
View this message in context: 
http://old.nabble.com/localized-horizontal-spacing-tp33492027p33492027.html
Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com.


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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread David Kastrup
Stjepan Horvat zvanste...@gmail.com writes:

 Did you try to press number 3 in sibelius..i think it would create a
 third interval..and so on..i'm not sure..

Now this is actually a great example about what makes LilyPond so much
better to work in the long run with than Sibelius or other GUI/WYSIWYG
programs.

It supports culture, the transfer of knowledge.  If you get a score from
a great LilyPond master, you don't have to ask how do you do that?.
It's all in there.  Of course, the question why did you do that? is
not answered, but as long as you have the same task to solve, you can
use the same solution.  You can type it off, or copypaste and it works.
And if the master cared about the question why did you do that?, he
can add _comments_ to the source.

No did you try to press numner 3..i think it would create a third
interval.  If you want to do small changes, you do them.  No magically
disappearing chords refusing to accept additional notes.

There is a community of people exchanging and creating _knowledge_
instead of fellow sufferers.

-- 
David Kastrup


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


Re: addl. normal staff (ossia) in drummode or DrumStaff context

2012-03-13 Thread Uwe Falke
Hm, this works in my simple example. Thank you. However, it does not  
so for what I really want to do - sorry for having oversimplified.
I just sent another example which is a snippet of the real score,  
employing two  \DrumVoice contexts, and that might be the turning  
point: I read :

 This context is a ‘bottom’ context; it cannot contain other contexts. 

Does this break my neck?

Uwe
--




Quoting Eluze elu...@gmail.com:




Am 12.03.2012 03:32, schrieb Uwe:

Dear lilypond people,

I have just started to use lilypond to set some drum scores. As I  
need to add a

few patches of backing vocals, I'd attempted to add extra (normal) staffs at
those places, however, lilypond seems to refuse doing that.
Example:
\score {
  \new DrumStaff
  \drummode {
   bd4 sn bd bd4
  { bd  bd8 sn sn4 bd }
  \new Staff { c8 d8 e8 f8 g4 c4 }
  }
}

This produces an error like
t.ly:23:27: error: syntax error, unexpected STRING
  \new Staff {
   c8 d8 e8 f8 g4 c4 }
t.ly:18:2: error: errors found, ignoring music expression

I suppose that either the \drummode or the \DrumStaff context do  
not allow this.

Is there a way to switch these contexts off locally?
Or is there anything else I could do to get this done ?

All good ideas or helping advices are welcome.

hi Uwe

no idea if an ossia with /normal notes/ is possible within a drum part.

maybe this is a workaround (which probably can or must be refined):

\score {

  \new DrumStaff \drummode {
  bd4 sn bd bd4
  bd  bd8 sn sn4 bd
}
\new Staff \with {
  \remove Clef_engraver
  \remove Time_signature_engraver
}
\relative {
  \stopStaff s4*4
  \startStaff
  c8 d8 e8 f8 g4 c4
}



}


hth
Eluze






smime.p7s
Description: S/MIME Cryptographic Signature
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Stem direction/merging in mixed identical/different rhythm

2012-03-13 Thread Felipe Pereira
Hello,

I'd like to write this song with Lilypond:
http://www.taize.fr/spip.php?page=chantsong=203lang=en
(in fact I'm writing with portuguese lyrics)

Just so you don't need to click the site, here's the problem. Many of these
songs have identical rhythm, except for some parts. When the rhythm is the
same, I want to have same stem direction (may be neutral), because all
originals are like this and seems to be easier to read than with four
separated voices with opposite stems. When the rhythm is not the same, I
want to fallback to 1-2-3-4 voices being S=stemUp, A=down, T=up, B=down.

Also, I'd like to have separate and unique variables for voices (sopMus,
altoMus, etc), because I may want to output MIDI with higher volume on one
of the voices (e.g. for soprano learning). But I'm kind of giving up on
this...

Up until now I tried to keep SA and TB in two voices only and separate them
when needed.
- soprano: normal, no \stemXX command, no new voice, just plain notes.
- alto: create a new Voice like this:
altoMus = \relative c' {
...
% quia1
e8 e4 e8 cis cis | \new Voice { \stemDown cis8 [ b8 ] } cis2 |
...
}

Later this is arranged in one voice only with:
\new Voice = women {
  \global \sopranoMus \altoMus 
}


This is ok, worked, BUT creating new voices inside variables didn't seem to
be a good way to do it. Also I had already come accross a score that I
needed to create a voice for soprano too (I needed to force stemUp), and
then my lyrics were broken. I also tried to insert \voiceOne/Two and
\stemUp/Down before the different parts, but it didn't work.


Another related problem: I want note collisions of opposite stems to be
merged, but only when they have the same duration -- I'm having problem
here, notes are being merged even with different duration (there's a case
in the linked score, 3rd bar before the end).

I have some other questions but I will post parsimoniously.

thanks in advance,
-- 
Felipe
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: addl. normal staff (ossia) in drummode or DrumStaff context

2012-03-13 Thread Uwe Falke




Quoting Trevor Daniels t.dani...@treda.co.uk:



Uwe Falke wrote Monday, March 12, 2012 5:05 PM



Ah, Trevor, the simple example worked well with your advice (thanks again),
but I am lost in real life ...:


[snip]

You had


 \notemode { \new staff { r4 a4 fis2 } }


Staff needs a capital S

omg
what an ignorant brick i am ...
thanks for your patience, i guess that I'll keep for a while ...

and sorry for the extra pain
ps please don't send digitally signed messages, especially with  
expired IDs. They make replying a pain.



Uwe




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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Francisco Vila
2012/3/13 David Kastrup d...@gnu.org:
 Stjepan Horvat zvanste...@gmail.com writes:

 Did you try to press number 3 in sibelius..i think it would create a
 third interval..and so on..i'm not sure..

 Now this is actually a great example about what makes LilyPond so much
 better to work in the long run with than Sibelius or other GUI/WYSIWYG
 programs.

 It supports culture, the transfer of knowledge.  If you get a score from
 a great LilyPond master, you don't have to ask how do you do that?.
 It's all in there.  Of course, the question why did you do that? is
 not answered, but as long as you have the same task to solve, you can
 use the same solution.  You can type it off, or copypaste and it works.
 And if the master cared about the question why did you do that?, he
 can add _comments_ to the source.

+1 +1 +1
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: Default length of laissezvibrer ties

2012-03-13 Thread David Nalesnik
Hi Nick,

I also played around with trying to make a callback function for \override
 LaissezVibrerTie #'control-points, but although Lilypond gives no error on
 the console, the LV tie doesn't appear at all when I try to use the
 callback.


The following should work.  (I've also substituted in a more current
version of the snippet you incorporated.  Same result, but I think it looks
a little better.)

\version 2.15.30

#(define ((alter-lv-tie-curve offsets) grob)
   (let ((coords (ly:semi-tie::calc-control-points grob)))

 (define (add-offsets coords offsets)
   (if (null? coords)
   '()
   (cons
 (cons (+ (caar coords) (car offsets))
   (+ (cdar coords) (cadr offsets)))
 (add-offsets (cdr coords) (cddr offsets)

 (add-offsets coords offsets)))

shapeLVTie = #(define-music-function (parser location offsets) (list?)
#{
   \once \override LaissezVibrerTie #'control-points = #(alter-lv-tie-curve
offsets)
#})

\relative c' {
   d8( e) ~ e4 ~ \shapeLVTie #'(0 0 0.75 -0.7 2.25 -0.7 3 0)
e2\laissezVibrer
}

\relative c' {
   \override LaissezVibrerTie #'control-points = #(lambda (grob)
   (if (= UP (ly:grob-property grob 'direction))
   ((alter-lv-tie-curve '(0 0 0.75 0.7 2.25 0.7 3 0)) grob)
   ((alter-lv-tie-curve '(0 0 0.75 -0.7 2.25 -0.7 3 0)) grob)))
   d8( e) ~ e4 ~ e2\laissezVibrer
}

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread David Bobroff

On 3/13/2012 10:01 AM, David Kastrup wrote:

Stjepan Horvatzvanste...@gmail.com  writes:


Did you try to press number 3 in sibelius..i think it would create a
third interval..and so on..i'm not sure..

Now this is actually a great example about what makes LilyPond so much
better to work in the long run with than Sibelius or other GUI/WYSIWYG
programs.

It supports culture, the transfer of knowledge.  If you get a score from
a great LilyPond master, you don't have to ask how do you do that?.
It's all in there.


Yes, it's all in there!  A significant part of my experience with 
becoming better at coding LilyPond input files has been a series of 
small epiphanies.  I was converting some Finale ETF files (there used to 
be an etf2ly converter) and I was puzzled by the LilyPond code that was 
produced.  Upon closer examination I learned something valuable about 
the power and flexibility of LilyPond.  I think it was then that I 
really never went back to commercial music printing software.



   Of course, the question why did you do that? is
not answered, but as long as you have the same task to solve, you can
use the same solution.  You can type it off, or copypaste and it works.
And if the master cared about the question why did you do that?, he
can add _comments_ to the source.


Sometimes the why is actually evident in the how/what.

-David



No did you try to press numner 3..i think it would create a third
interval.  If you want to do small changes, you do them.  No magically
disappearing chords refusing to accept additional notes.

There is a community of people exchanging and creating _knowledge_
instead of fellow sufferers.




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


Old style numerals for page numbers

2012-03-13 Thread Benjamin Bloomfield
I tried sending this earlier, but didn't receive it myself, so I am
trying again.

I am trying to figure out how I can get Old Style numerals to be used
for the page numbers.  I found some lilypond scheme code here
(http://www.mrlauer.org/music/) that defines a markup command
oldStyleNum that will replace any digit with the unicode string for
the appropriate old style numeral.  However, I don't know how to make
this work with the page number, because when I try to put
\oldStyleNum\fromproperty #'page:page-number-string the oldStyleNum
command isn't getting the numeric string to process, but something
else, and I don't really know scheme at all, and haven't been able to
figure this out after looking at it for a few hours, and I thought
maybe someone else would know or have some idea of how this might be
done.

What follows is sample code that shows old style numerals in the title
and (unfortunately) regular numerals for the page number.

Thanks,

Benjamin Bloomfield
-
\version 2.14.2
% Michael's utilities
%% UTF-8 utilities
#(define (utf-8-list str)
(define (numBytes leader)
(cond (( leader #x80) 1)
  (( leader #xc0) (begin (stderr programming-error:
bad utf-8:~x\n leader) 1))
  (( leader #xe0) 2)
  (( leader #xf0) 3)
  (( leader #xf8) 4)
  (else (begin (stderr programming-error: utf-8 too
big:~x\n leader) 1
 (define (helper start l n)
 (if (= n 0) start
 (helper (+ (* start #x40) (modulo (car l) #x40)) (cdr
l) (- n 1
 (define (utf-8-int l)
  (let* ((leader (car l))
 (n (- (numBytes leader) 1))
 (fac (/ #x80 (expt 2 n)))
 (rest (cdr l))
 (result (helper (modulo leader fac) rest n)))
result))
 (define (toListHelper lst chars)
 (if (null? lst) (reverse chars)
 (let* ((c (utf-8-int lst))
(n (numBytes (car lst)))
(t (list-tail lst n))
(newC (cons c chars)))
(toListHelper t newC
(toListHelper (map char-integer (string-list str)) '() ))

%These are appropriate for Junicode, and other fonts.  Override as necessary
oldStyleZeroCode = ##xF730
smallCapsACode = ##xF761

%For Linux Libertine
oldStyleZeroCodeLL = ##xE01A
smallCapsACodeLL = ##xE051

#(define (change-char-helper aa test? offset)
(if (string? aa)
(let* ((chars (utf-8-list aa))
   (tosc (map (lambda (c)
   (if (and (= c 127) (test? (integer-char c)))
   (ly:wide-char-utf-8 (+ c offset))
   (if (and (= c 255) (= c 224))
   (ly:wide-char-utf-8 (+ c offset))
   (if (= c #x0153)
   (ly:wide-char-utf-8 #xF6FA)
   (ly:wide-char-utf-8 c) ) ) ) )
   chars))
(newStr (apply string-append tosc)))
 newStr)
 aa)
)

#(define (to-old-style str) (change-char-helper str char-numeric?
(- oldStyleZeroCode (char-integer #\0

#(define (to-small-caps str) (change-char-helper str char-lower-case?
(- smallCapsACode (char-integer #\a

#(define-markup-command (realCaps layout props str) (markup?)
Real small capitals
(interpret-markup layout props (to-small-caps str)))

#(define-markup-command (oldStyleNum layout props str) (markup?)
Old-style numerals
(interpret-markup layout props (to-old-style str)))

#(define-markup-command (smallCapsOldStyle layout props str) (markup?)
Real small caps and old-style numerals
(interpret-markup layout props (to-old-style (to-small-caps str

%%%
#(define-public (bar-number-print grob)
  Print function for making oldStyle numbers.  Useful for BarNumber,
for example
  (let*
  ((text (ly:grob-property grob 'text))
   (layout (ly:grob-layout grob))
   (defs (ly:output-def-lookup layout 'text-font-defaults))
   (props (ly:grob-alist-chain grob defs)))

(ly:text-interface::interpret-markup layout
 props
 (if (string? text)
 (markup #:oldStyleNum text)
 text
\header {
  title = \markup{\oldStyleNum1234567890 1234567890}
}
\paper {
  two-sided = ##t
  print-first-page-number = ##t
  oddHeaderMarkup = \markup\fill-line{
 \combine
\fill-line{ \on-the-fly #print-page-number-check-first
\oldStyleNum\fromproperty #'page:page-number-string
}

  }
  evenHeaderMarkup = \markup {
 \combine

Re: localized horizontal spacing

2012-03-13 Thread Francisco Vila
2012/3/13 eriksbike eriksb...@yahoo.com:

 Is there a way to expand and contract the horizontal spacing on a
 measure-to-measure basis? For a simple example, three measures of quarter
 notes:
 a4 a4 a4 a4
 a4 a4 a4 a4
 a4 a4 a4 a4

 Can I get the second measure to be widely spaced and then the third measure
 back to more closely spaced?

Maybe something like

{
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 16)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
}
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Rodolfo Zitellini
On Mon, Mar 12, 2012 at 2:52 PM, John Link johnl...@nyc.rr.com wrote:

 On Mar 12, 2012, at 9:42 AM, David Bobroff wrote:

 On 3/11/2012 6:39 PM, John Link wrote:

 A few years ago I was encouraged to try LilyPond as an alternative to
 Sibelius because LilyPond produced more beautiful scores. I was also told
 that it would allow me to do things like specify that bars 25 through 32 are
 to be identical to bars 9 through 16 and avoid cutting and pasting from bars
 9-16 into 25-32. I liked what I heard, but I was quite shocked by LilyPond's
 interface. I would be interested in hearing from any Sibelius users who have
 successfully learned LilyPond. How can I get going in LilyPond as quickly as
 possible?

 In case it's relevant, I should add that I used to program in FORTRAN and a
 little bit of UNIX but never in any other languages.

 Thanks in advance,
 John Link


 Hi John,

 I can't really speak to LilyPond vs Sibelius use.  On the other hand, I used
 to be a Finale user and I have had *very* limited contact with Sibelius.
 Having said that, while I'm aware of differences between Sibelius and Finale
 they share a major feature; namely, an interactive graphical user interface
 which displays your music while you work.  LilyPond, as you have likely
 discerned, does not work that way at all.  I have found that, for me at
 least, the learning curve for LilyPond is not terribly steep, but it's
 long-ish.  I know just about nothing about FORTRAN aside from the fact that
 it's an old programming language, but I would imagine that having
 programming experience would be helpful.

 I think the main hurdle is getting used to focusing on the informational
 content as you input your scores and worry about output later if you need to
 tweak it.  The idea is that LilyPond should do the actual 'engraving' for
 you without much intervention on your part.

 Hope this was useful,

 -David


 Thank you, David. What you wrote is very helpful. Here are a few more
 questions:

 1) What is the easiest way to extract parts from a score?

 2) Are there any features in Finale (or Sibelius or any other scorewriter
 with a GUI) that you wish you had in LilyPond?

 Thanks,
 John


I do professional engraving in both finale and lilypond, and I have
been using almost exclusively lily for my projects (i.e. when the
client does not require finale) in the last four years.
As others said, go through the learning manual and take some time.
When I first switched I had a couple things that took me some time to
adapt, missing graphical interface frontmost. If you are used to
finale/sibelius, this is indeed shocking as the first times you use
lilypond it is very difficult to correlate your textual input to what
will end up in the pdf. It took me some deal of time to stop finding
the layout as magical. Now when I enter the music I generally
already have an idea of what I will find on the layout. The other
thing was structuring the input file, \score, \new Staff etc., which
you will need to spend some time studying, but is no rocket science,
in the end it is quite easy. And after you figure this out you will
have access to the very powerful movement layout features you have in
lilypond (i.e. you can structure easily very complex multi-movement
pieces, I wish finale could do this too).

As for learning, I suggest, after you go through the learning manual,
to just start and engrave some simple music, let's say a polyphonic
piece with no single-staff polyphony and text, just to see the
relation from the input to the output. When you get a good gasp of
what is happening, you can add more stuff, like lyrics, then a piano
piece with polyphony and chords. By when you can typeset a mildly
complex piano piece at ease, I think you already have figured out all
the basics. From then on you just need to learn to use the reference
manuals and snippets to figure out more complex things. It will take
some time, but you will never look back :)

BTW I do not use a 100% pure lilypond workflow, as I generally enter
all my music in finale (using speedy) and the export to musicxml and
then to lilypond. I do this particularly with vocal scores, as I'm
lazy and I prefer to enter the text in finale :)
As for typesetting speed, using finale's speedy entry and entering the
notes directly in lilypond format take, for me, the same time.

And to reply to your last questions, no I do not miss anything from
finale in lilypond, while it is true the other way round: now that I
am proficent in lily I miss many of it's features in finale! Multi
movement pieces and figured bass as an example (even if I think
sibelius supports those)

Just my 2c :)
Ciao!

Rodolfo

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


Old style numerals for page numbers

2012-03-13 Thread Benjamin Bloomfield
I am trying to figure out how I can get Old Style numerals to be used for the 
page numbers.  I found some scheme code here (http://www.mrlauer.org/music/) 
that defines a markup command oldStyleNum that will replace any digit with the 
unicode string for the appropriate old style numeral.  However, I don't know 
how 
to make this work with the page number, because when I try to put 
\oldStyleNum\fromproperty #'page:page-number-string the oldStyleNum command 
isn't getting the numeric string to process, but something else, and I don't 
really know scheme at all, and haven't been able to figure this out after 
looking at it for a few hours, and I thought someone else might know.

What follows is sample code that shows old style numerals in the title and 
(unfortunately) regular numerals for the page number.

Thanks,

Ben
-
\version 2.14.2
% Michael's utilities
%% UTF-8 utilities
#(define (utf-8-list str)
(define (numBytes leader)
(cond (( leader #x80) 1)
  (( leader #xc0) (begin (stderr programming-error: bad utf-
8:~x\n leader) 1))
  (( leader #xe0) 2)
  (( leader #xf0) 3)
  (( leader #xf8) 4)
  (else (begin (stderr programming-error: utf-8 too big:~x\n 
leader) 1
 (define (helper start l n)
 (if (= n 0) start
 (helper (+ (* start #x40) (modulo (car l) #x40)) (cdr l) (- n 
1
 (define (utf-8-int l)
  (let* ((leader (car l))
 (n (- (numBytes leader) 1))
 (fac (/ #x80 (expt 2 n)))
 (rest (cdr l))
 (result (helper (modulo leader fac) rest n)))
result))
 (define (toListHelper lst chars)
 (if (null? lst) (reverse chars)
 (let* ((c (utf-8-int lst))
(n (numBytes (car lst)))
(t (list-tail lst n))
(newC (cons c chars)))
(toListHelper t newC
(toListHelper (map char-integer (string-list str)) '() ))

%These are appropriate for Junicode, and other fonts.  Override as necessary
oldStyleZeroCode = ##xF730
smallCapsACode = ##xF761

%For Linux Libertine
oldStyleZeroCodeLL = ##xE01A
smallCapsACodeLL = ##xE051

#(define (change-char-helper aa test? offset)
(if (string? aa)
(let* ((chars (utf-8-list aa))
   (tosc (map (lambda (c)
   (if (and (= c 127) (test? (integer-char c)))
   (ly:wide-char-utf-8 (+ c offset))
   (if (and (= c 255) (= c 224))
   (ly:wide-char-utf-8 (+ c offset))
   (if (= c #x0153)
   (ly:wide-char-utf-8 #xF6FA)
   (ly:wide-char-utf-8 c) ) ) ) )
   chars))
(newStr (apply string-append tosc)))
 newStr)
 aa)
)

#(define (to-old-style str) (change-char-helper str char-numeric?
(- oldStyleZeroCode (char-integer #\0

#(define (to-small-caps str) (change-char-helper str char-lower-case?
(- smallCapsACode (char-integer #\a

#(define-markup-command (realCaps layout props str) (markup?)
Real small capitals
(interpret-markup layout props (to-small-caps str)))

#(define-markup-command (oldStyleNum layout props str) (markup?)
Old-style numerals
(interpret-markup layout props (to-old-style str)))

#(define-markup-command (smallCapsOldStyle layout props str) (markup?)
Real small caps and old-style numerals
(interpret-markup layout props (to-old-style (to-small-caps str

%%%
#(define-public (bar-number-print grob)
  Print function for making oldStyle numbers.  Useful for BarNumber, for 
example
  (let*
  ((text (ly:grob-property grob 'text))
   (layout (ly:grob-layout grob))
   (defs (ly:output-def-lookup layout 'text-font-defaults))
   (props (ly:grob-alist-chain grob defs)))

(ly:text-interface::interpret-markup layout
 props
 (if (string? text)
 (markup #:oldStyleNum text)
 text
\header {
  title = \markup{\oldStyleNum1234567890 1234567890}
}
\paper {
  two-sided = ##t
  print-first-page-number = ##t
  oddHeaderMarkup = \markup\fill-line{
 \combine 
\fill-line{ \on-the-fly #print-page-number-check-first
\oldStyleNum\fromproperty #'page:page-number-string
}

  }
  evenHeaderMarkup = \markup {
 \combine
\on-the-fly #print-page-number-check-first
\oldStyleNum\fromproperty 

Re: localized horizontal spacing

2012-03-13 Thread -Eluze


eriksbike wrote:
 
 Is there a way to expand and contract the horizontal spacing on a
 measure-to-measure basis? For a simple example, three measures of quarter
 notes:
 a4 a4 a4 a4
 a4 a4 a4 a4
 a4 a4 a4 a4
 
 Can I get the second measure to be widely spaced and then the third
 measure back to more closely spaced?
 

yes, see eg.

\set Timing.proportionalNotationDuration = #(ly:make-moment 1 32)

and

\unset Timing.proportionalNotationDuration

to return

in NR 4.5.5 Proportional notation
http://lilypond.org/doc/v2.14/Documentation/notation/proportional-notation

hth
Eluze
-- 
View this message in context: 
http://old.nabble.com/localized-horizontal-spacing-tp33492027p33495404.html
Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com.


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


Re: localized horizontal spacing

2012-03-13 Thread Francisco Vila
2012/3/13 Francisco Vila paconet@gmail.com:
 {
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 16)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
 }

And the default is #(ly:make-moment 3 16)
BTW

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread James
Hello,

On 13 March 2012 12:02, Rodolfo Zitellini xhero...@gmail.com wrote:

...

  If you are used to
 finale/sibelius, this is indeed shocking as the first times you use
 lilypond it is very difficult to correlate your textual input to what
 will end up in the pdf. It took me some deal of time to stop finding
 the layout as magical.

I've never stopped thinking it's like 'magic' =8 ) - I've been using
LP for the last 2 years.

Oh if you've ever had to transcribe a piece of 'real' music (by real I
mean an old dog-eared printed complete score that's in the 'wrong'
pitch for your instrument) I cannot believe that typing letters on a
keyboard is anything but *significantly* faster than dragging and
dropping graphics on a page, especially if they are peppered with
slurs, dynamics and articulations.

-- 
--

James

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


Re: localized horizontal spacing

2012-03-13 Thread James
Hello,

On 13 March 2012 17:15, Francisco Vila paconet@gmail.com wrote:
 2012/3/13 Francisco Vila paconet@gmail.com:
 {
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 16)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
 }

 And the default is #(ly:make-moment 3 16)
 BTW


What would one use if (for instance) one wanted all notes to touch or
rather be exactly touching the edge of the 'note column' of the
previous note so if I were to write

a32 a a a a a a a a a a a a

(assume no bar lines) all the notes would be touching?


-- 
--

James

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Stjepan Horvat
For me..After moving to Lilypond 3, 4 years ago..When i changed to NO
MOUSE interface..i stoped having headaches couse i didnt have to look
in the music sheet for the wrong notes..and didnt have to think of
kombinations of keys and clicking with mouse..Now when i typeset music
and if i'm not lazy i can write whole piece without looking into
pdf..but locking into pdf is more fun..:) watch how your procces
growes..:) compilig like we are programers..:) (we are)

On Tue, Mar 13, 2012 at 6:19 PM, James pkx1...@gmail.com wrote:
 Hello,

 On 13 March 2012 12:02, Rodolfo Zitellini xhero...@gmail.com wrote:

 ...

  If you are used to
 finale/sibelius, this is indeed shocking as the first times you use
 lilypond it is very difficult to correlate your textual input to what
 will end up in the pdf. It took me some deal of time to stop finding
 the layout as magical.

 I've never stopped thinking it's like 'magic' =8 ) - I've been using
 LP for the last 2 years.

 Oh if you've ever had to transcribe a piece of 'real' music (by real I
 mean an old dog-eared printed complete score that's in the 'wrong'
 pitch for your instrument) I cannot believe that typing letters on a
 keyboard is anything but *significantly* faster than dragging and
 dropping graphics on a page, especially if they are peppered with
 slurs, dynamics and articulations.

 --
 --

 James

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



-- 
Nesmotren govori kao da mačem probada, a jezik je mudrih iscjeljenje.
Izreke 12:18

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


Re: localized horizontal spacing

2012-03-13 Thread Francisco Vila
2012/3/13 James pkx1...@gmail.com:
 Hello,

 On 13 March 2012 17:15, Francisco Vila paconet@gmail.com wrote:
 2012/3/13 Francisco Vila paconet@gmail.com:
 {
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 16)
  b4 b b b
  \newSpacingSection
  \override Score.SpacingSpanner
  #'base-shortest-duration = #(ly:make-moment 1 2)
  b4 b b b
 }

 And the default is #(ly:make-moment 3 16)
 BTW


 What would one use if (for instance) one wanted all notes to touch or
 rather be exactly touching the edge of the 'note column' of the
 previous note so if I were to write

 a32 a a a a a a a a a a a a

 (assume no bar lines) all the notes would be touching?

\override Score.SpacingSpanner #'packed-spacing = ##t

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: Stem direction/merging in mixed identical/different rhythm

2012-03-13 Thread Francisco Vila
2012/3/13 Felipe Pereira felmas...@gmail.com:
 Hello,

 I'd like to write this song with Lilypond:
 http://www.taize.fr/spip.php?page=chantsong=203lang=en
 (in fact I'm writing with portuguese lyrics)

 Just so you don't need to click the site, here's the problem. Many of these
 songs have identical rhythm, except for some parts. When the rhythm is the
 same, I want to have same stem direction (may be neutral), because all
 originals are like this and seems to be easier to read than with four
 separated voices with opposite stems. When the rhythm is not the same, I
 want to fallback to 1-2-3-4 voices being S=stemUp, A=down, T=up, B=down.

% \partcombine usually helps

primera = \relative f { e'4 e e e }
segunda = \relative f { c'4 c8 d c4 e }

{
  \partcombine  \primera \segunda
}

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: localized horizontal spacing

2012-03-13 Thread James
Hello,

On 13 March 2012 17:39, Francisco Vila paconet@gmail.com wrote:
 2012/3/13 James pkx1...@gmail.com:
 Hello,


 What would one use if (for instance) one wanted all notes to touch or
 rather be exactly touching the edge of the 'note column' of the
 previous note so if I were to write

 a32 a a a a a a a a a a a a

 (assume no bar lines) all the notes would be touching?

 \override Score.SpacingSpanner #'packed-spacing = ##t

Gracias


-- 
--

James

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


Re: Old style numerals for page numbers

2012-03-13 Thread James
Hello

On 13 March 2012 15:40, Benjamin Bloomfield bhb...@gmail.com wrote:
 I tried sending this earlier, but didn't receive it myself, so I am
 trying again.

For some reason this email ended up marked as 'spam' for me. So maybe
that was the reason?


-- 
--

James

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Tim Roberts
James wrote:
 Oh if you've ever had to transcribe a piece of 'real' music (by real I
 mean an old dog-eared printed complete score that's in the 'wrong'
 pitch for your instrument) I cannot believe that typing letters on a
 keyboard is anything but *significantly* faster than dragging and
 dropping graphics on a page, especially if they are peppered with
 slurs, dynamics and articulations.

Amen.  There are people who tell me they can do data entry in Finale
quite efficiently using a MIDI keyboard, but for me, from a standard
computer keyboard, entering LilyPond data could not be more efficient.

-- 
Tim Roberts, t...@probo.com
Providenza  Boekelheide, Inc.


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


Re: ANN: Frescobaldi 2.0.4

2012-03-13 Thread Valentin Villenave
On Mon, Mar 12, 2012 at 9:50 AM, Wilbert Berendsen wbs...@xs4all.nl wrote:
 Please let me know the things you miss most! Note that F2 is only
 (roughly) one year old and really written from scratch, the first commit
 is of Nov 11, 2012. I intend to keep developing and adding new
 features. I think the current technical infrastructure and code setup is
 very nice.

I for one was in favor of removing the KDE dependency; but I wasn't
expecting so many features to be missing afterwards! For example,
integrating a web-browser and a terminal was trivial with Kparts, but
now you'd need to recode everything from scratch...

When you first mentioned you were going to go KDE-independent, I
assumed it would be something like SMplayer compared to Kplayer : both
are mplayer front-ends but SMplayer is KDE-independent and is a
**lot** better than Kplayer. I realize now, however, that Frescobaldi
involves much more different components.

Anyhoo, I got upgraded to Frescobaldi 2.0 as part of a normal distro
update, without noticing the major version bump... and when I opened
Frescobaldi again, it was kind of a shock.

- aesthetically speaking, the difference is huge and the interface
looks a lot less pretty (pinkish background in the PDF preview: wtf?).
- the source code window sports less pleasant colors (plain
blue/red/black instead of KDE's pastel tones).
- the search function is now just that: no searchreplace.
- no more tabs on the side and the bottom: making frames
appear/disappear is a lot less intuitive: you have to **close**
frames, not merely **hide** them (I was used to hiding the log window,
but closing it makes less sense to me -- sure, I could just use the
keyboard shortcut but then I'd have to learn it first ;-)
- no more terminal frame (unlike LilyPondTool, where the log window
may be used as a terminal emulator).
- no more integrated file browser (the documents frame isn't half as useful)
- the new Compile but don't save behavior is quite surprising (and
I've found myself loosing more than one score because of it). I'm not
saying it's bad or absurd, it's just unexpected (and should be
optional IMO).
- the intelligent-indenting awesomeness now looks a bit less
intelligent. (Where's my Ctrl-I?)
- the PDF preview offers less features than before (thanks to the kpdf
component I could just select an area with the right-button and copy
it as an image).
- the MIDI player looks gorgeous (but I never use it).
- the Preferences window has more colors and icons, but somehow feels
less complete (a lot of the old one was Kate's preferences, where you
could fine-tune your level of indenting, etc.)

That being said, there still are a lot of nice touches and
afterthoughts that embody the Frescobaldi spirit and show how
generously and intelligently you care about your users' every need or
whim: snippets, special chars, run LilyPond with English messages,
etc. It's so brillantly thought it's disarming.

 Many things are high on the TODO list, and all the needed
 infrastructure is already there:
 - folding in editor

I'd definitely put _that_ one on top of the list. Kate's display of
nested blocks in the colored gutter was _very_ good and convenient.
(And beautiful to look at. :-)

Now, I can't wait to see a Windows and Mac port (that could embed a
ready-to-run LilyPond distribution, by the way)!

Good luck -- you know where to find me if you need any French
translation (although, quite frankly, I've been feeling a bit
discouraged when seeing the subpar work of other contributors to your
fr.po file).

Cheers,
Valentin.

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


Callback function and applying to all notes in chord

2012-03-13 Thread Nick Payne
I was trying to make a callback function to lengthen LV ties (thanks to 
David Nalesnik for his help). It works fine when applied to single 
notes, but on a chord, only one of the two ties is lengthened. Is this 
due to an error in the code below or some more deep-rooted problem. If I 
reverse the order of the notes in the chord, the long and short ties 
swap around:


\version 2.15.33

#(define ((alter-lv-tie-curve offsets) grob)
   (let ((coords (ly:semi-tie::calc-control-points grob)))

 (define (add-offsets coords offsets)
   (if (null? coords)
   '()
   (cons
(cons (+ (caar coords) (car offsets))
  (+ (cdar coords) (cadr offsets)))
(add-offsets (cdr coords) (cddr offsets)

 (add-offsets coords offsets)))

\relative c'' {
   \override LaissezVibrerTie #'control-points = #(lambda (grob)
   (if (= UP (ly:grob-property grob 'direction))
   ((alter-lv-tie-curve '(0 0 0.75 0.7 2.25 0.7 3 0)) grob)
   ((alter-lv-tie-curve '(0 0 0.75 -0.7 2.25 -0.7 3 0)) grob)))
c f,1\laissezVibrer
f, c'\laissezVibrer
}

Nick

attachment: lv.png___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Callback function and applying to all notes in chord

2012-03-13 Thread David Nalesnik
Hi Nick,

I was trying to make a callback function to lengthen LV ties (thanks to
 David Nalesnik for his help). It works fine when applied to single notes,
 but on a chord, only one of the two ties is lengthened. Is this due to an
 error in the code below or some more deep-rooted problem. If I reverse the
 order of the notes in the chord, the long and short ties swap around:


Instead of overriding the property directly, I set 'control-points within
an override of 'before-line-breaking.  Seems to to the trick:

\version 2.15.30

#(define ((alter-lv-tie-curve offsets) grob)
  (let ((coords (ly:semi-tie::calc-control-points grob)))

(define (add-offsets coords offsets)
  (if (null? coords)
  '()
  (cons
(cons (+ (caar coords) (car offsets))
  (+ (cdar coords) (cadr offsets)))
(add-offsets (cdr coords) (cddr offsets)

(add-offsets coords offsets)))

\relative c'' {
  \override LaissezVibrerTie #'before-line-breaking = #(lambda (grob)
 (set! (ly:grob-property grob 'control-points)
   (if (= UP (ly:grob-property grob 'direction))
   ((alter-lv-tie-curve '(0 0 0.75 0.7 2.25 0.7 3 0)) grob)
   ((alter-lv-tie-curve '(0 0 0.75 -0.7 2.25 -0.7 3 0)) grob

  c f,1\laissezVibrer
  f, c'\laissezVibrer
  c f c' f\laissezVibrer
}

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


Re: difficulty filling the whole page

2012-03-13 Thread Jean-Alexis Montignies

On 8 mars 2012, at 07:51, Janek Warchoł wrote:

 On Wed, Mar 7, 2012 at 11:14 PM, Jean-Alexis Montignies
 j...@montignies.info wrote:
 
 On 7 mars 2012, at 22:14, Janek Warchoł wrote:
 
 As for your question, any reason not to set page-count = #1 to force
 Lily to fill one page only?
 
 Yes: I didn't knew it existed :)
 
 Glad i helped.
 How come you missed this in the manuals?  Shall we rewrite some section?
 
 cheers,
 Janek

Sorry for the late reply I'm really over-busy these times.
The documentation is usually well written but I find myself browsing many pages 
before finding something, even if it's something I know it exists and I already 
used.

For instance for sizes. May be a graphic annotated with spacing value names 
(for staves, systems, paper...) would be a good summary.

And for the page count, I didn't thought of looking in other \paper 
variables, may be an entry could be in fitting music on fewer pages.

But those are really very quick thoughts.
Still I think the automatic page breaking in this case seems non optimal on 
this (what I think is a) simple case, but it's only a small annoyance.

Thanks,

Jean-Alexis


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


Re: articulate.ly with rall not working?

2012-03-13 Thread Thomas Morley
2012/3/13 Peter Chubb peter.ch...@nicta.com.au:
 If I add a \displayLilyMusic before the \unfoldRepeats I see:

  {
     { c'8*1/2 r } { d' r } { e' r } { f' r } { \set tempoWholesPerMinute = 
 #(ly:make-moment 9 1 0 1)


       { g'-rall  r } } { f' r } { e' r } { d' r } { c' r } { d' r } { e' r 
 } { f' r } { g' r } { f' r } { e' r } { d' r } { c'1*1/2 r }
   } 


 Note the setting of tempoWholesPerMinute.  This corresponds to a 40% slowdown.
 The default is MM crotchet=60, this should slow down to about MM
 crotchet=36.  However, note this is the *only* tempo adjustment ---
 you need to start with a tempo.

 I suggest
 \version 2.14.2
 \include articulate.ly

 \score {
 \displayLilyMusic        \unfoldRepeats \articulate
        
     \relative c' {
         \set tempoWholesPerMinute = #(ly:make-moment 4 80)
             c8-. d-.  e-.  f-.
            g-.-rall f-.  e-.  d-.
             c-.  d-.  e-.  f-.
             g-.  f-.  e-.  d-.
             c1-.
    }
  
  \midi { }
 }

 --
 Dr Peter Chubb                                  peter.chubb AT nicta.com.au
 http://www.ssrg.nicta.com.au          Software Systems Research Group/NICTA

Hi,

thanks for your reply. But playing around with various tempo-settings
I never heard a rallentando.

This code:

\version 2.14.2
\include articulate.ly

\score {
\displayLilyMusic
\unfoldRepeats \articulate
 
   \relative c' {
   \tempo 4=180
   %\set tempoWholesPerMinute = #(ly:make-moment 4 80)

  c8-. d-.  e-.  f-.
  g-.-rall f-.  e-.  d-.
  c-.  d-.  e-.  f-.
  g-.  f-.  e-.  d-.
  c1-.
   }
 
 \midi {
%\context {
%\Score
%tempoWholesPerMinute = #(ly:make-moment 180 4)
%}
 }
}

displays

 {
 \tempo 4 = 180
 { c'8*1/2 r } { d' r } { e' r } { f' r } { \set
tempoWholesPerMinute = #(ly:make-moment 27 1 0 1)


   { g'-rall  r } } { f' r } { e' r } { d' r } { c' r } { d' r }
{ e' r } { f' r } { g' r } { f' r } { e' r } { d' r } { c'1*1/2 r }
   } 

with no noticeable difference (apart from the staccatti) to a code
without articulate.ly
Midi attached.

Any idea?


Cheers,
   Harm


articulate-test-01.midi
Description: MIDI audio
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: [Frescobaldi] Re: ANN: Frescobaldi 2.0.4

2012-03-13 Thread Francisco Vila
I did not use (or do not remember to) the KDE version and do not
'miss' all those things, but

2012/3/13 Valentin Villenave valen...@villenave.net:
 - aesthetically speaking, the difference is huge and the interface
 looks a lot less pretty (pinkish background in the PDF preview: wtf?).

I think this is a matter of default settings and easily adjustable.

 - the source code window sports less pleasant colors (plain
 blue/red/black instead of KDE's pastel tones).

Same.

 - the search function is now just that: no searchreplace.

Ctrl+H or Edit- Replace

 - no more terminal frame (unlike LilyPondTool, where the log window
 may be used as a terminal emulator).

Well there is a terminal in tools menu.

 - the new Compile but don't save behavior is quite surprising (and
 I've found myself loosing more than one score because of it). I'm not
 saying it's bad or absurd, it's just unexpected (and should be
 optional IMO).

It is, go to LilyPond Preferences and set Save If Possible.

 - the intelligent-indenting awesomeness now looks a bit less
 intelligent. (Where's my Ctrl-I?)

I have configured Ctrl-Alt-I for tools-Indent and everything indents
nicely at a keystroke

 - the PDF preview offers less features than before (thanks to the kpdf
 component I could just select an area with the right-button and copy
 it as an image).

I can do that with current version.

 Now, I can't wait to see a Windows and Mac port (that could embed a
 ready-to-run LilyPond distribution, by the way)!

Are we talking about the same program? There's been a Windows port for
a time now. I gave a talk for my colleagues and installed Fresco+Lily
in minutes for all.

Cheers,
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: Sibelius user looking for the easiest way to learn LilyPond

2012-03-13 Thread Francisco Vila
2012/3/13 Tim Roberts t...@probo.com:
 Amen.  There are people who tell me they can do data entry in Finale
 quite efficiently using a MIDI keyboard, but for me, from a standard
 computer keyboard, entering LilyPond data could not be more efficient.

I used to master Finale's Speedy Entry and liked to sing and type
Happy Birthday To You at the same time, starting together and ending
together.

Now I can do the same (the complete song -- pitches and durations) in
LilyPond. I still have spare time to add dynamics and a fermata.

I mean, note entry is as fast.
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

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


Re: articulate.ly with rall not working?

2012-03-13 Thread Peter Chubb
Looks like there's been a semantic change in Lilypond.

It used to be you could  
   \set tempoWholesPerMinute = 60
or similar anywhere in the Lilypond input and the result would be a
tempo change at that point.  It looks as if now there's a different
event, TempoChangeEvent, that does the work.

I'll have a go at changing articulate to fix this.
--
Dr Peter Chubb  peter.chubb AT nicta.com.au
http://www.ssrg.nicta.com.au  Software Systems Research Group/NICTA

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


Re: localized horizontal spacing

2012-03-13 Thread eriksbike

Many thanks!



Francisco Vila wrote:
 
 2012/3/13 eriksbike eriksb...@yahoo.com:

 Is there a way to expand and contract the horizontal spacing on a
 measure-to-measure basis? For a simple example, three measures of quarter
 notes:
 a4 a4 a4 a4
 a4 a4 a4 a4
 a4 a4 a4 a4

 Can I get the second measure to be widely spaced and then the third
 measure
 back to more closely spaced?
 
 Maybe something like
 
 {
   \override Score.SpacingSpanner
   #'base-shortest-duration = #(ly:make-moment 1 2)
   b4 b b b
   \newSpacingSection
   \override Score.SpacingSpanner
   #'base-shortest-duration = #(ly:make-moment 1 16)
   b4 b b b
   \newSpacingSection
   \override Score.SpacingSpanner
   #'base-shortest-duration = #(ly:make-moment 1 2)
   b4 b b b
 }
 -- 
 Francisco Vila. Badajoz (Spain)
 www.paconet.org , www.csmbadajoz.com
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 
 

-- 
View this message in context: 
http://old.nabble.com/localized-horizontal-spacing-tp33492027p33499457.html
Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com.


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