2016-03-29 12:19 GMT+02:00 Thomas Morley <thomasmorle...@gmail.com>: > 2016-03-29 10:41 GMT+02:00 Andrew Bernard <andrew.bern...@gmail.com>: >> Can you tweak individual ties in a chord (despite that the NR says that this >> is a known issue)? I am always hopeful there are solutions. >> >> The 2.19.38 NR says in Section 5.3.4: >> >> >> When several similar items are placed at the same musical moment, the >> \override command cannot be used to modify just one of them – this is where >> the \tweak command must be used. Items which may appear more than once at >> the same musical moment include the following: >> >> note heads of notes inside a chord >> articulation signs on a single note >> ties between notes in a chord >> tuplet brackets starting at the same time >> >> >> >> This gives the impression that ties in a chord can be tweaked. Is this >> simply incorrect? >> >> Andrew >> >> — snip >> >> \version "2.19.38" >> >> { >> <g' _~ b' ^~ d'' ^~>4 <g' b' d''> >> >> % tweaks all the ties not just the first >> <g'-\tweak Tie.details.height-limit #4 ~ b' ^~ d'' ^~>4 <g' b' d''> >> } >> >> >> — snip > > > Hi Andrew, > > there's shapeTieColumn already, see: > http://lilypond.1069038.n5.nabble.com/Shape-of-individual-ties-in-chords-td158120.html#a158343 > http://www.mail-archive.com/lilypond-devel@gnu.org/msg47432/shape-tie-columns.ly > https://github.com/openlilylib/openlilylib/tree/master/notation-snippets/shaping-bezier-curves/shape-tie-column > > But there is an issue with 'control-points in a TieColumn: > https://sourceforge.net/p/testlilyissues/issues/1789/ > I don't know the current state of it, but there is a workaround. > > > Though, you asked about Tie.details.height-limit, let me have a closer look... > > Cheers, > Harm
The mentioned bug is indeed present and a major nuisance. Though, I come up with the nasty coding below, although I recommend thorough testing on real life examples. Limitations/problems are mentioned in the function's description. \version "2.19.36" \layout { indent = 0 ragged-right = ##f } test = #(define-music-function (vals)(list?) "Sets details.hight-limit for ties in @code{TieColumn}, then suiciding @code{TieColumn}. Relies on setting @code{~} for each note of an event-chord AND setting direction-modifiers, i.e. @code{^~} or @code{_~} will work, but not simple @code{~}. Otherwise a programming error occurs: 'no Tie_column or Semi_tie_column. Killing grob.' " #{ \override TieColumn.after-line-breaking = #(lambda (grob) (let* ((ties (ly:grob-array->list (ly:grob-object grob 'ties)))) (for-each (lambda (g h-l) (ly:grob-set-nested-property! g '(details height-limit) h-l)) ties vals) ;; starting with lowest tie ;; let the new values displayed in terminal: ;(for-each ; (lambda (g) ; (format #t "details.hight-limit is ~y" ; (assoc-get 'height-limit (ly:grob-property g 'details)))) ; ties) (ly:grob-suicide! grob))) #}) unTest = \revert TieColumn.after-line-breaking %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXAMPLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% { %% works \test #'(4.0 1.2 2.3) <g' _~ b' _~ d'' ^~>4 q \unTest <g' _~ b' _~ d'' ^~>4 q \break %% doesn't work \test #'(4.0 1.2 2.3) <g' b' d''>4~ q \unTest <g' b' d''>4~ q } HTH, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user