About pitchedTrill and auxiliary note(s)
Good evening everyone, I am new to the language of Lilypond, so I would like to ask you for advice that you will certainly have more experience. To your knowledge, is it possible in a pitchedTrill to insert a chord (or a bichord) in the position between brackets (auxiliary)? Each time I try, Lily only inserts the first of the notes entered. Thank you, see you soon Rip_mus
Re: About pitchedTrill and auxiliary note(s)
Thank you Valentin, yeah, I succeded in make this workaround. Just wanted to know if I was missing something simpler. Rip_mus Il gio 3 feb 2022, 15:02 Valentin Petzel ha scritto: > Hello, > > this is not possible. Of course you can mimic that behviour using > afterGrace. > > Cheers, > Valentin > > 03.02.2022 14:05:32 Rip _Mus : > > Good evening everyone, > > I am new to the language of Lilypond, so I would like to ask you for > advice that you will certainly have more experience. > > To your knowledge, is it possible in a pitchedTrill to insert a chord (or > a bichord) in the position between brackets (auxiliary)? Each time I try, > Lily only inserts the first of the notes entered. > > > Thank you, see you soon > > Rip_mus > >
Ly Scheme functions reference
Good evening everyone, do you know if there is a complete reference (perhaps with tutorials) of the use of the Scheme functions? In the Lilypond reference, from time to time, some functions are explained, but it seems to me that a precise reference of each Scheme function is missing. I know that they are explained in Internals reference, but I wanted like to see their behaviour in action, rather then only arguments and parameters. Thank you Rip_mus
Re: Ly Scheme functions reference
WOW! This seems wonderful! Thank you very much! Il sab 5 feb 2022, 20:30 Jean Abou Samra ha scritto: > > > Le 5 févr. 2022 à 20:10, Rip _Mus a > écrit : > > > > Good evening everyone, > > do you know if there is a complete reference (perhaps with tutorials) of > the use of the Scheme functions? > > In the Lilypond reference, from time to time, some functions are > explained, but it seems to me that a precise reference of each Scheme > function is missing. I know that they are explained in Internals reference, > but I wanted like to see their behaviour in action, rather then only > arguments and parameters. > > > Given the number of such functions, crafting examples for each one is just > not feasible. However, there is an Extending manual: > > https://lilypond.org/doc/v2.23/Documentation/web/extending > > and also this unofficial but much more thorough resource (disclaimer: I am > the author): > > https://extending-lilypond.readthedocs.io > > Hope that helps (and feel free to send me feedback on the latter one). > Also, it would help understanding your needs if you gave examples of things > you'd like to understand better. > > Best, > Jean > > > PS: > > > Rip_mus > > RIP Music? I hope not :-)
Re: Slurs with "afterGrace"
Good morning, try: \afterGrace g4( { a16 g16) } The slur event must be attached directly after the note. Rip_mus Il dom 6 feb 2022, 08:59 Alasdair McAndrew ha scritto: > This works: > g4( \grace {a16 g16}) > > making a slur which includes the grace notes. But in order to get the > right spacing and barring (I need grace notes to occur before the bar > line, > rather than after), I need to use "afterGrace": > > \afterGrace g4 {a16 g16} > > However, if I attempt to include a slur: > > \afterGrace g4( {a16 g16} ) > > I get a warning about an "Unattached SlurEvent". Lilypond makes a good > guess at what I want and bungs a slur in anyway - but what does this > warning mean, and how can I avoid it? Thank you! > > Alasdair > -- > 0432 854 858 > https://numbersandshapes.net > >
Re: Slurs with "afterGrace"
Sorry for the hour! It's a matter of parenthesis order and spaces: \relative c' { \afterGrace g4-+( { a16 g16) } } This works for me Il dom 6 feb 2022, 10:13 Alasdair McAndrew ha scritto: > Thank you very much! (But in Australia, where I am, it is early > evening). I did try that, but the difficulty is that I already have a > symbol attached to the note (which I should have included in my example): > > \afterGrace g4-+( {a16 g16} ) > > I've tried moving the beginning of the slur to directly after the note: > > \afterGrace g4(-+ {a16 g16} ) > > but this is no good either. I'm sorry not to have included this clearly > important detail in my first post. > > Alasdair > > > > On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote: > > Good morning, > try: > > \afterGrace g4( { a16 g16) } > > The slur event must be attached directly after the note. > > Rip_mus > > Il dom 6 feb 2022, 08:59 Alasdair McAndrew ha scritto: > >> This works: >> g4( \grace {a16 g16}) >> >> making a slur which includes the grace notes. But in order to get the >> right spacing and barring (I need grace notes to occur before the bar >> line, >> rather than after), I need to use "afterGrace": >> >> \afterGrace g4 {a16 g16} >> >> However, if I attempt to include a slur: >> >> \afterGrace g4( {a16 g16} ) >> >> I get a warning about an "Unattached SlurEvent". Lilypond makes a good >> guess at what I want and bungs a slur in anyway - but what does this >> warning mean, and how can I avoid it? Thank you! >> >> Alasdair >> -- >> 0432 854 858 >> https://numbersandshapes.net >> >> > -- > 0432 854 858 > https://numbersandshapes.net >
Inspecting stencil
Good morning, I want to create a modified version of the flaired hairpin stencil. Is It possibile ti inspect the stencil, to aknowledge me about the making of? Thank you Rip_mus
Re: Inspecting stencil
Thank you a lot! I'm trying ti do a flared hairpin with a circled tip (as "dal niente"). Conceptually, I have to use some override. But seems not possibile to achive this combination. Have you an idea about the process? Thank you Il mer 9 feb 2022, 12:17 Valentin Petzel ha scritto: > Hello Rip, > > instead of inspecting the stencil I’d suggest to lookup the function that > creates the stencil. For flared hairpins this is flared-hairpin. So get > the > source code, navigate to the folder scm (which contains all the scheme > definitions, grep for flared-hairpin, which you’ll then find in > output-lib.scm. > > Valentin > > Am Mittwoch, 9. Februar 2022, 09:51:42 CET schrieb Rip _Mus: > > Good morning, > > I want to create a modified version of the flaired hairpin stencil. > > Is It possibile ti inspect the stencil, to aknowledge me about the making > > of? > > > > Thank you > > > > Rip_mus > >
Markup problem
Good morning\evening to everyone, attached a little problem of mine, please let me understand (and thanks a lot to all users that helped me with the stencil definition, maybe I forgot to answer!): why, after the score, the second markup goes directly on the other page? Thanks in advance \version "2.22.1" \header { title = "HUGE TITLE" tagline = ##f } \bookpart { \header { subtitle = "BOOKPART TITLE" } \markup { \vspace #2 \justify-string # "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed sapien neque, efficitur quis iaculis in, tincidunt ut odio. In purus sem, sollicitudin in ante in, eleifend molestie libero. Curabitur facilisis malesuada lectus non lacinia. Nam sagittis orci nulla, nec pulvinar arcu facilisis eget. In hac habitasse platea dictumst. Sed consectetur tincidunt nulla id porta. Nulla pretium mi leo, vitae dapibus sem rhoncus quis. Morbi sed est in nibh convallis eleifend vel vel diam. Vestibulum in arcu in ligula ullamcorper finibus. Cras facilisis, neque eu pretium ornare, leo ipsum sagittis augue, at lobortis odio augue ut diam. Cras suscipit consequat fermentum. Mauris ullamcorper lacus laoreet ipsum sagittis, quis blandit leo maximus. Nam vel elementum nisi. Nulla tempus malesuada ante at porttitor. Aliquam erat volutpat. Sed commodo, ligula sit amet efficitur finibus, arcu risus ultrices nisi, sit amet tristique enim elit sit amet eros. Praesent rhoncus nunc eu dolor dapibus vehicula. Nulla hendrerit dignissim libero, non suscipit arcu fringilla vitae. Pellentesque nisl tellus, faucibus id augue a, condimentum luctus augue. Etiam quis maximus elit, in hendrerit orci. Vestibulum elit tellus, porttitor vel odio vel, ullamcorper tincidunt dolor. Vestibulum a porta orci. Donec iaculis velit vehicula mi sagittis convallis. Nullam at ex dapibus, molestie nulla eget, rutrum lectus. Ut cursus eu elit in semper. Duis fringilla leo metus, eget pharetra urna tempus sit amet. Aenean ac lectus maximus, tristique nisl quis, convallis tellus. Donec laoreet sem sit amet vehicula sodales. In a risus lacinia, dapibus odio sed, pellentesque quam. Ut eget nibh eu lacus consectetur egestas. Fusce sed maximus odio. Morbi posuere eu ante ut cursus. Morbi tempor leo sed elit elementum congue. Donec porttitor orci vitae nibh commodo, id elementum erat facilisis. Vestibulum a viverra mauris, eget pellentesque risus. Nulla eu sapien elit. Sed pharetra turpis at eros volutpat, nec consequat tortor convallis. Proin nec cursus dolor. Donec consequat efficitur felis eu placerat. Vestibulum congue, velit id rutrum posuere, nunc velit sagittis dolor, at suscipit neque arcu quis tellus. Donec leo tellus, fringilla sed condimentum ac, sodales a nibh. Praesent eu tellus vestibulum, finibus nunc fringilla, semper odio. Sed ultricies at erat ac ornare. Duis a facilisis lacus, eu elementum quam. Vivamus id enim gravida, auctor elit a, viverra nisi. Aliquam imperdiet ornare felis a molestie. Maecenas rhoncus lobortis tellus, quis cursus ipsum posuere eu. Cras vel mi sed nisl vulputate facilisis. Proin aliquam lacus at sagittis fermentum. Donec ut rhoncus enim, id finibus tortor. Phasellus porttitor, nisl quis cursus interdum, orci justo condimentum risus, quis pulvinar dui enim eu metus. Aliquam congue mollis dui, pretium commodo leo. Aliquam tincidunt tellus et ligula tristique fermentum. Aliquam auctor velit condimentum velit rutrum sodales." } \markup { \vspace #0.5 } \score { \relative c' { c4 d e f g a g f e1 } } \markup { \vspace #0.5 } \markup { \justify-string # "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed sapien neque, efficitur quis iaculis in, tincidunt ut odio. In purus sem, sollicitudin in ante in, eleifend molestie libero. Curabitur facilisis malesuada lectus non lacinia. Nam sagittis orci nulla, nec pulvinar arcu facilisis eget. In hac habitasse platea dictumst. Sed consectetur tincidunt nulla id porta. Nulla pretium mi leo, vitae dapibus sem rhoncus quis. Morbi sed est in nibh convallis eleifend vel vel diam. Vestibulum in arcu in ligula ullamcorper finibus. Cras facilisis, neque eu pretium ornare, leo ipsum sagittis augue, at lobortis odio augue ut diam. Cras suscipit consequat fermentum. Mauris ullamcorper lacus laoreet ipsum sagittis, quis blandit leo maximus. Nam vel elementum nisi. Nulla tempus malesuada ante at porttitor. Aliquam erat volutpat. Sed commodo, ligula sit amet efficitur finibus, arcu risus ultrices nisi, sit amet tristique enim elit sit amet eros. Praesent rhoncus nunc eu dolor dapibus vehicula. Nulla hendrerit dignissim libero, non suscipit arcu fringilla vitae. Pellentesque nisl tellus, faucibus id augue a, condimentum luctus augue. Etiam quis maximus elit, in hendrerit orci. Vestibulum elit tellus, porttitor vel odio vel, ullamcorper tincidunt dolor. Vestibulum a porta orci. Donec iaculis velit vehicula mi sagittis convallis. Nullam at ex dapibus, molestie nulla eget, rutrum lectus. Ut cursus eu elit in sem
Re: Markup problem
Thank you! I would like to avoid lilypond-book, because I only need to manage performance notes which, if they are extended, need to be spread over several pages automatically. The snippet works well! Rip_Mus Il giorno dom 13 feb 2022 alle ore 11:48 Lukas-Fabian Moser ha scritto: > Hi, > > Am 13.02.22 um 11:35 schrieb Rip _Mus: > > Good morning\evening to everyone, > > attached a little problem of mine, please let me understand (and > > thanks a lot to all users that helped me with the stencil definition, > > maybe I forgot to answer!): > > > > why, after the score, the second markup goes directly on the other page? > > LilyPond is not very good at supporting text paragraphs running across > page breaks. (Try making your first lorem ipsum-text longer and see what > happens.) Part of a solution may be found in > > https://lilypond.org/doc/v2.23/Documentation/snippets/text.html#text-markup-list > > But for combining large amounts of text with interspersed LilyPond > scores, I'd rather recommend a combination of LilyPond and LaTeX. > LilyPond comes shipped with lilypond-book, but if you're willing to use > LuaLaTeX, you can use lyluatex (https://github.com/jperon/lyluatex) > which is a huge improvement ober lilypond-book. > > Lukas > >
More about stencil
Hello everyone, thanks to your many suggestions, I was able to get a little into the perspective of modifying the stencils. I created a stencil modification that adds a small arrow (sort of a glissando) to the left of the note or accident. However, I cannot understand why the ascending arrows let the stem no longer attached to the notehead. Do you have any ideas? Rip_mus \version "2.22.1" glis-su-acc = { \once \override Accidental.stencil = #(lambda (grob) (let* ( (acc (ly:accidental-interface::print grob)) (arr (ly:stencil-add (make-line-stencil 0.1 (- X 0.3) (- Y 1.25) (- X 0.9) (- Y 1.85));tratto principale 0.6 (make-line-stencil 0.1 (- X 0.15) (- Y 1.4) (- X 0.75) (- Y 2));tratto principale 0.6 (make-line-stencil 0.15 (- X 0.15) (- Y 1.25) (- X 0.55) (- Y 1.25));tratto orizzontale 0.4 (make-line-stencil 0.15 (- X 0.15) (- Y 1.25) (- X 0.15) (- Y 1.65));tratto verticale 0.4 ) ) ) (ly:stencil-combine-at-edge arr X RIGHT acc 0.2) ) ) } glis-giu-acc = { \once \override Accidental.stencil = #(lambda (grob) (let* ( (acc (ly:accidental-interface::print grob)) (arr (ly:stencil-add (make-line-stencil 0.1 (- X 0.3) (- Y 0.75) (- X 0.9) (- Y 0.15));tratto principale 0.6 (make-line-stencil 0.1 (- X 0.15) (- Y 0.6) (- X 0.75) (+ Y 0));tratto principale 0.6 (make-line-stencil 0.15 (- X 0.15) (- Y 0.75) (- X 0.55) (- Y 0.75));tratto orizzontale 0.4 (make-line-stencil 0.15 (- X 0.15) (- Y 0.75) (- X 0.15) (- Y 0.35));tratto orizzontale 0.4 ) ) ) (ly:stencil-combine-at-edge arr X RIGHT acc 0.2) ) ) } glis-su-nat = { \once \override Stem.X-offset = #(lambda (grob) (if (= UP (ly:grob-property grob 'direction)) 1.43 0.19)) \once \override NoteHead.stencil = #(lambda (grob) (let* ( (note (ly:note-head::print grob)) (arr (ly:stencil-add (make-line-stencil 0.1 (- X 0.3) (- Y 1.25) (- X 0.9) (- Y 1.85));tratto principale 0.6 (make-line-stencil 0.1 (- X 0.15) (- Y 1.4) (- X 0.75) (- Y 2));tratto principale 0.6 (make-line-stencil 0.15 (- X 0.15) (- Y 1.25) (- X 0.55) (- Y 1.25));tratto orizzontale 0.4 (make-line-stencil 0.15 (- X 0.15) (- Y 1.25) (- X 0.15) (- Y 1.65));tratto verticale 0.4 ) ) ) (ly:stencil-combine-at-edge arr X RIGHT note 0.2) ) ) } glis-giu-nat = { \once \override Stem.X-offset = #(lambda (grob) (if (= UP (ly:grob-property grob 'direction)) 1.23 0)) \once \override NoteHead.stencil = #(lambda (grob) (let* ( (note (ly:note-head::print grob)) (arr (ly:stencil-add (make-line-stencil 0.1 (- X 0.3) (- Y 0.75) (- X 0.9) (- Y 0.15));tratto principale 0.6 (make-line-stencil 0.1 (- X 0.15) (- Y 0.6) (- X 0.75) (+ Y 0));tratto principale 0.6 (make-line-stencil 0.15 (- X 0.15) (- Y 0.75) (- X 0.55) (- Y 0.75));tratto orizzontale 0.4 (make-line-stencil 0.15 (- X 0.15) (- Y 0.75) (- X 0.15) (- Y 0.35));tratto orizzontale 0.4 ) ) ) (ly:stencil-combine-at-edge arr X RIGHT note 0) ) ) } #(set-global-staff-size 20) \header { title = \markup {\column { "About stencils" \vspace #2 }} tagline = ##f } \new Staff { \relative c' { \once \override Score.FootnoteItem.annotation-line = ##f \footnote "*" #'(-0.2 . -1) "* glissando at the end of previous note" NoteHead \stemDown \glis-giu-nat f2 \glis-su-nat b2 | \glis-giu-acc fis4 \glis-su-acc bes2. \glis-giu-nat c32 \glis-su-nat c c c c c c c \glis-giu-nat c \stemUp \glis-giu-nat c } } \paper { top-margin = 2 \cm bottom-margin = 2 \cm left-margin = 2 \cm right-margin = 2 \cm indent = 0\mm }
Re: More about stencil
Good morning, thank you, thank you very much! The level of customization of lilypond seems incredible to me: I will have to deepen a lot, especially as regards the definition of new engravers. Nenuvar utilities are great! The only "problem" is that the side ornamentation, in case of altered notes, is placed between the accidental and the note. If I set the "is-inside" property to ## f, the ornamentation is printed before the accident, but there is a collision problem with previous notes. I'll have to figure out how to do it a bit. Thanks again! Rip_mus Il giorno dom 13 feb 2022 alle ore 23:17 Valentin Petzel ha scritto: > Hello Rip, > > also for a more recent version that is compatible with 2.22 check out the > nenuvar-side-ornementations.ily from > https://github.com/nsceaux/nenuvar-lib > > This is not compatible with the latest versions of Lilypond for now. The > amazing Jean quite recently fixed the magnetic-snap thingy, which had the > same problem. To apply his fix to your situation replace the definition of > define-grob-definition in line 7 by > > #(define (define-grob-definition grob-name grob-entry) > >(set! all-grob-descriptions > > (cons ((@@ (lily) completize-grob-entry) > > (cons grob-name grob-entry)) > >all-grob-descriptions))) > > Cheers, > > Valentin > > Am Sonntag, 13. Februar 2022, 22:51:25 CET schrieb Valentin Petzel: > > > Hello Rip, > > > > > > the problem is that you are modifying the stencil of the NoteHead, thus > > > changing its dimensions. > > > > > > Take a look at this old Lilypond Blog post: > > > > https://web.archive.org/web/20200221133054/https://www.lilypondblog.org/2013 > > > /08/ adding-ornamentations-to-note-heads-part-1/[1] > > > > > > In there a new Event and Grob for Head ornamentation is added, which > would > > > probably be better suited for your demands. > > > > > > Cheers, > > > Valentin > > > > > > Am Sonntag, 13. Februar 2022, 20:43:07 CET schrieb Rip _Mus: > > > > Hello everyone, > > > > thanks to your many suggestions, I was able to get a little into the > > > > perspective of modifying the stencils. > > > > I created a stencil modification that adds a small arrow (sort of a > > > > glissando) to the left of the note or accident. > > > > However, I cannot understand why the ascending arrows let the stem no > > > > longer attached to the notehead. Do you have any ideas? > > > > > > > > Rip_mus > > > > > > > > > [1] > > > > https://web.archive.org/web/20200221133054/https://www.lilypondblog.org/201 > > > 3/08/ adding-ornamentations-to-note-heads-part-1/ > > >
Re: More about stencil
Of course, I understand your reasoning and point of view well. I have used Finale for 10 years, Sibelius for 5 years and Dorico for another two years. In this experience, I have always struggled to be able to "bend" the software to my needs. Sometimes a very extreme bending, so much so that it often leads to distorting some functions in order to obtain something very simple. Then I arrived on Lilypond and I discover that the tweaks certainly work at a deeper level, so much so that it is possible to obtain very elaborate results (I am thinking of notations for contemporary music for example). And all this, with an extensible and completely free programming language. So, forgive my perhaps excessive enthusiasm, but I see so much potential in Lilypond that I am satisfied with it. I will see the limits and, theoretically, as my syntactic knowledge of Scheme increases, I will look for a way around them. Thanks again for everything Rip_mus Il lun 14 feb 2022, 16:26 David Kastrup ha scritto: > Rip _Mus writes: > > > Good morning, > > thank you, thank you very much! > > The level of customization of lilypond seems incredible to me: I will > have > > to deepen a lot, especially as regards the definition of new > > engravers. > > Not all of it really deserves the name "customization" but rather is > more or less a consequence of the proverbial hood not being welded shut. > Being able to touch everything does not imply that there are > driver-level controls for everything, so getting competent help for some > task here does not imply that LilyPond is well-prepared to do this task. > > Though it can be the first step of getting it there. > > -- > David Kastrup >
A little help
Hello everyone, I have prepared a minimal example (attached) to explain my problem. In a PianoStaff, transiently, I insert a new staff above the left hand to create a kind of "tactus" reference (widely used in contemporary music). I wonder how I can do to decrease the excessive distance between the extreme staves, in order to make everything more compact. I'm looking at the chapters related to vertical spacing, but I just can't get out of them. Thanks and greetings to all Rip_mus \version "2.22.1" su = \new Staff = "su" { \relative c' {c4 d e f} } giu = \new Staff = "giu" { \relative c' { << {b4 a g f} \new Staff \with { \remove "Time_signature_engraver" \remove "Clef_engraver" \remove "Staff_symbol_engraver" \override NoteHead.stencil = #point-stencil alignAboveContext = "giu"} {c'4 c c c} >> } } \score { \new PianoStaff << \su \giu >> }
Re: A little help
Thank you Valentin, this is really perfect! Il dom 27 feb 2022, 13:50 Valentin Petzel ha scritto: > Hello, please keep the list in CC, > > if you want to have actual stems that is of course fine. But then I’d > simply do > this: > > giu = \new Staff = "giu" { > \relative c' { > << > {b4 a g f} > \new Dynamics \with { >\accepts Voice >\defaultchild "Voice" >\override NoteHead.Y-offset = #-3 >\override NoteHead.stencil = #point-stencil >\override Stem.length = #5 >\override Beam.positions = #'(-.7 . -.7) >\override Flag.font-size = #-4 >\override TupletNumber.font-size = #-4 >\override TupletBracket.thickness = #1.3 > alignAboveContext = "giu"} > \new Voice { \tuplet 3/2 { c'8 c c } c\noBeam c\noBeam c4} > >> > } > } > > Cheers, > Valentin > > Am Sonntag, 27. Februar 2022, 12:21:27 CET schrieb Rip _Mus: > > Dear Valentin, > > you are such a lilypond-wizard! > > All your solutions are great, but maybe I prefer the first because I want > > the possibility to use a tactus of 8th note and not only quarter. (I > think > > that reply a flag in postscript is not a good way of spending time!) > > What do you think about using markup with a score inside? > > > > Thank you again > > > > Il dom 27 feb 2022, 10:19 Valentin Petzel ha > scritto: > > > Hello, > > > > > > Doing it your way you can simply use > > > > > > \new Dynamics \with { > > > > > > \consists Stem_engraver > > > \consists Note_heads_engraver > > > \override NoteHead.stencil = #point-stencil > > > alignAboveContext = "giu"} > > > > > > which requires a bit less tuning than getting a Staff to behave not > like a > > > Staff. But I’d rather do something like > > > > > > tactus = \markup \path #0.15 #'((moveto 0 1) (lineto 0 -1)) > > > giu = \new Staff = "giu" { > > > > > > \relative c' { > > > > > > << > > > > > > {b4 a g f} > > > \new Dynamics \with { alignAboveContext = "giu" } > > > {\repeat unfold 4 s4-\tactus} > > > > > > } > > > > > > } > > > > > > which does also allow something like > > > > > > giu = \new Staff = "giu" { > > > > > > \relative c' { > > > > > > << > > > > > > {b4 a g f} > > > {\repeat unfold 4 s4^\tactus} > > > > > > } > > > > > > } > > > > > > Cheers, > > > Valentin > > > > > > Am Samstag, 26. Februar 2022, 18:16:23 CET schrieb Rip _Mus: > > > > Hello everyone, > > > > I have prepared a minimal example (attached) to explain my problem. > > > > In a PianoStaff, transiently, I insert a new staff above the left > hand > > > > to > > > > create a kind of "tactus" reference (widely used in contemporary > music). > > > > I wonder how I can do to decrease the excessive distance between the > > > > extreme staves, in order to make everything more compact. > > > > I'm looking at the chapters related to vertical spacing, but I just > > > > can't > > > > get out of them. > > > > > > > > > > > > Thanks and greetings to all > > > > > > > > Rip_mus > >
About cross-staff beaming in voiceTwo
Hello everyone, here's a problem I am encountering: [image: image.png] So, with the "\change" construct put in voiceTwo, there's no automatic kneed-beam. Also tried to override the Beam.auto-knee-gap value, but no way to obtain the knee. Hope there is a way to get what I'm looking for. Thank you Rip_mus
Time signature guide
Good morning, I would need advice. In a score with many time signature changes (where I therefore cannot use a stable global variable of tempo and time signature), there is a way to set a "guide" in which to set the various time signature changes, without " dirty "the instrumental variables? Perhaps there is some suitable context for this? Or other strategies? Thank you very much Rip_mus
Re: Time signature guide
Thank you so much, you offered two similar and valid solutions! Regards Il giorno lun 21 mar 2022 alle ore 10:19 Leo Correia de Verdier < leo.correia.de.verd...@gmail.com> ha scritto: > I’m not sure I understood your question right, but I think the usual way > to do it would be to write the ”global” variable as a sequence of tempos, > time signatures and other events separated by spacers or skips. > > Something like: > > %% > > \version "2.23.6" > > global = { \time 4/4 \tempo "Allegro" 4 = 144 >s1 >\time 3/8 \tempo "Adagio" 8 = 76 >s4. >\time 5/8 \tempo "" 8 = 92 >s8*5 >\time 3/2 \tempo "Vivo" 2 = 152 >s1. >\bar "|." > } > > part = { c'1 | d'4. | e'4~ 4. | a'1. } > > \new Staff << \global \part >> > > \layout { ragged-right = ##f } > > %% > > > 21 mars 2022 kl. 09:51 skrev Rip _Mus : > > > > Good morning, > > I would need advice. > > In a score with many time signature changes (where I therefore cannot > use a stable global variable of tempo and time signature), there is a way > to set a "guide" in which to set the various time signature changes, > without " dirty "the instrumental variables? > > Perhaps there is some suitable context for this? Or other strategies? > > > > Thank you very much > > > > Rip_mus > >
Question about new stable version
Hello everyone, what are the forecasts for the release of a new stable version? Do you know if it will be 2.24 directly or there will be some intermediate updates of 2.22? Thank you Rip_mus
Re: Question about new stable version
Thanks for the reply! It is just my curiosity. I wonder what new features the new stable version might contain. Of course I know this is a users mailing list, I asked why maybe someone could know more than me Il dom 27 mar 2022, 09:04 Jean Abou Samra ha scritto: > Le 27/03/2022 à 08:43, Rip _Mus a écrit : > > Hello everyone, > > what are the forecasts for the release of a new stable version? Do you > > know if it will be 2.24 directly or there will be some intermediate > > updates of 2.22? > > > I don't know and don't think anybody knows, but if there are > updates of 2.22, they will contain bug fixes, not new features, > compared to previous versions of the 2.22 series. Development > happens in the 2.23 line and will eventually result in a 2.24.0 > version. Why the question? > > Jean > >
Re: changing lyrics font-style to italics
Dear Stefan, have a look: \version "2.22.1" \score { \new Staff = "voce" { \new Voice = "main" { \relative c' { << {c4 d e c c d e c} \new Lyrics \with { alignBelowContext = "voce" } \lyricsto "main" { Fra Mar -- ti -- no Cam -- pa -- na -- ro } >> } } } } \layout { \context { \Lyrics \override LyricText.font-shape = #'italic } } Il giorno lun 18 apr 2022 alle ore 19:28 Stefan Thomas < kontrapunktste...@gmail.com> ha scritto: > Dear community, > for certain reasons I would like to change the font-style of a Lyrics > context to italic. > I tried it with > \override LyricText #'font-style = #'italic > but without success. > Does someone know how to do it? > Thanks, > Stefan >
Stem extension question
Good morning to everyone, I would like to ask you if you know a way to manually define the extension of a Stem in the case of a chord. For example, I write a chord of three sounds, but I would like the Stem to extend only to some of them, for example the two lowest notes, making the top note "floating". Obviously the result can also be obtained by using multiple voices, but if there were the possibility of using a tweak, the result would certainly be easier to obtain. Thanks
Re: Stem extension question
Hi Jean, thank you for the reply! The purpose is to simplify the inserting of hartificial harmonic + resulting sound, without using the creation of a second voice. I found that it is possible to tweak the stem-begin-position property, but this work only for unbeamed note. Do you have any suggestion? Also in different way to achive the result. Thank you Il dom 1 mag 2022, 21:48 Jean Abou Samra ha scritto: > Hello, > > > Le 01/05/2022 à 11:26, Rip _Mus a écrit : > > Good morning to everyone, > > I would like to ask you if you know a way to manually define the > > extension of a Stem in the case of a chord. For example, I write a > > chord of three sounds, but I would like the Stem to extend only to > > some of them, for example the two lowest notes, making the top note > > "floating". > > Obviously the result can also be obtained by using multiple voices, > > but if there were the possibility of using a tweak, the result would > > certainly be easier to obtain. > > > > Thanks > > > What is the purpose of this notation? I wonder if this could be > an XY question. > > Best, > Jean >
Re: Stem extension question
Thank you for your valuable suggestions! I took the music function by Pierre-Luc and modified as follows: artificialHarmonicMod = #(define-music-function (stopped touched result duration) (ly:music? ly:music? ly:pitch? ly:duration?) #{ << { \voiceOne \stemDown <$stopped $touched \harmonic>$duration } \new Voice { \voiceTwo \once \omit Stem \once \omit Flag \parenthesize $result 32 ^\flageolet } >> \oneVoice \stemNeutral #}) \new Staff { \relative c' { \artificialHarmonicMod cis_~ fis cis'' 4 \artificialHarmonicMod cis,, gis' gis'' 4 } } In this way it is possible to put ties between common notes, for example. Is there a way to insert an optional argument in the music function? I would have the possibility to express a post-event, like tremolo or glissando. Thank you Rip_Mus Il giorno lun 2 mag 2022 alle ore 18:33 Pierre-Luc Gauthier < p.luc.gauth...@gmail.com> ha scritto: > I used this extensively (in Stravinsky and whatnot). > > artificialHarmonic = #(define-music-function >(stopped touched result duration) >(ly:pitch? ly:pitch? ly:pitch? ly:duration?) >#{ > \afterGrace > <$stopped > $touched \harmonic>$duration > \tweak NoteHead.font-size -6 > \tweak Stem.stencil f > \tweak Beam.stencil f > \tweak Flag.stencil f > \parenthesize > $result \harmonic >#}) > > used as : > \artificialHarmonic ds,, fs as''1. > > It works for me but is not quite perfect. For one, I would love for it > to generate only the midi for the $resulting note and not the whole > chord (which is musically totally irrelevant). > > Hope it helps > -- > Pierre-Luc Gauthier >
Box around system
Good morning, I found this interesting snippet: https://lsr.di.unimi.it/LSR/Snippet?id=257 that draws a box around systems. According to you, is it possible to specify box line thickness ? Thank you! Rip_mus
Re: Box around system
Thank you Jean! It works very well! Best regards Il dom 15 mag 2022, 11:09 Jean Abou Samra ha scritto: > > > Le 15/05/2022 à 10:40, Rip _Mus a écrit : > > Good morning, > > I found this interesting snippet: > > https://lsr.di.unimi.it/LSR/Snippet?id=257 > > > > that draws a box around systems. > > According to you, is it possible to specify box line thickness ? > > > > Thank you! > > > > Rip_mus > > > > It looks like box-grob-stencil does not support this. make-stencil-boxer, > on > the other hand, does. It expects a callback yielding a stencil, though, > so you need to define a little function returning a stencil empty of > inking with the grob's extent. > > \version "2.22.2" > > #(define (empty-stencil-from-grob-extents grob) > (ly:make-stencil > '() > (ly:grob-extent grob grob X) > (ly:grob-extent grob grob Y))) > > \layout { >\context { > \Score > \override System.stencil = >% adjust thickness and padding >#(make-stencil-boxer 0.2 0.3 empty-stencil-from-grob-extents) >} > } > > { >\slurDown c4 ( g4 c''4) > } > > > Best, > Jean > >
Re: Box around system
Hello Valentin, thanks a lot! This approach is also very useful and sophisticated! I will have to decide, sooner or later, to deepen the Scheme side. Best regards Il giorno dom 15 mag 2022 alle ore 21:08 Valentin Petzel ha scritto: > Hello Jean, hello Rip. > > instead of imposing this empty stencil I’d extent the original command > such > that it allows for such things. The appended file does implement a way to > call > (box-grob-stencil-with-thickness thickness padding) and a way to use the > original function but to be able to specify thickness and padding using > details.box-thickness and details.box-padding. > > Cheers, > Valentin > > > Am Sonntag, 15. Mai 2022, 11:09:29 CEST schrieb Jean Abou Samra: > > Le 15/05/2022 à 10:40, Rip _Mus a écrit : > > > Good morning, > > > I found this interesting snippet: > > > https://lsr.di.unimi.it/LSR/Snippet?id=257 > > > > > > that draws a box around systems. > > > According to you, is it possible to specify box line thickness ? > > > > > > Thank you! > > > > > > Rip_mus > > > > It looks like box-grob-stencil does not support this. > make-stencil-boxer, on > > the other hand, does. It expects a callback yielding a stencil, though, > so > > you need to define a little function returning a stencil empty of inking > > with the grob's extent. > > > > \version "2.22.2" > > > > #(define (empty-stencil-from-grob-extents grob) > > (ly:make-stencil > > '() > > (ly:grob-extent grob grob X) > > (ly:grob-extent grob grob Y))) > > > > \layout { > >\context { > > \Score > > \override System.stencil = > >% adjust thickness and padding > >#(make-stencil-boxer 0.2 0.3 empty-stencil-from-grob-extents) > >} > > } > > > > { > >\slurDown c4 ( g4 c''4) > > } > > > > > > Best, > > Jean > >
Re: Box around system
Good morning, I really appreciate your solutions and I'm trying to impress box only on some systems of the score. So I'm trying to do something like \once \override Score.System.stencil = ... But there is no response. I've tried also with \overrideProperty, but nothing happens. Do you have any advice for me? Thank you Il giorno lun 16 mag 2022 alle ore 08:28 Rip _Mus < ripetizioni.mus...@gmail.com> ha scritto: > Hello Valentin, > thanks a lot! > This approach is also very useful and sophisticated! > I will have to decide, sooner or later, to deepen the Scheme side. > > Best regards > > Il giorno dom 15 mag 2022 alle ore 21:08 Valentin Petzel < > valen...@petzel.at> ha scritto: > >> Hello Jean, hello Rip. >> >> instead of imposing this empty stencil I’d extent the original command >> such >> that it allows for such things. The appended file does implement a way to >> call >> (box-grob-stencil-with-thickness thickness padding) and a way to use the >> original function but to be able to specify thickness and padding using >> details.box-thickness and details.box-padding. >> >> Cheers, >> Valentin >> >> >> Am Sonntag, 15. Mai 2022, 11:09:29 CEST schrieb Jean Abou Samra: >> > Le 15/05/2022 à 10:40, Rip _Mus a écrit : >> > > Good morning, >> > > I found this interesting snippet: >> > > https://lsr.di.unimi.it/LSR/Snippet?id=257 >> > > >> > > that draws a box around systems. >> > > According to you, is it possible to specify box line thickness ? >> > > >> > > Thank you! >> > > >> > > Rip_mus >> > >> > It looks like box-grob-stencil does not support this. >> make-stencil-boxer, on >> > the other hand, does. It expects a callback yielding a stencil, though, >> so >> > you need to define a little function returning a stencil empty of inking >> > with the grob's extent. >> > >> > \version "2.22.2" >> > >> > #(define (empty-stencil-from-grob-extents grob) >> > (ly:make-stencil >> > '() >> > (ly:grob-extent grob grob X) >> > (ly:grob-extent grob grob Y))) >> > >> > \layout { >> >\context { >> > \Score >> > \override System.stencil = >> >% adjust thickness and padding >> >#(make-stencil-boxer 0.2 0.3 empty-stencil-from-grob-extents) >> >} >> > } >> > >> > { >> >\slurDown c4 ( g4 c''4) >> > } >> > >> > >> > Best, >> > Jean >> >>
Orchestral works good practice
Good morning to everyone, I am preparing a large orchestral work. In my writing style, each instrument often has two voices in its staff, for various reason (for example, each clarinet can handle two voices when playing multiphonics trills with threshold tones, or other techniques), but in some other cases instruments couple have the same notes, or both tacet. I read that, in these cases, \partCombine is not suitable. Are there strategies for these kind of engraving needs? Thank you Rip_mus
Lilypond-book problem
Good morning, I have installed the version 2.22.1, wich I used for a lot of big project. A lot of times I tried to open terminal and run "lilypond-book" but without success. I already add the folder "...\usr\bin" to the environmental variabile path, in fact the command "lilypond" runs. Someone could help me? Thank you Rip_mus
Re: Lilypond-book problem
Good morning, thanks for the reply! You're right, I could have added a few more details. The operating system is Windows 10. For using Lilypond on command line, I followed the instructions on the site. I added the folder "C:Program Files (x86)\LilyPond\usr\bin" to the environmental variable “Path”. I think I followed them well, as the "ilypond" command works. The other commands "lilypond-book" and "convert-ly" instead give me the following message: 'lilypond-book' is not recognized as an internal or external command What I notice is that in the folder in question there are lilypond-book and convert-ly scripts, but they are without extension (for example * .py) What do you think about? Il lun 5 set 2022, 02:13 Knute Snortum ha scritto: > On Sun, Sep 4, 2022 at 9:06 AM Rip _Mus > wrote: > > > > Good morning, > > I have installed the version 2.22.1, wich I used for a lot of big > project. > > A lot of times I tried to open terminal and run "lilypond-book" but > without success. I already add the folder "...\usr\bin" to the > environmental variabile path, in fact the command "lilypond" runs. > > Someone could help me? > > It would be helpful to know exactly what is going wrong. Do you get > error messages? Post them. Not doing what you think it should? Tell > us what it's doing and what you think it should be doing. Also, tell > us the OS, is it linux? > > -- > Knute Snortum >
Re: Lilypond-book problem
Ok! I tried and it works very well! Another solution is to add the extension ".ly" to the file name and then the command runs. I don't understand why it is not the way described in Lilypond manuals. Anyway, thank you so much for your help! Il giorno lun 5 set 2022 alle ore 19:06 Knute Snortum ha scritto: > Well, I had the same experience as you. One solution is to type: > > python3 "C:Program Files (x86)\LilyPond\usr\bin\lilypond-book" > > You could put that in a batch file somewhere in your PATH. There may > be other solutions too. > > -- > Knute Snortum > > > On Sun, Sep 4, 2022 at 10:26 PM Rip _Mus > wrote: > > > > Good morning, > > thanks for the reply! You're right, I could have added a few more > details. > > The operating system is Windows 10. For using Lilypond on command line, > I followed the instructions on the site. > > I added the folder "C:Program Files (x86)\LilyPond\usr\bin" to the > environmental variable “Path”. > > I think I followed them well, as the "ilypond" command works. The > other commands "lilypond-book" and "convert-ly" instead give me the > following message: > > > > 'lilypond-book' is not recognized as an internal or external command > > > > What I notice is that in the folder in question there are lilypond-book > and convert-ly scripts, but they are without extension (for example * .py) > > > > What do you think about? > > > > > > Il lun 5 set 2022, 02:13 Knute Snortum ha scritto: > >> > >> On Sun, Sep 4, 2022 at 9:06 AM Rip _Mus > wrote: > >> > > >> > Good morning, > >> > I have installed the version 2.22.1, wich I used for a lot of big > project. > >> > A lot of times I tried to open terminal and run "lilypond-book" but > without success. I already add the folder "...\usr\bin" to the > environmental variabile path, in fact the command "lilypond" runs. > >> > Someone could help me? > >> > >> It would be helpful to know exactly what is going wrong. Do you get > >> error messages? Post them. Not doing what you think it should? Tell > >> us what it's doing and what you think it should be doing. Also, tell > >> us the OS, is it linux? > >> > >> -- > >> Knute Snortum >
Re: Lilypond-book problem
@David : Yeah, I'm sorry, I meant ".py". Anyway, a very good analysis of the situation! @Knute Snortum : Thank you for your suggestions! I'm thinking about reporting this issue. Il giorno mar 6 set 2022 alle ore 19:25 Knute Snortum ha scritto: > On Tue, Sep 6, 2022 at 8:09 AM David Wright > wrote: > > > > On Tue 06 Sep 2022 at 11:19:28 (+0200), Rip _Mus wrote: > > > Il giorno lun 5 set 2022 alle ore 19:06 Knute Snortum ha scritto: > > > > On Sun, Sep 4, 2022 at 10:26 PM Rip _Mus wrote: > > > > >> On Sun, Sep 4, 2022 at 9:06 AM Rip _Mus wrote: > > > > > > >> > I have installed the version 2.22.1, wich I used for a lot of > big > > > > project. > > > > >> > A lot of times I tried to open terminal and run "lilypond-book" > but > > > > without success. I already add the folder "...\usr\bin" to the > > > > environmental variabile path, in fact the command "lilypond" runs. > > > > >> > Someone could help me? > > > > > > > thanks for the reply! You're right, I could have added a few more > > > > details. > > > > > The operating system is Windows 10. For using Lilypond on command > line, > > > > I followed the instructions on the site. > > > > > I added the folder "C:Program Files (x86)\LilyPond\usr\bin" to the > > > > environmental variable “Path”. > > > > > I think I followed them well, as the "ilypond" command works. The > > > > other commands "lilypond-book" and "convert-ly" instead give me the > > > > following message: > > > > > > > > > > 'lilypond-book' is not recognized as an internal or external > command > > > > > > > > > > What I notice is that in the folder in question there are > lilypond-book > > > > and convert-ly scripts, but they are without extension (for example > * .py) > > > > > > > > > > What do you think about? > > > > > > Well, I had the same experience as you. One solution is to type: > > > > > > > > python3 "C:Program Files (x86)\LilyPond\usr\bin\lilypond-book" > > > > > > > > You could put that in a batch file somewhere in your PATH. There may > > > > be other solutions too. > > > > > Ok! > > > I tried and it works very well! > > > Another solution is to add the extension ".ly" to the file name and > then > > > the command runs. > > > > More likely you added .py ? > > Just adding ".py" to lilypond-book didn't work for me. At the command > line I got a message that "lilypond-book" was not an executable. From > the Windows file folder a command screen popped up for a split second, > then vanished. > > But here's another way to do this: create a file called > lilypond-book.bat somewhere in your PATH, then paste this into it: > > @python3 "C:\Program Files > (x86)\LilyPond-2.22.2\usr\bin\lilypond-book" %* > > You should be able to type "lilypond.book" anywhere you cd to. > > -- > Knute Snortum >
Lilypond EPS inside Adobe Illustrator
Good morning, I noticed that if a score is exported in eps format, I'm not able to open the eps correctly in Illustrator. It renders the staff line, but not the other symbols included in the encapsulated font (Emmentaler, the default one). I'm running Lilypond 2.22.1 on Windows 10. Is it a known issue or am I doing something wrong? Thank you rip_mus
Re: Lilypond EPS inside Adobe Illustrator
Hi Valentin, thank you for the reply! Yes, I found the solution of exporting into svg. The eps format, for me, would have been more preferable in those situations where I have to import the graphics into some other software that doesn't accept svg, only eps. So I'll have to make a second convertion step, no problem. About the Lilypond-generated eps, I noticed that, if I open it with notepad, it reveals some encryption-like glyphs which make it impossible to decrypt the content. I'm curious, also in that, to understand the reason. Thank you again for your help! rip Il mar 8 nov 2022, 13:36 Valentin Petzel ha scritto: > Hi Rip, > > the problem is that while Lilypond will embed the glyphs into the eps it > will > reference them with a simple sequence. This cannot really be interpreted > as > text (the first glyph will be referenced as "1", which is the "Start of > Heading" character). So either this will in fact fail to extract this > glyph at > all, or it will turn it into a string containing a simple CC, which is > then of > course not displayed. > > If you include enough glyphs you will get normal chars (try for example > this > > #(define glyph-list > (lset-difference > equal? > (ly:otf-glyph-list (ly:system-font-load "emmentaler-20")) > '(".notdef" "backslash"))) > > \markuplist #(map (lambda (x) (markup #:musicglyph x)) > glyph-list) > > ), but these will probably simply be rendered with any font available on > the > system instead of the actual glyphs (unless AI does a thing where it tries > to > reconstruct the font from the embedded glyphs, which would defintely > require > more effort than simply importing the glyphs and replacing the font > references > with references to these glyphs, which AI does not appear to be doing in > this > case. > > But then this is not really an issue of Lilypond but of how AI imports > file > with such glyphsets. Also going into AI via eps seems a bit > counterintuitive > for me. After all PS is not particularly good at storing data in a machine > readable way, so AI will have to try to interpret what it sees. Instead, > why > not go for SVG-Output, which is a format that is intended to store data in > a > machine readable way and simply has to be parsed by AI? In fact the SVG > output > will not store these glyphs as font references, but will insert paths, > getting > rid of all dependencies to specfic font files (although I remember that > with > much earlier versions like I think 2.18 this was not the case). > > Cheers, > Valentin > > Am Dienstag, 8. November 2022, 10:39:54 CET schrieb Rip _Mus: > > Good morning, > > I noticed that if a score is exported in eps format, I'm not able to open > > the eps correctly in Illustrator. It renders the staff line, but not the > > other symbols included in the encapsulated font (Emmentaler, the default > > one). > > I'm running Lilypond 2.22.1 on Windows 10. > > Is it a known issue or am I doing something wrong? > > > > Thank you > > > > rip_mus > >
Re: Hide Notes but display Accidental
Good morning, take a look: % \version "2.22.0" \include "english.ly" newHideNotes = { \override NoteHead.transparent = ##t \override NoteHead.no-ledgers = ##t %optional \override Stem.transparent = ##t } \header { tagline = "" } \score { \new Staff \with {\remove "Time_signature_engraver" } { \set Staff.midiInstrument = #"Acoustic Grand Piano" \key c \major \time 5/1 \clef bass \newHideNotes f1 g a bf c' \bar "||"} \layout { \context { \Score proportionalNotationDuration = #(ly:make-moment 1/2) } } \midi { \tempo 1 = 72} } % rip_mus Il ven 18 nov 2022, 01:04 Rajesh Baskar ha scritto: > Hi Everyone, > > I want to hide all the notes but display it's accidental. I can do the > opposite of it by using \hidenotes and \omit Accidental. I want to achieve > something like the below image. Please help. > > [image: Image] > > > \version "2.22.0" \include "english.ly" \header { tagline = "" } \score > {\new Staff \with {\remove "Time_signature_engraver" } {\set > Staff.midiInstrument = #"Acoustic Grand Piano" > \key c \major \time 5/1 \clef bass > > \hideNotes f1 g a bf c' \bar "||"} > \layout { \context { \Score proportionalNotationDuration = > #(ly:make-moment 1/2) } } > \midi { \tempo 1 = 72}} > > Thanks, > > Raj >
after-line-breaking help
Hi all, could you tell me the place, within the documentation, where I can learn more about the "after-line-breaking" property? Thank you rip_mus
A matter of optional arguments
Hello everyone, I'm working on a function that prints a personal type of tremolo. This function has four arguments, the first and the last are optional. The first is actually optional, as you can see in the minimal exemple attached. The last, instead, is problematic: if I omit it, there is an error. \version "2.24.0" % to be used in a \relative environment myTremolo = #(define-music-function (fr main-note aux-pitch st) ((fraction? 1/4) ly:music? ly:pitch? (symbol? 'default)) #{ $(remove-grace-property 'Voice 'Stem 'direction) \afterGrace #fr #main-note { \autoBeamOff \once \omit Beam \once \omit Flag \once \omit Accidental \once \override Stem.transparent = ##t \once \override StemTremolo.beam-width = 1 \once \override StemTremolo.slope = 0 \once \override NoteHead.transparent = ##t \once \override NoteHead.no-ledgers = ##t #(make-music 'NoteEvent 'articulations (list (make-music 'TremoloEvent 'tremolo-type 64)) 'duration (ly:make-duration 3) 'pitch (ly:make-pitch -1 (ly:pitch-notename (ly:music-property #{ #main-note #} 'pitch)) (ly:pitch-alteration (ly:music-property #{ #main-note #} 'pitch)) ) ) \once \omit Stem \once \omit Beam \once \omit Flag \once \override NoteHead.style = #st #(make-music 'NoteEvent 'duration (ly:make-duration 3) 'pitch (ly:make-pitch (ly:pitch-octave aux-pitch) (ly:pitch-notename aux-pitch) (ly:pitch-alteration aux-pitch)) ) \autoBeamOn } #} ) \relative c' { \myTremolo 1/4 c1 e #'harmonic \myTremolo c1 ees #'default %with the following line uncommented, there's an error %\myTremolo a'1 bes } May I ask for your help? Thank you! Rip_mus
Custom gradual spanners
Hello, is there a way to modify a spanner to get a slow-fast trill (like the one in the picture)? [image: image.png] Obviously with user-provided glyphs. I'm trying to figure out how spanners were written to be able to at least modify an existing one, TextSpanner or TrillSpanner, (or write one on purpose, if it's not too complicated, but I guess it is!), but I can't find the definitions. Thank you! Rip_mus
Re: Spacing problems with hidden notes
Hello, here's one solution you can try: %% \version "2.24.0" global = { \key c \major \time 2/2 } upper = { \clef treble \global \relative c' { \set tieWaitForNote = ##t \change Staff = "lower" g8. a16 c8. e16 \clef treble g8. a16 \change Staff = "upper" c8. ~ e16 ~ | < g e c >1 }} lower = { \clef bass \global \voiceThree \relative c'' { \set tieWaitForNote = ##t s2 % %vv \once \override NoteColumn.force-hshift = 0 %^^ % \hideNotes g8. ~ a16 ~ s4 \unHideNotes | < g a >1 | }} \score { % \articulate % \new PianoStaff << %\set PianoStaff.instrumentName = "Piano " \new Staff = "upper" { \accidentalStyle piano-cautionary \set Staff.extraNatural = ##t \set Score.tempoHideNote = ##t \upper } \new Staff = "lower" \with { \consists "Span_arpeggio_engraver" }{ \accidentalStyle piano-cautionary % \set Staff.connectArpeggios = ##t \set Staff.extraNatural = ##t \lower } >> \layout {} \midi { \tempo 4 = 180 } } \paper { #(set-paper-size "a4") } %% Regards Rip_mus Il giorno mar 27 dic 2022 alle ore 18:43 Owen Le Blanc ha scritto: > I'm doing a lot with hidden notes because of having ties and slurs > between voices. Sometimes this causes spacing problems, presumably > because the hidden notes are offset relative to the visible ones. > Note the dot after the G in this example. > Thanks to Carl Sorenson, who previously suggested using tieWaitForNote. > -- Owen > Dr O V Le Blanc >
Extending Lilypond
Hello everyone, for three days I have been immersed in the documentation written by Mr. Samra, on how to define a new grob, a new event and a new engraver that takes care of engraving the new grob, following a specific command. Attached is the first result of my studies, available to everyone. Clearly the built grob is completely useless, but it helped me to make some attempts and understand the logic. I hope it could be a script that shows the various stages of defining new components, rather than modifying some existing ones. At present it needs a revision, so: to the more experienced, I would ask for an evaluation of what has been done (i'm not a programmer!), above all given the non-functioning of some overrides, which modify the properties of certain interfaces which are however included in the grob definition. Greetings to everyone Rip_mus \version "2.24.0" %- % Pippo è un oggetto post evento che, una volta chiamato (\pippo), stampa la stringa "pippo" di un proprio colore % (rosso di default) e rende la testa della nota relativa dello stesso colore. % Di seguito: % - le dichiarazioni delle funzioni di base per definire un grob e un evento (grazie a Jean Abou Samra!); % - definizione di una nuova interfaccia, un nuovo stencil, un nuovo grob (con relativa dichiarazione #all-grob-descriptions); % - definizione della classe di eventi, dell'evento stesso, di una funzione di creazione e di un comando Lilypond; % - definizione dell'engraver, con relativo inserimento nel contesto Voice. % Infine un esempio. % [le intestazioni delle varie sezioni sono in italiano] % Questo script è a puro scopo di studio e chiaramente non serve a nulla! % Può essere uno spunto per costruire degli oggetti personalizzati ed estendere le funzionalità di Lilypond %- % Pippo (Foo) is a post-event object which, once called (\pippo), prints the string "pippo" in its own color (red by default) % and makes the relative note head of the same color. % Right away: % - the basic function declarations to define a grob and an event (thanks to Jean Abou Samra!); % - definition of a new interface, a new stencil, a new grob (with relative declaration #all-grob-descriptions); % - definition of the event class, the event itself, a create function and a Lilypond command; % - definition of the engraver, with relative insertion in the Voice context. % Finally an example. % [the headings of the various sections are in Italian] % This script is for study purposes only and is clearly useless! % It can be a starting point for building custom objects and extending the functionality of Lilypond %- %--FUNZIONI DI BASE--- #(define (define-grob! grob-name grob-entry) (set! all-grob-descriptions (cons ((@@ (lily) completize-grob-entry) (cons grob-name grob-entry)) all-grob-descriptions))) #(define (define-event! type properties) (set-object-property! type 'music-description (cdr (assq 'description properties))) (set! properties (assoc-set! properties 'name type)) (set! properties (assq-remove! properties 'description)) (hashq-set! music-name-to-property-table type properties) (set! music-descriptions (sort (cons (cons type properties) music-descriptions) alist8\pippo a r e' g2 \once \override PippoText.parenthesized = ##t \once \override PippoText.show-vertical-skylines = ##t \once \override PippoText.show-horizontal-skylines = ##t a2_\pippo }
Re: flat symbol in text?
Hello, try instrumentName = \markup \concat { B \raise #0.6 \flat " Major"} Rip_mus Il mar 3 gen 2023, 16:10 Matthew Pierce ha scritto: > Yes, but I don't see a way to use "\flat" in this specific context: > > ...with {instrumentName = "Bb Major "} > > My apologies for a badly worded question. Is there a way to insert the > flat symbol into an instrument name? > -- > *From:* Jean Abou Samra > *Sent:* Tuesday, January 3, 2023 8:53 AM > *To:* Matthew Pierce ; lilypond-user@gnu.org < > lilypond-user@gnu.org> > *Subject:* Re: flat symbol in text? > > > > Le 03/01/2023 15:45 CET, Matthew Pierce a > écrit : > > > > > > How might I display the text "Bb Major," but with the flat symbol > instead of a lower case "b"? > > > You will find \flat in the index. > > https://lilypond.org/doc/v2.24/Documentation/notation/lilypond-index.html > > Best, > Jean >
Question about custom articulation
Hello, I'm trying to define a new articulation, based on two stencils (above and below the staff), that I wrote. I succeeded in making two distinct articulations. However, the attempt to create a single articulation, which chooses the stencil based on the direction specified in the post-event, failed. Does anyone have any advice for me? I attach the file I'm working on. Thank you! Rip_mus \version "2.24.0" lAccUpStencil = #(ly:stencil-rotate-absolute (make-path-stencil '( moveto 0 0 curveto -0.25 1 -0.5 4 -0.5 5 rcurveto 0.25 0.1 0.75 0.1 1 0 curveto 0.5 4 0.25 1 0 0 closepath ) 0.01 0.3 0.3 #t ) -45 0 0 ) lAccDownStencil = #(ly:stencil-rotate-absolute (make-path-stencil '( moveto 0 0 curveto -0.25 1 -0.5 4 -0.5 5 rcurveto 0.25 0.1 0.75 0.1 1 0 curveto 0.5 4 0.25 1 0 0 closepath ) 0.01 0.3 0.3 #t ) -135 0 0 ) #(append! default-script-alist (list `(little-accent-up . ( (stencil . ,lAccUpStencil) (toward-stem-shift-in-column . 0.0) (padding . 0.20) (avoid-slur . around) (direction . ,UP))) `(little-accent-down . ( (stencil . ,lAccDownStencil) (toward-stem-shift-in-column . 0.0) (padding . 0.20) (avoid-slur . around) (direction . ,DOWN))) `(little-accent . ( (stencil . (lAccUpStencil . lAccDownStencil)) (toward-stem-shift-in-column . 0.0) (padding . 0.20) (avoid-slur . around) (direction . ,UP))) ) ) \layout { \context { \Score scriptDefinitions = #default-script-alist } } lAccUp = #(make-articulation 'little-accent-up) lAccDown = #(make-articulation 'little-accent-down) lAcc = #(make-articulation 'little-accent) { a''4\lAccUp c'\lAccDown c'\lAcc }
Re: Question about custom articulation
Hi, thank you for all the comments, I'll make these corrections! Best regards Il mar 10 gen 2023, 12:28 Jean Abou Samra ha scritto: > Le 10/01/2023 à 08:12, Rip _Mus a écrit : > > Hello, > > I'm trying to define a new articulation, based on two stencils (above > > and below the staff), that I wrote. > > I succeeded in making two distinct articulations. However, the attempt > > to create a single articulation, which chooses the stencil based on > > the direction specified in the post-event, failed. > > Does anyone have any advice for me? > > > > In the script definition, you put > > (stencil . (lAccUpStencil . lAccDownStencil)) > > which is ignored because a pair is not a valid stencil value. > (Also, you forgot unquotes, so it's a pair of symbols, not > a pair of stencils.) > > Instead, try using a callback: > > (stencil . ,lAccStencil) > > after having defined > > #(define (lAccStencil grob) > (if (eqv? UP (ly:grob-property grob 'direction)) > lAccUpStencil > lAccDownStencil)) > > > Another comment: do not do this > > #(append! default-script-alist (list ...)) > > because > > - it mutates the built-in default, so even if you put the scriptDefinitions >change in a \layout local to a \score, it will affect all scores. > > - whether append! actually modifies the original list is not specified. >Example: > > > $ ~/lilies/2.24.0/bin/lilypond scheme-sandbox > GNU LilyPond 2.24.0 (running Guile 2.2) > Traitement de > « /home/jean/lilies/2.24.0/share/lilypond/2.24.0/ly/scheme-sandbox.ly » > Analyse... > GNU Guile 2.2.7 > Copyright (C) 1995-2019 Free Software Foundation, Inc. > > Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. > This program is free software, and you are welcome to redistribute it > under certain conditions; type `,show c' for details. > > Enter `,help' for help. > scheme@(#{ g100}#)> (define lst (list 'a 'b 'c)) > scheme@(#{ g100}#)> (append! lst '(d e f)) > $1 = (a b c d e f) > scheme@(#{ g100}#)> lst > $2 = (a b c d e f) > scheme@(#{ g100}#)> (define lst2 (list)) > scheme@(#{ g100}#)> (append! lst2 '(d e f)) > $3 = (d e f) > scheme@(#{ g100}#)> lst2 ;; still empty > $4 = () > > > Instead, you should save the result in a variable. Also, do not > use the mutating append! but the non-mutating append. Even better, > it's more efficient in Scheme to add things at the beginning > of a list rather than at the end [1], so make that > > #(define my-script-alist > (cons* > `(little-accent-up > . ( > (stencil . ,lAccUpStencil) > (toward-stem-shift-in-column . 0.0) > (padding . 0.20) > (avoid-slur . around) > (direction . ,UP))) > `(little-accent-down > . ( > (stencil . ,lAccDownStencil) > (toward-stem-shift-in-column . 0.0) > (padding . 0.20) > (avoid-slur . around) > (direction . ,DOWN))) > `(little-accent > . ( > (stencil . ,lAccStencil) > (toward-stem-shift-in-column . 0.0) > (padding . 0.20) > (avoid-slur . around) > (direction . ,UP))) > default-script-alist)) > > \layout { >\context { > \Score > scriptDefinitions = #my-script-alist >} > } > > > [1] > > https://tutoriel-scheme.readthedocs.io/en/latest/listes.html#operations-de-base > and > > https://tutoriel-scheme.readthedocs.io/en/latest/recursivite.html#retour-sur-les-listes > might help you understand why. > > Best, > Jean > >
Override baseline-skip according layout-staff-size
Hello, please, take a look: %%% \version "2.24.0" xclefon = { \set Staff.clefPosition = #3 \override Staff.Clef.stencil = #(lambda (grob) (parenthesize-stencil (grob-interpret-markup grob #{ \markup \override #'(baseline-skip . 0.8) \teeny \center-column { \musicglyph "noteheads.s2cross" \musicglyph "noteheads.s2cross" \musicglyph "noteheads.s2cross" \musicglyph "noteheads.s2cross" } #}) 0.1 0.5 0.5 0)) } \score { { c'4 \xclefon c'4 } \layout { #(layout-set-staff-size 16) } } %%% in "\override #'(baseline-skip . 0.8)" I'm trying to scale the baseline-skip according to the part staff size (16), in fact 16/20 = 0.8. I'd like to make this snippet more generic. I tried to point, from within the markup, to the Clef grob staff-symbol property, to get the staff size, but without success. Could you please help me solve? Thank you Rip_mus
Re: Override baseline-skip according layout-staff-size
Oh, it works very well! Sometimes I get lost in a glass of water.. Thank you!! Il giorno dom 29 gen 2023 alle ore 12:09 Aaron Hill < lilyp...@hillvisions.com> ha scritto: > On 2023-01-29 1:16 am, Rip _Mus wrote: > > in "\override #'(baseline-skip . 0.8)" I'm trying to scale the > > baseline-skip according to the part staff size (16), in fact 16/20 = > > 0.8. I'd like to make this snippet more generic. > > I tried to point, from within the markup, to the Clef grob staff-symbol > > property, to get the staff size, but without success. > > Could you please help me solve? > > Probably the most direct way to do this would be: > > > \override #(cons 'baseline-skip (ly:staff-symbol-staff-space grob)) > > > > -- Aaron Hill >
Re: Override baseline-skip according layout-staff-size
Thank you Valentin, the version 2 will be VERY useful! Thanks a lot! Il giorno dom 29 gen 2023 alle ore 14:23 Valentin Petzel ha scritto: > Hello, > > Basically you want to scale the baseline-skip along with the staff size > (the > reason for this is that measurement is in global staff spaces, not in > layout > staff spaces). > > You can achieve this in multiple ways: > > Version 0: Simply use the staff space as baseline-skip > Version 1: Add a little markup trick to scale arbitrary markup properties > by > the staff space (include e.g. parentheses parameters). > Version 2: Extract the actual line positions and staff space from the > Staff > symbol and place a symbol between all note lines > > Cheers, > Valentin > > Am Sonntag, 29. Jänner 2023, 10:16:43 CET schrieb Rip _Mus: > > Hello, > > please, take a look: > > > > %%% > > \version "2.24.0" > > > > xclefon = { > > \set Staff.clefPosition = #3 > > \override Staff.Clef.stencil = #(lambda (grob) > > (parenthesize-stencil > > (grob-interpret-markup grob > >#{ \markup > > \override #'(baseline-skip . > 0.8) > > \teeny \center-column { > > \musicglyph > "noteheads.s2cross" > > \musicglyph > "noteheads.s2cross" > > \musicglyph > "noteheads.s2cross" > > \musicglyph > "noteheads.s2cross" > > } > >#}) > > 0.1 > > 0.5 > > 0.5 > > 0)) > > } > > > > \score { > > { > > c'4 > > \xclefon > > c'4 > > } > > \layout { #(layout-set-staff-size 16) } > > } > > %%% > > > > in "\override #'(baseline-skip . 0.8)" I'm trying to scale the > > baseline-skip according to the part staff size (16), in fact 16/20 = > > 0.8. I'd like to make this snippet more generic. > > I tried to point, from within the markup, to the Clef grob staff-symbol > > property, to get the staff size, but without success. > > Could you please help me solve? > > > > Thank you > > > > Rip_mus > >
Barline glyph in markup
Hi, is it possible to use a repeat barline glyph(opened or closed) in a markup? I'm trying to print it centered between two staves within a Dynamics context. Thank you in advance! Rip_mus
Re: Barline glyph in markup
Hi, thank you for the suggestions! Attached the piece of notation that I would like to engraver, in a piece for piano solo. I was thinking about using two Staff contexts and a Dynamics context between the staves to put those repeat barline, better if vertically centered. Any other suggestions? Rip_mus Il ven 3 feb 2023, 15:51 Jean Abou Samra ha scritto: > On 03/02/2023 10:50, Rip _Mus wrote: > > Hi, > > is it possible to use a repeat barline glyph(opened or closed) in a > markup? I'm trying to print it centered between two staves within a > Dynamics context. > > Thank you in advance! > > > The two other answers work, but I wonder if this might be an XY question. > Are you looking for something like this? > > > https://lilypond.org/doc/v2.24/Documentation/notation/working-with-ancient-music-_002d-scenarios-and-solutions#mensurstriche-layout > > Best, > Jean > > >
Markup in the middle of a spanner
Hello, do you know any technique to place a markup right in the middle (X axis) of a DurationLine Grob? (or also a textspanner). Thank you Rip_mus
Missing barline
Hello, in the following minimal example, at the end of the first line, the barline is missing: ``` \version "2.24.0" \relative c' { c1 \bar ".|:" \break c1 } ``` Is it possible to find a simple solution to implement? Thank you! Rip_mus
Retrieve context properties
Good morning, is it possible to retrieve the name of the Voice and Staff contexts during the insertion of the music (as if I wanted to use it to automatically print the name of these contexts on a markup of a note)? Thank you Rip_mus
Re: Retrieve context properties
Thank you Valentin, this is very helpful! The situation is that I always create a custom context, named "Tactus", that creates bars for proportional notation (it's a Dynamics alias, that accepts Voice and some overrides, transparent noteheads, offset, etc.). During the insertion of notes, if I want a passage with Tactus bars onto the current staff, I always write something like \new Staff = "main_staff_context" { %... << { %music } \new Tactus \with { alignAboveContext = "main_staff_context"} { c4 c c c %... } >> %... } Now, I find this very redundant, because it's glaring that the Tactus is to be aligned above the current Staff context. I just have to figure out how to avoid having to write it, so I imagined I could track down the name of the current context. The fact of having to access it during the translation process I think is the greatest difficulty. What do you think? Rip_mus Il giorno dom 23 lug 2023 alle ore 09:34 Valentin Petzel ha scritto: > Hello Rip_Mus, > > you can obtain the name of a context using ly::context-id, and the type of > a > context using ly:context-name. > > The problem is that you can only really use these only during the > translation > step. So I thing the easiest way would be to create an engraver that adds > this > information: > > #(define ((annotate-ctx-engraver which) context) >(define (extract-context-hierarchy ctx) > (if ctx > (cons (cons (ly:context-name ctx) (ly:context-id ctx)) (extract- > context-hierarchy (ly:context-parent ctx))) > '())) >(let* ((hierarchy (extract-context-hierarchy context)) > (hierarchy (filter (lambda (x) (member (car x) which)) > hierarchy)) > (hierarchy-markups (map (lambda (x) (format #f "~a: ~a" (car x) > (cdr > x))) hierarchy)) > (hierarchy-markup (primitive-eval (list 'markup #:column > hierarchy- > markups > (make-engraver > (acknowledgers >((grob-interface engraver grob source-engraver) > (let* ((det (ly:grob-property grob 'details)) >(annotate (assoc-get 'annotate-context det))) > (if annotate > (let ((text-grob (ly:engraver-make-grob engraver 'TextScript > '( > (ly:grob-set-property! text-grob 'text hierarchy- > markup) > > \layout { > \context { > \Voice > \consists #(annotate-ctx-engraver '(Staff Voice)) > } > } > > \new Staff = "the-staff" \new Voice = "the-one-and-only-voice" { > c' d' \override NoteHead.details.annotate-context = ##t e > } > > Cheers, > Valentin > > Am Sonntag, 23. Juli 2023, 08:37:52 CEST schrieb Rip _Mus: > > Good morning, > > is it possible to retrieve the name of the Voice and Staff contexts > during > > the insertion of the music (as if I wanted to use it to automatically > print > > the name of these contexts on a markup of a note)? > > > > Thank you > > > > Rip_mus > >
Question about condensed score
Good morning everyone! I would like to ask if you know a strategy to achieve the following result. I'm working on an orchestral score. I'd like the two flute staves to be shown separate when they play, while condensed when both are silent (perhaps with a staff name showing the indication "fl. 1-2"). Could you help me get this result? Thank you Rip_mus
Re: Question about condensed score
Thank you Knute, I already know how to hide empty staves. The point is to condense only during the rests, changing the name of the staves. When they are separated each staff should have its own name ("fl. 1" - "fl. 2"), while when they are condensed they should show a unique name ("fl. 1-2"), perhaps next to the bracket of the staffGroup . I just don't know yet if it's feasible and how. Il lun 14 ago 2023, 15:07 Knute Snortum ha scritto: > This part of the documentation will probably help you: > > https://lilypond.org/doc/v2.25/Documentation/notation/hiding-staves > > -- > Knute Snortum > > > > On Sun, Aug 13, 2023 at 11:44 PM Rip _Mus > wrote: > >> Good morning everyone! >> I would like to ask if you know a strategy to achieve the following >> result. >> >> I'm working on an orchestral score. I'd like the two flute staves to be >> shown separate when they play, while condensed when both are silent >> (perhaps with a staff name showing the indication "fl. 1-2"). >> >> Could you help me get this result? >> >> Thank you >> >> Rip_mus >> >
Re: Question about condensed score
In fact, sadly, I haven't found any trace of this in the documentation. I imagined a solution, a bit like a programmer, but I don't know how to implement yet. The idea is to be able to change the instrumentName conditionally: - if the staffGroup contains less than two staves (because one of them is hidden to create the condensed score), the instrumentName of the staffGroup is "fl. 1-2" and the instrumentName of the two staves is '(); - otherwise, the instrumentName of the staffGroup is '() and the instrumentName of the two staves is "fl.1" and "fl. 2". Unfortunately, to achieve this, I need a little more knowledge than I have... Il giorno lun 14 ago 2023 alle ore 16:40 james < james.lilyp...@googlemail.com> ha scritto: > Perhaps I'm mistaken, and if so, I'm certain will correct me, but I > believe lilypond isn't able to do this. You would need three staves, one > each for the individual parts and on common one for both, manually assign > music to the appropriate staves, and insert breaks where necessary. > > On Aug 14, 2023, at 4:18 PM, Rip _Mus > wrote: > > Thank you Knute, > I already know how to hide empty staves. > The point is to condense only during the rests, changing the name of the > staves. When they are separated each staff should have its own name ("fl. > 1" - "fl. 2"), while when they are condensed they should show a unique name > ("fl. 1-2"), perhaps next to the bracket of the staffGroup . > > I just don't know yet if it's feasible and how. > > Il lun 14 ago 2023, 15:07 Knute Snortum ha scritto: > >> This part of the documentation will probably help you: >> >> https://lilypond.org/doc/v2.25/Documentation/notation/hiding-staves >> >> -- >> Knute Snortum >> >> >> >> On Sun, Aug 13, 2023 at 11:44 PM Rip _Mus >> wrote: >> >>> Good morning everyone! >>> I would like to ask if you know a strategy to achieve the following >>> result. >>> >>> I'm working on an orchestral score. I'd like the two flute staves to be >>> shown separate when they play, while condensed when both are silent >>> (perhaps with a staff name showing the indication "fl. 1-2"). >>> >>> Could you help me get this result? >>> >>> Thank you >>> >>> Rip_mus >>> >> >
Re: Question about condensed score
Thanks for sharing your workflow, that's what I was afraid I'd have to do. While waiting for other possible answers, I would like to ask you what problems, if any, your approach presents when you go to elaborate the parts. Il giorno lun 14 ago 2023 alle ore 17:29 Flaming Hakama by Elaine < ela...@flaminghakama.com> ha scritto: > > > >> From: Rip _Mus >> To: Lilypond-User Mailing List >> Cc: >> Bcc: >> Date: Mon, 14 Aug 2023 08:43:17 +0200 >> Subject: Question about condensed score >> Good morning everyone! >> I would like to ask if you know a strategy to achieve the following >> result. >> >> I'm working on an orchestral score. I'd like the two flute staves to be >> shown separate when they play, while condensed when both are silent >> (perhaps with a staff name showing the indication "fl. 1-2"). >> >> Could you help me get this result? >> >> Thank you >> >> Rip_mus >> > > Usually when I need split staves in some place and combined staves in > others, > I use a score with 3 staves: one for each single staff, and then one > combined staff. > > For the pages where you want combined, both single staves are empty. > And for the pages where you want split staves, the combined staves are > empty. > Then use \RemoveEmptyStaves to get rid of the empty staves > > The issue with this approach in your case is that > you want the combined staff to show only when there are rests, > so in order to get those to print, you would need to add something > to the combined staff so that it was not empty. > > I tend to use an invisible dynamic like \tweak stencil ##f \mp > > > HTH, > > > Elaine Alt > 415 . 341 .4954 "*Confusion is > highly underrated*" > ela...@flaminghakama.com > Producer ~ Composer ~ Instrumentalist ~ Educator > > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- > >
Re: Question about condensed score
Hello, please consider the following example: %%% \version "2.24.1" global = { s1\break s1\break s1 } flOne = \relative c' { e1 r1 e1 } flTwo = \relative c' { c1 r1 c1 } \new StaffGroup \with { shortInstrumentName = "Fl. 1-2" } << \new Staff \with { instrumentName = "Flute 1" shortInstrumentName = "Fl. 1" } <<\global \flOne>> \new Staff \with { instrumentName = "Flute 2" shortInstrumentName = "Fl. 2" } <<\global \flTwo>> >> %%% I would like to have a condensation at the second bar (that is at the second system, where both instruments have a rest), showing only one staff. Regarding the names of the staves, when the two flutes are split, I would like to show the single names, while during the condensation I would like to show the name of the staffGroup Thank you Il giorno lun 14 ago 2023 alle ore 18:21 David Kastrup ha scritto: > Rip _Mus writes: > > > Good morning everyone! > > I would like to ask if you know a strategy to achieve the following > result. > > > > I'm working on an orchestral score. I'd like the two flute staves to be > > shown separate when they play, while condensed when both are silent > > (perhaps with a staff name showing the indication "fl. 1-2"). > > > > Could you help me get this result? > > I am not going to compose a whole example. Please provide sufficient > material for showcasing your problem. > > -- > David Kastrup >
Re: Question about condensed score
wow!! Now I understand Knute's answer too. Unfortunately, opening the page in the Italian version, the documentation relating to the Keep_alive_together_engraver is not there. Thank you very much for the solution, thank you very much! Il giorno lun 14 ago 2023 alle ore 19:46 David Kastrup ha scritto: > Rip _Mus writes: > > > Hello, > > please consider the following example: > > > > %%% > > \version "2.24.1" > > > > global = { > > s1\break > > s1\break > > s1 > > } > > > > flOne = \relative c' { > > e1 > > r1 > > e1 > > } > > > > flTwo = \relative c' { > > c1 > > r1 > > c1 > > } > > > > \new StaffGroup \with { shortInstrumentName = "Fl. 1-2" } << > > \new Staff \with { > > instrumentName = "Flute 1" > > shortInstrumentName = "Fl. 1" > > } <<\global \flOne>> > > \new Staff \with { > > instrumentName = "Flute 2" > > shortInstrumentName = "Fl. 2" > > } <<\global \flTwo>> > >>> > > %%% > > > > I would like to have a condensation at the second bar (that is at the > > second system, where both instruments have a rest), showing only one > staff. > > Regarding the names of the staves, when the two flutes are split, I would > > like to show the single names, while during the condensation I would like > > to show the name of the staffGroup > > Sounds somewhat like > > > > -- > David Kastrup >
Re: Question about condensed score
Good morning everyone, going back to the solution written by David, I found that simply adding the Duration_line_engraver causes the example to fail to compile. Can anyone tell me why this happens? Below is the minimal example: %%% global = { s1\break s1\break s1 } flOne = \relative c' { e1 r1 e1 } flTwo = \relative c' { c1 r1 c1 } \new StaffGroup \with { \consists "Keep_alive_together_engraver" } << \new Staff \with { \RemoveAllEmptyStaves \override VerticalAxisGroup.remove-layer = 1 instrumentName = "Flute 1" shortInstrumentName = "Fl. 1" } <<\global \flOne>> \new Staff \with { \RemoveAllEmptyStaves \override VerticalAxisGroup.remove-layer = 1 instrumentName = "Flute 2" shortInstrumentName = "Fl. 2" } <<\global \flTwo>> \new Staff \with { instrumentName = "Flutes" shortInstrumentName = "Fl. 1-2" \override VerticalAxisGroup.remove-layer = 2 } \partCombine \flOne \flTwo >> \layout { \context { \Voice \consists "Duration_line_engraver" } } %%% Il giorno lun 14 ago 2023 alle ore 21:24 David Kastrup ha scritto: > Rip _Mus writes: > > > wow!! > > Now I understand Knute's answer too. > > Unfortunately, opening the page in the Italian version, the documentation > > relating to the Keep_alive_together_engraver is not there. > > Its internals are documented, but its remove-layer settings are not > really documented as a user-level feature. Part of the reason is that > there should actually be a user-level layer of commands around the core > settings, and _that_ should then get user-level documentation. > > But the skeleton of the feature can be made to walk without being > fleshed out. > > > Thank you very much for the solution, thank you very much! > > Well, it is more embarrassing than anything. But occasionally I do > catch questions for that functionality. > > -- > David Kastrup >
Re: Question about condensed score
Hello, does anyone happen to have an answer? I just can't understand this behavior... Thank you Il mer 16 ago 2023, 08:18 Rip _Mus ha scritto: > Good morning everyone, > going back to the solution written by David, I found that simply adding > the Duration_line_engraver causes the example to fail to compile. > Can anyone tell me why this happens? > > Below is the minimal example: > > %%% > global = { > s1\break > s1\break > s1 > } > > flOne = \relative c' { > e1 > r1 > e1 > } > > flTwo = \relative c' { > c1 > r1 > c1 > } > > \new StaffGroup \with { \consists "Keep_alive_together_engraver" } > > << > \new Staff \with { > \RemoveAllEmptyStaves > \override VerticalAxisGroup.remove-layer = 1 > instrumentName = "Flute 1" > shortInstrumentName = "Fl. 1" > } <<\global \flOne>> > \new Staff \with { > \RemoveAllEmptyStaves > \override VerticalAxisGroup.remove-layer = 1 > instrumentName = "Flute 2" > shortInstrumentName = "Fl. 2" > } <<\global \flTwo>> > \new Staff \with { > instrumentName = "Flutes" > shortInstrumentName = "Fl. 1-2" > \override VerticalAxisGroup.remove-layer = 2 > } \partCombine \flOne \flTwo > >> > > \layout { > \context { > \Voice > \consists "Duration_line_engraver" > } > } > %%% > > Il giorno lun 14 ago 2023 alle ore 21:24 David Kastrup ha > scritto: > >> Rip _Mus writes: >> >> > wow!! >> > Now I understand Knute's answer too. >> > Unfortunately, opening the page in the Italian version, the >> documentation >> > relating to the Keep_alive_together_engraver is not there. >> >> Its internals are documented, but its remove-layer settings are not >> really documented as a user-level feature. Part of the reason is that >> there should actually be a user-level layer of commands around the core >> settings, and _that_ should then get user-level documentation. >> >> But the skeleton of the feature can be made to walk without being >> fleshed out. >> >> > Thank you very much for the solution, thank you very much! >> >> Well, it is more embarrassing than anything. But occasionally I do >> catch questions for that functionality. >> >> -- >> David Kastrup >> >
Re: Question about condensed score
Hello, Thank you very much! Il sab 19 ago 2023, 14:10 Thomas Morley ha scritto: > Am Fr., 18. Aug. 2023 um 21:51 Uhr schrieb David Kastrup : > > > > Rip _Mus writes: > > > > > Hello, > > > does anyone happen to have an answer? > > > I just can't understand this behavior... > > > > > > Thank you > > > > > > Il mer 16 ago 2023, 08:18 Rip _Mus ha > > > scritto: > > > > > >> Good morning everyone, > > >> going back to the solution written by David, I found that simply > adding > > >> the Duration_line_engraver causes the example to fail to compile. > > >> Can anyone tell me why this happens? > > > > This is just the Duration_line_engraver unable to deal with frenched > > scores (basically, it needs to check that a grob is still live before > > doing certain operations on it). This is easy to get wrong since > > frenched scores are not typically specifically tested for. > > > > Putting its original author in Cc. > > > > -- > > David Kastrup > > Embarrassingly already > > \version "2.25.7" > > \layout { > \context { > \Voice > \consists "Duration_line_engraver" > } > } > > \partCombine > \relative c' { e1 r e } > \relative c' { c1 r e } > > fails. > Patch is up, though: > https://gitlab.com/lilypond/lilypond/-/merge_requests/2088 > > Cheers, > Harm >
define-public
Hello, on mac, I want to insert this flag on compilation: -e '(define-public part 'cello)' But this give me an "error near unexpected token". I think that the problem is the ' near the symbol name. I tried enclosing in double quotation marks, as on Windows, but it is not working. I'm using szh on terminal. In the Lilypond file i put the #(use-modules (guile-user)) Can somebody help me? Thank you Ripmus