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
}