show key signature but also alterations
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
Re: registering a composition
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.
Re: show key signature but also alterations
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
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
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
italian list or forum
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
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
Re: italian list or forum
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
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: show key signature but also alterations
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
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: registering a composition
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: show key signature but also alterations
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: show key signature but also alterations
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
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
Re: Identify included files
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
Re: New User: How can one separate voice share different clefs in a piano fugue?
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: New User: How can one separate voice share different clefs in a piano fugue?
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: registering a composition
> 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?
> 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: Identify included files
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?
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: New User: How can one separate voice share different clefs in a piano fugue?
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: Identify included files
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: Identify included files
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: New User: How can one separate voice share different clefs in a piano fugue?
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: New User: How can one separate voice share different clefs in a piano fugue?
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
> 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?
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: New User: How can one separate voice share different clefs in a piano fugue?
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: Identify included files
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?
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 > >
Very inconsistent vertical spacing from lilypond book and LaTeX
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: registering a composition
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
[ignore] testing email access
This email hasn’t been posting for several months. Trying again.
Re: Very inconsistent vertical spacing from lilypond book and LaTeX
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.
Re: Position of accidentals in chords
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: show key signature but also alterations
> > \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: Very inconsistent vertical spacing from lilypond book and LaTeX
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
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: show key signature but also alterations
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: show key signature but also alterations
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: Identify included files
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
> \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
Tie/slur variable thickness vs shape
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
bug in \caps
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
Re: bug in \caps
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 > >
Re: bug in \caps
> \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