Re: considering getting a new mac that has the new M chip; does Lilypond install/run ok?
Yeah, I don't use Frescobaldi, just Lilypond. On Fri, Sep 24, 2021 at 5:52 PM Mark Probert wrote: > > You wrote: > > > > I'm considering getting a new mac that has the new M chip; does > > Lilypond install/run ok? > > > Perfectly. The "trick" is to install it using MacPorts not Homebrew. I > have been using 2.22.1 with added fonts and stuff and it works > perfectly. > > Oh. This is the command-line version, not the GUI, but for me that -is- > lilypond :-) > > This on a 2021 Mac Mini M1 with 16Gb > > Hope this helps > > ..mark.
Re: considering getting a new mac that has the new M chip; does Lilypond install/run ok?
You wrote: > > I'm considering getting a new mac that has the new M chip; does > Lilypond install/run ok? > Perfectly. The "trick" is to install it using MacPorts not Homebrew. I have been using 2.22.1 with added fonts and stuff and it works perfectly. Oh. This is the command-line version, not the GUI, but for me that -is- lilypond :-) This on a 2021 Mac Mini M1 with 16Gb Hope this helps ..mark.
Re: considering getting a new mac that has the new M chip; does Lilypond install/run ok?
Hi Matt; Thanks for your data point. My macbook pro is era 2013 and the battery is no longer working, using external power, and it is now quite slow (just over the past few weeks). I have to use an external fan and even then the heat gets so high that it slows down. I'm looking into Docker now. The last time I used Docker was shortly after it first became popular and I can't remember how to do anything :-) If I get a new Mac using the M1 chip, then I won't have to use Docker, but it will be a good brain exercise. Thanks, Ken On Fri, Sep 24, 2021 at 4:55 PM Matthew Fong wrote: > > Hello Kenneth, > > I've installed LilyPong from MacPorts, along with MacTeX on my M1 MacMini. > Alas, it's no faster than my 2019 iMac for compilation. But far more energy > efficient, and no fans at full speed when compiling hundreds of files for PDF > output. It's a wonderful computing experience. > > > mattfong > > On Fri, Sep 24, 2021 at 4:08 PM Kenneth Wolcott > wrote: >> >> HI; >> >> I'm considering getting a new mac that has the new M chip; does >> Lilypond install/run ok? >> >> If not, then I'll consider using a Docker container that runs Linux. >> >> Thanks, >> Ken Wolcott >>
Re: considering getting a new mac that has the new M chip; does Lilypond install/run ok?
Hello Kenneth, I've installed LilyPong from MacPorts, along with MacTeX on my M1 MacMini. Alas, it's no faster than my 2019 iMac for compilation. But far more energy efficient, and no fans at full speed when compiling hundreds of files for PDF output. It's a wonderful computing experience. mattfong On Fri, Sep 24, 2021 at 4:08 PM Kenneth Wolcott wrote: > HI; > > I'm considering getting a new mac that has the new M chip; does > Lilypond install/run ok? > > If not, then I'll consider using a Docker container that runs Linux. > > Thanks, > Ken Wolcott > >
considering getting a new mac that has the new M chip; does Lilypond install/run ok?
HI; I'm considering getting a new mac that has the new M chip; does Lilypond install/run ok? If not, then I'll consider using a Docker container that runs Linux. Thanks, Ken Wolcott
Re: musicXML: 2 staves, piano
On 9/24/21, 3:52 PM, "Lukas-Fabian Moser" wrote: > I was tempted to offer a very high bounty to get a working xml-export. > Alas, we already have > https://gitlab.com/lilypond/lilypond/-/issues/665 and the there > offered bounties are not that low ... One thing I noted while skimming through that issue and the linked conversations: There were statements along the lines of "once we can use guile2, it gets easier" (because of the sxml module). Now we know since (I think) May that it is possible to produce a production-quality LilyPond using Guile 2.2. (I used Jonas' experimental binary release for quite some time over the summer in my everyday work, without any problems.) So, while there are no regular official binary releases with Guile2 yet, I think it would now be quite acceptable to use Guile2 features in a possible XML export engine. I totally agree that it would be acceptable to use Guile2 features. Unfortunately, I think that Guile2 only helps with the Scheme structure to xml conversion, making the "routine" part of the programming much easier. I don't think that Guile2 will provide any help with what I think the challenging parts of the problem are -- converting Lilypond data structures into an appropriate Scheme structure for moving to xml. But I could be completely wrong. Jacques certainly would know more about this than me. Thanks, Carl
Re: musicXML: 2 staves, piano
I was tempted to offer a very high bounty to get a working xml-export. Alas, we already have https://gitlab.com/lilypond/lilypond/-/issues/665 and the there offered bounties are not that low ... One thing I noted while skimming through that issue and the linked conversations: There were statements along the lines of "once we can use guile2, it gets easier" (because of the sxml module). Now we know since (I think) May that it is possible to produce a production-quality LilyPond using Guile 2.2. (I used Jonas' experimental binary release for quite some time over the summer in my everyday work, without any problems.) So, while there are no regular official binary releases with Guile2 yet, I think it would now be quite acceptable to use Guile2 features in a possible XML export engine. Lukas
Re: Three voices in one hand (staff)
On Fri, Sep 24, 2021 at 10:58 AM Xavier Scheuer wrote: > > On Fri, 24 Sept 2021 at 18:41, Knute Snortum wrote: > > > > I'm having trouble getting LilyPond to do what I want. I have three > > voices in one hand (staff). I want them to merge and line up, but I > > can only get one or the other. > > > > (snip) > > > > I've attached a picture of the output. Any ideas on how to merge > > without a shift? > > Hello, > > This is maybe a bug. > Anyway, use of \once \override NoteColumn.ignore-collision = ##t seems to be > a good workaround here. > > \new Staff << > \clef bass > \new Voice { > \voiceOne > \once \override NoteColumn.ignore-collision = ##t > g16^"ok" b g b > } > \new Voice { > \voiceOne > e,4 > } > \new Voice { > \voiceTwo > e,16 b,8 b,16 > } Thanks, that did it!
Re: musicXML: 2 staves, piano
On 9/24/21, 2:52 PM, "Thomas Morley" wrote: Am Fr., 24. Sept. 2021 um 22:33 Uhr schrieb Carl Sorensen : > > We have automatic tests for xml2ly that check compliance with the musicXML standard. > > I'm fairly certain it's a problem with your musicXML, rather than xml2ly. > > Unfortunately, I'm not expert enough on musicXML to find the mistakes. > > Why are your writing your own musicXML and then using xml2ly, instead of just writing in lilypond? > > Carl > > > Hi Carl, iiuc, xml2ly converts an .xml-file to a .ly-file, not the other way round. Yes, I know this. As far as I can see, Dmitry is writing musicXML files by hand (which I cannot imagine doing) and then importing them to lilypond using xml2ly. Speaking of it, I recently tested several methods to convert ly to xml: (1) openlilylib (with lilypond-export, Jan-Peter) (2) python-ly (3) Frescobaldi (4) de Wolff (https://github.com/de-wolff/lilypond.git) and converted the resulting files back to ly with musicxml2ly (builtin) and xml2ly (https://github.com/grame-cncm/libmusicxml.git, xml2ly by Jacques) The results were terrible :(( I totally agree that the musicXML export tools are really not good at all. I was tempted to offer a very high bounty to get a working xml-export. Alas, we already have https://gitlab.com/lilypond/lilypond/-/issues/665 and the there offered bounties are not that low ... I think that a good musicXML export project is likely a 6-month, full-time project for an expert in lilypond. For that kind of effort, a 1,000 euro bounty is not big. Thanks, Carl
Re: musicXML: 2 staves, piano
Am Fr., 24. Sept. 2021 um 22:33 Uhr schrieb Carl Sorensen : > > We have automatic tests for xml2ly that check compliance with the musicXML > standard. > > I'm fairly certain it's a problem with your musicXML, rather than xml2ly. > > Unfortunately, I'm not expert enough on musicXML to find the mistakes. > > Why are your writing your own musicXML and then using xml2ly, instead of just > writing in lilypond? > > Carl > > > Hi Carl, iiuc, xml2ly converts an .xml-file to a .ly-file, not the other way round. Speaking of it, I recently tested several methods to convert ly to xml: (1) openlilylib (with lilypond-export, Jan-Peter) (2) python-ly (3) Frescobaldi (4) de Wolff (https://github.com/de-wolff/lilypond.git) and converted the resulting files back to ly with musicxml2ly (builtin) and xml2ly (https://github.com/grame-cncm/libmusicxml.git, xml2ly by Jacques) The results were terrible :(( I was tempted to offer a very high bounty to get a working xml-export. Alas, we already have https://gitlab.com/lilypond/lilypond/-/issues/665 and the there offered bounties are not that low ... Cheers, Harm
Re: musicXML: 2 staves, piano
On 9/24/21, 2:37 PM, "Ivanov Dmitry" wrote: On 21-09-24 20:33:05, Carl Sorensen wrote: >Why are your writing your own musicXML and then using xml2ly, instead of just writing in lilypond? I am writing software for harmonization and XML is a better language for computers to read then lilypond. OK. I'm not sure I agree, but that's a personal opinion. I believe you are having the problem because you are misusing musicXML. I think for the piano, you need to have two staves, one for the upper staff, and one for the lower staff. Instead, you only have one staff, and use /backup (which I know was recommended on this list, but I think is not the correct way to do it. Please see this link for an example of how piano music is stored in musicXML: https://www.w3.org/2021/06/musicxml40/tutorial/notation-basics/ When I'm done looking at this example, it's very hard for me to see that musicXML is easier to deal with than lilypond syntax... I hope this link will help you. Carl
Re: musicXML: 2 staves, piano
On 21-09-24 20:33:05, Carl Sorensen wrote: Why are your writing your own musicXML and then using xml2ly, instead of just writing in lilypond? I am writing software for harmonization and XML is a better language for computers to read then lilypond. signature.asc Description: PGP signature
Re: musicXML: 2 staves, piano
We have automatic tests for xml2ly that check compliance with the musicXML standard. I'm fairly certain it's a problem with your musicXML, rather than xml2ly. Unfortunately, I'm not expert enough on musicXML to find the mistakes. Why are your writing your own musicXML and then using xml2ly, instead of just writing in lilypond? Carl
musicXML: 2 staves, piano
I was experimenting with a simple musicXML for a stadard piano score with 2 staves. I attached the sample file. Everything seems to be fine, but after I run musicxml2ly ./hello1.xml lilypond ./hello1.ly I get incorrect result. Is it musicxml2ly working incorrectly? hello1.xml Description: XML document hello1.pdf Description: Adobe PDF document signature.asc Description: PGP signature
musicXML: 2 voices in 1 measurement
Re: Three voices in one hand (staff)
On Fri, 24 Sept 2021 at 18:41, Knute Snortum wrote: > > I'm having trouble getting LilyPond to do what I want. I have three > voices in one hand (staff). I want them to merge and line up, but I > can only get one or the other. > > (snip) > > I've attached a picture of the output. Any ideas on how to merge > without a shift? Hello, This is maybe a bug. Anyway, use of \once \override NoteColumn.ignore-collision = ##t seems to be a good workaround here. \new Staff << \clef bass \new Voice { \voiceOne \once \override NoteColumn.ignore-collision = ##t g16^"ok" b g b } \new Voice { \voiceOne e,4 } \new Voice { \voiceTwo e,16 b,8 b,16 } >> Cheers, Xavier -- Xavier Scheuer
Re: Reverse doit?
> On 24 Sep 2021, at 01:01, Calvin Ransom wrote: > > I’m trying to help a student write this out, does anyone know how I didn’t > see anything in the notation reference but maybe I just looked over it? > > Regards, > Calvin Ransom Hi Calvin, Back in 2009 there was a thread on it on this list where the 'reverse doit’ was referenced as a ‘scoop’. It contains several suggestions on how to hack lilypond to make it print the desired symbol. https://lists.gnu.org/archive/html/lilypond-user/2009-06/msg00124.html
Three voices in one hand (staff)
I'm having trouble getting LilyPond to do what I want. I have three voices in one hand (staff). I want them to merge and line up, but I can only get one or the other. %%% \version "2.22.1" voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) % How I want it to look, but with another voice \new Staff << \new Voice { \voiceThree \clef bass e,4 } \new Voice { \voiceFour e,16 b,8 b,16 } >> % The g16 shifts to the right \new Staff << \new Voice { \voiceFive \clef bass g16^"g16 shifts" b g b } \new Voice { \voiceThree e,4 } \new Voice { \voiceFour e,16 b,8 b,16 } >> % The two e,s don't merge \new Staff << \new Voice { \voiceThree \clef bass g16^"e4 shifts" b g b } \new Voice { \voiceFive e,4 } \new Voice { \voiceFour e,16 b,8 b,16 } >> %%% I've attached a picture of the output. Any ideas on how to merge without a shift? -- Knute Snortum
Re: Rehearsal marks and tempo markings
Thank you Jean ! Le 24/09/2021 à 15:03, Jean Abou Samra a écrit : Le 23/09/2021 à 23:34, Jean Abou Samra a écrit : Le 23/09/2021 à 00:47, Nuno Trocado a écrit : Perhaps you want the tempo mark to start on the first note rather than the time signature: Not really... I'd like to have the tempo mark aligning to the time signature, but shifting a little horizontally if it collides with a rehearsal mark. Here is my attempt at automating it. […] Below is a simplified version, solving a few issues. \version "2.22.1" #(define (Fix_tempo_mark_collision_engraver context) (let ((tempo #f) (mark #f)) (make-engraver (acknowledgers ((metronome-mark-interface engraver grob source-engraver) (set! tempo grob)) ((mark-interface engraver grob source-engraver) (set! mark grob))) ((stop-translation-timestep engraver) (if (and tempo mark) (let* ((tempo-stencil (ly:grob-property tempo 'stencil)) (tempo-width (interval-length (ly:stencil-extent tempo-stencil X))) (mark-stencil (ly:grob-property mark 'stencil)) (mark-width (interval-length (ly:stencil-extent mark-stencil X))) (mark-alignment (ly:grob-property mark 'self-alignment-X)) (padding (ly:grob-property tempo 'padding)) (mark-relative-end (/ mark-width (+ mark-width padding tempo-width))) (mark-end-index (1- (* 2 mark-relative-end))) (new-alignment (interval-index (cons -1 mark-end-index) mark-alignment))) (set! (ly:grob-property mark 'stencil) (ly:stencil-stack mark-stencil X RIGHT tempo-stencil padding)) (set! (ly:grob-property mark 'self-alignment-X) new-alignment) (ly:grob-suicide! tempo))) (set! tempo #f) (set! mark #f) \layout { \context { \Score \consists #Fix_tempo_mark_collision_engraver \override MetronomeMark.padding = 0.8 % adjust } } { \clef treble \mark \default \tempo 4 = 120 \time 3/4 \repeat unfold 3 c''4 \mark \default \tempo \markup \column { "Going down" down down… } R2.*4 \mark \default \tempo "Long tempo text" \compressMMRests R2.*5 } Best, Jean
Re: Rehearsal marks and tempo markings
Le 23/09/2021 à 23:34, Jean Abou Samra a écrit : Le 23/09/2021 à 00:47, Nuno Trocado a écrit : Perhaps you want the tempo mark to start on the first note rather than the time signature: Not really... I'd like to have the tempo mark aligning to the time signature, but shifting a little horizontally if it collides with a rehearsal mark. Here is my attempt at automating it. […] Below is a simplified version, solving a few issues. \version "2.22.1" #(define (Fix_tempo_mark_collision_engraver context) (let ((tempo #f) (mark #f)) (make-engraver (acknowledgers ((metronome-mark-interface engraver grob source-engraver) (set! tempo grob)) ((mark-interface engraver grob source-engraver) (set! mark grob))) ((stop-translation-timestep engraver) (if (and tempo mark) (let* ((tempo-stencil (ly:grob-property tempo 'stencil)) (tempo-width (interval-length (ly:stencil-extent tempo-stencil X))) (mark-stencil (ly:grob-property mark 'stencil)) (mark-width (interval-length (ly:stencil-extent mark-stencil X))) (mark-alignment (ly:grob-property mark 'self-alignment-X)) (padding (ly:grob-property tempo 'padding)) (mark-relative-end (/ mark-width (+ mark-width padding tempo-width))) (mark-end-index (1- (* 2 mark-relative-end))) (new-alignment (interval-index (cons -1 mark-end-index) mark-alignment))) (set! (ly:grob-property mark 'stencil) (ly:stencil-stack mark-stencil X RIGHT tempo-stencil padding)) (set! (ly:grob-property mark 'self-alignment-X) new-alignment) (ly:grob-suicide! tempo))) (set! tempo #f) (set! mark #f) \layout { \context { \Score \consists #Fix_tempo_mark_collision_engraver \override MetronomeMark.padding = 0.8 % adjust } } { \clef treble \mark \default \tempo 4 = 120 \time 3/4 \repeat unfold 3 c''4 \mark \default \tempo \markup \column { "Going down" down down… } R2.*4 \mark \default \tempo "Long tempo text" \compressMMRests R2.*5 } Best, Jean
Re: Rehearsal marks and tempo markings
Re, Le 24/09/2021 à 01:34, Jean Abou Samra a écrit : > Le 23/09/2021 à 00:47, Nuno Trocado a écrit : >>> Perhaps you want the tempo mark to start on >>> the first note rather than the time signature: >> Not really... I'd like to have the tempo mark aligning to the time >> signature, but shifting a little horizontally if it collides with a >> rehearsal mark. > > Here is my attempt at automating it. (...) Aaaand... this solves my previous post. Thanks you Jean ! :) Frédéric -- Trop fort
Re: Rehearsal marks and tempo markings
Hello, Le 23/09/2021 à 01:13, Jean Abou Samra a écrit : (...) Try the \markLengthOn command described here:(...) I was just struggling while editing a score with - a rehearsal mark on the first bar (I know the composer, he likes to hear "Let's start from the beginning, first measure, letter A", I'm just the copyist) - a rehearsal mark on a compound meter change : %% \version "2.22.1" { \markLengthOn \clef bass \mark \default \tempo 4=136 R1 \mark \default \tempo 8=272 \compoundMeter #'((6 8) (2 4)) r4. r b,4 b, } The above is a MWE, not the actual score ;) Do i misuse \markLentghtOn ? Regards, Frédéric
Re: Vertical positioning of rests
Le 24/09/2021 à 07:13, Werner LEMBERG a écrit : There are a number of internal mechanisms under the hood here. [...] Good stuff! Do we have something like this in the manual somewhere? Otherwise I suggest that you add it as an example. Not in the official manual, but there is some amount of information in my “Extending LilyPond” document, specifically in these sections: https://extending-lilypond.readthedocs.io/en/latest/backend.html#properties-and-callbacks https://extending-lilypond.readthedocs.io/en/latest/backend.html#coordinates-extents-and-reference-points https://extending-lilypond.readthedocs.io/en/latest/backend.html#dummy-properties (I would have to add ly:grob-translate-axis!). Best, Jean