Re: bug in \caps

2020-05-21 Thread Werner LEMBERG

> \caps does not work with non ASCII characters:
> \version "2.19.84"
> \markup { \caps "Blée" }
> In this example, the 3rd character "é" is not converted to É.
> Kind regards,

Irrespective of the problem, the character 'é' is *not* part of ASCII.
The ASCII character is quite an old 7bit character set, approximately
what we have today in Unicode at positions U+ to U+007F.


Werner


Re: bug in \caps

2020-05-21 Thread Pierre Perol-Schneider
Hi Frédéric,
See: http://lilypond.org/doc/v2.19/Documentation/changes-big-page.html
%\version "2.20.0"
\version "2.19.84"
\markup{ \override #'(font-features . ("smcp")) "Blée" }
Cheers,
Pierre

Le ven. 22 mai 2020 à 07:36, Frédéric  a écrit :

> Hi,
> \caps does not work with non ASCII characters:
> \version "2.19.84"
> \markup { \caps "Blée" }
> In this example, the 3rd character "é" is not converted to É.
> Kind regards,
> F
>
>


bug in \caps

2020-05-21 Thread Frédéric
Hi,
\caps does not work with non ASCII characters:
\version "2.19.84"
\markup { \caps "Blée" }
In this example, the 3rd character "é" is not converted to É.
Kind regards,
F



Tie/slur variable thickness vs shape

2020-05-21 Thread Pierre Perol-Schneider
Hi,
I'm using Abraham's function: http://lsr.di.unimi.it/LSR/Item?id=1028
However, the overrides are killed by the shape adjustment:

%%
\version "2.20.0"

#(define (variable-bow-thickness min-l max-l min-t max-t)
  (lambda (grob)
(let (;; get the procedure to calculate the control-points
  (cpf (assoc-get 'control-points (ly:grob-basic-properties grob
  (if (procedure? cpf)
  (let* (;; get first and last control-point to calculate the length
 ;; of the bow
 (cpt (cpf grob))
 (cp0 (car cpt))
 (cp3 (cadddr cpt))
 (dx (- (car cp3) (car cp0)))
 (dy (- (cdr cp3) (cdr cp0)))
 (len (magnitude (make-rectangular dx dy)))
 ;; return a value for thickness
 ;;   below min-l -> min-l
 ;;   greater than max-l  -> max-l
 ;;   between min-l and max-l -> calculate a nice value
 (thickness
   (cond ((< len min-l) min-t)
 ((> len max-l) max-t)
 (else
   (+ min-t
 (* (- len min-l)
(/ (- max-t min-t)
   (- max-l min-l
;; print info in terminal
;(format #t "\n~a has \n\tlength ~a \n\tand \n\tthickness ~a"
;  grob
;  len
;  thickness)
thickness)
  ;; if no control-points can be calculated use default value
  1.2

\layout {
  ragged-last = ##f
  \override PhrasingSlur.thickness = #(variable-bow-thickness 6 25 1 3)
  \override Slur.thickness = #(variable-bow-thickness 6 25 1 3)
  \override Tie.thickness = #(variable-bow-thickness 6 18 1 2)
}

%% Test:
{
  %\shape #'((0 . 0) (0 . 0) (0 . 0) (0 . 0)) Tie
  %\shape #'((0 . 0) (0 . 0) (0 . 0) (0 . 0)) Slur
  %\shape #'((0 . 0) (0 . 0) (0 . 0) (0 . 0)) PhrasingSlur
  c''1~\(( 1 1 1) 1 1\)
}
%%

Any idea how to avoid that?
TIA, cheers,
Pierre


Re: show key signature but also alterations

2020-05-21 Thread Frédéric
> \accidentalStyle teaching is close but parenthesises the accidental, so
> switch off the parentheses.
>
> {
>\override AccidentalCautionary.parenthesized=##f
>\accidentalStyle teaching
>\key d\major
>d'4 e' fis' g' a' b' cis'' d''
> }

This is really good and so simple!
Thanks a lot all of you for your help.

F



Re: Identify included files

2020-05-21 Thread David Wright
On Thu 21 May 2020 at 17:54:38 (+0100), antlists wrote:
> On 21/05/2020 16:36, David Wright wrote:
> > On Thu 21 May 2020 at 13:57:00 (+0100), antlists wrote:
> > > On 21/05/2020 01:49, David Wright wrote:
> > > > I don't understand your equivalence between .ily and .h files. The
> > > > .ily file(s) can contain just as much code as the .ly file(s), whereas
> > > > .h files don't contain any code at all (in the sense of producing
> > > > executable code for the next stage.
> > > 
> > > a) just like .h files, .ily files can't be passed directly to a
> > > compiler for compilation.
> > 
> > Why do you say that?
> 
> Because while it may not be globally true,

It's not true at all.

> I have tried accidentally
> to do things like "lilypond voiceTrombone.ily" and it blew up quite
> spectacularly. I would expect most of mine, and in truth most other
> peoples', .ily files to blow up if fed straight to lilypond.

Big deal. I won't ask what's in voiceTrombone.ily.

> And if they do compile, the output probably isn't much use ... :-)

That depends on what output you're expecting, and whether the file
conforms to the expectations of the person compiling it. By that
I mean that it's possible for anybody to name any file quz.h or
quz.ily and then say "Gosh, look what happens when I compile it!".

Here I am compiling clockchips.h from the linux kernel:

$ gcc clockchips.h 
$ ls -lgG clockchips*
-rw-r--r-- 17445 Apr 23 03:30 clockchips.h
-rw-r- 1 1790384 May 21 20:01 clockchips.h.gch

No output on the terminal is good news. I see that a pre-compiled
header has been generated.
Here I am compiling an .ily file pasted from the LM:

$ ~/lilypond-2.21.0-1.linux-64/bin/lilypond definitions.ily 
GNU LilyPond 2.21.0
Processing `definitions.ily'
Parsing...
definitions.ily:1: warning: no \version statement found, please add

\version "2.21.0"

for future compatibility
Success: compilation successfully completed
$ ls -lgG definitions*
-rw-r- 1 575 May 21 19:50 definitions.ily
$ 

> > > b) who says .h files don't produce executable code? They often contain
> > > code, sometimes entire functions.
> > > 
> > > I understand the equivalence exactly - it's what you DO to the file.
> > 
> > Good, that means I have a second source of edification as to what the
> > intent of this analysis is.
> > 
> > > You're thinking "what you *should* put in the file". Since when have
> > > people done what they *should*?
> > 
> > Letting that pass, let's say we have a source file foo.c and it needs
> > an extraordinary quantity of functionality that's contained in bar.c.
> > We put the latter's function declarations into bar.h and compile
> > bar.{c,h}¹ into bar.o.
> 
> Does bar.c contain a main{} definition?

Why would it?

> > Now we can compile foo.c (which #includes bar.h) over and over while
> > debugging it, all without ever recompiling bar.c. foo.c knows all it
> > needs to know about bar.c because of bar.h's declarations.
> 
> Can you now link bar.o into foo? I honestly don't know - I don't know
> how a linker will behave if fed two main{} functions ... ?

This isn't too hard. As I wrote, bar.c has functions, and bar.h has
declarations for those functions so that compiling foo.c can check
the calls of those functions without ever seeing bar.c (ie without
recompiling bar.c over and over).

> > I now have a suite.ly that typesets my Suite for flute and piano.
> > It \includes nine files: flute{I,II,III}.ily, piano{I,II,III}.ily
> > (the notes), and flute-part.ily, piano-part.ily and complete-score.ily,
> > (my \score templates). It also \includes {marks,dyns,fingers}.ily that
> > contain LP code for my preferred styles of markings, dynamics and fingering.
> > 
> > I have a file, suite.dep, which contains the information that suite.ly
> > depends on these files to produce three targets, {flute,piano,suite}.pdf
> > The same file might also indicate that I need just flute{I,II,III}.ily,
> > flute-part.ily and {marks,dyns,fingers}.ily for just a flute.pdf.
> > 
> > What do I write in a top-level theFlute.ly file to produce this
> > flute.pdf and how does it benefit from the suite.sep information?
> > How do I use this information profitably, in the way that bar.h did?
> > 
> > ¹ I'm abbreviating with shell's "brace expansion" notation.
> > 
> Now we get to the meat of the matter. You've put bar.c's
> *declarations* into bar.h. Does lilypond even have declarations? Also,
> it's perfectly normal practice to put *definitions* in .h files -
> static variables, macros, inline functions, etc etc.
> 
> I put most of my lilypond variable *definitions* into .ily files. Yup,
> .h files *tend* to contain declarations not definitions, but as I say,
> I don't think lilypond syntax has  declarations?
> 
> So yes, am I right in thinking you view .ily files as closer to .o
> files? With lilypond closer to a linker than a compiler?

No.

> At the end of the day, I see it as .h files can contain declarations,
> .ily files contain declarations. .h files ar

Re: show key signature but also alterations

2020-05-21 Thread Timothy Lanfear

On 21/05/2020 19:38, Frédéric wrote:

\key d\major
\set Staff.keyAlterations = #'()
\accidentalStyle dodecaphonic

Obviously not \accidentalStyle dodecaphonic though.
\accidentalStyle forget I think?

apparently, this doesn't work:
\version "2.19.0"
\language "english"
{
   \key d \major
   \set Staff.keyAlterations = #'()
   \accidentalStyle forget
   d' e' fs' g' a' b' cs'' d''
}

The effect of \set Staff.keyAlterations = #'() seems to be the same as
\key c \major, it removes the key signature.
I would like to write my own accidental style in scheme but I'm a bit
lost about where to start.

F


\accidentalStyle teaching is close but parenthesises the accidental, so 
switch off the parentheses.


\version "2.20.0"

{
  \override AccidentalCautionary.parenthesized=##f
  \accidentalStyle teaching
  \key d\major
  d'4 e' fis' g' a' b' cis'' d''
}



--
Timothy Lanfear, Bristol, UK.




Re: show key signature but also alterations

2020-05-21 Thread antlists

n 21/05/2020 07:35, Frédéric wrote:

Hi,
I'm writing a scale book. I would like to have the key signature but
also an accidentals in front of each note. For example, in d \major, I
would like to print f# c# as key signature and a # in front of each f
and c.
I see 2 possibilities:
1. define a custom Key_engraver which just prints the key and do not
set the alterations.
2. define a special accidental rule that considers that the key
signature is blank

However, I was not able to do any of those.

Any idea?


Not quite what you asked for, but pretty much what you want?

\score {
   \key bf \major
   bf? c d ef? f g a bf?
}

Is that any good?

Cheers,
Wol



Re: Very inconsistent vertical spacing from lilypond book and LaTeX

2020-05-21 Thread Robert Hickman
Hi David,

The .tex file contains the following (a snippet of), The idea about it
being where a new paragraph or line starts seems to make sense as the
added space seems to be about 1em.

\vspace{-0em}\Ssubsection{Scale}\vspace{-0em}
{%
\parindent 0pt
\noindent
\ifx\preLilyPondExample \undefined
\else
  \expandafter\preLilyPondExample
\fi
\def\lilypondbook{}%
\input{ce/lily-6d98c8ee-systems.tex}
\ifx\postLilyPondExample \undefined
\else
  \expandafter\postLilyPondExample
\fi
}

\vspace{-0.8em}\Ssubsection{Thirds}\vspace{-0em}
{%
\parindent 0pt
\noindent
\ifx\preLilyPondExample \undefined
\else
  \expandafter\preLilyPondExample
\fi
\def\lilypondbook{}%
\input{ec/lily-01f558b3-systems.tex}
\ifx\postLilyPondExample \undefined
\else
  \expandafter\postLilyPondExample
\fi
}

\vspace{-0.8em}\Ssubsection{Fourths}\vspace{-0em}
{%
\parindent 0pt
\noindent
\ifx\preLilyPondExample \undefined
\else
  \expandafter\preLilyPondExample
\fi
\def\lilypondbook{}%
\input{75/lily-95458ceb-systems.tex}
\ifx\postLilyPondExample \undefined
\else
  \expandafter\postLilyPondExample
\fi
}

\vspace{-0.8em}\Ssubsection{Fifths}\vspace{-0em}
{%
\parindent 0pt
\noindent
\ifx\preLilyPondExample \undefined
\else
  \expandafter\preLilyPondExample
\fi
\def\lilypondbook{}%
\input{2f/lily-cee1d442-systems.tex}
\ifx\postLilyPondExample \undefined
\else
  \expandafter\postLilyPondExample
\fi
}

\vspace{-0.8em}\Ssubsection{Sixths}\vspace{-0em}
{%
\parindent 0pt
\noindent
\ifx\preLilyPondExample \undefined
\else
  \expandafter\preLilyPondExample
\fi
\def\lilypondbook{}%
\input{05/lily-bdd1bc6c-systems.tex}
\ifx\postLilyPondExample \undefined
\else
  \expandafter\postLilyPondExample
\fi
}

On Thu, 21 May 2020 at 19:56, David Wright  wrote:
>
> On Thu 21 May 2020 at 18:40:53 (+0100), Robert Hickman wrote:
> >
> > I'm helping my partner create a book of interval exercises, and I'm
> > getting very inconsistent vertical spacing coming from lilypond-book,
> > here is an example:
> >
> > https://files.robehickman.com/problem.pdf
> >
> > Weird thing is that this is very inconsistent between pages, and I
> > have verified there is no excess space in the music images. LaTeX
> > seems to be stretching white space erratically.
>
> No idea what's in your .tex file. Perhaps the larger spaces are where
> LaTeX thinks a new paragraph starts. The mere presence or absence of
> blank lines between the figures can affect/control that.
>
> Cheers,
> David.
>



Re: Very inconsistent vertical spacing from lilypond book and LaTeX

2020-05-21 Thread David Wright
On Thu 21 May 2020 at 18:40:53 (+0100), Robert Hickman wrote:
> 
> I'm helping my partner create a book of interval exercises, and I'm
> getting very inconsistent vertical spacing coming from lilypond-book,
> here is an example:
> 
> https://files.robehickman.com/problem.pdf
> 
> Weird thing is that this is very inconsistent between pages, and I
> have verified there is no excess space in the music images. LaTeX
> seems to be stretching white space erratically.

No idea what's in your .tex file. Perhaps the larger spaces are where
LaTeX thinks a new paragraph starts. The mere presence or absence of
blank lines between the figures can affect/control that.

Cheers,
David.



Re: show key signature but also alterations

2020-05-21 Thread Frédéric
> > \key d\major
> > \set Staff.keyAlterations = #'()
> > \accidentalStyle dodecaphonic
>
> Obviously not \accidentalStyle dodecaphonic though.
> \accidentalStyle forget I think?

apparently, this doesn't work:
\version "2.19.0"
\language "english"
{
  \key d \major
  \set Staff.keyAlterations = #'()
  \accidentalStyle forget
  d' e' fs' g' a' b' cs'' d''
}

The effect of \set Staff.keyAlterations = #'() seems to be the same as
\key c \major, it removes the key signature.
I would like to write my own accidental style in scheme but I'm a bit
lost about where to start.

F



Re: Position of accidentals in chords

2020-05-21 Thread Owen Lamb
Hi Caio,

I'm not sure if there's a way to customize the coded order of accidentals,
and for some reason tweaking the X-offset property doesn't seem to work
either. In your case, making a couple of manual tweaks to the flat's and
double-flat's extra-offset properties (which are added after all the
positioning calculation is done) will at least get them in order. The only
downside is that there's extra space between the accidentals and the
barline, left over from calculating the accidentals' original positions.
I'm not sure how to get rid of that...

\relative c' {
  1
  1
}

Hope this helps,
Owen

On Wed, May 20, 2020 at 8:06 AM Caio Barros  wrote:

> Hello,
>
> In the example below:
>
> \relative c' {
>   1
>   1
> }
>
> Notice the difference in the position of the flat symbol in the G-flat.
> For me, particularly, I find the first chord much more clean: after the
> double flat, closet to the note (and it occupies less space). Is there a
> way to change the position of the flat symbol? I was unable to find it in
> the documentation.
>
> Also, I thought that Lilypond decided to move the flat further to the left
> because part of the natural sing in the C note would collide with it, but
> changing the size of the accidentals with somethin like
>
> \override Accidental.font-size = #-3
>
> Doesn't seem to make a difference.
>
> Caio
>


Re: Very inconsistent vertical spacing from lilypond book and LaTeX

2020-05-21 Thread Valentin Petzel
Most likely the scores are for some obscure reason cropped to different 
heights. For a quick workaround, you can try putting the images in a parbox 
with a specified height.

signature.asc
Description: This is a digitally signed message part.


[ignore] testing email access

2020-05-21 Thread Kieren MacMillan
This email hasn’t been posting for several months. Trying again.



Re: registering a composition

2020-05-21 Thread Francesco Petrogalli
OK, thank you all for the kind reply.

Here is my understanding, just double cheking with you guys is my
reasoning is right.

Step 1: secure the copyright of the PDF of the composition.
I am tempted to say that this is already done by the fact that I have
stored all commits of the development of the PDF via lilypond in a
private repo on bitbucket.org. If the originality of the piece will
ever be challenged, all I need to do it either make the private repo a
public repo, or, if bitbucket dies by the time someone challenges the
originality, I just need to show the git repository I have stored in a
second secure place.

To make it even more safer than that, I can register the copyright either with:

1. the Copyright Office of the Library of Congress (online)
2. copyright.co.uk
3. https://www.costozero.org/
4. patamu.com

I have a slight preference for patamu.com, it seems quite easy and
fully online, it also has international validity, the other options
seems to be country-specific.

Step 2: register to a PRO to secure the royalties (even if no
royalties will ever come to me).

I can register to ASCAP or BMI, as an individual who is both the
composer and the publisher. It doesn't matter whether I upload the PDF
or not, the royalties will be collected on the name of the song and
the author/publisher, if someone will ever play it. If ASCAP / BMI
will ask for a copy/link of the work, I can always upload the PDF or
link an upload in, say, soundcloud, of the wave file generated from
the midi.

Then, say that the band I am giving this piece will decide to produce
a recording, they will register their recording on their favorite PRO,
simply saying that they are the publisher and that I am the writer.

Step 3: publish the PDF on the internet

When the prior steps are done, I can safely upload the PDF on my
personal website, for anyone to download. I just have to make sure
that I mark it saying "Copyright (C) 2020 by Francesco Petrogalli
(ASCAP). All rights reserved."

Thank so much for all the useful help! I just want to add a bit of
background in case there are some details that might change the way I
should do this.

1. I am a software engineer working on open source code. In the spirit
of open source, I initially wanted to use a CC-BY license on the work,
then I read this and completely changed my mind.
https://www.ascap.com/playback/2007/FALL/FEATURES/creative_commons_licensing,
which somehow seems to contradict
https://creativecommons.org/2010/06/30/response-to-ascaps-deceptive-claims/.
I would have loved to use a CC license that would have guaranteed my
royalties via ASCAP, but ASCAP doesn't seem to be happy about this
license so I will not use it.
2. The song has been written with my 7yo son. He is mentioned in the
PDF as a co-author, but I don't think I can mention it as one of the
authors in ASCAP because ASCAP requires to certify "you are 18yo or
older" when registering. I will anyway publish a video on youtube of
the "improvisation session" in which he came up with the melody. This
plus the authorship claim in the PDF will hopefully secure his part of
the copyright.

Again, thank you for the help, this is being painful and interesting
at the same time :)

Kind regards,

Francesco

PS: lilypond rocks! :)

On Thu, May 21, 2020 at 8:32 AM Tim McNamara  wrote:
>
>
>
> > On May 21, 2020, at 3:34 AM, Valentin Villenave  
> > wrote:
> >
> > On 5/21/20, Francesco Petrogalli  wrote:
> >> I have written it with lilypond, but it hasn't been performed yet. I
> >> wanted to secure the copyright before performing it. Given that there
> >> is no performing artist yet, there is no recording, so I cannot
> >> register it with ASCAP. Have I got this right?
> >
> > No registration anywhere is needed to "secure the copyright". All you
> > need to have is a way of proving your anteriority if anyone were to
> > come and claim they’ve written it instead of you. There are several
> > commercial services that can do that for you (though many are scams),
> > but there are cheaper and simpler ways; a simple web search brought me
> > to the following page:
> > https://copyright.co.uk/legal-copyright-law.html
>
> Copyright law is nationally controlled, not internationally controlled for 
> the most part.  There is a degree of reciprocity.  In the US, copyright is 
> automatically granted to creators but copyright is also divided- the creator 
> has rights but so does the publisher, which matters in terms of royalty 
> payments if the work is recorded or performed.  As the saying goes, keep the 
> publishing.  Thousands of artists and composers lost out on billions of 
> dollars because they signed the publishing away in the early days of their 
> careers in the fine print of a recording contract.  This has been standard 
> practice in the recording industry since its inception and has beggared many 
> a musician/composer.  I do not feel bad at all about the slow death of the 
> major labels since the the internet made their business 

Very inconsistent vertical spacing from lilypond book and LaTeX

2020-05-21 Thread Robert Hickman
Hi,

I'm helping my partner create a book of interval exercises, and I'm
getting very inconsistent vertical spacing coming from lilypond-book,
here is an example:

https://files.robehickman.com/problem.pdf

Weird thing is that this is very inconsistent between pages, and I
have verified there is no excess space in the music images. LaTeX
seems to be stretching white space erratically.



Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Pierre Perol-Schneider
Right, I did that quickly without checking the whole score.
Also, as I use \fixed, I found it faster to type.
But again, you're right, it's a single voice.
Cheers,
Pierre

Le jeu. 21 mai 2020 à 18:29, Lukas-Fabian Moser  a écrit :

> Hi Pierre,
>
> Am 21.05.20 um 15:53 schrieb Pierre Perol-Schneider:
> >
> > Here's  a template, made as clear as possible, in a fixed mode (no
> > relative).
> > (First measures taken from:
> >
> https://imslp.simssa.ca/files/imglnks/usimg/9/9b/IMSLP411479-PMLP05948-bach-wtk-ur-1.pdf
> )
> >
> But what's the point in using _both_
>
> - \change Staff (which is needed anyway for the cross-staff stem
> situations)
>
> and
>
> - two separate voices for the alto voice, which is in reality (so to
> speak) one single straying voice in search for a staff with a clef
> suitable for its pitches?
>
> Best
> Lukas
>
>


Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 16:36, David Wright wrote:

On Thu 21 May 2020 at 13:57:00 (+0100), antlists wrote:

On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a
compiler for compilation.


Why do you say that?


Because while it may not be globally true, I have tried accidentally to 
do things like "lilypond voiceTrombone.ily" and it blew up quite 
spectacularly. I would expect most of mine, and in truth most other 
peoples', .ily files to blow up if fed straight to lilypond.


And if they do compile, the output probably isn't much use ... :-)



b) who says .h files don't produce executable code? They often contain
code, sometimes entire functions.

I understand the equivalence exactly - it's what you DO to the file.


Good, that means I have a second source of edification as to what the
intent of this analysis is.


You're thinking "what you *should* put in the file". Since when have
people done what they *should*?


Letting that pass, let's say we have a source file foo.c and it needs
an extraordinary quantity of functionality that's contained in bar.c.
We put the latter's function declarations into bar.h and compile
bar.{c,h}¹ into bar.o.


Does bar.c contain a main{} definition?


Now we can compile foo.c (which #includes bar.h) over and over while
debugging it, all without ever recompiling bar.c. foo.c knows all it
needs to know about bar.c because of bar.h's declarations.


Can you now link bar.o into foo? I honestly don't know - I don't know 
how a linker will behave if fed two main{} functions ... ?


I now have a suite.ly that typesets my Suite for flute and piano.
It \includes nine files: flute{I,II,III}.ily, piano{I,II,III}.ily
(the notes), and flute-part.ily, piano-part.ily and complete-score.ily,
(my \score templates). It also \includes {marks,dyns,fingers}.ily that
contain LP code for my preferred styles of markings, dynamics and fingering.

I have a file, suite.dep, which contains the information that suite.ly
depends on these files to produce three targets, {flute,piano,suite}.pdf
The same file might also indicate that I need just flute{I,II,III}.ily,
flute-part.ily and {marks,dyns,fingers}.ily for just a flute.pdf.

What do I write in a top-level theFlute.ly file to produce this
flute.pdf and how does it benefit from the suite.sep information?
How do I use this information profitably, in the way that bar.h did?

¹ I'm abbreviating with shell's "brace expansion" notation.

Cheers,
David.

Now we get to the meat of the matter. You've put bar.c's *declarations* 
into bar.h. Does lilypond even have declarations? Also, it's perfectly 
normal practice to put *definitions* in .h files - static variables, 
macros, inline functions, etc etc.


I put most of my lilypond variable *definitions* into .ily files. Yup, 
.h files *tend* to contain declarations not definitions, but as I say, I 
don't think lilypond syntax has  declarations?


So yes, am I right in thinking you view .ily files as closer to .o 
files? With lilypond closer to a linker than a compiler?


At the end of the day, I see it as .h files can contain declarations, 
.ily files contain declarations. .h files are included, .ily files are 
included. Some languages (like lilypond) are monolithic and don't really 
have the concept of libraries. So I find it extremely easy to view 
.ly/.ily as being similar to .c/.h. Not the same, because lilypond is 
not gcc ... :-)


There's no one absolute view - you see things different to me, doesn't 
mean you (or me) is right.


Cheers,
Wol



Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Valentin Petzel
Okay, for number one:

If you name the Staves, i.e. You got something like
\new PianoStaff
<<
 \new Staff = "right" { ... }
 \new Staff = "left"{ ... }
>>
You can switch a voice between these staves by
\change Staff = "right"
Also see
http://lilypond.org/doc/v2.19/Documentation/notation/common-notation-for-keyboards#changing-staff-manually[1]
 

Number 2: Use \change Staff = ...

Number 3: 
You can eighter use brackets as discussed here
http://lilypond.1069038.n5.nabble.com/Left-hand-right-hand-editorial-annotation-td161987.html[2]
 

Or you can just add a fingering like rh by 
note-\finger\markup\normal-text”r.h.”.
You can also define your own fingering functions as in
http://petzel.at/rh_lh_fingering.ly[3]


[1] 
http://lilypond.org/doc/v2.19/Documentation/notation/common-notation-for-keyboards#changing-staff-manually
[2] 
http://lilypond.1069038.n5.nabble.com/Left-hand-right-hand-editorial-annotation-td161987.html
[3] http://petzel.at/rh_lh_fingering.ly


signature.asc
Description: This is a digitally signed message part.


Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Pierre Perol-Schneider
So here you go.
Cheers,
Pierre
(typos possible)

Le jeu. 21 mai 2020 à 19:09, Pierre Perol-Schneider <
pierre.schneider.pa...@gmail.com> a écrit :

> Right, I did that quickly without checking the whole score.
> Also, as I use \fixed, I found it faster to type.
> But again, you're right, it's a single voice.
> Cheers,
> Pierre
>
> Le jeu. 21 mai 2020 à 18:29, Lukas-Fabian Moser  a écrit :
>
>> Hi Pierre,
>>
>> Am 21.05.20 um 15:53 schrieb Pierre Perol-Schneider:
>> >
>> > Here's  a template, made as clear as possible, in a fixed mode (no
>> > relative).
>> > (First measures taken from:
>> >
>> https://imslp.simssa.ca/files/imglnks/usimg/9/9b/IMSLP411479-PMLP05948-bach-wtk-ur-1.pdf
>> )
>> >
>> But what's the point in using _both_
>>
>> - \change Staff (which is needed anyway for the cross-staff stem
>> situations)
>>
>> and
>>
>> - two separate voices for the alto voice, which is in reality (so to
>> speak) one single straying voice in search for a staff with a clef
>> suitable for its pitches?
>>
>> Best
>> Lukas
>>
>>
\version "2.20.0"
%\pointAndClickOff <= at the end
#(set-global-staff-size 18.5) % <= maybe a better size ?

rhSoprano = \fixed c' {
  | % mes.1
R1
  | % mes.2
d'4\rest d'8\rest b cis'4 d'16\rest fis gis ais
  | % mes.3
b16 ais b cis' dis' e' fis' dis' b a b cis' b a b cis'
  | % mes.4
a16 gis a b a gis a b gis fis gis ais b4~ 
  | % mes.5
4 ais b8 b' dis' fis'
  | % mes.6
\shape #'((0 . 0.5) (0 . 1.5) (0 . 1.5) (0 . 0)) Tie
b2~ 8 a? gis e' 
  | % mes.7
fis'4 d'16\rest b cis' dis' e' dis' e' fis' gis' a' b' gis'
  | % mes.8
e'16 dis' e' fis' e' dis' e' fis' dis' cis' dis' e' fis' gis' a'!8~
  | % mes.9
1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}

rhAlto = \fixed c' {
  | % mes.1
e4\rest e8\rest e fis4 e16\rest b, cis dis 
  | % mes.2
e16 dis e fis gis a b gis e dis e fis e dis e fis
  | % mes.3
dis16 cis dis e fis gis a fis gis8 \change Staff = "LH" \stemUp\tieUp b, e4~
  | % mes.4
8 dis 
\change Staff = "RH" \stemDown\tieDown
fis4~ 8 b, e dis
  | % mes.5
dis2 b,8 e\rest e4\rest
  | % mes.6
e8\rest e' gis b e fis4
\change Staff = "LH" \stemUp\tieUp
e8
  | % mes.7
e4 dis8 
\change Staff = "RH" \stemDown\tieDown
fis 
\change Staff = "LH" \stemUp\tieUp
b,4 c'8\rest
\change Staff = "RH" \stemDown\tieDown
b
  | % mes.8
cis'4 g16\rest fis gis ais b ais b cis' dis' e' fis' dis'
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}  

lhBasse = {
  | % mes.1
s1  
  | % mes.2
s1
  | % mes.3
d2\rest b,4\rest b,8\rest e
  | % mes.4
fis4 c16\rest b, cis dis e dis e fis gis a! b gis
  | % mes.5
e16 dis e fis e dis e fis dis cis dis e fis gis a fis
  | % mes.6
gis16 fis gis a b cis' d' b cis' b cis' dis' e' dis' cis' b
  | % mes.7
a16 gis a b a gis a b gis8 fis e dis
  | % mes.8
cis8 b ais fis b d\rest d4\rest
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}

\paper {
  page-count = 2
  ragged-last-bottom = ##f
}

\header {
  title = "Das wohltemperierte Klavier I"
  composer = "Johann Sebastian Bach"
  piece = "Fuga IX"
  opus = "BWV 854"
  instrument = "Piano"
}

\score {
  \new PianoStaff <<
\new Staff = RH \with {
  %% Possibly:
  \override VerticalAxisGroup.staff-staff-spacing.basic-distance = 10
} 
<<
  \new Voice { \key e\major \voiceOne \rhSoprano }
  \new Voice { \key e\major \voiceTwo \rhAlto }
>>
\new Staff = LH { \clef F \key e\major \voiceTwo \lhBasse }
  >>
  \layout {
indent = 10
system-count = 12
  }
  \midi {
\tempo 4 = 72
  }
}

Re: Identify included files

2020-05-21 Thread Fr. Samuel Springuel
> On 21 May, 2020, at 9:36 AM, David Kastrup  wrote:
> 
> antlists  writes:
> 
>> On 21/05/2020 01:49, David Wright wrote:
>>> I don't understand your equivalence between .ily and .h files. The
>>> .ily file(s) can contain just as much code as the .ly file(s), whereas
>>> .h files don't contain any code at all (in the sense of producing
>>> executable code for the next stage.
>> 
>> a) just like .h files, .ily files can't be passed directly to a
>> compiler for compilation.
>> 
>> b) who says .h files don't produce executable code? They often contain
>> code, sometimes entire functions.
> 
> The point of .h files is that they are intended to be included by more
> than one compilation unit resulting in an executable.
> 
> As such, they are limited with regard to the code they can contain.
> They can contain
> 
> a) inline function definitions: those can occur in multiple compilation
> units as long as they are identical.
> b) static inline: do not even need to be identical, are per-unit.
> c) static data definitions, are per-unit.
> d) template function definitions
> 
> I don't think that .ly/.ily is all that comparable here...
> 
> -- 
> David Kastrup
> 

The analogy is not perfect, but then no analogy is (otherwise it wouldn’t be an 
analogy).  Lilypond doesn’t enforce a distinction between .ly and .ily files in 
the same way that C enforces the distinction between .h and .c files.  Further, 
.pdf files are stand alone in a way that .o files are not.  The linker level 
which combines .o files into an executable would have as its closest 
approximation in the LilyPond world assembling several pdfs into some kind of 
portfolio.  And this is another point where the analogy breaks in that an 
executable cannot contain incompatible .o files but a portfolio can contain 
pdfs of scores with vastly different styles.  The result may not be as 
professional looking, but it’s possible.

Here are the parts of the analogy that do work:

1) .ily files cannot produce scores.  Sure, I can call LilyPond on them 
directly, but regardless of the options I use, no score will ever result.  This 
may be purely by convention (as in, LilyPond itself doesn’t enforce this, it 
really couldn’t care what the extension on its input files is), but it’s a 
convention which I rigorously apply in the files I write.  In this respect, 
.ily files are like .h files which also cannot, by themselves, ever produce a 
.o file. For .h files, at least a dummy.c file is needed to include the .h 
file.  My .ily files likewise need a .ly file to include them to produce a 
score.

2) .ly files do produce scores.  If I call LilyPond on an .ly file, then I 
expect a score to come out (in pdf format by default, but other formats are 
possible too if I use the right options or flags).  Again, this is primarily a 
convention, as LilyPond won’t throw an error on a .ly file which doesn’t 
produce a score (but has no other problems).  However, it is a convention that 
I strictly apply to my files.  In this respect .ly files are like .c files, 
which can be compiled to create .o files.

3) Further the relation between the .ly and .ily files is similar to the 
relation between .c and .h files.  .ly (.c) files do not, themselves, depend on 
the .ily (.h) files that they include.  There is no build process which creates 
a .ly (.c) file from the included .ily (.h) files.  However, if I make a change 
to a .ily (.h) file, then the .pdf (.o) file which is produced when LilyPond 
(GCC) compiles a .ly (.c) file which includes that changed file is out of date 
and needs to be recompiled. In this regard the directed acyclic graph (DAG) 
which illustrates these relationships is the same, just with one less level 
(unless I make use of a pdf merge tool to replace the linker level).


My goal is to inform make of these relationships so that when I tweak a 
LilyPond source, only the scores affected by that source are recompiled.  This 
may be several pdfs, but it’s not all of them, even when I tweak an ily file 
because not all ily files are included in all scores.  Furthermore, the more I 
work on this project, the more I tend to split up the “formatting” file so that 
I actually have several, each of which is responsible for a single aspect of 
the formatting.  This makes it easier for me to find code when I need to make 
adjustments to a particular aspect of the formatting.

✝✝
Fr. Samuel, OSB
(R. Padraic Springuel)
St. Anselm’s Abbey
4501 South Dakota Ave, NE
Washington, DC, 20017
202-269-2300
(c) 202-853-7036

PAX ☧ ΧΡΙΣΤΟΣ




Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Lukas-Fabian Moser

Hi Pierre,

Am 21.05.20 um 15:53 schrieb Pierre Perol-Schneider:


Here's  a template, made as clear as possible, in a fixed mode (no 
relative).
(First measures taken from: 
https://imslp.simssa.ca/files/imglnks/usimg/9/9b/IMSLP411479-PMLP05948-bach-wtk-ur-1.pdf)



But what's the point in using _both_

- \change Staff (which is needed anyway for the cross-staff stem situations)

and

- two separate voices for the alto voice, which is in reality (so to 
speak) one single straying voice in search for a staff with a clef 
suitable for its pitches?


Best
Lukas




Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread R.H.
Dear

Mark Stephen Mrotek
Pierre Perol-Schneider
Hans Åberg
Lukas-Fabian Moser
Jacques Menu

Wow, the extremely quick response here is more than anyone could expect.
Thank you all for your very nice comments and suggestions. I have to do
some homework to get it right. I am confident with your hints that I will
succeed and share my solution with you. I know, all that counts is practice.

And thanks to everyone in advance who might also chim in.

When I have more practice, I also hope to contribute solutions and answer
questions...)

Have a nice day
Roland

P.S. I believe, I have enough information for now. But as i was asked to
send a picture, I am doing this. I am using the Henle edition from 1960 for
the Bach Fugue IX BWV 854.

In measure 7 you can see the connecting bar for the middle voice from dis
to fis.

[image: image.png]
Another voice crossing in measure 25 also in the middle voice from B
(German H) to Cis.

[image: image.png]


Re: Identify included files

2020-05-21 Thread David Wright
On Thu 21 May 2020 at 13:57:00 (+0100), antlists wrote:
> On 21/05/2020 01:49, David Wright wrote:
> > I don't understand your equivalence between .ily and .h files. The
> > .ily file(s) can contain just as much code as the .ly file(s), whereas
> > .h files don't contain any code at all (in the sense of producing
> > executable code for the next stage.
> 
> a) just like .h files, .ily files can't be passed directly to a
> compiler for compilation.

Why do you say that?

> b) who says .h files don't produce executable code? They often contain
> code, sometimes entire functions.
> 
> I understand the equivalence exactly - it's what you DO to the file.

Good, that means I have a second source of edification as to what the
intent of this analysis is.

> You're thinking "what you *should* put in the file". Since when have
> people done what they *should*?

Letting that pass, let's say we have a source file foo.c and it needs
an extraordinary quantity of functionality that's contained in bar.c.
We put the latter's function declarations into bar.h and compile
bar.{c,h}¹ into bar.o.

Now we can compile foo.c (which #includes bar.h) over and over while
debugging it, all without ever recompiling bar.c. foo.c knows all it
needs to know about bar.c because of bar.h's declarations.

I now have a suite.ly that typesets my Suite for flute and piano.
It \includes nine files: flute{I,II,III}.ily, piano{I,II,III}.ily
(the notes), and flute-part.ily, piano-part.ily and complete-score.ily,
(my \score templates). It also \includes {marks,dyns,fingers}.ily that
contain LP code for my preferred styles of markings, dynamics and fingering.

I have a file, suite.dep, which contains the information that suite.ly
depends on these files to produce three targets, {flute,piano,suite}.pdf
The same file might also indicate that I need just flute{I,II,III}.ily,
flute-part.ily and {marks,dyns,fingers}.ily for just a flute.pdf.

What do I write in a top-level theFlute.ly file to produce this
flute.pdf and how does it benefit from the suite.sep information?
How do I use this information profitably, in the way that bar.h did?

¹ I'm abbreviating with shell's "brace expansion" notation.

Cheers,
David.



Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 14:36, David Kastrup wrote:

antlists  writes:


On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a
compiler for compilation.

b) who says .h files don't produce executable code? They often contain
code, sometimes entire functions.


The point of .h files is that they are intended to be included by more
than one compilation unit resulting in an executable.


Which is exactly how I use .ily files ...


As such, they are limited with regard to the code they can contain.
They can contain

a) inline function definitions: those can occur in multiple compilation
units as long as they are identical.


You're describing the way I define variables that contain all my notes. 
You're also describing how I define the musical structure.



b) static inline: do not even need to be identical, are per-unit.
c) static data definitions, are per-unit.
d) template function definitions


I redefine the header function - I've NEVER seen a header laid out the 
way lilypond does it, apart from parts produced by lilypond ...


Plus I have my own dynamics definition file that extends lilypond's ones


I don't think that .ly/.ily is all that comparable here...

The way I use .ily files EXACTLY matches your definition of a .h file... 
how on earth do you use them?


Cheers,
Wol



RE: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Mark Stephen Mrotek
Roland,

I have set  several of the Bach Fugues. Attached (and below) is the template I 
use. It is for four voices. 

 

Mark

 

\version "2.19.49"

\header {

}

\new PianoStaff <<

   \new Staff = "upper" <<

 \time 4/4

 \key f \minor

 \new Voice = "soprano"

 { \voiceOne \relative c'' { 

   f4 f f f }

 }

 \new Voice = "alto"

 { \voiceTwo \relative c'' { 

   aes4 aes aes aes }

 } 

   >>

   \new Staff = "lower" <<

 \time 4/4

 \key f \minor

 \clef bass

 \new Voice = "tenor"

 { \voiceOne \relative c {  

   c4 c c c }

 }

 \new Voice = "bass"

 { \voiceTwo \relative c {   

   f,4 f f f }  

 }

   >>

>>

\layout {

 indent = #0

   }

 

 

 

From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] 
On Behalf Of R.H.
Sent: Thursday, May 21, 2020 5:53 AM
To: lilypond-user 
Subject: New User: How can one separate voice share different clefs in a piano 
fugue?

 

INTRO

 

A big "Hello" to this list!

 

I am new to Lilypond and worked through the intro documentation. My name is 
Roland Hüttmann from Switzerland. I am an amateur piano player for almost all 
genres, but mainly classical music, currently learning the Prelude and Fugue IX 
of the Well Tempered Clavier Nr. 1 from J.S.Bach, (BWV 584). 

 

In coding I have quite some experience mainly working with the free community 
edition of Livecode.com which I very much enjoy this language and believe it 
can be used in conjunction with Lilypond as it's text processing capabilities 
are probably the best in the market and it is very easy to learn. 

 

My teachers in piano are concert pianists (Denis Zhdanov and Elina Akselrud, 
both Lucerne, Switzerland). My aim here is mainly write educational scores 
based on such teaching for beginners and advanced students of piano, but maybe 
also assist in writing newly composed music.

 

BEGINNER'S QUESTIONS

 

I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled over a 
problem which I could not yet (as a beginner) solve. The music is polyphonic 
with three distinct voices. There is a bass voice, a soprano voice and an alt 
voice. The alt voice uses both clefs in the piano notation: Tremble (G) and 
bass (F).

 

1. Do I have enter two voices for the tremble clef and two voices to the bass 
clef since this alt voice is representedi n both clefs? I would prefer to not 
having to do this to make the alt separate. It just shares both clefs.

 

2. At three occasions, the alt voice crosses both clefs in the middle and the 
beam connecting the pitches of this voice must be beween both clefs or also 
cross the clefs.

 

3. Besides coloring the different voices for better readability, I also want to 
indicate fingering for each vfoice -- which changes for each voice between left 
and right hand. How can I indicate which hand to use when a fingering number is 
assigned? Here, this is quite important as it is not always obvious. I want to 
either use an indication such as RH or LH (right or left hand), or a certain 
style or color for the fingering.


Thank you in advance for any feedback.

 

Have fun and enjoy music

Roland

 

 

 

 

\version "2.19.49"

\header {
  
}


\new PianoStaff <<
   \new Staff = "upper" <<
 \time 4/4
 \key f \minor
 \new Voice = "soprano"
 { \voiceOne \relative c'' {
   
   f4 f f f }
 }
 
 \new Voice = "alto"
 { \voiceTwo \relative c'' {
   
   aes4 aes aes aes }
 }  
 
   >>
   \new Staff = "lower" <<
 \time 4/4
 \key f \minor
 \clef bass
 \new Voice = "tenor"
 { \voiceOne \relative c {
   
   c4 c c c }
 }
 
 \new Voice = "bass"
 { \voiceTwo \relative c {
   
   f,4 f f f }
   
 }
   >>

 >>
 
\layout {
 indent = #0
   }


%{
convert-ly.py (GNU LilyPond) 2.19.80  convert-ly.py: Processing `'...
Applying conversion: 2.19.2, 2.19.7, 2.19.11, 2.19.16, 2.19.22,
2.19.24, 2.19.28, 2.19.29, 2.19.32, 2.19.40, 2.19.46, 2.19.49
%}


%{
convert-ly.py (GNU LilyPond) 2.19.80  convert-ly.py: Processing `'...
Applying conversion: The document has not been changed.
%}


Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Pierre Perol-Schneider
Hi Roland,
Here's  a template, made as clear as possible, in a fixed mode (no
relative).
(First measures taken from:
https://imslp.simssa.ca/files/imglnks/usimg/9/9b/IMSLP411479-PMLP05948-bach-wtk-ur-1.pdf
)
HTH,
Cheers,
Pierre



Le jeu. 21 mai 2020 à 15:34, Hans Åberg  a écrit :

>
> > On 21 May 2020, at 14:53, R.H.  wrote:
> >
> > I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled over
> a problem which I could not yet (as a beginner) solve.
>
> One way to learn is looking at examples, here is one for BWV 861 instead
> of BWV 854:
>
> http://lilypond.org/doc/v2.19/Documentation/essay/engraved-examples-_0028bwv-861_0029
>
>
>
>
\version "2.20.0"
%\pointAndClickOff <= at the end

rhSpoprano = \fixed c' {
  | % mes.1
R1
  | % mes.2
d'4\rest d'8\rest b cis'4 d'16\rest fis gis ais
  | % mes.3
b16 ais b cis' dis' e' fis' dis' b a b cis' b a b cis'
  | % mes.4
s1
  | % mes.5
s1
  | % mes.6
s1
  | % mes.7
s1
  | % mes.8
s1
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}

rhAlto = \fixed c' {
  | % mes.1
e4\rest e8\rest e fis4 e16\rest b, cis dis 
  | % mes.2
e16 dis e fis gis a b gis e dis e fis e dis e fis
  | % mes.3
dis16 cis dis e fis gis a fis gis8 \change Staff = "LH" \stemUp b, s4
  | % mes.4
s1
  | % mes.5
s1
  | % mes.6
s1
  | % mes.7
s1
  | % mes.8
s1
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}  

lhAlto = {
  | % mes.1
R1  
  | % mes.2
R1 
  | % mes.3
s2. e'4~
  | % mes.4
1
  | % mes.5
s1
  | % mes.6
s1
  | % mes.7
s1
  | % mes.8
s1
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}  


lhBasse = {
  | % mes.1
s1  
  | % mes.2
s1
  | % mes.3
d2\rest b,4\rest b,8\rest e
  | % mes.4
s1
  | % mes.5
s1
  | % mes.6
s1
  | % mes.7
s1
  | % mes.8
s1
  | % mes.9
s1
  | % mes.10
s1
  | % mes.11
s1 
  | % mes.12
s1
  | % mes.13
s1
  | % mes.14
s1
  | % mes.15
s1
  | % mes.16
s1
  | % mes.17
s1 
  | % mes.18
s1 
  | % mes.19
s1
  | % mes.20
s1
  | % mes.21
s1
  | % mes.22
s1
  | % mes.23
s1
  | % mes.24
s1
  | % mes.25
s1 
  | % mes.26
s1
  | % mes.27
s1
  | % mes.28
s1 
  | % mes.29
s1
  \bar "|."
}

\paper {
  page-count = 2
  ragged-last-bottom = ##f
}

\header {
  title = "Das wohltemperierte Klavier I"
  piece = "Fuga IX"
  opus = "BWV 854"
  instrument = "Piano"
}

\score {
  \new PianoStaff <<
\new Staff = RH <<
  \new Voice { \key e\major \voiceOne \rhSpoprano }
  \new Voice { \key e\major \voiceTwo \rhAlto }
>>
\new Staff = LH \with { \clef F } <<
  \new Voice { \key e\major \voiceOne \lhAlto }
  \new Voice { \key e\major \voiceTwo \lhBasse }
>>
  >>
  \layout {
system-count = 12
  }
  \midi {
\tempo 4 = 108
  }
}

Re: Identify included files

2020-05-21 Thread David Kastrup
antlists  writes:

> On 21/05/2020 01:49, David Wright wrote:
>> I don't understand your equivalence between .ily and .h files. The
>> .ily file(s) can contain just as much code as the .ly file(s), whereas
>> .h files don't contain any code at all (in the sense of producing
>> executable code for the next stage.
>
> a) just like .h files, .ily files can't be passed directly to a
> compiler for compilation.
>
> b) who says .h files don't produce executable code? They often contain
> code, sometimes entire functions.

The point of .h files is that they are intended to be included by more
than one compilation unit resulting in an executable.

As such, they are limited with regard to the code they can contain.
They can contain

a) inline function definitions: those can occur in multiple compilation
units as long as they are identical.
b) static inline: do not even need to be identical, are per-unit.
c) static data definitions, are per-unit.
d) template function definitions

I don't think that .ly/.ily is all that comparable here...

-- 
David Kastrup



Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Hans Åberg


> On 21 May 2020, at 14:53, R.H.  wrote:
> 
> I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled over a 
> problem which I could not yet (as a beginner) solve.

One way to learn is looking at examples, here is one for BWV 861 instead of BWV 
854:
http://lilypond.org/doc/v2.19/Documentation/essay/engraved-examples-_0028bwv-861_0029





Re: registering a composition

2020-05-21 Thread Tim McNamara



> On May 21, 2020, at 3:34 AM, Valentin Villenave  
> wrote:
> 
> On 5/21/20, Francesco Petrogalli  wrote:
>> I have written it with lilypond, but it hasn't been performed yet. I
>> wanted to secure the copyright before performing it. Given that there
>> is no performing artist yet, there is no recording, so I cannot
>> register it with ASCAP. Have I got this right?
> 
> No registration anywhere is needed to "secure the copyright". All you
> need to have is a way of proving your anteriority if anyone were to
> come and claim they’ve written it instead of you. There are several
> commercial services that can do that for you (though many are scams),
> but there are cheaper and simpler ways; a simple web search brought me
> to the following page:
> https://copyright.co.uk/legal-copyright-law.html

Copyright law is nationally controlled, not internationally controlled for the 
most part.  There is a degree of reciprocity.  In the US, copyright is 
automatically granted to creators but copyright is also divided- the creator 
has rights but so does the publisher, which matters in terms of royalty 
payments if the work is recorded or performed.  As the saying goes, keep the 
publishing.  Thousands of artists and composers lost out on billions of dollars 
because they signed the publishing away in the early days of their careers in 
the fine print of a recording contract.  This has been standard practice in the 
recording industry since its inception and has beggared many a 
musician/composer.  I do not feel bad at all about the slow death of the major 
labels since the the internet made their business model basically non-viable; 
most of them have been right bastards to artists.  Create your own publishing 
company wholly owned by you.

I don't know about ASCAP; I use BMI and songs can be registered with them prior 
to recording or performance.  ASCAP and BMI seem to work about the same as do 
all the performance rights organizations (PROs) in the US; these only cover 
live performance.  I register my songs when I judge them completed, even though 
no one else will likely ever perform them since I am completely unknown and 
they are usually weird.  I write to amuse myself, mainly.  Recording royalties 
through mechanical licenses in the US are managed almost universally through 
the Harry Fox Agency.

As for proving that you are the originator of a composition, thankfully your 
computer records the creation date of your files.  That will almost certainly 
never be challenged unless you write a hit record and someone decides they want 
a piece of those royalties.  That has led to some truly bizarre examples of 
jurisprudence (suing an artist for plagiarizing themselves, for example; suing 
an artist for writing music that doesn't sound like stuff they've written 
before, etc.).



Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Lukas-Fabian Moser

Hi Roland,

welcome!

I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled 
over a problem which I could not yet (as a beginner) solve. The music 
is polyphonic with three distinct voices. There is a bass voice, a 
soprano voice and an alt voice. The alt voice uses both clefs in the 
piano notation: Tremble (G) and bass (F).


For everybody's convenience, I attached a sample picture (from the Alte 
Gesamtausgabe). I _think_ that where you write "clef" (Schlüssel) you 
actually mean "staff" (Zeile or System - note there's a discrepancy in 
German/English usage of the word "system").


1. Do I have enter two voices for the tremble clef and two voices to 
the bass clef since this alt voice is representedi n both clefs? I 
would prefer to not having to do this to make the alt separate. It 
just shares both clefs.


No, in a piece like this (that has exactly three voices and stays like 
this - much easier to deal with than the multi-voice mess one often 
encounters in 19th century music!), it's almost certainly best to put 
each voice into one seperate variable:


\version "2.20"

\language "deutsch"

soprano =
{
  R1
  r4 r8 h' cis''4
}

alto =
\relative {
  r4 r8 e' fis4 r16 h,16 cis d
}

basso =
{
  R1*2
  r2 r4 r8 e
  fis4
}

\new PianoStaff
<<
  \new Staff
  <<
    \soprano \\
    \alto
  >>
  \new Staff \with { \clef bass } \basso
>>

2. At three occasions, the alt voice crosses both clefs in the middle 
and the beam connecting the pitches of this voice must be beween both 
clefs or also cross the clefs.
This can be done using \change Staff: 
http://lilypond.org/doc/v2.20/Documentation/notation/common-notation-for-keyboards#changing-staff-manually


3. Besides coloring the different voices for better readability, I 
also want to indicate fingering for each vfoice -- which changes for 
each voice between left and right hand. How can I indicate which hand 
to use when a fingering number is assigned? Here, this is quite 
important as it is not always obvious. I want to either use an 
indication such as RH or LH (right or left hand), or a certain style 
or color for the fingering.


I never did this in LilyPond, but I'm sure some of the folks here on the 
list will be able to help out.


Best
Lukas




Re: New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread Jacques Menu
Hello Roland,

It will be easier for the people on this list to help you if you can post an 
image of the score look you’re aiming at.

JM

> Le 21 mai 2020 à 14:53, R.H.  a écrit :
> 
> INTRO
> 
> A big "Hello" to this list!
> 
> I am new to Lilypond and worked through the intro documentation. My name is 
> Roland Hüttmann from Switzerland. I am an amateur piano player for almost all 
> genres, but mainly classical music, currently learning the Prelude and Fugue 
> IX of the Well Tempered Clavier Nr. 1 from J.S.Bach, (BWV 584). 
> 
> In coding I have quite some experience mainly working with the free community 
> edition of Livecode.com which I very much enjoy this language and believe it 
> can be used in conjunction with Lilypond as it's text processing capabilities 
> are probably the best in the market and it is very easy to learn. 
> 
> My teachers in piano are concert pianists (Denis Zhdanov and Elina Akselrud, 
> both Lucerne, Switzerland). My aim here is mainly write educational scores 
> based on such teaching for beginners and advanced students of piano, but 
> maybe also assist in writing newly composed music.
> 
> BEGINNER'S QUESTIONS
> 
> I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled over a 
> problem which I could not yet (as a beginner) solve. The music is polyphonic 
> with three distinct voices. There is a bass voice, a soprano voice and an alt 
> voice. The alt voice uses both clefs in the piano notation: Tremble (G) and 
> bass (F).
> 
> 1. Do I have enter two voices for the tremble clef and two voices to the bass 
> clef since this alt voice is representedi n both clefs? I would prefer to not 
> having to do this to make the alt separate. It just shares both clefs.
> 
> 2. At three occasions, the alt voice crosses both clefs in the middle and the 
> beam connecting the pitches of this voice must be beween both clefs or also 
> cross the clefs.
> 
> 3. Besides coloring the different voices for better readability, I also want 
> to indicate fingering for each vfoice -- which changes for each voice between 
> left and right hand. How can I indicate which hand to use when a fingering 
> number is assigned? Here, this is quite important as it is not always 
> obvious. I want to either use an indication such as RH or LH (right or left 
> hand), or a certain style or color for the fingering.
> 
> Thank you in advance for any feedback.
> 
> Have fun and enjoy music
> Roland
> 
> 
> 
> 



Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a compiler 
for compilation.


b) who says .h files don't produce executable code? They often contain 
code, sometimes entire functions.


I understand the equivalence exactly - it's what you DO to the file.

You're thinking "what you *should* put in the file". Since when have 
people done what they *should*?


Cheers,
Wol



New User: How can one separate voice share different clefs in a piano fugue?

2020-05-21 Thread R.H.
INTRO

A big "Hello" to this list!

I am new to Lilypond and worked through the intro documentation. My name is
Roland Hüttmann from Switzerland. I am an amateur piano player for almost
all genres, but mainly classical music, currently learning the Prelude and
Fugue IX of the Well Tempered Clavier Nr. 1 from J.S.Bach, (BWV 584).

In coding I have quite some experience mainly working with the free
community edition of Livecode.com which I very much enjoy this language and
believe it can be used in conjunction with Lilypond as it's text processing
capabilities are probably the best in the market and it is very easy to
learn.

My teachers in piano are concert pianists (Denis Zhdanov and Elina
Akselrud, both Lucerne, Switzerland). My aim here is mainly write
educational scores based on such teaching for beginners and advanced
students of piano, but maybe also assist in writing newly composed music.

BEGINNER'S QUESTIONS

I started to encode the Bach's Fugue Nr. IX in Lilypond. I stumbled over a
problem which I could not yet (as a beginner) solve. The music is
polyphonic with three distinct voices. There is a bass voice, a soprano
voice and an alt voice. The alt voice uses both clefs in the piano
notation: Tremble (G) and bass (F).

1. Do I have enter two voices for the tremble clef and two voices to the
bass clef since this alt voice is representedi n both clefs? I would prefer
to not having to do this to make the alt separate. It just shares both
clefs.

2. At three occasions, the alt voice crosses both clefs in the middle and
the beam connecting the pitches of this voice must be beween both clefs or
also cross the clefs.

3. Besides coloring the different voices for better readability, I also
want to indicate fingering for each vfoice -- which changes for each voice
between left and right hand. How can I indicate which hand to use when a
fingering number is assigned? Here, this is quite important as it is not
always obvious. I want to either use an indication such as RH or LH (right
or left hand), or a certain style or color for the fingering.

Thank you in advance for any feedback.

Have fun and enjoy music
Roland


Re: show key signature but also alterations

2020-05-21 Thread David Kastrup
David Kastrup  writes:

> Pierre Perol-Schneider  writes:
>
>> Hi Frédéric,
>> If you want to get a custom style, see Simon's here:
>> http://lilypond.1069038.n5.nabble.com/Custom-accidental-styles-td190776.html#a190788
>>
>> Otherwise you could do:
>>
>> \version "2.20.0"
>>
>> \fixed c' {
>>   \accidentalStyle dodecaphonic
>>   \key d\major
>>   c' d' e' f'
>>   cis' dis' eis' fis'
>>   ces' des' es' fes'
>> }
>>
>> \layout {
>>   \context {
>> \Voice
>> \override Accidental.stencil =
>>   #(lambda (grob)
>>   (let ((glyph (ly:grob-property grob 'glyph-name)))
>>(cond
>> ((equal? glyph "accidentals.natural")
>>(ly:stencil? #f))
>>(else (ly:accidental-interface::print grob)
>>   }
>> }
>
> Seems easier to just do
>
> \key d\major
> \set Staff.keyAlterations = #'()
> \accidentalStyle dodecaphonic
>
> Namely lie about the printed key signature.

Obviously not \accidentalStyle dodecaphonic though.
\accidentalStyle forget I think?

-- 
David Kastrup



Re: show key signature but also alterations

2020-05-21 Thread David Kastrup
Pierre Perol-Schneider  writes:

> Hi Frédéric,
> If you want to get a custom style, see Simon's here:
> http://lilypond.1069038.n5.nabble.com/Custom-accidental-styles-td190776.html#a190788
>
> Otherwise you could do:
>
> \version "2.20.0"
>
> \fixed c' {
>   \accidentalStyle dodecaphonic
>   \key d\major
>   c' d' e' f'
>   cis' dis' eis' fis'
>   ces' des' es' fes'
> }
>
> \layout {
>   \context {
> \Voice
> \override Accidental.stencil =
>   #(lambda (grob)
>   (let ((glyph (ly:grob-property grob 'glyph-name)))
>(cond
> ((equal? glyph "accidentals.natural")
>(ly:stencil? #f))
>(else (ly:accidental-interface::print grob)
>   }
> }

Seems easier to just do

\key d\major
\set Staff.keyAlterations = #'()
\accidentalStyle dodecaphonic

Namely lie about the printed key signature.

-- 
David Kastrup



Re: registering a composition

2020-05-21 Thread Pierre Perol-Schneider
See also: http://lsr.di.unimi.it/LSR/Item?id=1113
Cheers,
Pierre

Le jeu. 21 mai 2020 à 11:04, Federico Bruni  a écrit :

> Il giorno gio 21 mag 2020 alle 10:33, Valentin Villenave
>  ha scritto:
> > All you
> > need to have is a way of proving your anteriority if anyone were to
> > come and claim they’ve written it instead of you.
>
> A modern alternative to sending a sealed package is digital
> watermarking.
>
> Francesco, as you are italian, you may want to try this "almost free"
> service:
> https://www.costozero.org/wai/copyzero.html
> https://www.costozero.org/wai/u2.html
>
> or buy a smart card to do it yourself
>
>
>
>
>


Re: italian list or forum

2020-05-21 Thread Karlin High

On 5/21/2020 4:37 AM, Federico Bruni wrote:

2. Google group



Con: Google might dismiss it one day;


I administer a small (~100 member) Google Group list for others in my 
occupation. It works OK for what it is, although it can get badly 
confused when someone wants to join with a non-Google email that's had a 
Google account created for it.


Google tried to kill off the Groups product at the introduction of their 
Google+ social network. But somehow, Groups has outlived its intended 
successor. Just don't expect any improvements to Groups unless it's by 
accident.

--
Karlin High
Missouri, USA



Re: show key signature but also alterations

2020-05-21 Thread Pierre Perol-Schneider
Hi Frédéric,
If you want to get a custom style, see Simon's here:
http://lilypond.1069038.n5.nabble.com/Custom-accidental-styles-td190776.html#a190788

Otherwise you could do:

\version "2.20.0"

\fixed c' {
  \accidentalStyle dodecaphonic
  \key d\major
  c' d' e' f'
  cis' dis' eis' fis'
  ces' des' es' fes'
}

\layout {
  \context {
\Voice
\override Accidental.stencil =
  #(lambda (grob)
  (let ((glyph (ly:grob-property grob 'glyph-name)))
   (cond
((equal? glyph "accidentals.natural")
   (ly:stencil? #f))
   (else (ly:accidental-interface::print grob)
  }
}

HTH, Cheers,
Pierre

Le jeu. 21 mai 2020 à 11:06, Frédéric  a écrit :

> Hi David,
>
> > \fixed c'
> > { \key d\major \accidentalStyle dodecaphonic
> >   c' d' e' f'
> >   cis' dis' eis' fis'
> >   ces' des' es' fes'
> > }
>
>
> I tested that one already but I do not want the natural signs.
> Thanks
>
>


Re: italian list or forum

2020-05-21 Thread Davide Liessi
Il giorno gio 21 mag 2020 alle ore 11:42 Federico Bruni
 ha scritto:
> I think it's the moment to create a new italian
> "community place".
> Please let me know if you are interested.

I'm interested and I believe it would attract many users.

> What would you suggest to use?

I would prefer

> 1. Mailing list on gnu.org (as this one)

Best wishes.
Davide



Re: italian list or forum

2020-05-21 Thread Luca Rossetto Casel

Dear Federico and all,

    I'm interested to partecipate too! On choosing between a mailing 
list or a Google group, I have no particular preferences.


Thnak you!

    Luca

Il 21/05/20 11:37, Federico Bruni ha scritto:

This is a message for the italian users subscribed to this mailing list.
Some years ago I asked if anybody were interested in creating an 
italian mailing list. We were just three :-( so I gave up:

https://lists.gnu.org/archive/html/lilypond-user/2011-12/msg00653.html

As I'm seeing more and more italians here (and also on Frescobaldi 
mailing list), I think it's the moment to create a new italian 
"community place".

Please let me know if you are interested.

What would you suggest to use?
Some options:

1. Mailing list on gnu.org (as this one)
Pro: supported by GNU project. We are confident the archive of 
messages will remain.

Con: no web interface; "old-fashioned" archive with poor usability.

2. Google group
Pro: can be used as a normal mailing list as well as a forum on the 
browser.
Con: Google might dismiss it one day; I'm not fond of being logged in 
with a google account with my browser, so I would use it as a mailing 
list.


Other options?

I'm for 1.

Let me know your thoughts.

Ciao
Federico









Re: italian list or forum

2020-05-21 Thread Francesco Napoleoni
Hi Federico

In data giovedì 21 maggio 2020 11:37:34 CEST, Federico Bruni ha scritto:
> This is a message for the italian users subscribed to this mailing list.
> Some years ago I asked if anybody were interested in creating an
> italian mailing list.
> [...]
> Please let me know if you are interested.

Yes, I am!! :-)

> What would you suggest to use?
> Some options:
> 
> 1. Mailing list on gnu.org (as this one)
> [...]
> I'm for 1.

Me too. The less Google (and other pervasive monsters) creeps into my life, 
the better I feel. ;-)

That said, I just have no idea on how to create this list, but I also see many 
Italians interested in Lilypond and I think it would be great if we could get 
together.

ciao
Francesco Napoleoni






italian list or forum

2020-05-21 Thread Federico Bruni

This is a message for the italian users subscribed to this mailing list.
Some years ago I asked if anybody were interested in creating an 
italian mailing list. We were just three :-( so I gave up:

https://lists.gnu.org/archive/html/lilypond-user/2011-12/msg00653.html

As I'm seeing more and more italians here (and also on Frescobaldi 
mailing list), I think it's the moment to create a new italian 
"community place".

Please let me know if you are interested.

What would you suggest to use?
Some options:

1. Mailing list on gnu.org (as this one)
Pro: supported by GNU project. We are confident the archive of messages 
will remain.

Con: no web interface; "old-fashioned" archive with poor usability.

2. Google group
Pro: can be used as a normal mailing list as well as a forum on the 
browser.
Con: Google might dismiss it one day; I'm not fond of being logged in 
with a google account with my browser, so I would use it as a mailing 
list.


Other options?

I'm for 1.

Let me know your thoughts.

Ciao
Federico






Re: show key signature but also alterations

2020-05-21 Thread Frédéric
Hi David,

> \fixed c'
> { \key d\major \accidentalStyle dodecaphonic
>   c' d' e' f'
>   cis' dis' eis' fis'
>   ces' des' es' fes'
> }


I tested that one already but I do not want the natural signs.
Thanks



Re: registering a composition

2020-05-21 Thread Federico Bruni
Il giorno gio 21 mag 2020 alle 10:33, Valentin Villenave 
 ha scritto:

All you
need to have is a way of proving your anteriority if anyone were to
come and claim they’ve written it instead of you.


A modern alternative to sending a sealed package is digital 
watermarking.


Francesco, as you are italian, you may want to try this "almost free" 
service:

https://www.costozero.org/wai/copyzero.html
https://www.costozero.org/wai/u2.html

or buy a smart card to do it yourself






Re: show key signature but also alterations

2020-05-21 Thread David Kastrup
Frédéric  writes:

> Hi,
> I'm writing a scale book. I would like to have the key signature but
> also an accidentals in front of each note. For example, in d \major, I
> would like to print f# c# as key signature and a # in front of each f
> and c.
> I see 2 possibilities:
> 1. define a custom Key_engraver which just prints the key and do not
> set the alterations.
> 2. define a special accidental rule that considers that the key
> signature is blank
>
> However, I was not able to do any of those.
>
> Any idea?

\fixed c'
{ \key d\major \accidentalStyle dodecaphonic
  c' d' e' f'
  cis' dis' eis' fis'
  ces' des' es' fes'
}

-- 
David Kastrup



Re: registering a composition

2020-05-21 Thread Valentin Villenave
On 5/21/20, Francesco Petrogalli  wrote:
> I have written it with lilypond, but it hasn't been performed yet. I
> wanted to secure the copyright before performing it. Given that there
> is no performing artist yet, there is no recording, so I cannot
> register it with ASCAP. Have I got this right?

No registration anywhere is needed to "secure the copyright". All you
need to have is a way of proving your anteriority if anyone were to
come and claim they’ve written it instead of you. There are several
commercial services that can do that for you (though many are scams),
but there are cheaper and simpler ways; a simple web search brought me
to the following page:
https://copyright.co.uk/legal-copyright-law.html

“““
It is essential to prove the date of creation of the work. An easy but
somewhat unreliable method consists of posting a copy of your work to
yourself in a sealed envelope just after completion, and never opening
it. The postal service’s date stamp will theoretically prove the date.
This can then be opened in the presence of a judge or solicitor for an
official confirmation of the date. For this to work, the envelope seal
must be intact and not appear to have been tampered with.
”””

Now, before even considering registering with ASCAP, you should
perhaps ask yourself if you’re _really_ sure that you want to publish
under "All rights reserved" (which would prevent a _lot_ of people
from simply performing your work). There are many alternative licenses
out there, that may authorize "not commercial" uses (whatever that
means), copying, or even making new works based on your work while
still having to credit you appropriately. I’m just saying that you may
want to give this at least a thought before closing that door forever.

Cheers,
-- V.



show key signature but also alterations

2020-05-21 Thread Frédéric
Hi,
I'm writing a scale book. I would like to have the key signature but
also an accidentals in front of each note. For example, in d \major, I
would like to print f# c# as key signature and a # in front of each f
and c.
I see 2 possibilities:
1. define a custom Key_engraver which just prints the key and do not
set the alterations.
2. define a special accidental rule that considers that the key
signature is blank

However, I was not able to do any of those.

Any idea?

Thanks,

F