Re[2]: Frescobaldi?
Hey all, I've been looking over the Frescobaldi codebase for the last few days, and it seems to be within the realm of something I could pick up maintenance for. There would definitely be a learning curve, so hopefully it doesn't reach it's EOL too soon... But, I don't know, I feel pretty confident. Not really sure what more info I can contribute to the public discourse at this point, but I welcome anyone else interested with the upkeep of Frescobaldi to get in touch with me so we can coordinate~ -- Original Message -- From "Jean Abou Samra" To "Graham King" ; "N. Andrew Walsh" Cc "Lilypond-User Mailing List" Date 5/5/2024 1:37:35 PM Subject Re: Frescobaldi? The technical stuff is way over my head, but this reads like the top- level description of a GSOC project (in case the mentioned friend doesn't take the bait)... GSoC projects are nice for doing focused work on some specific part of the code base. For overhauling just about everything, I'd be a lot more skeptical, especially since there will unavoidably be fallout to deal with afterwards in terms of bugs, and that's less nice to do if the person who did the port isn't available after the summer to do that part of the work.
Re: Rehearsal mark on right side of measure?
On 2024-05-05 6:49 pm, Dirck Nagy wrote: Hi all I am using rehearsal marks (\mark \default, to mark off repeated sections as "A", "B", etc., instead of Dal Segno. One of these sections ends at the end of a line. Is there an easy way to move the rehearsal mark to the right side of the measure, instead of the left? I can't find a command that works. Or should I be using markup commands instead? No, \mark for RehearsalMarks is perfectly fine. What you need to do is firstly ensure the \mark command is located at the correct moment in the music--it sounds like you are putting the \mark at the beginning of a measure when it should appear at the next bar line--and then ensure its break-visibility is set appropriately so the mark appears on the correct line. Consider: \version "2.25.13" { \repeat unfold 3 { b'4 4 2 } \tweak break-visibility #end-of-line-visible \tweak self-alignment-X #RIGHT \mark \default \break \repeat unfold 3 { b'4 4 2 } 1 \fine } -- Aaron Hill
Rehearsal mark on right side of measure?
Hi all I am using rehearsal marks (\mark \default, to mark off repeated sections as "A", "B", etc., instead of Dal Segno. One of these sections ends at the end of a line. Is there an easy way to move the rehearsal mark to the right side of the measure, instead of the left? I can't find a command that works. Or should I be using markup commands instead? thanks! dirck
Re: how difficult would it be to have “auto-correct spacing” (even for just a single measure)?
Hi Valentin, > if you want you could tell Lilypond to ignore Accidentals in spacing In concept, I love this idea… However it doesn’t work 100%: %%% SNIPPET BEGINS \version "2.25.11" \language "english" \layout { line-width = 3.5\in ragged-right = ##f } ignoreH = \propertyTweak horizontal-skylines ##f \propertyTweak extra-spacing-width #empty-interval \etc ignoreV = \propertyTweak vertical-skylines ##f \propertyTweak extra-spacing-height #empty-interval \etc ignore = \ignoreH \ignoreV \etc accidentalNoWidth = \override Accidental.extra-spacing-width = #(lambda (grob) (let ((ext (ly:grob-property grob 'X-extent))) (display ext) (cons (interval-length ext) 0))) \markup "No accidentals:" \new Staff \with { \remove Accidental_engraver } << \clef bass \key bf \major \voices 1,2 << { f8 f g! f f f f a } \\ { bf,8 f e-\tweak extra-offset #'(0.05 . 0) _\markup \with-color #red \with-dimensions-from \null \draw-line #'(0 . -48) ef d c bf, c } >> >> \markup "No tweaks:" \new Staff << \clef bass \key bf \major \voices 1,2 << { f8 f g! f f f f a } \\ { bf,8 f e ef d c bf, c } >> >> \markup "Using \accidentalNoWidth:" \new Staff << \clef bass \key bf \major \voices 1,2 << { f8 f \once\accidentalNoWidth g! f f f f a } \\ { bf,8 f \once\accidentalNoWidth e! \once\accidentalNoWidth ef d c bf, c } >> >> \markup "Using \ignore:" \new Staff << \clef bass \key bf \major \voices 1,2 << { f8 f \once \ignore Accidental g! f f f f a } \\ { bf,8 f \once \ignore Accidental e! \once \ignore Accidental ef d c bf, c } >> >> %%% SNIPPET BEGINS As you can see: 1. \accidentalNoWidth doesn’t allow the notes to obtain “no accidental” spacing, but at least keeps the accidentals uncrushed 2. \ignore allows the notes to obtain “no accidental” spacing, but everything gets crushed requiring manual tweaking to reposition; Is there a way to get the best of both worlds? Thanks, Kieren. __ My work day may look different than your work day. Please do not feel obligated to read or respond to this email outside of your normal working hours.
Re: Frescobaldi?
> The technical stuff is way over my head, but this reads like the top- > level description of a GSOC project (in case the mentioned friend > doesn't take the bait)... GSoC projects are nice for doing focused work on some specific part of the code base. For overhauling just about everything, I'd be a lot more skeptical, especially since there will unavoidably be fallout to deal with afterwards in terms of bugs, and that's less nice to do if the person who did the port isn't available after the summer to do that part of the work. signature.asc Description: This is a digitally signed message part
Re: Frescobaldi?
The technical stuff is way over my head, but this reads like the top- level description of a GSOC project (in case the mentioned friend doesn't take the bait)... In other threads spawned by this one, there have been some helpful suggestions for alternative lilypond IDE's, but there is some cost to lilypond in fragmenting its user experience. At the moment, we can just say to new users "choose Frescobaldi; it's the best and most popular IDE, and it's really easy to install" confident that any questions that arise will likely be understood and answered readily. On Sun, 2024-04-28 at 21:36 +0200, Jean Abou Samra wrote: > > unfortunately, as I noted above, the problem seems to be that > > frescobaldi > > depends on a now-deprecated version of qtwebengine, and without > > updating > > it we'll eventually reach a point where it no longer runs. I looked > > into > > this because qtwebengine-5.15 failed to compile on my machine this > > morning, > > so I'm worried we're already approaching EOL on it. > > Note that we're talking about Qt as a whole, not just QtWebEngine > which > is just a small part of it (well, for some definition of "small" > since it > embeds Chromium's Web rendering engine…) that Frescobaldi only uses > in a > few places (IIRC, the SVG viewer and the documentation browser). > > Qt 5 *is* already EOL upstream, since May 2023. > > > > Jean: I have a colleague who does UI work and is "fairly" capable > > of dealing > > with python and Qt dependencies. Can you give me a brief (but as > > technical > > as it needs to be for a specialist to understand the issue) summary > > of where > > the sticking points are? > > Frescobaldi uses the Poppler library in order to display PDF files. > (It cannot > use Qt's native PDF viewer based on Chromium, because that one is not > powerful > enough to support point-and-click.) Since Frescobaldi is written in > Python and > Poppler is a C++ library, it needs an FFI wrapper, which is called > python- > poppler-qt5 and written with a tool called sip that is developed by > the > creator and maintainer of PyQt itself and also used for PyQt. > > Thus there is a diamond dependency: > > Qt5 --> Poppler (C++) > | | > | | > | | > v v > PyQt5 -> python-poppler-qt5 (Python extension modules) > > > python-poppler-qt5 is a little fiddly to build: it's multiple layers > with sip generating C++ code and QMake project files, then QMake > generating a Makefile and sip finally executing make on that > Makefile. > > On macOS, the platform favors distributing applications as .app > bundles, > which are optimized for being created by the native app development > tools (Swift+XCode). These have a peculiar structure organized into > "frameworks", with data files separated from code files, shared > library > lookup paths modified and that sort of thing (the specifics I do not > know > or remember). Of course, that doesn't play well with Python packages > relying on a different structure, and Qt + PyQt also needing their > file structure. In fact there are whole tools written just to deploy > PyQt in a .app bundle, see pyqtdeploy. > > Now throw python-poppler-qt5 into the mix, which needs to be loaded > by > Python and find its linked Poppler and Qt and PyQt, and you should > start > to understand the problem. > > Basically, it's the Apple flavor of "things will work well but only > if you do it my way with the non-cross-platform tools from my walled > garden" in its full glory. > > Add that macOS displays scary warnings to users if the app bundle > hasn't been signed with a certificate that costs real money. > Details are on > https://github.com/frescobaldi/frescobaldi/issues/1584 > > Also add that the tool Frescobaldi has used so far to create app > bundles, py2app, relies heavily on setuptools, which prevents > Frescobaldi from moving to a more modern and less complicated > build backend like hatchling. > > Apart from these packaging issues, there's also an issue with > the global menu (the one at the top of the screen on macOS, it > doesn't appear on other platforms) which isn't really up-to-date > and has been a source of crashes. > > There are also miscellaneous bugs that only reproduce on macOS > (they have the macOS label on GitHub) and it's not always easy > to understand why. > > Well, the explanation wasn't that brief. Sorry that I didn't have > time to write a shorter one, as they say. >
Re: FW: Cautionary Time Signature
On 05/05/2024 08:17, jsmcwill...@gmail.com wrote: I enclose a snippet illustrating two problems I am trying to resolve in a piece containing a melody followed by a Trio section: 1. There is a key signature change before going into the Trio and I cannot get the cautionary signature, which normally occurs at the end of a line, to show up properly. The background staff is missing. 2. I want to have a indentation at the beginning of the Trio matching the indentation seen at the beginning of the piece. 1. By adding a short spacer rest after the key signature. 2. By putting the sections into two scores with an indented first line. \version "2.24.0" \header { title = "Shortened Lines" composer = "John McWilliam" copyright = "Kopierad av John McWilliam. PMRS 2024" } clarinet = \relative c'' { \key f \major \numericTimeSignature \time 2/4 bes'8 -\f bes8 bes8 bes8 | % 2 bes8 bes8 bes8 bes8 | % 3 a4 -> -\< bes4 -> | % 4 a8 -. -\! r8 r8 d,16 -\p cis16 | %5 \bar "||" \key es \major \grace s4 \once \omit Score.BarLine \once \override Score.JumpScript.X-offset = #4 \once \override Score.JumpScript.Y-offset = #-6 \jump \markup \huge "D.S. al Fine poi Trio" } % Continue on new line but with indent matching the above and if possible with the section heading TRIO in % that space: trio = \relative c'' { \section \sectionLabel \markup \bold "Trio" \time 2/4 \key es \major g'8 -> -\f r8 g8 -. r8 | % 6 g8 -. r8 r4 \fine } \bookpart { \score { \clarinet } \score { \trio } } -- Timothy Lanfear, Bristol, UK.
Re: aftergrace consistently close to the next bar line
On Sun, May 5, 2024 at 1:19 AM wrote: > Good day, > > > > I use afterGrace notes to mark the end of a glissando. At the moment > lilypond places these afterGrace notes somehow depending on the note's > length. > I want the glissando to be played over the entire length of the time unit, > so the afterGrace notes should be placed as close as possible to the > following bar line (or time unit), consistently. > > How can I achieve this? > > For example: In the bar (image) above I would like to have the afterGrace > notes eih'' of the violins at the same x-position (close to the bar line) > as the fis' of the third voice. > > %%% > % violin 1 > \time 3/2 cis'2.\p^"col legno" \glissando \afterGrace gis' \glissando > {\once \hide Stem \parenthesize eih4} | > > % violin 2 > \time 3/2 cis'2.\p^"col legno" \glissando \afterGrace disih \glissando > {\once \hide Stem \parenthesize eih4} | > > % viola > \time 3/2 \afterGrace cis''1.\p^"col legno" \glissando {\once \hide Stem > \parenthesize fis,4} | > %%% > You can put a fraction right after the \afterGrace command to indicate how far the afterGrace notes should be from the base note. The closer the fraction is to 1, the farther the grace note. So try something like: \afterGrace 15/16 gis' \glissando {\once \hide Stem \parenthesize eih4} -- Knute Snortum
Re: how difficult would it be to have “auto-correct spacing” (even for just a single measure)?
Hi Kieren, if you want you could tell Lilypond to ignore Accidentals in spacing (N.B.: This can lead to collision with the previous head!): accidentalNoWidth = \override Accidental.extra-spacing-width = #(lambda (grob) (let ((ext (ly:grob-property grob 'X-extent))) (display ext) (cons (interval-length ext) 0))) baritoneNotes = { f8 f \once\accidentalNoWidth g! f f f f a } bassNotes = { bf,8 f \once\accidentalNoWidth e \once\accidentalNoWidth ef d c bf, c } Cheers, Valentin signature.asc Description: This is a digitally signed message part.
Re: how difficult would it be to have “auto-correct spacing” (even for just a single measure)?
Hi Jean, > There might be ways to reduce the importance > of accidentals in the spacing problem I’ve tried a couple of different ways, but they are all pretty “destructive” (e.g., the accidentals are ignored entirely, so they end up on top of each other and the noteheads). Hopefully I can find a way! > It's interesting though that adding > \override Score.SpacingSpanner.spacing-increment = 5 > in \layout evens out the spacing a lot. Yes, it does! > it might be worth trying to flank that measure with \newSpacingSection > and give it a different spacing-increment. That goes a long way towards a solution, but (a) the notes still aren’t perfectly even, and (b) I prefer the tighter spacing of the original layout. Thanks, Kieren. __ My work day may look different than your work day. Please do not feel obligated to read or respond to this email outside of your normal working hours.
FW: Cautionary Time Signature
From: jsmcwill...@gmail.com Sent: den 5 maj 2024 09:15 To: lilypond-user@gnu.org Subject: Cautionary Time Signature Firstly, I have reregistered since the support forum does not recognise my credentials! I enclose a snippet illustrating two problems I am trying to resolve in a piece containing a melody followed by a Trio section: 1. There is a key signature change before going into the Trio and I cannot get the cautionary signature, which normally occurs at the end of a line, to show up properly. The background staff is missing. 2. I want to have a indentation at the beginning of the Trio matching the indentation seen at the beginning of the piece. I hope some kind expert can help me resolve this. John McWilliam Shortened_lines_2.ly Description: Binary data
Cautionary Time Signature
Firstly, I have reregistered since the support forum does not recognise my credentials! I enclose a snippet illustrating two problems I am trying to resolve in a piece containing a melody followed by a Trio section: 1. There is a key signature change before going into the Trio and I cannot get the cautionary signature, which normally occurs at the end of a line, to show up properly. The background staff is missing. 2. I want to have a indentation at the beginning of the Trio matching the indentation seen at the beginning of the piece. I hope some kind expert can help me resolve this. John McWilliam Shortened_lines_2.ly Description: Binary data
aftergrace consistently close to the next bar line
Good day, I use afterGrace notes to mark the end of a glissando. At the moment lilypond places these afterGrace notes somehow depending on the note's length. I want the glissando to be played over the entire length of the time unit, so the afterGrace notes should be placed as close as possible to the following bar line (or time unit), consistently. How can I achieve this? For example: In the bar (image) above I would like to have the afterGrace notes eih'' of the violins at the same x-position (close to the bar line) as the fis' of the third voice. %%% % violin 1 \time 3/2 cis'2.\p^"col legno" \glissando \afterGrace gis' \glissando {\once \hide Stem \parenthesize eih4} | % violin 2 \time 3/2 cis'2.\p^"col legno" \glissando \afterGrace disih \glissando {\once \hide Stem \parenthesize eih4} | % viola \time 3/2 \afterGrace cis''1.\p^"col legno" \glissando {\once \hide Stem \parenthesize fis,4} | %%% Greetings, Jonathan