repeat volta with partial, alternative endings and different \time in different voices

2015-08-10 Thread Jonathan Scholbach
Hello again ;-)

I have a somewhat special piece of music: It has a partial and a volta
with alternative endings. That's no problem. But on top it has different
meters in the alternatives of the different voices. When I do not
combine the voices in a ChoirStaff (or StaffGroup) everything works
fine. But as soon as I put them together in a << >> the volta-bar :|
vanishes. Do you have a solution for that? I am looking for a way to
solve this without setting the volta-bar manually, since I want to
produce adequate midi output, too.

My minimal example:

\version "2.19.22"

global = { \time 3/2  \partial 2 }

first = \relative c' {
  \repeat volta 2 { c2 \time 4/4 c4 c c c }
\alternative {
   { \time 3/2
 \set Timing.measureLength = #(ly:make-moment 1)
 c1
   }
   { \time 3/2
 \set Timing.measureLength = #(ly:make-moment 1)
d1
   }
 }
 \time 4/4 c4 c c c
}

second =  \relative c' {
 \repeat volta 2 { c2 \time 4/4 c4 c c c }
 \alternative {
   { \time 3/2
 \set Timing.measureLength = #(ly:make-moment 1)
 c1
   }
   { \time 5/4
 \set Timing.measureLength = #(ly:make-moment 5/4)
c4 d e f
   }
 }
 g
 \time 4/4 c4 c c c
}

% this works:
\score { \new Staff { \global \first } }
\score { \new Staff { \global \second } }

% that does not work:
\score {
  \new ChoirStaff <<
\new Staff { \new Voice { \global \first } }
\new Staff { \new Voice { \global \second } }
  >>

  \layout {
\context {
  \Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
}
\context {
  \Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
}
  }%end of \layout
}%end of \score


Thank you for your help!

Jonathan

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


Re: repeat volta with partial, alternative endings and different \time in different voices

2015-08-10 Thread Thomas Morley
2015-08-10 10:23 GMT+02:00 Jonathan Scholbach :
> Hello again ;-)
>
> I have a somewhat special piece of music: It has a partial and a volta
> with alternative endings. That's no problem. But on top it has different
> meters in the alternatives of the different voices. When I do not
> combine the voices in a ChoirStaff (or StaffGroup) everything works
> fine. But as soon as I put them together in a << >> the volta-bar :|
> vanishes. Do you have a solution for that? I am looking for a way to
> solve this without setting the volta-bar manually, since I want to
> produce adequate midi output, too.
>
> My minimal example:
>
> \version "2.19.22"
>
> global = { \time 3/2  \partial 2 }
>
> first = \relative c' {
>   \repeat volta 2 { c2 \time 4/4 c4 c c c }
> \alternative {
>{ \time 3/2
>  \set Timing.measureLength = #(ly:make-moment 1)
>  c1
>}
>{ \time 3/2
>  \set Timing.measureLength = #(ly:make-moment 1)
> d1
>}
>  }
>  \time 4/4 c4 c c c
> }
>
> second =  \relative c' {
>  \repeat volta 2 { c2 \time 4/4 c4 c c c }
>  \alternative {
>{ \time 3/2
>  \set Timing.measureLength = #(ly:make-moment 1)
>  c1
>}
>{ \time 5/4
>  \set Timing.measureLength = #(ly:make-moment 5/4)
> c4 d e f
>}
>  }
>  g
>  \time 4/4 c4 c c c
> }
>
> % this works:
> \score { \new Staff { \global \first } }
> \score { \new Staff { \global \second } }
>
> % that does not work:
> \score {
>   \new ChoirStaff <<
> \new Staff { \new Voice { \global \first } }
> \new Staff { \new Voice { \global \second } }
>   >>
>
>   \layout {
> \context {
>   \Score
> \remove "Timing_translator"
> \remove "Default_bar_line_engraver"
> }
> \context {
>   \Staff
> \consists "Timing_translator"
> \consists "Default_bar_line_engraver"
> }
>   }%end of \layout
> }%end of \score
>
>
> Thank you for your help!
>
> Jonathan


You need to take care of "Repeat_acknowledge_engraver" and
"Volta_engraver" as well.

try to replace \score { \new ChoirStaff ... } with:

\score {
  \new ChoirStaff
  <<
\new Staff
  %% include "Volta_engraver" for the topmost Staff only
  \with { \consists "Volta_engraver" }
  { \new Voice { \global \first } }
\new Staff { \new Voice { \global \second } }
  >>

  \layout {
\context {
  \Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
\remove "Repeat_acknowledge_engraver"
\remove "Volta_engraver"
}
\context {
  \Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
\consists "Repeat_acknowledge_engraver"
%% include "Volta_engraver" for all Staffs
%\consists "Volta_engraver"
}
  }%end of \layout
}%end of \score


HTH,
  Harm

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


Lengthening ties

2015-08-10 Thread Andrew Bernard
In the following situation, how can one lengthen the ties between the grace 
notes and the normal music?

\version "2.19.24"

\relative c'' {
  c
  \grace {
    8
  }
  16 ees' aes,8 c4 c |
}

I was hoping they would be longer by default.

Andrew


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


makam.ly

2015-08-10 Thread BB
When using makam.ly the "normal" lilypond notation for accidentials i. 
e. cis gives an error. One has to use cbm for a full sharp with 
makam.ly. I think that is not very pleasant. And the mnemonic


