[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Tie Crusade
From: |
David Kastrup |
Subject: |
Re: Tie Crusade |
Date: |
Fri, 12 Jul 2013 15:36:09 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
Urs Liska <address@hidden> writes:
> As some of you will have noticed, Janek yesterday published an article
> on lilypondblog.org announcing that he intends to make a considerable
> effort substantially improving LilyPond's tie formatting - one of the
> fields Lily really can use some updates.
> After having collected countless examples of badly formatted ties and
> having spent countless hours with tweaking ties he decided to give it
> a serious try.
>
> I'm not posting this to praise Janek but to make sure _everybody_ gets
> the chance to see that post. While he already has done very thorough
> research the project is just too big for him alone.
>
> So anybody who is interested in getting better default ties from
> LilyPond _please_ read his post at
> http://lilypondblog.org/2013/07/lilypond-tie-crusade and consider
> joining him. While the most urgent need would be people who analyze
> and improve the C++ code with him he will also be grateful for any
> discussion (of design strategies, engraving goals ...) or even
> examples of badly engraved default ties.
>
> Feedback is welcome on this list, lilypond-devel, the blog post or
> directly by email to Janek.
Well, here is a cross-referenced parade of partly awful ties.
\version "2.17.7"
\header { tagline = ##f title = "Conny rates Jazz" }
\score
{
{ $@(map!
(lambda (p d) #{ \footnote #'(1 . 2)
% This is the simplest way to make a chord name markup? Ugh.
\markup \score { \new ChordNames { < address@hidden > }
\layout { } } Stem
< address@hidden >address@hidden #})
; this $@ produces elements for a sequential music list via map!. Each
; element is constructed from p, a list of pitches making up a chord,
; and from d, which is a list first containing a duration followed by
; _optional_ articulations, so address@hidden actually can return several
tokens of
; _different_ type.
;
; The following form constructs the list of pitch lists for use in p
(map!
(lambda (i)
(map!
(lambda (i)
(ly:make-pitch 2 (+ 1 (* 9 (quotient i 5)) (* i -2)) 0))
(iota 5 i)))
(append! (iota 34) (list 32)))
; The following form constructs an (end-less) list of lists containing
; a duration and maybe articulations.
(apply
circular-list
(map!
(lambda (m) (cons (ly:music-property m 'duration)
(ly:music-property m 'articulations)))
(extract-typed-music
#{ s4.~ s~ s4~ s2~ s2 #}
'skip-event))))
<c' e' g' a' c''>1 \bar "|."
}
\midi { \tempo 4 = 220
\set Staff.midiInstrument = "acoustic grand"
}
\layout { }
}
--
David Kastrup
- Tie Crusade, Urs Liska, 2013/07/12
- Re: Tie Crusade,
David Kastrup <=
- Re: Tie Crusade, Jacques Menu, 2013/07/12
- Re: Tie Crusade, Janek Warchoł, 2013/07/12
- Re: Tie Crusade, Michael Rivers, 2013/07/13
- Re: Tie Crusade, Janek Warchoł, 2013/07/13
- Re: Tie Crusade, Urs Liska, 2013/07/13
- Re: Tie Crusade, Trevor Daniels, 2013/07/13
- Re: Tie Crusade, Urs Liska, 2013/07/14
- Re: Tie Crusade, Michael Rivers, 2013/07/14
- Re: Tie Crusade, Janek Warchoł, 2013/07/14
Re: Tie Crusade, Janek Warchoł, 2013/07/12