About pitchedTrill and auxiliary note(s)

2022-02-03 Thread 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


Re: About pitchedTrill and auxiliary note(s)

2022-02-03 Thread Rip _Mus
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

2022-02-05 Thread Rip _Mus
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

2022-02-05 Thread Rip _Mus
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"

2022-02-06 Thread Rip _Mus
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"

2022-02-06 Thread Rip _Mus
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

2022-02-09 Thread 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


Re: Inspecting stencil

2022-02-09 Thread Rip _Mus
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

2022-02-13 Thread 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?

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

2022-02-13 Thread Rip _Mus
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

2022-02-13 Thread 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
\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

2022-02-13 Thread Rip _Mus
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

2022-02-14 Thread Rip _Mus
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

2022-02-26 Thread 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
\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

2022-02-27 Thread Rip _Mus
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

2022-02-28 Thread Rip _Mus
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

2022-03-21 Thread 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


Re: Time signature guide

2022-03-22 Thread Rip _Mus
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

2022-03-26 Thread Rip _Mus
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

2022-03-27 Thread Rip _Mus
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

2022-04-18 Thread Rip _Mus
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

2022-05-01 Thread Rip _Mus
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

2022-05-01 Thread Rip _Mus
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

2022-05-02 Thread Rip _Mus
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

2022-05-15 Thread Rip _Mus
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

2022-05-15 Thread Rip _Mus
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

2022-05-15 Thread Rip _Mus
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

2022-05-18 Thread Rip _Mus
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

2022-07-06 Thread Rip _Mus
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

2022-09-04 Thread Rip _Mus
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

2022-09-04 Thread Rip _Mus
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

2022-09-06 Thread Rip _Mus
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

2022-09-07 Thread Rip _Mus
@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

2022-11-08 Thread 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: Lilypond EPS inside Adobe Illustrator

2022-11-08 Thread Rip _Mus
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

2022-11-17 Thread Rip _Mus
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

2022-12-09 Thread Rip _Mus
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

2022-12-23 Thread Rip _Mus
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

2022-12-26 Thread Rip _Mus
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

2022-12-27 Thread Rip _Mus
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

2022-12-30 Thread Rip _Mus
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?

2023-01-03 Thread Rip _Mus
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

2023-01-09 Thread Rip _Mus
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

2023-01-10 Thread Rip _Mus
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

2023-01-29 Thread 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


Re: Override baseline-skip according layout-staff-size

2023-01-29 Thread Rip _Mus
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

2023-01-29 Thread Rip _Mus
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

2023-02-03 Thread Rip _Mus
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

2023-02-03 Thread Rip _Mus
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

2023-04-06 Thread Rip _Mus
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

2023-05-14 Thread Rip _Mus
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

2023-07-22 Thread 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


Re: Retrieve context properties

2023-07-23 Thread Rip _Mus
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

2023-08-13 Thread Rip _Mus
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

2023-08-14 Thread Rip _Mus
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

2023-08-14 Thread Rip _Mus
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

2023-08-14 Thread Rip _Mus
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

2023-08-14 Thread Rip _Mus
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

2023-08-14 Thread Rip _Mus
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

2023-08-15 Thread Rip _Mus
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

2023-08-18 Thread Rip _Mus
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

2023-08-19 Thread Rip _Mus
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

2024-03-29 Thread Rip _Mus
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