% c half sharp

% fb half flat

% fk full flat

% bm full sharp

is real bad.
One more to make tabs is impossible and midi is also erroneous?

If an elf or witch would give me a wish I would like to stay with the 
usual postfix for the full sharps and full flats and as a simple add on 
to the  "normal" accidentials just two simple extensions, eventually hs 
(=half sharp) and hf (half flat) for the quarter accidentials. This is 
simple and the mnemonic is excellent - at least to my oppinion.


Is there any library or trick available to use accidentials as usual and 
simply add quarter tones?


Just for the moment I help myself with

c-+
and
c--
for c half sharp and c half flat respectively. As one more benefit I can 
use this for tabs as well!
Of course that does not work for midi - may be one might add some 
lilypond extension?



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


Re: sharping naturals

2015-08-10 Thread Thomas Morley
2015-08-10 3:05 GMT+02:00 David Raleigh Arnold :
> On Thu, 23 Jul 2015 11:33:50 -0500
> Brother Gabriel-Marie  wrote:
>
>> When you use key signatures like A major or B Major you end
>> up with a lot of naturals in the score for which you may
>> have to manually add sharps.
>>
>> Is there a switch that will automatically sharp all the
>> naturals?
>> I was looking at this:
>> http://www.lilypond.org/doc/v2.19/Documentation/notation/displaying-pitches#automatic-accidentals
>>
>> This was the closest I could see:
>> \accidentalStyle modern
>>

Hi Rale,

I hesitated to post in this thread for some reasons.

One reason was, I had no clue what it was about. I simply did not
understand the question.

In an earlier post David Kastrup wrote about different thinking about
note-names due to language and culture. It really helped me to
understand that Brother Gabriel-Marie expected
{ key a \major c }
to print what I'd call a cis.
I never ever would have had that expectation, but after David K's post
I can understand the thinking, at least.

Let me quote this part of his post again:

2015-07-24 14:20 GMT+02:00 David Kastrup :
[...]
> LilyPond's notename philosophy happens to be from a culture remote from
> the English speaking world.  In Dutch or German, you never, ever, would
> call a "cis" anything other than "cis".  It's not a "c sharp", namely
> some qualified "c".  That's a totally different note and name.  There is
> no such thing as a "c natural" when talking about notes.  It's either
> "c" or not.  You don't need to specify the key signature when discussing
> a chord: all note names are absolute.  Always.
>
> LilyPond is internationalized in that it offers English notenames, but
> it does not offer the accompanying notename philosophy.  And the
> fuzziness coming with such a philosophy is not helpful in the context of
> a computer description of music, so it's not all that likely that this
> will ever change.
[...]

I'd suggest you read it again und try to understand.

> The developers have resisted this from the beginning, because
> they don't realize how easy it would be.

I really doubt.

> There may be also a
> certain contempt for the user or composer who is not expected to
> know what key he's in.

This is bullshit, sorry.

> There are editing tools which will add the
> chromatic signs for you. I posted one on this list some time ago,
> a bash script using sed. Nicholas Sceaux has written one. It may
> be that the Garibaldi editor will do it, I don't know.
>
> The appropriate notes are sharped or flatted unless there is an
> "n" or any other chromatic sign. That's it. Simple, fault
> tolerant, and not requiring any changes at all to the many
> choices already present in lilypond.
>
> \follow {} has been suggested as the command. I would suggest
> that \follow indicate which notes with the sharp or flat, as
>
> \follow fs cs gs {music}
>
> to avoid language problems as much as possible.
>
> It is possible that a piece may have so many of certain
> accidentals that \follow would be more trouble unless you lied
> about the key. You would probably not use it for a blues in G.
>
> The need is to insert the chromatic signs
> before anything else, such as transposition, is done.
> Kindest regards, Rale


If I understand correctly your proposal is that

\language "english"

