Re: Title font changed?
Hi Jean, Thanks for notifying me. I can confirm that the fix solves the problem. I was able to typeset a score with the right fonts after re-running brew install lilypond. Thanks a lot for fixing this! Best, Bart > Op 18 jan. 2023, om 16:54 heeft Jean Abou Samra het > volgende geschreven: > > > > Le 14/01/2023 à 10:30, Bart Kummel a écrit : >> Hi Jean, >> >> Thanks for your reply. Very insightful! I wonder why Google didn’t come up >> with a link to this issue… >> >> Anyway, it looks like the solution will be merged into Homebrew’s main soon. >> I might be able to just wait for it. I’ll keep an eye on the issue. >> > > > Should be fixed now. Can you confirm that it works after upgrading the > lilypond formula? > > Best, > Jean >
Re: irrational meters
Hello Silvain, this is only true if you define a "rational meter" to be a meter which evaluates to a rational number. Note that a Time Signature is NOT a rational number, else 3/4 and 6/8 would be equivalent. And similarly to how a rational argument is not an argument that corresponds to a rational number a rational Time Signature can have a different meaning to a rational Number. Of course this does leave the question open of what exactly *is* a rational Time Signature. And would it even make sense to use a Time Signature that is not rational? Valentin Am Dienstag, 17. Jänner 2023, 15:20:29 CET schrieb Silvain Dupertuis: > I wonder about the term “irrational” meter. Should not we say “irregular” ?? > as in mathematics, an irrational number is a number which cannot be > represented as a fraction... > > Le 17.01.23 à 13:30, Leo Correia de Verdier a écrit : > > Hi Karim! > > > > Your first example seems to work to me (I don’t do irrational meters > > everyday, so there might be something I’m missing. I would probably write > > the tuplets explicitly rather than use \scaleDurations). \set > > Staff.timeSignatureFraction is superfluous, the time signature already > > does that. signature.asc Description: This is a digitally signed message part.
Re: N in markup command exported as I with an underlying dot
Le 07/01/2023 à 20:48, Jean Abou Samra a écrit : In short: use the official binaries provided on lilypond.org for now. This has been fixed now. You should be able to install LilyPond from Homebrew and use it without this bug. Best, Jean OpenPGP_signature Description: OpenPGP digital signature
Re: Beat markers in the chords section
Hi Mike, > I'm wondering if there is a way to put beat markers in the chords section as > in the following: Well, you could definitely use the Slash_repeat_engraver, if you know what you’re doing… I don’t really, but I took a whack at it — see snippet below. Hope that helps! Kieren. p.s. Really, the built-in repeat engravers should handle this more elegantly. I’ll see what I can do to put a patch together. %%% SNIPPET BEGINS \version "2.23.14" % Function to print a specified number of slashes comp = #(define-music-function (count) (integer?) #{ \override ChordName.stencil = #ly:percent-repeat-interface::beat-slash \override ChordName.thickness = #0.48 \override ChordName.slope = #1.7 \override ChordName.Y-offset = #1 \repeat unfold $count { r4 } \revert ChordName.stencil \revert ChordName.Y-offset #} ) \layout { system-count = 4 ragged-right = ##f ragged-last = ##f \context { \ChordNames chordChanges = ##f \consists Percent_repeat_engraver \override VerticalAxisGroup.staff-affinity = #DOWN \override VerticalAxisGroup.nonstaff-relatedstaff-spacing.padding = #1 } } harmonies = \chordmode { d4:m \comp 6 c4 \comp 8 d2:m c4 | d2.:m | d:m | d:m | d:m d:m | d:m | c | c | c | c | d:m | d:m | d:m d:m d:m } melody = \relative c' { \key d \minor \time 3/4 \partial 4 d4 d a' a a2 a8 a g4 g e c2. R2. r4 r8 g' g g a4 a a a f g a8 d~ d2 R2. R r4 r f8 f d4 d a a8 a4. a4 g c, c8 c c4c2 R2. r4 r c8 c d4 f a g e c d d2~ d2.~ d4 r \bar ":|." } \score { << \new ChordNames \harmonies \new Voice = "one" { \melody } >> } %%% SNIPPET ENDS
Re: irrational meters
Thank you again Leo, This comes very handy. BEst K On Wed, Jan 18, 2023 at 11:14:39AM +0100, Leo Correia de Verdier wrote: > If the warnings bother you you could use a function to suppress them, like: > > irrtime = #(define-music-function (frac) (pair?) > #{ #(ly:expect-warning "strange time signature found") > \time #frac #} ) > > \score { > \relative c' { > \irrtime 4/5 > \tuplet 5/4 1 { > c4 d e f | > g a2 g4 | > f2 g | > e4 f e d | > c1 | } > }} > > Or something more elegantly coded… > > And everyone else: Can we talk about breve? It is nowadays usually one of the > longest durations. I think we should change its name! 😉 (or possibly keep on > topic) > > Best wishes > /Leo > > > 17 jan. 2023 kl. 16:13 skrev Karim Haddad : > > > > Thank you a lot Leo for your advice. > > I'll hence stick with solution #1 which looks preferable. > > > > @all > > Now about "irrational meter" (or "irrational" rhythms), well this > > denomination is from the fifties. I am aware that mathematically this is > > not correct since it is a fraction.However, "irregular" is somehow more > > vague and doesn't relate to anything in particular. Thanks to Hans' link > > that shows that it is a somehow a common terminology in music practice. > > > > Best to all of you, and thank you for all your comments. > > > > Karim > > > > > > > > On Tue, Jan 17, 2023 at 01:30:49PM +0100, Leo Correia de Verdier wrote: > >> Hi Karim! > >> > >> Your first example seems to work to me (I don’t do irrational meters > >> everyday, so there might be something I’m missing. I would probably write > >> the tuplets explicitly rather than use \scaleDurations). > >> \set Staff.timeSignatureFraction is superfluous, the time signature > >> already does that. > >> > >> I’m not sure what you’re aiming at with the second example. One source of > >> error is that you have quoted ly:make-moment, and it wants its arguments > >> as elements of a list, not as a fraction, so: > >> #(ly:make-moment 16 25) > >> , not > >> #'(ly:make-moment 16/25) > >> But it is still not the right amount of notes in the bar. > >> > >> HTH > >> /Leo > >> > >>> 17 jan. 2023 kl. 12:16 skrev Karim Haddad : > >>> > >>> Hi, > >>> > >>> I am wondering which is the best way to write irrational meters (with > >>> tempo modulations) > >>> > >>> 1) > >>> % > >>> \version "2.24.0" > >>> \score { > >>> { > >>> > >>> \clef "G" > >>> > >>> \scaleDurations 4/5 { > >>> \time 4/5 > >>> \set Staff.timeSignatureFraction = #'(4 . 5) > >>> \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN > >>> \note {4} #1 " = 60 "}} \tiny "1"}} > >>> c'4 > >>> c'4 > >>> c'4 > >>> c'4 > >>> | > >>> } > >>> \once \set Staff.whichBar = "|" > >>> } > >>> > >>> > >>> \layout { > >>> > >>> \context {\Score > >>>%measureBarType=#"" > >>> } > >>> > >>> } > >>> } > >>> % > >>> > >>> or > >>> > >>> 2) > >>> > >>> % > >>> \version "2.24.0" > >>> \score { > >>> { > >>> \clef "G" > >>> > >>> \time 4/5 > >>> \set Staff.timeSignatureFraction = #'(4 . 5) > >>> \set Timing.measureLength = #'(ly:make-moment 16/25) > >>> \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN > >>> \note {4} #1 " = 60 "}} \tiny "1"}} > >>> c'4 > >>> c'4 > >>> c'4 > >>> c'4 > >>> | > >>> \once \set Staff.whichBar = "|" > >>> } > >>> > >>> \layout { > >>> > >>> \context {\Score > >>>measureBarType=#"" > >>> } > >>> > >>> } > >>> } > >>> % > >>> > >>> > >>> Now the first solution outputs: > >>> > >>> Processing `irr1.ly' > >>> Parsing... > >>> Interpreting music... > >>> irr1.ly:13:1: warning: strange time signature found: 4/5 > >>> > >>> \time 4/5 > >>> Preprocessing graphical objects... > >>> > >>> > >>> Which looks good to me as a warning > >>> > >>> However, the second solution gives: > >>> > >>> Processing `irr2.ly' > >>> Parsing... > >>> Interpreting music... > >>> warning: type check for `measureLength' failed; value `(ly:make-moment > >>> 16/25)' must be of type `moment' > >>> irr2.ly:12:1: warning: strange time signature found: 4/5 > >>> > >>> \time 4/5 > >>> irr2.ly:20:1: warning: barcheck failed at: 1/5 > >>> > >>> | > >>> Preprocessing graphical objects... > >>> > >>> > >>> And if we comment measureBarType=#"" we will have a strange bar at the > >>> end. > >>> > >>> > >>> Best Regards > >>> > >>> > >>> -- > >>> Karim Haddad > >>> > >>> Music Representations Team, IRCAM > >>> Research and development manager. > >>> > >>> > >> > > > > -- > > Karim Haddad > > > > Music Representations Team, IRCAM > > Research and development manager. > > > -- Karim Haddad Music Representations Team, IRCAM
Re: irrational meters
Thank you Valentin, In fact i am now using the solution #1 which gives correct time settings. By the way i am using this in a "poly-metric" and "poly-tempic" context, and i must say it works good. Only possible in Lilypond. Thank you to all developpers and expert users for all your work and advice. I am sorry i have unleashed an off topic disscussion, however, i appreciate all your remarks which testify of your passion to music, music theory and typesetting. Take care all of you. Best K On Wed, Jan 18, 2023 at 02:22:58PM +0100, Valentin Petzel wrote: > Hi Karim, > > 2) does not work as #'(ly:make-moment 16/25) is a symbol rather than > #(ly:make-moment > 16/25). Also (2) still needs \scaleDurations 4/5, unless you do > > \time 4/5 > \set Timing.measureLength = #(ly:make-moment 4/4) > > The idea behind the part > > https://lilypond.org/doc/v2.24/Documentation/snippets/rhythms#rhythms-changing-time-signatures-inside-a-polymetric-section-using-_005cscaledurations[1] > > in the documention is to change TimeSignature while having a scaled Duration, > so you > want to have an e.g. 4/4 time sig, but the Staff should be scaled by 4/5, so > you want the > measure length of a 4/5 timesig, thus you do 4/4 and manualy tell Lilypond > that you > actually want a length of 4/5. > > If you want to use something like 4/5 this is not of relevance to you. As I > said you could > change measure length to 4/4 and notate everything as if it were 4/4 though. > > Cheers, > Valentin > > Am Dienstag, 17. Jänner 2023, 12:16:43 CET schrieb Karim Haddad: > > Hi, > > > > I am wondering which is the best way to write irrational meters (with tempo > > modulations) > > > > 1) > > % > > > \version "2.24.0" > > \score { > > { > > > > \clef "G" > > > > \scaleDurations 4/5 { > > \time 4/5 > > \set Staff.timeSignatureFraction = #'(4 . 5) > > \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN > > \note {4} #1 " = 60 "}} \tiny "1"}} c'4 > > c'4 > > c'4 > > c'4 > > > > } > > \once \set Staff.whichBar = "|" > > } > > > > > > \layout { > > > > \context {\Score > > %measureBarType=#"" > > } > > > > } > > } > > % > > > > > or > > > > 2) > > > > % > > > \version "2.24.0" > > \score { > > { > > \clef "G" > > > > \time 4/5 > > \set Staff.timeSignatureFraction = #'(4 . 5) > > \set Timing.measureLength = #'(ly:make-moment 16/25) > > \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN > > \note {4} #1 " = 60 "}} \tiny "1"}} c'4 > > c'4 > > c'4 > > c'4 > > > > \once \set Staff.whichBar = "|" > > } > > > > \layout { > > > > \context {\Score > > measureBarType=#"" > > } > > > > } > > } > > % > > > > > > > Now the first solution outputs: > > > > Processing `irr1.ly' > > Parsing... > > Interpreting music... > > irr1.ly:13:1: warning: strange time signature found: 4/5 > > > > \time 4/5 > > Preprocessing graphical objects... > > > > > > Which looks good to me as a warning > > -- Karim Haddad Music Representations Team, IRCAM Research and development manager. email : karim.had...@ircam.fr webpage : http://karim.haddad.free.fr
Re: irrational meters
I’d just like to say that I really appreciate that Lilypond handles these so effortlessly, whatever they’re called. I do wonder whether ‘irrational’ wasn’t originally perjorative. Damian
Re: Beat markers in the chords section
On Thu, Jan 19, 2023 at 9:01 AM Mike Dean wrote: > > Kieren: it worked great, thanks mauch > I am having problems when I print to PDF in 2.24/Frescobaldi 3.2: the program > hangs (I'm not sure if it's on the Lilypond side or the Frescobaldi side --- > Frescobaldi says that it's not responding): Have you tried invoking LilyPond from the command line? https://lilypond.org/doc/v2.24/Documentation/usage/command_002dline-usage Also, tell us what kind of computer you're on (Windows, Mac, Linux). -- Knute Snortum
autobeaming over rests
The NR says that autobeaming doesn't work over rests. In some situations this means a lot of additional work. As an example, consider a piece that uses almost exclusively a saltarello-like rhythm: ``` \time 6/8 d8[ r d] d[ r d] ``` I now wonder whether it makes sense to control this behaviour with a property, and whether this behaviour (i.e., autobeaming over rests) can be easily implemented at all... Werner
Re: autobeaming over rests
Le 19/01/2023 à 21:35, Werner LEMBERG a écrit : The NR says that autobeaming doesn't work over rests. In some situations this means a lot of additional work. As an example, consider a piece that uses almost exclusively a saltarello-like rhythm: ``` \time 6/8 d8[ r d] d[ r d] ``` I now wonder whether it makes sense to control this behaviour with a property, and whether this behaviour (i.e., autobeaming over rests) can be easily implemented at all... Depending on how regular this actually is, you might be able to do something like \version "2.24.0" \new Voice << { \time 6/8 d8 r d d r d } \repeat unfold 2 { s8[ s8 s8] } >> Best, Jean OpenPGP_signature Description: OpenPGP digital signature
Re: irrational meters
On Wed, Jan 18, 2023 at 07:27:47PM -0500, David Zelinsky wrote: > Silvain Dupertuis writes: > > > It is better not to confuse a /fraction/ (as an expression) and it's > > /value/ (as a /number/) — a number cannot have a numerator or a > > denominator! > > Well, a *rational* number does have a well-defined denominator: > Because of unique factorization of the integers, there is a unique > representation of a rational number as n/d where n and d are integers > with no common factor and d is positive. True, but time signatures do not have a 1-to-1 correspondence with rational numbers: 6/8 and 3/4 are distinct as time signatures, even though as fractions they signify the same rational number. > Now if we wanted to think about time signatures N/D where N and D are > elements of, say the integers with the square root of -5 adjoined, > that's another matter. Any takers, you composers out there? :) [...] Adjoining square roots of some positive number may still be somewhat imaginable, e.g., √5/4 means each measure consists of √5 (approximately 2.236...) quarter notes. Hard to perform precisely without computer help, but still possible in theory. But how is one to interpret √(-5)/4 ?? How do you count up to an imaginary number of beats per bar, even in theory? // Further thoughts about √5/4 as a time signature: due to the peculiarity of standard musical notation, which only has symbols for note values that are rational subdivisions of a whole note (and even that, not all rational subdivisions are directly representable), any combination of notes in a √5/4 bar will not fit exactly within the bar, √5 being irrational. (This also applies to any other irrational fraction you may choose for the top component of the time signature.) So that means the last quarter note beat will be split across the bar line by some irrational fraction, with the remaining duration overflowing into the following bar. Note that changing the notation may not help anything. Suppose we introduce new notation for representing irrational note values. Then either the new note values are commensurate with the (irrational) time signature, or they're not. If they are, then we've effectively reduced the time signature to a traditional, rational signature: if we introduce a note value of √5/6, for example, then 6 such notes would add up to 1 bar in a √5/4 signature, so we've effectively turned it into 6/4 and it's no longer an irrational time signature. If the new note values are not commensurate with the time signature, then we will still have notes split across barlines even if we use the new note values, so nothing has really changed. Now if you have a long series of consecutive quarter notes, they will span some number of bars, and every bar line will split a quarter note in some unique, irrational fraction -- due to irrationality, no bar line will fall exactly at the start/end of a quarter note, so excepting the start of the first bar, everywhere else there will be notes split across the barline. And each split note will be split in a unique, irrational fraction. If we individually move each barline so that it falls on the closest start/end of a quarter note, then we end up with a series of bars with regular (rational) time signatures, but with time signature changes in an irregular pattern -- this is what I referred to in an earlier post. So, "rationalizing" an irrational time signature in this way, we see the irrational number essentially serves as a source of irregular bar lengths that never repeats. T -- The two rules of success: 1. Don't tell everything you know. -- YHL
Auto-transpose engraver progress
Hi all, I managed to add functionality to the auto-transpose engraver snippet from OLL so that it prints key signatures at transposition changes. It also doesn't do so if the transposition change is only octave transposition. The one thing I'd like to fix is the behavior when an actual key change occurs at the same moment as a transposition change. Currently this triggers a warning and the output is only correct depending on whether the key change or transposition is written first. Not sure how to approach solving that. Saul auto-transpose.ily Description: Binary data
Re: Auto-transpose engraver progress
Thinking about this more, the issue with simultaneous transposition and key changes is worse than I realized, since it's pretty common to write something like: global = { s1 \key e \major s1 } music = { g'1 \transposition a g'1 } \new Staff \with { \autoTranspose } << \global \music >> The output is incorrect (but differently wrong) regardless of whether you write << \global \music >> or << \music \global >>. This is partially a bug in the original snippet, not just my version with inserted key signatures. Solving it would seem to require the ability to "listen ahead" or "listen behind" to all the events happening at the same moment. Is that even possible? On Thu, Jan 19, 2023 at 5:48 PM Saul Tobin wrote: > Hi all, > > I managed to add functionality to the auto-transpose engraver snippet from > OLL so that it prints key signatures at transposition changes. It also > doesn't do so if the transposition change is only octave transposition. > > The one thing I'd like to fix is the behavior when an actual key change > occurs at the same moment as a transposition change. Currently this > triggers a warning and the output is only correct depending on whether the > key change or transposition is written first. Not sure how to approach > solving that. > > Saul > >
Re: Beat markers in the chords section
Knute: No, I haven't run Lilypond from the command line (I have enough trouble using it with Frescobaldi 3.2) Machine: Windows 10 Pro 64-bit, 16GB memory LP version 2.24 Mike Dean On Thu, Jan 19, 2023 at 12:15 PM Knute Snortum wrote: > On Thu, Jan 19, 2023 at 9:01 AM Mike Dean wrote: > > > > Kieren: it worked great, thanks mauch > > I am having problems when I print to PDF in 2.24/Frescobaldi 3.2: the > program hangs (I'm not sure if it's on the Lilypond side or the Frescobaldi > side --- Frescobaldi says that it's not responding): > > Have you tried invoking LilyPond from the command line? > > https://lilypond.org/doc/v2.24/Documentation/usage/command_002dline-usage > > Also, tell us what kind of computer you're on (Windows, Mac, Linux). > > > -- > Knute Snortum >
Documentation viewer in Frescobaldi
Frescobaldi 3.2 on Linux (EndeavorOS, and Ubuntu), no matter what URL or local file I put in the Lilypond Documentation preferences it does not work. If I use a URL at lily[pond.org I get an Apache error. If trying to add a local copy the index.html file simply does not appear in the browser dialog when I go to the appropriate directory. I am mystified. Any clues? When I install Frescobaldi it does show doc for 2.22 online but nowhere do I see this URL in the preferences, so how does it even get there? Hardwired? Does not seem right.
Re: Documentation viewer in Frescobaldi
On Fri 20 Jan 2023 at 14:09:05 (+1100), Andrew Bernard wrote: > Frescobaldi 3.2 on Linux (EndeavorOS, and Ubuntu), no matter what URL > or local file I put in the Lilypond Documentation preferences it does > not work. If I use a URL at lily[pond.org I get an Apache error. If > trying to add a local copy the index.html file simply does not appear > in the browser dialog when I go to the appropriate directory. I am > mystified. Any clues? I don't use F~ so I don't know what the Preferences or Configuration Dialogue would expect to be fed with. However, I do see¹ /usr/share/frescobaldi/frescobaldi_app/lilydoc/manager.py contains these lines: # split in local and non-local ones (local are preferred) user_prefixes = [] local = [] remote = [] for p in user_paths: user_prefixes.append(p) if os.path.isdir(p) else remote.append(p) remote.sort(key=util.naturalsort) # now find all instances of LilyPond documentation in the local paths def paths(path): """Yields possible places where LilyPond documentation could live.""" yield path path = os.path.join(path, 'share', 'doc', 'lilypond', 'html') yield path yield os.path.join(path, 'offline-root') def find(path): """Finds LilyPond documentation.""" for p in paths(path): if os.path.isdir(os.path.join(p, 'Documentation')): return p > When I install Frescobaldi it does show doc for 2.22 online but > nowhere do I see this URL in the preferences, so how does it even get > there? Hardwired? Does not seem right. and later: urls = [] urls.extend(map(QUrl.fromLocalFile, local)) urls.extend(map(QUrl, remote)) if not urls: urls.append(QUrl("http://lilypond.org/doc/stable";)) return urls so it appears to have a fairly thorough hunt for the docs. (I assume urls.extend is reading some Configuration data.) ¹ F~ 3.1.3 from Debian buster. I don't remember whether I ever ran it; perhaps I replicated someone's post. I haven't downloaded F~ on bullseye. Cheers, David.
Re: Documentation viewer in Frescobaldi
The strange thing is that this used to work fine in the past, and now coming back to it after six months it does not. It is very strange that on two distinct Linux distros it shows the same behaviour. It's weird that the fill chooser dialog won't show .html files (and no, they are not hidden files). Strange. And I'd still like to know how F mysteriously display the 2.22 documentation page, with no settings indicating that. Stupid to even try, but reinstalling F made no difference. Where is actually the best place to post about Frescobaldi support nowadays? Andrew
Re: autobeaming over rests,Re: autobeaming over rests
>> The NR says that autobeaming doesn't work over rests. In some >> situations this means a lot of additional work. As an example, >> consider a piece that uses almost exclusively a saltarello-like >> rhythm: >> >> ``` >> \time 6/8 d8[ r d] d[ r d] >> ``` >> >> I now wonder whether it makes sense to control this behaviour with >> a property, and whether this behaviour (i.e., autobeaming over >> rests) can be easily implemented at all... > > Depending on how regular this actually is, you might be able to do > something like > > \version "2.24.0" > > \new Voice << > { \time 6/8 d8 r d d r d } > \repeat unfold 2 { s8[ s8 s8] } > >> Nice idea, thanks! However, this is far from a convenient solution in the long run. IMHO, there are definitely valid situations where automatic beaming over rests does make sense. Looking up our tracker, this is actually issue #994. https://gitlab.com/lilypond/lilypond/-/issues/994 Werner