[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Notes or chords sustained with a pedal
From: |
Aaron Hill |
Subject: |
Re: Notes or chords sustained with a pedal |
Date: |
Sat, 21 Dec 2019 07:23:51 -0800 |
User-agent: |
Roundcube Webmail/1.3.8 |
On 2019-12-21 3:32 am, Robert Blackstone wrote:
Hi Robin,
I tried some of the procedures I found on
https://lists.gnu.org/archive/html/lilypond-user/2019-05/msg00202.html
<https://lists.gnu.org/archive/html/lilypond-user/2019-05/msg00202.html>,
the thread you advised me to look at but they did not help me very
much.
So I tried to develop some trick or tweak without having to program
things with scheme, with which I have no experience at all.
Anyway, I found something that gave me a result, not quite identical
to what I wanted to get, but good enough for me and probably
sufficiently clear for a pianist.
Looks like I may be a little late to the party.
Here is my attempt at hacking the BarLine stencil to add overlapping
ties:
%%%%
\version "2.19.83"
laissezVibrerBar = #(define-music-function
(positions) (number-pair-list?)
(define (stencil-proc grob)
(let* ((th (ly:staff-symbol-line-thickness grob))
(bd (ly:item-break-dir grob))
(orig (ly:bar-line::print grob))
(xex (ly:stencil-extent orig X))
(x (interval-index xex 0))
(w (+ 0.8 (/ (- (interval-length xex) th) 2))))
(define (position-tie pos)
(let* ((y (+ (car pos) (* 2 th (cdr pos))))
(tie (make-tie-stencil
(cons (- x w) y) (cons (+ x w) y)
th (cdr pos)))
(xex (ly:stencil-extent tie X))
(yex (ly:stencil-extent tie Y)))
(ly:make-stencil (ly:stencil-expr tie)
(cons (car xex) (if (> 0 bd) x (cdr xex))) yex)))
(ly:stencil-add orig
(apply ly:stencil-add (map position-tie positions)))))
#{ \override Staff.BarLine.stencil = $stencil-proc #})
laissezVibrerBarUpper =
\once \laissezVibrerBar #'((2 . 1) (0 . -1) (-1 . -1))
Upper = { \clef "treble"
<a' c'' d''>1\laissezVibrer
\laissezVibrerBarUpper
R1 \laissezVibrerBarUpper \bar "||"
R1 \laissezVibrerBarUpper \bar ":|.|:" \break
R1 \laissezVibrerBarUpper \bar ""
R1 \laissezVibrerBarUpper \bar "."
R1 \laissezVibrerBarUpper \bar "|."
}
laissezVibrerBarLower =
\once \laissezVibrerBar #'((2 . 1) (-1 . -1) (-3 . -1))
Lower = { \clef "bass"
<f, c g>1\laissezVibrer
\laissezVibrerBarLower
\repeat unfold 5 { R1 \laissezVibrerBarLower }
}
\paper { #(set-paper-size "a7landscape")
indent = 0 ragged-right = ##f tagline = ##f }
\new PianoStaff << \new Staff \Upper \new Staff \Lower >>
%%%%
-- Aaron Hill
lv-bar.png
Description: PNG image
- Notes or chords sustained with a pedal, Robert Blackstone, 2019/12/20
- Notes or chords sustained with a pedal, Robert Blackstone, 2019/12/21
- Re: [Spam] Notes or chords sustained with a pedal, Rutger Hofman, 2019/12/21
- Re: Notes or chords sustained with a pedal,
Aaron Hill <=
- Re: Notes or chords sustained with a pedal, Kieren MacMillan, 2019/12/21
- Re: Notes or chords sustained with a pedal, Aaron Hill, 2019/12/22
- Re: Notes or chords sustained with a pedal, Robert Blackstone, 2019/12/22
- Re: Notes or chords sustained with a pedal, Thomas Morley, 2019/12/22
- Re: Notes or chords sustained with a pedal, Robert Blackstone, 2019/12/23
- Re: Notes or chords sustained with a pedal, Thomas Morley, 2019/12/22
RE: Notes or chords sustained with a pedal, Mark Stephen Mrotek, 2019/12/21