m = { ff' f' fs' }

\m
\follow fs \m
\follow ff \m

will be printed different.

In my thinking that's absolute crude.
Though, obviously there are other opinions about that.

Patches are always welcome.


Cheers,
  Harm

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


Re: Lengthening ties

2015-08-10 Thread Thomas Morley
2015-08-10 12:35 GMT+02:00 Andrew Bernard :
> In the following situation, how can one lengthen the ties between the grace
> notes and the normal music?
>
> \version "2.19.24"
>
> \relative c'' {
>   c
>   \grace {
> 8
>   }
>   16 ees' aes,8 c4 c |
> }
>
> I was hoping they would be longer by default.
>
> Andrew



Add
\once \override Tie.minimum-length = 3
or put it in startGraceMusic/stopGraceMusic (commented)

\version "2.19.24"
%
% startGraceMusic =  {
%   \temporary \override Tie.stencil = #ly:tie::print
%   \temporary \override Tie.minimum-length = 3
% }
%
% stopGraceMusic =  {
%   \revert Tie.stencil
%   \revert Tie.minimum-length
% }
%
\relative c'' {
  c
  \grace {
\once \override Tie.minimum-length = 3
8
  }
  16 ees' aes,8 c4 c |
}


HTH,
  Harm

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


Re: Lengthening ties

2015-08-10 Thread Thomas Morley
2015-08-10 13:12 GMT+02:00 Thomas Morley :
> 2015-08-10 12:35 GMT+02:00 Andrew Bernard :
>> In the following situation, how can one lengthen the ties between the grace
>> notes and the normal music?
>>
>> \version "2.19.24"
>>
>> \relative c'' {
>>   c
>>   \grace {
>> 8
>>   }
>>   16 ees' aes,8 c4 c |
>> }
>>
>> I was hoping they would be longer by default.
>>
>> Andrew
>
>
>
> Add
> \once \override Tie.minimum-length = 3
> or put it in startGraceMusic/stopGraceMusic (commented)
>
> \version "2.19.24"
> %
> % startGraceMusic =  {

I should have deleted this line and the according one in stopGraceMusic.
It comes from the other thread at:
http://lists.gnu.org/archive/html/lilypond-user/2015-08/msg00143.html

> %   \temporary \override Tie.stencil = #ly:tie::print
> %   \temporary \override Tie.minimum-length = 3
> % }
> %
> % stopGraceMusic =  {
> %   \revert Tie.stencil
> %   \revert Tie.minimum-length
> % }
> %
> \relative c'' {
>   c
>   \grace {
> \once \override Tie.minimum-length = 3
> 8
>   }
>   16 ees' aes,8 c4 c |
> }
>
>
> HTH,
>   Harm

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


Re: sharping naturals

2015-08-10 Thread David Kastrup
Thomas Morley  writes:

> If I understand correctly your proposal is that
>
> \language "english"
>
> m = { ff' f' fs' }
>
> \m
> \follow fs \m
> \follow ff \m
>
> will be printed different.

Well, it would be more likely

\follow  \m
\follow  \m

here.  That would be _one_ basic idea of implementation.  This one would
mark non-explicit pitches c d e f g a b specially so that \follow can
distinguish them from cn dn en fn gn an bn.  The "unspecificness" would
be kept in the music.  How and when should it get resolved when there is
no \follow involved at all?  What happens if we \transpose music
containing unspecific pitches?

Another implementation would be to keep the music expressions
unambiguous and instead use a different notename language variant,
perhaps invoking it like

\language \key a \major "english"

which will redefine all "unspecific" note names in correspondence with
the key.  Or maybe just

\languagekey a \major

That will basically make the typical document be written in a large
variety of notename languages which makes for a lot of fun when editing
and/or copy/pasting motives around.  In particular, editing
functionality like that of Frescobaldi (which may be asked to transpose
passages for the user) will become unreliable, and the inability of an
external tool to figure out the right pitches without context of course
is matched by a similar potential for confusing users.

> In my thinking that's absolute crude.
> Though, obviously there are other opinions about that.
>
> Patches are always welcome.

But one needs to be warned that they may meet resistance to acceptance,
so there is some sense in figuring out the other developers' opinions
before investing a lot of work, at least if one's ultimate goal is the
inclusion as an integral part of the standard LilyPond distribution.

A somewhat smaller but comparable can of worms is \relative mode.
A frequent topic on the mailing list is "how do I make my music
functions work in \relative mode?" and often answers are not
straightforward.  Many LSR snippets work only either in absolute mode or
in relative mode, and not necessarily reliably so.

So it is pretty much established that the music-based approach comes
with a healthy load of problems, and the input language based approach,
while condensing most of the problems in one place, makes source code
management a headache because each source code passage comes with its
own associated input language.

-- 
David Kastrup

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


Re: sharping naturals

2015-08-10 Thread Thomas Morley
2015-08-10 13:47 GMT+02:00 David Kastrup :
> Thomas Morley  writes:

>> In my thinking that's absolute crude.

Better wording would have been: strange as strange could be...

>> Though, obviously there are other opinions about that.
>>
>> Patches are always welcome.
>
> But one needs to be warned that they may meet resistance to acceptance,
> so there is some sense in figuring out the other developers' opinions
> before investing a lot of work, at least if one's ultimate goal is the
> inclusion as an integral part of the standard LilyPond distribution.
>
> A somewhat smaller but comparable can of worms is \relative mode.
> A frequent topic on the mailing list is "how do I make my music
> functions work in \relative mode?" and often answers are not
> straightforward.  Many LSR snippets work only either in absolute mode or
> in relative mode, and not necessarily reliably so.
>
> So it is pretty much established that the music-based approach comes
> with a healthy load of problems, and the input language based approach,
> while condensing most of the problems in one place, makes source code
> management a headache because each source code passage comes with its
> own associated input language.

Well, I will not work on such a patch. I already had a hard time to
understand the thinking behind the proposal.

Though, at a lower level one could start adding a snippet to the LSR
so that users can play around with it. Rale mentioned some, but
refused to post links...


Cheers,
  Harm

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


Re: sharping naturals

2015-08-10 Thread Peter Bjuhr

When you use key signatures like A major or B Major you end
up with a lot of naturals in the score for which you may
have to manually add sharps.

Is there a switch that will automatically sharp all the
naturals?


David, in a previous thread some time ago on a similar topic I think I 
recall that you mentioned that this may be better seen as an editor task 
than a task for LilyPond.


In Frescobaldi (since v 2.18) there is a tool (Tools->Pitch->Mode shift) 
that adjusts the pitch to a given mode or scale. I just realized that 
this may be able to accomplish the above:


If you enter:

  b c d e f g a

and use the Mode shift tool with the mode b major the result will be:

  b cis dis e fis gis ais

As mentioned before (in this thread), the problems start if you actually 
do not want some of the notes to be sharpened. Then of course you'll 
have to adjust this manually! But with a piece with only a few 
exceptionds to the given key it may be worth while to use this method...


Best
Peter

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


Re: sharping naturals

2015-08-10 Thread David Kastrup
Thomas Morley  writes:

> 2015-08-10 13:47 GMT+02:00 David Kastrup :
>
>> So it is pretty much established that the music-based approach comes
>> with a healthy load of problems, and the input language based
>> approach, while condensing most of the problems in one place, makes
>> source code management a headache because each source code passage
>> comes with its own associated input language.
>
> Well, I will not work on such a patch. I already had a hard time to
> understand the thinking behind the proposal.

It's not all that hard to do.  Just let \key run through the current
notename language and replace all single-character note names with the
setting from the new key (Germans would likely be furious about what
this does to b but then they are hardly the target for such a change).

Once you start arranging your input in variables (\global anyone?), work
with multiple voices and transpositions, things will start to fall
apart.

Even things like \transpose c f become ambiguous since they could mean
\transpose cn fs when uttered in \key gn \major.

> Though, at a lower level one could start adding a snippet to the LSR
> so that users can play around with it. Rale mentioned some, but
> refused to post links...

s/refused/omitted/.  I cannot remember anybody asking for such links
yet, so one can hardly accuse him of "refusing".

-- 
David Kastrup

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


Re: sharping naturals

2015-08-10 Thread Hans Åberg

> On 10 Aug 2015, at 13:05, Thomas Morley  wrote:

> I hesitated to post in this thread for some reasons.
> 
> One reason was, I had no clue what it was about. I simply did not
> understand the question.

I think OP might have been about being used to ABC style syntax, where the key 
changes the values of the note names. For example, if one writes A major, then 
the names will refer to this scale. If one then writes a b c d e f g, the 
expectation would be to produce the A major scale, but in LilyPond there will 
be a lot naturals. Whence the topic.



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


Re: makam.ly

2015-08-10 Thread Hans Åberg

> On 10 Aug 2015, at 12:49, BB  wrote:
> 
> When using makam.ly the "normal" lilypond notation for accidentials i. e. cis 
> gives an error. One has to use cbm for a full sharp with makam.ly.

It is easy to edit - just give it a name not in the LilyPod library, and keep 
it in the  directory of the input sources.

> Is there any library or trick available to use accidentials as usual and 
> simply add quarter tones? 

If you mean E24, LilyPond already supports that. Multiples of 12 are 
straightforward.

The most advanced solution so far is to use SMuFL  
together with OpenLilyLib and Graham Breed’s regular.ly, which gives any ET.



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


Re: makam.ly

2015-08-10 Thread BB



On 10.08.2015 15:04, Hans Åberg wrote:

On 10 Aug 2015, at 12:49, BB  wrote:

When using makam.ly the "normal" lilypond notation for accidentials i. e. cis 
gives an error. One has to use cbm for a full sharp with makam.ly.

It is easy to edit - just give it a name not in the LilyPod library, and keep 
it in the  directory of the input sources.


Thank you very much for that "trick"!


Is there any library or trick available to use accidentials as usual and simply 
add quarter tones?

If you mean E24, LilyPond already supports that. Multiples of 12 are 
straightforward.

The most advanced solution so far is to use SMuFL  
together with OpenLilyLib and Graham Breed’s regular.ly, which gives any ET.




Tanks for this  suggestion as well. The layout looks quite nice!

I am just a hobbyist and have not heard from SMufl heretofore. I found
http://lilypondblog.org/2014/01/smufl-fonts-in-lilypond/
for my first imformation.
I am shure to need some time to study and digest the use of this SMufl 
lilypond extension.


I argue that SMufl will not overcome problems of quarter notes with midi 
and tabs.


Reagards

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


Re: makam.ly

2015-08-10 Thread Hans Åberg

> On 10 Aug 2015, at 15:32, BB  wrote:
> 
> On 10.08.2015 15:04, Hans Åberg wrote:

>> The most advanced solution so far is to use SMuFL  
>> together with OpenLilyLib and Graham Breed’s regular.ly, which gives any ET.
> 
> Tanks for this  suggestion as well. The layout looks quite nice!
> 
> I am just a hobbyist and have not heard from SMufl heretofore. I found
> http://lilypondblog.org/2014/01/smufl-fonts-in-lilypond/
> for my first imformation.
> I am shure to need some time to study and digest the use of this SMufl 
> lilypond extension.

I tried it with the Bravura font on OS X, where it sufficed to install it as a 
system font, and keep the openlilylib files in the same directory.

> I argue that SMufl will not overcome problems of quarter notes with midi and 
> tabs.

This is what Graham Breed’s regular.ly does. For example, E53 is used with the 
description of Turkish music. The file makam.ly will not transpose correctly, 
but this will.

For ET multiples of 12, LilyPond can do it without this file.



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


lilypond-book

2015-08-10 Thread Marek Stepanek

Hello all!


First time question. I am writing a didactic of piano teaching in LaTeX.
So there are many questions coming again, because I am a lilypond-beginner.

http://www.lilypond.org/doc/v2.18/Documentation/usage/an-example-of-a-musicological-document

I wanted to follow the examples of this page. But here on my Mac (10.10)
is no lilypond-book command found. No download in the internet either.
So I linked in my Shell:

% ln -s /Applications/LilyPond.app/Contents/Resources/bin/lilypond-book
/usr/local/bin/lilypond-book

Is this like that it is supposed to work? It is not mentioned nowhere.
Nevertheless the first example is not compiling with following errors:

lilypond-book --output=out --pdf lilybook.lytex \
Traceback (most recent call last):
  File "/usr/local/bin/lilypond-book", line 81, in 
import lilylib as ly
ImportError: No module named lilylib


I am unable to open files with .lytex extension with Lilypond nor with
Frescobaldi.

Please be indulgent - there are many questions again coming soon. But I
hope, that one day I will be able to give back some knowledge to this
group.



marek


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


Re: makam.ly

2015-08-10 Thread BB

Many Thanks!

I am delighted about the unbelievable possibilties of lilypond due to 
the contributions of lilypond users. Obviously one of Graham Breed's 
interest is microtonality. Great, I just  found "Harmonielehre des 
diatonischen, chromatischen, Viertel-, Drittel-, Sechstel- und 
Zwölftel-Tonsystems" by Alois Hába. The extended possibilties of 
lilypond will help me to explore absolutely new musicalfields (new at 
lest for me) ...


As I just mentioned, I am sure to need some time to study and digest all 
the extended informations.

Many thanks again! Great help!

Regards


On 10.08.2015 15:48, Hans Åberg wrote:

On 10 Aug 2015, at 15:32, BB  wrote:

On 10.08.2015 15:04, Hans Åberg wrote:

The most advanced solution so far is to use SMuFL  
together with OpenLilyLib and Graham Breed’s regular.ly, which gives any ET.

Tanks for this  suggestion as well. The layout looks quite nice!

I am just a hobbyist and have not heard from SMufl heretofore. I found
http://lilypondblog.org/2014/01/smufl-fonts-in-lilypond/
for my first imformation.
I am shure to need some time to study and digest the use of this SMufl lilypond 
extension.

I tried it with the Bravura font on OS X, where it sufficed to install it as a 
system font, and keep the openlilylib files in the same directory.


I argue that SMufl will not overcome problems of quarter notes with midi and 
tabs.

This is what Graham Breed’s regular.ly does. For example, E53 is used with the 
description of Turkish music. The file makam.ly will not transpose correctly, 
but this will.

For ET multiples of 12, LilyPond can do it without this file.





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


guile-question: 3/2 -> "1 1/2"

2015-08-10 Thread Thomas Morley
Hi all,

I want to put out 3/2 not as 1.5 but "1½" or "1 1/2"
Is there a predefined procedure in guile or do I need to define my own?

Thanks,
  Harm

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


Re: lilypond-book

2015-08-10 Thread Kevin Barry
Hi Marek,

Instead of creating a link to the lilypond-book script, could you try
following the instructions here:
http://lilypond.org/macos-x.html
to create executables, and see if that fixes the problem.

Kevin

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


Re: Centering a stencil on another stencil

2015-08-10 Thread Paul Morris
> On Aug 7, 2015, at 2:17 PM, Thomas Morley  wrote:
> 
> May I ask you to provide a code-example where the output is different?
> For the given one I can't see any.

Hi Harm,  Sure, see below for a somewhat minimized (if not completely minimal) 
example.

I was surprised to see that the resulting note head stencil and stem connection 
is the same in either case.  ...but then I noticed that the horizontal spacing 
is affected by centered-stencil but not with center-stencil-on-stencil.  Not 
sure why...

Cheers,
-Paul



\version "2.19.22"

#(define (center-stencil-on-stencil axis stil-a stil-b)
   "Return a copy of stencil @var{stil-b} that has been 
moved so it is centered on stencil @var{stil-a} on 
@var{axis}. @var{axis} is 0 for X axis, 1 for Y axis."
   (let* ((ext-a (ly:stencil-extent stil-a axis))
  (ext-b (ly:stencil-extent stil-b axis))
  (width-a (- (cdr ext-a) (car ext-a)))
  (width-b (- (cdr ext-b) (car ext-b)))
  (width-diff (- width-a width-b))
  (position-diff (- (car ext-a) (car ext-b)))
  (offset (+ position-diff (/ width-diff 2)))
  (new-stil-b (ly:stencil-translate-axis stil-b offset axis)))
 new-stil-b))

#(define (make-notehead-stencil-one grob)
   (let*
((font (ly:grob-default-font grob))
 (solid-head (ly:font-get-glyph font "noteheads.s2"))
 (stil (ly:grob-property grob 'stencil))
 (dot (flip-stencil X (ly:stencil-scale solid-head 0.333 0.333)))
 (dot-head
  (ly:stencil-add
   stil
   (stencil-with-color
(center-stencil-on-stencil X stil dot)
white
   dot-head))

#(define (make-notehead-stencil-two grob)
   (let*
((font (ly:grob-default-font grob))
 (solid-head (ly:font-get-glyph font "noteheads.s2"))
 (stil (ly:grob-property grob 'stencil))
 (dot (flip-stencil X (ly:stencil-scale solid-head 0.333 0.333)))
 (dot-head
  (ly:stencil-add
   (centered-stencil stil)
   (stencil-with-color
(centered-stencil dot)
white
dot-head))

\markup "default"

\new Staff {
  c' d' e' f'
}

\markup "center-stencil-on-stencil (spacing is the same)"

\new Staff \with {
  \override NoteHead.before-line-breaking =
  #(lambda (grob)
 (ly:grob-set-property! grob 'stencil
   (make-notehead-stencil-one grob)))
} {
  c' d' e' f'
}

\markup "centered-stencil (spacing is affected)"

\new Staff \with {
  \override NoteHead.before-line-breaking =
  #(lambda (grob)
 (ly:grob-set-property! grob 'stencil
   (make-notehead-stencil-two grob)))
} {
  c' d' e' f'
}


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


Re: lilypond-book

2015-08-10 Thread Jacques Menu
Hello Marek,

I use a custom « lilyb » script defined as follows, that takes care of the 
subdirectory for the intermediate files generated by lilypond-book:


menu@macbookprojm:~/Documents/LaTeX/PartitionsLilypond > which lilyb
/Users/menu/bin/lilyb


menu@macbookprojm:~/Documents/LaTeX/PartitionsLilypond > ll 
/Users/menu/bin/lilyb
8 -rwxr-xr-x@ 1 menu  staff  1657 May 16 22:54:18 2014 /Users/menu/bin/lilyb*


menu@macbookprojm:~/Documents/LaTeX/PartitionsLilypond > cat 
/Users/menu/bin/lilyb
#!/bin/bash

USAGE="--> Usage: $0 filename[.lytex]"

if [ $# -ne 1 ]; then
echo "$USAGE"
exit 1
fi

FILENAME=$1

echo "--> env"
env | grep -i lilypond
echo

echo

FILENAME_RADIX=${FILENAME%.lytex}
FILENAME_SUFFIX=${FILENAME#${FILENAME_RADIX}}
if [ ${FILENAME_RADIX} == ${FILENAME} ]; then
FILENAME_SUFFIX=".lytex"
fi

echo "--> FILENAME= ${FILENAME}"
echo "--> FILENAME_RADIX  = ${FILENAME_RADIX}"
echo "--> FILENAME_SUFFIX = ${FILENAME_SUFFIX}"
echo

OUTPUT_DIR=out-lilypond-book

echo "--> OUTPUT_DIR  = ${OUTPUT_DIR}"
echo


echo 
""
echo "--> Launching lilypondbook..."
lilypond-book --output=${OUTPUT_DIR} --pdf ${FILENAME_RADIX}${FILENAME_SUFFIX}
echo

ls -sal ${OUTPUT_DIR}/${FILENAME_RADIX}.tex
echo


echo 
""
cd ${OUTPUT_DIR}
echo "--> Current directory: ${PWD}"
echo

echo 
""
echo "--> Launching LaTeX..."

pdflatex ${FILENAME_RADIX}

ls -sal ${FILENAME_RADIX}.tex ${FILENAME_RADIX}.pdf
echo

cp -p ${FILENAME_RADIX}.pdf ..


echo 
""
cd ..
echo "--> Current directory: ${PWD}"
echo

ls -sal ${FILENAME_RADIX}.pdf
echo

open ${FILENAME_RADIX}.pdf

exit # enlever pour interagir...

echo 
""
read -p "==> Do you want to open ${FILENAME_RADIX}.pdf right now? [*/n] " 
DO_OPEN
case ${DO_OPEN} in
[nN] )
;;
* )
open ${FILENAME_RADIX}.pdf
;;
esac

echo





> Le 10 août 2015 à 19:24, Kevin Barry  a écrit :
> 
> Hi Marek,
> 
> Instead of creating a link to the lilypond-book script, could you try
> following the instructions here:
> http://lilypond.org/macos-x.html
> to create executables, and see if that fixes the problem.
> 
> Kevin
> 
> ___
> 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-book

2015-08-10 Thread Marek Stepanek
On 10/08/15 19:24, Kevin Barry wrote:
> Hi Marek,
> 
> Instead of creating a link to the lilypond-book script, could you try
> following the instructions here:
> http://lilypond.org/macos-x.html
> to create executables, and see if that fixes the problem.
> 
> Kevin
> 


Thank you Kevin!

This is working perfectly. My first question here I should have found
myself. Sorry for the noise.



Best greetings


marek



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


Re: guile-question: 3/2 -> "1 1/2"

2015-08-10 Thread Thomas Morley
2015-08-10 19:02 GMT+02:00 Thomas Morley :
> Hi all,
>
> I want to put out 3/2 not as 1.5 but "1½" or "1 1/2"
> Is there a predefined procedure in guile or do I need to define my own?
>
> Thanks,
>   Harm

It's a matter of "exactness".
And when #e comes into the game the guile-manual is not verbose about it.
To say the least.

In the end I come up with the below. I decided to return a ist, not a string.

But it feels pretty clumsy, noone with something better?


(define (integer-and-fraction nmbr)
  "Return a list with an integer and a fraction build from an exact number
Example: 47/7 -> (6 5/7) "
  (let*  ((i (inexact->exact (truncate nmbr)))
  (rest (string->number (format #f "~a~a" "#e" (- nmbr i)
  ;; return a string
  ;(format #f "~a~a"
  ;  i
  ;  (if (= rest 0)
  ;  ""
  ;  (string-append " " (number->string rest
  ;; return a list
  (list i rest)
))

(display (integer-and-fraction (/  7)))


Cheers,
  Harm

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


Re: arabic tabs?

2015-08-10 Thread Thomas Morley
2015-08-09 14:31 GMT+02:00 BB :
> I found two possibilities to write arabic accidentals in the Notation
> reference.
> 2.10.1 Common notation for non-Western music
> \include "makam.ly"
> with English names (c d ...),
> and
> 2.10.2 Arabic music
> using the Italian names ( do re ...)
>
> Both hard to remember the different postfixes, but works anyway. I myself
> prefer the English name version.
>
> As a nonarabic Oud player I am interested in tabs with quarter tones. I was
> thinking about how to do this and found, that one might set a sign for half
> flat oder half sharp before the fret number in the tab. So I will be
> remembered to take care for that quarter tones. Well, fretless instruments
> do not have frets, but an equivalent finger set.
>
> Does anybody have such a solution or another one?
>
> Regards,
> BB


Hi,

attached you'll find my attempt for a such a tab.
It's based on `determine-frets' from translation-functions.scm

There's surely wide room for improvements and maybe the one or other glitch ...


Cheers,
  Harm
\version "2.19.24"

#(define-public
  (my-determine-frets context notes specified-info . rest)
  "Determine string numbers and frets for playing @var{notes}
as a chord, given specified information @var{specified-info}.
@var{specified-info} is a list with two list elements,
specified strings @code{defined-strings} and
specified fingerings @code{defined-fingers}.  Only a fingering of@tie{}0
will affect the fret selection, as it specifies an open string.
If @code{defined-strings} is @code{'()}, the context property
@code{defaultStrings} will be used as a list of defined strings.
Will look for predefined fretboards if @code{predefinedFretboardTable}
is not @code {#f}.  If @var{rest} is present, it contains the
@code{FretBoard} grob, and a fretboard will be
created.  Otherwise, a list of @code{(string fret finger)} lists will
be returned."

  ;;  helper functions

  (define (string-frets->placement-list string-frets string-count)
"Convert @var{string-frets} to @code{fret-diagram-verbose}
dot placement entries."
(let* ((placements (list->vector
(map (lambda (x) (list 'mute  x))
 (iota string-count 1)

  (for-each (lambda (sf)
  (let* ((string (car sf))
 (fret (cadr sf))
 (finger (caddr sf)))
(vector-set!
 placements
 (1- string)
 (if (= 0 fret)
 (list 'open string)
 (if finger
 (list 'place-fret string fret finger)
 (list 'place-fret string fret))
string-frets)
(vector->list placements)))

  (define (placement-list->string-frets placement-list)
"Convert @var{placement-list} to string-fret list."
(map (lambda (x) (if (eq? (car x) 'place-fret)
 (cdr x)
 (list (cadr x) 0)))
 (filter (lambda (l) (or (eq? (car l) 'place-fret)
 (eq? (car l) 'open)))
 placement-list)))

  (define (entry-count art-list)
"Count the number of entries in a list of articulations."
(length (filter (lambda (x) (not (null? x)))
art-list)))

  (define (string-number event)
"Get the string-number from @var{event}.  Return @var{#f}
if no string-number is present."
(let ((num (ly:event-property event 'string-number)))
  (and (integer? num) (positive? num) num)))

  (define (determine-frets-and-strings
   notes
   defined-strings
   defined-fingers
   minimum-fret
   maximum-stretch
   tuning)
"Determine the frets and strings used to play the notes in
@var{notes}, given @var{defined-strings} and @var{defined-fingers}
along with @var{minimum-fret}, @var{maximum-stretch}, and
@var{tuning}.  Returns a list of @code{(string fret finger) lists."


(define restrain-open-strings (ly:context-property context
   'restrainOpenStrings
   #f))
(define specified-frets '())
(define free-strings (iota (length tuning) 1))

(define (calc-fret pitch string tuning)
  "Calculate the fret to play @var{pitch} on @var{string} with
@var{tuning}."
  (* 2  (- (ly:pitch-tones pitch) (ly:pitch-tones (list-ref tuning (1- string))

(define (note-pitch note)
  "Get the pitch (in semitones) from @var{note}."
  (ly:event-property note 'pitch))

(define (note-finger ev)
  "Get the fingering from @var{ev}.  Return @var{#f}
if no fingering is present."
  (let* ((articulations (ly:event-property ev 'articulations))
 (finger-found #f))
(for-each (lambda (art)
(let* ((num (ly:event-property art 'digit)))

  (if (

How to adjust the padding between a StemTremolo and a NoteHead?

2015-08-10 Thread Dominic
Hi all,

Consider the following tiny example:

/\version "2.19.23"
\relative c' { \time 6/4 4 q:8 q:16 q:32 q:64 q:128 }/

and its output:
 

With one slash or two slashes, everything looks fine, but with three or more
slashes, the gap between the top of the NoteHead and the bottom of the
StemTremolo (illustrated with red lines in my image) is too narrow for my
liking. There is clearly some kind of minimum distance that Lilypond is
obeying, but I can't figure out what it is or how to adjust it. I have
looked through the Internals reference and played around with several
properties but without finding a universal solution. Is it a property of the
NoteHead, the Stem, or the StemTremolo?

At the moment I have to laboriously override the Stem.length-fraction on an
individual basis, depending on how many slashes there are, which is not
ideal.

Any ideas?

Thanks,

Dominic



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/How-to-adjust-the-padding-between-a-StemTremolo-and-a-NoteHead-tp179448.html
Sent from the User mailing list archive at Nabble.com.

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


missing glissando

2015-08-10 Thread MING TSANG
Lilyponders,
I code a "\override Glissando.style = #'trill", but there is no glissando 
display on staff
http://lilybin.com/05mbl7/1 


output from above snippet:


original score shown:

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


Re: missing glissando

2015-08-10 Thread Dominic
This will work:


/\version "2.18.2"
\language "english"
{
  \clef bass c2._> \override Glissando.style = #'trill c4 \glissando | %m81
  \clef treble 8 r2 \bar"|." %m82
  }/

You forgot to put the actual "\glissando" command. Also, I swapped the order
of the notes in the final chord so that the glissando would attach to the
upper note.



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/missing-glissando-tp179449p179450.html
Sent from the User mailing list archive at Nabble.com.

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


Re: How to adjust the padding between a StemTremolo and a NoteHead?

2015-08-10 Thread Malte Meyn

Am 11.08.2015 um 01:06 schrieb Dominic:

With one slash or two slashes, everything looks fine, but with three or more
slashes, the gap between the top of the NoteHead and the bottom of the
StemTremolo (illustrated with red lines in my image) is too narrow for my
liking.


I agree on that but I haven’t found a solution yet. For beams there is 
the property alist 'details that seems to make similar things possible 
but this doesn’t exist for stem tremolos. (And apart from that, the 
meaning of the twelve details is not documented so I’ve no idea what one 
would have to change exactly.)


The gap is not only very small but sometimes definitely *too* small so 
that there are collisions. I posted to the bug-lilypond list:

https://lists.gnu.org/archive/html/bug-lilypond/2015-07/msg00067.html
but there was only one answer saying that this is similar to issue 3143 
which I don’t agree to (issue 3143 is about beam grobs, not stem tremlo 
grobs).


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


Re: missing glissando

2015-08-10 Thread MING TSANG
Dominic,  Thank you very much for catching the missing "\arpeggio" command.I 
have always coding the chord - the "bottom note first". I notice the advantage 
in this case. Can I mixed coding "top note first" with "bottom note 
first"?Immanuel,Ming

| From: | Dominic |
| Subject: | Re: missing glissando |
| Date: | Mon, 10 Aug 2015 16:49:17 -0700 (MST) |

This will work:


/\version "2.18.2"
\language "english"
{
  \clef bass c2._> \override Glissando.style = #'trill c4 \glissando | %m81
  \clef treble 8 r2 \bar"|." %m82
  }/

You forgot to put the actual "\glissando" command. Also, I swapped the order
of the notes in the final chord so that the glissando would attach to the
upper note.



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/missing-glissando-tp179449p179450.html
Sent from the User mailing list archive at Nabble.com.

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


Re: guile-question: 3/2 -> "1 1/2"

2015-08-10 Thread David Kastrup
Thomas Morley  writes:

> 2015-08-10 19:02 GMT+02:00 Thomas Morley :
>> Hi all,
>>
>> I want to put out 3/2 not as 1.5 but "1½" or "1 1/2"
>> Is there a predefined procedure in guile or do I need to define my own?
>>
>> Thanks,
>>   Harm
>
> It's a matter of "exactness".
> And when #e comes into the game the guile-manual is not verbose about it.
> To say the least.
>
> In the end I come up with the below. I decided to return a ist, not a string.
>
> But it feels pretty clumsy, noone with something better?
>
>
> (define (integer-and-fraction nmbr)
>   "Return a list with an integer and a fraction build from an exact number
> Example: 47/7 -> (6 5/7) "
>   (let*  ((i (inexact->exact (truncate nmbr)))
>   (rest (string->number (format #f "~a~a" "#e" (- nmbr i)
>   ;; return a string
>   ;(format #f "~a~a"
>   ;  i
>   ;  (if (= rest 0)
>   ;  ""
>   ;  (string-append " " (number->string rest
>   ;; return a list
>   (list i rest)
> ))

Well, how about something like

(define (integer-and-fraction nmbr)
  (let* ((wh (truncate nmbr)) (rem (- nmbr wh)))
(if (or (zero? wh) (zero? rem)) (format #f "~s" nmbr)
  (format #f "~s ~s" wh (abs rem)

(display (integer-and-fraction (/  7)))

Of course the disadvantage being that you cannot distinguish between one
and two numbers and cannot read the number back in easily.

-- 
David Kastrup

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


PDF portfolio of 2.19.25 docs

2015-08-10 Thread Nick Payne
A fully indexed portfolio of the 2.19.25 PDF docs is available at 
https://www.dropbox.com/s/jexo2dd739b1l9f/lilydoc-2.19.25.pdf?dl=0 (39Mb).


Needs Adobe Reader for the indexing to work - I haven't found a 3rd 
party PDF viewer that can use the index in PDF portfolios.


Nick

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