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
}

Reply via email to