Re: Chords in LilyPond
On 5/28/17 5:53 PM, "Thomas Morley"wrote: > > >Though, why adding a Œsemantics entry to the EventChord? >I'd suggest to write such an interpreter as a procedure which works on >the pitchlist ignatzek-chord-names currently has to work with >(including bass/inversion-info). Then write a printing-function which >works on the result of the interpreter. >Both public in guile, so that users can write different interpreters >and printing-functions as they like. There are three different problems in the Chords construct. 1) How to input chords. We currently have two modes -- notemode and chordmode. Notemode has no semantics. Chordmode has semantics, but currently the semantics get largely tossed away (except for root, bass, inversion, IIRC). 2) How to determine a chord name. For this, we currently have ignatzek-chord-names which interprets the pitches plus root, bass, inversion into a chord name. 3) How to display a chord name. This is currently mixed up with the determination of a chord name in ignatzek-chord-names. Charles's project is not to solve all three of these. In fact, his project is not to completely solve any one of them. Rather, his problem is to determine how best to save the semantics, so that assuming the semantics are properly entered in chordmode (probably including some extensions to the current chordmode, or maybe even a start from scratch rewrite, but that's out of scope for this project), the semantics will be kept as part of the chord, and thus be available for the chord_name_engraver to use when generating a chord name. When Charles is done, I hope that we will have a good internal representation for both the notes and the semantics. The user will have the ability to define the semantics (at first, maybe only with Scheme, but eventually through good input). And those semantics will lead to the desired output. Right now, we don't have control of the semantics; they're inferred from the pitches. And that causes problems. Of course, we'll need to get good display routines (printing functions). And we'll need to get good input routines (for both chordmode and note mode). And we'll need to get good infer-semantics-from-pitches routines (which Harm calls interpreters, I believe). But if each of these can be separated from the others (which I hope Charles's project will do by capturing semantics properly in the EventChord structure), then I believe it will be easier to tackle all of the problems. Thanks, Carl ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
On 29 May 2017 at 09:53, Thomas Morleywrote: > This sounds like you want to write a chord-analyser or probably a > better wording would be chord-interpreter. > I think it’s impractical to use chord analysis on anything but anything but simple chords. Power users like Kieren and Robert will want to tweak the output, because, as Robert showed, one set of pitches can mean more than one chord symbol. Robert Schmaus: > which of course doesn't sound nice in the midi output. I can live with > that - the midi is secondary for me, > At the moment the chord performer has no musicality to it: %% \version "2.18.2" chrds-test = \chordmode { c4 bes c bes } << \new ChordNames \chrds-test \new Staff \chrds-test >> Does anyone actually use MIDI from the chord performer? When I'm checking choral music (ie. with well-defined lines), the MIDI output is of acceptable quality for checking for mistakes and getting an impression of the piece. Whenever I use chords, I turn them off because it's so annoying. I check a lead sheet using my limited piano skills, where the chords are voiced at least semi-acceptably. I had this issue too with Finale back in the day. Anyway, getting the chord performer to reference the previous chord when "performing" could be possible. And a chord-bass performer could analyse a chord, find a root either from the chord's notes or its attached properties and play an acceptable bass line. Robert Schmaus: My point is, right now the only of distinguishing these chords is by using > parts of the explicit scale in chord mode to distinguish them. > I've chosen to use > > c : 7.5+ for C7(#5) > c : 7.5+.2 for C+7 > Maybe it would be nice to have something like (please excuse my pseudoScheme): \chordmode { \chord-modify #'( (root . c) ; in case of ambiguity, used by the engraver for the letter (suffix . "C+7") ; or whichever markup (bass . e,)) ; used to engrave the bass note, and by the chord-bass performer 4 % how the chord performer would 'perform' it } All of these would be overriding sensibly chosen defaults that should work fine in most use cases. Kieren: > How do you represent polychords? > Each chord is a list of chords, usually containing one item. Vaughan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to generate a minimally sized pdf
On Mon 29 May 2017 at 01:01:02 (+0300), Ivanov Dmitry wrote: > In LaTeX I can use the paper only fitting the contents by using standalone > class. Sounds as if you want pdfcrop in the texlive distribution. Cheers, David. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to generate a minimally sized pdf
Hi Ivanov, On Sun, May 28, 2017 at 6:01 PM, Ivanov Dmitrywrote: > In LaTeX I can use the paper only fitting the contents by using standalone > class. Lilypond always creates an A4 document for me. I tried the following > code: > > [...] I believe other people have inquired about auto-cropping and such in the past, too! Might be worth searching the archives (or just googling to get there faster). By the way, how are you compiling this? (i.e. command line, frescobaldi, other?) -- Jeffery Shivers jefferyshivers.com soundcloud.com/jefferyshivers ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to generate a minimally sized pdf
Ivanov Dmitry: > In LaTeX I can use the paper only fitting the contents by using standalone > class. Lilypond always creates an A4 document for me. I tried the following > code: ... > But it didn't help. How can I use something like > "\documentclass{standalone}" from LaTeX in lilypond? There is no auto paper size, it's A4 or something you set, see: http://lilypond.org/doc/v2.18/Documentation/notation/paper-size-and-automatic-scaling Hälsningar, /Karl Hammar --- Aspö Data Lilla Aspö 148 S-742 94 Östhammar Sverige 0173 140 57 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
) 2017-05-28 17:18 GMT+02:00 Charles Winston: > Hi all, > > There have been some great discussions about new chord functionality you’d > like to see in LilyPond. The first step is defining the internal > representation. From there, I think all these issues can be much more easily > solved. We have the EventChord structure, which contains an ‘articulations > and ‘elements entry. The ‘elements entry contains some information about the > root and inversion, but otherwise it is a list of NoteEvents to be iterated > over. My plan is to add a ‘semantics entry whose elements will be semantic > aspects of the chord: > > -root > -quality of the third (minor, major, none) > -quality of the fifth (diminished, perfect, augmented, none) > -extensions (7, 9, 11, etc.) > my plan for this is to have a list of extensions, > each extension associated with a bool indicating its presence in the chord, > and associated with an alteration. > -added notes (6, 9, etc.) > implemented similarly to extensions above > -suspensions (sus4, sus2, etc.) > -added bass note > -inversions > > Let me know what more should be added to this list. > > So after this is implemented, we have an internal representation of a chord, > EventChord, which contains both note information and semantic information, > and each of these can be utilized independently in different contexts. > > Let me know what you guys think. > > Thanks, > Charles > ___ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user This sounds like you want to write a chord-analyser or probably a better wording would be chord-interpreter. Disregarding the fact different people may interpret different, LilyPond does this already _inside_ of the chord-name-printing-function (ignatzek-chord-names). The pitch-list which ignatzek-chord-names works on is splitted into ROOT PREFIXES MAIN-NAME ALTERATIONS SUFFIXES ADDITIONS (comment from chord-ignatzek-names.scm) Attached an image where I tweaked ignatzek-chord-names to output things colored, bold, boxed. The input-code: chrds-test = \chordmode { \cadenzaOn \accidentalStyle forget \bar "" \break \bar "" \break \once \override NoteHead.color = #red _"ChordName is rubbish" c:5+.7.9.11/+bes } << \new ChordNames \chrds-test \new Staff \chrds-test >> You will notice some strange things. And one naming is completely rubbish. Doing this interpretation _inside_ of the printing function is one of the big problems I have to state with current LilyPond. Though, why adding a ‘semantics entry to the EventChord? I'd suggest to write such an interpreter as a procedure which works on the pitchlist ignatzek-chord-names currently has to work with (including bass/inversion-info). Then write a printing-function which works on the result of the interpreter. Both public in guile, so that users can write different interpreters and printing-functions as they like. The other problem can be watched in my example above. (The rubbish chord-name) If chords are entered as < ... > there's no nice way to specify bass/inversion. Currently I've no good idea to solve this, though. Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
On 28/05/17 17:54, Kieren MacMillan wrote: >> the contexts that need the semantic information shouldn’t need note >> information, and the contexts that need note information don’t need semantic >> information. > As someone who uses chords both for their note and semantic information > simultaneously, I would disagree. David’s example > And how does this cope with my guitar example? If I've got this right, you need the semantic information to be able to print the chord name, but you can't transpose the chord name without at least *some* (namely the root) note information. So if the name and note information are separated, it will be impossible to print "lead sheets" as I believe they are called - very common in music for choirs! Cheers, Wol ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
How to generate a minimally sized pdf
In LaTeX I can use the paper only fitting the contents by using standalone class. Lilypond always creates an A4 document for me. I tried the following code: \version "2.16.0" % necessary for upgrading to future LilyPond versions. \paper { indent = 0\mm line-width = 110\mm oddHeaderMarkup = "" evenHeaderMarkup = "" oddFooterMarkup = "" evenFooterMarkup = "" } \relative c' { c d e f g a b c } But it didn't help. How can I use something like "\documentclass{standalone}" from LaTeX in lilypond? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
[SOLVED] Re: Problem with repeat
Forgive me for not modifying the Subject: line earlier, but of the three other replies, one illustrates my middle paragraph (thanks for saving me the effort), one looks for a problem that's not there and one suggests recomposing the music. (I took the liberty of removing the motes from my previous posting!) Date: Sun, 28 May 2017 13:32:51 -0500 From: David WrightSubject: Re: Problem with repeat X-Original-To: lily...@lionunicorn.co.uk Sender: lilypond-user Reply-To: lilypond-user@gnu.org On Sun 28 May 2017 at 19:42:26 (+0200), Bernhard Kleine wrote: > The attached excerpt has an errorneous repeat sign at measure five since > the text starts there. However the repeat sign before measure three is > also valid for the text which, however, starts as the vocal part in > measure 5. > > How to solve this? Is there a snippet which shows a solution? Do you intend ever unfolding these repeats? Particularly, do you want to do so in a manner that involves unfolding the lyrics? If not, then just remove the repeat structures from the lyrics and set them as normal. Fortunately, you don't have to worry about edge effects like ties and hyphens crossing the repeat measures. If you want to be able to unfold the notes and lyrics, then you have to use the tedious method of entering lyrics with their individual durations: Sing8 Ju -- bi -- la4 -- te and so on. Then specify the score with: \new Voice = vsoprano { \soprano } \new Lyrics \lyricmode { \set associatedVoice = vsoprano \sopranotext } That way, it will Just Work™. Cheers, David. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
RE: Problem with repeat
Bernhard, In measure 5 the voices have a "d8\rest" while the piano has a two beat chord. Mark -Original Message- From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf Of Bernhard Kleine Sent: Sunday, May 28, 2017 10:42 AM To: lilypond-user@gnu.org Subject: Problem with repeat The attached excerpt has an errorneous repeat sign at measure five since the text starts there. However the repeat sign before measure three is also valid for the text which, however, starts as the vocal part in measure 5. How to solve this? Is there a snippet which shows a solution? Regards Bernhard -- spitzhalde9 D-79853 lenzkirch bernhard.kle...@gmx.net www.b-kleine.com, www.urseetal.net - thunderbird mit enigmail GPG schlüssel: D5257409 fingerprint: 08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi Charles, > The first step is defining the internal representation. From there, I think > all these issues can be much more easily solved. That seems (intuitively) correct to me. > Let me know what more should be added to this list. How do you represent polychords? How do you represent chords not built by stacking thirds (e.g., quartals)? Any thought towards non-equal-temperament or non-12-division scales and tunings? Thanks, Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Problem with repeat
On Sun 28 May 2017 at 19:42:26 (+0200), Bernhard Kleine wrote: > The attached excerpt has an errorneous repeat sign at measure five since > the text starts there. However the repeat sign before measure three is > also valid for the text which, however, starts as the vocal part in > measure 5. > > How to solve this? Is there a snippet which shows a solution? Do you intend ever unfolding these repeats? Particularly, do you want to do so in a manner that involves unfolding the lyrics? If not, then just remove the repeat structures from the lyrics and set them as normal. Fortunately, you don't have to worry about edge effects like ties and hyphens crossing the repeat measures. If you want to be able to unfold the motes and lyrics, then you have to use the tedious method of entering lyrics with their individual durations: Sing8 Ju -- bi -- la4 -- te and so on. Then specify the score with: \new Voice = vsoprano { \soprano } \new Lyrics \lyricmode { \set associatedVoice = vsoprano \sopranotext } That way, it will Just Work™. Cheers, David. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Problem with repeat
Hi Bernhard, I played a liile bit with your example and I got a result that seems to be what you want. Best regards, Robert Blackstone T-u-M-Jerry-Estes-Sing-Jubilate-Deo_test2.ly Description: Binary data On 28 May 2017, at 19:42 , Bernhard Kleinewrote: > The attached excerpt has an errorneous repeat sign at measure five since > the text starts there. However the repeat sign before measure three is > also valid for the text which, however, starts as the vocal part in > measure 5. > > How to solve this? Is there a snippet which shows a solution? > > Regards Bernhard > > -- > spitzhalde9 > D-79853 lenzkirch > bernhard.kle...@gmx.net > www.b-kleine.com, www.urseetal.net > - > thunderbird mit enigmail > GPG schlüssel: D5257409 > fingerprint: > 08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09 > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi Charles, > My intention is definitely not to create a representation where the notes and > semantics cannot be passed together into different contexts Good! That’s important. It’s also likely critical (as David brought up) to either completely disallow the entry of notes and semantics which differ, or at least have a well-considered and -documented mechanism for how to handle the inevitable situation where notes and semantics differ. > I was just trying to make a point that it makes sense to keep the information > separate within EventChord. In terms of representation, I agree… But let’s remember that David has an *immense* grasp of Lilypond’s current (and, to some extent, future/possible) workings — arguably more than anyone, including the founding developers — so I would suggest getting his OK on whatever structure/mechanism you end up with. > even though they will be separate entries in EventChord, that doesn't stop > the possibility of using them together, does it? No, as long as the “note-semantic difference” issue has been addressed. Thanks! Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
> On May 28, 2017, at 12:55 PM, Kieren MacMillan >wrote: > > Hi Charles (et al.), > >> Storing this information in the NoteEvents is clunky in my opinion > > Possibly… > >> and defeats the purpose of this project > > I don’t see how that necessarily/logically follows…? > >> the numerous benefits of an internal representation which understands the >> semantics of a chord beyond its notes. > > This would clearly be a great and useful step forward from what we currently > have. > >> the contexts that need the semantic information shouldn’t need note >> information, and the contexts that need note information don’t need semantic >> information. > > As someone who uses chords both for their note and semantic information > simultaneously, I would disagree. David’s example > >> \new ChordNames \fixed c' { } > > perfectly illustrates how note and semantic information should be seamlessly > swapped back and forth across any and all possible contexts. I tried to hint > at this when I posted (earlier in this thread) about storing voicing > information in the chord code — if I write > > explicitChords = \fixed c’ { } > > and then use > > << > \new ChordNames \explicitChords > \new Staff \explicitChords >>> > > what I see (in both contexts) should be what I expect: the ChordNames output > according to my settings/preferences, and the Staff showing the notes *with > the voicings I coded*. > > The difficult part, of course, is figuring out how to provide this > functionality with a reasonably consistent, compact, and intuitive input > method and throughput (internal) representation. But that’s what your GSoC > project is all about, right? =) I see your points. My intention is definitely not to create a representation where the notes and semantics cannot be passed together into different contexts--I was just trying to make a point that it makes sense to keep the information separate within EventChord. Though, even though they will be separate entries in EventChord, that doesn't stop the possibility of using them together, does it? Charles ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Problem with repeat
My advice: go over your file (I only looked at it superficially) and pepper it with bar checks and - in this case probably more importantly - bar *number* checks. Then you should find your misplaced repeat block ... Here's the manual: http://lilypond.org/doc/v2.19/Documentation/notation/bars.en.html#bar-and-bar-number-checks Best, Robert Am 28.05.17 um 19:42 schrieb Bernhard Kleine: The attached excerpt has an errorneous repeat sign at measure five since the text starts there. However the repeat sign before measure three is also valid for the text which, however, starts as the vocal part in measure 5. How to solve this? Is there a snippet which shows a solution? Regards Bernhard ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Problem with repeat
The attached excerpt has an errorneous repeat sign at measure five since the text starts there. However the repeat sign before measure three is also valid for the text which, however, starts as the vocal part in measure 5. How to solve this? Is there a snippet which shows a solution? Regards Bernhard -- spitzhalde9 D-79853 lenzkirch bernhard.kle...@gmx.net www.b-kleine.com, www.urseetal.net - thunderbird mit enigmail GPG schlüssel: D5257409 fingerprint: 08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09 \version "2.19.49" \language "deutsch" \header { title = "Sing Jubilate Deo" composer = "T. u. M. Jerry Estes" tagline = "gesetzt von Bernhard Kleine 2017" } \layout { \context { \Voice \consists "Melody_engraver" \override Stem #'neutral-direction = #'() } } global = { \key b \major \time 4/4 \tempo "With excitement" 4 = 138-144 } soprano = \relative c'' { \global \autoBeamOff % Die Noten folgen hier. s1 s1 \repeat volta 2 { s1 s1 h8\rest f8 \autoBeamOn f b b4 f | g8 (f es) f~ f2 | \autoBeamOff b8\rest es, \autoBeamOn es f f4 d | e8 (f g) a~ a4 h\rest | h8\rest \autoBeamOff f8 \autoBeamOn f b b4 f | g8 (f es) f~ f2 | h8\rest \autoBeamOff es,8 \autoBeamOn f g f4 a } \alternative { { b1~ | b2. h4\rest } { b1~ | } } b2 h2\rest } alto = \relative c' { \global \autoBeamOff % Die Noten folgen hier. s1 s1 \repeat volta 2 { s1 s1 h8\rest d8 \autoBeamOn d f f4 d | es8 (d c) d~ d2 | \autoBeamOff s8 c \autoBeamOn c c f4 d | e8 (d e) f~ f4 s4 | h8\rest \autoBeamOff d,8 \autoBeamOn d f f4 d | es8 (d c) d~ d2 | s8 \autoBeamOff es8 \autoBeamOn f g f4 a } \alternative { { b1~ | b2. s4 } { b1~ } } b2 s2 } tenor = \relative c' { \global % Die Noten folgen hier. } bass = \relative c' { \global \autoBeamOff % Die Noten folgen hier. s1 s1 \repeat volta 2 { s1 s1 h8\rest b8 \autoBeamOn b c c4 b | b4. b8~ b2 | \autoBeamOff d,8\rest g \autoBeamOn g a b4 b | c4. c8~ c2 | h8\rest \autoBeamOff b8 \autoBeamOn b c c4 b | b4. b8~ b2 | d,8\rest \autoBeamOff g8 \autoBeamOn a b a4 a } \alternative { { b1~ | b2. d,4\rest } { b'1~ } } b2 d,2\rest } sopranoVerse = \lyricmode { % Liedtext folgt hier. \repeat volta 2 { Sing Ju -- bi -- la -- te de -- o come and re -- joice with glad -- ness Sing Ju -- bi -- la -- te de -- o come sing a joy -- ful } \alternative { { song } { song } } } altoVerse = \lyricmode { % Liedtext folgt hier. } tenorVerse = \lyricmode { % Liedtext folgt hier. } bassVerse = \lyricmode { % Liedtext folgt hier. \repeat volta 2 { Sing Ju -- bi -- la -- te de -- o come and re -- joice with glad -- ness Sing Ju -- bi -- la -- te de -- o come sing a joy -- ful } \alternative { { song } { song } } } % rightOne = \relative c' { \global \tiny % Die Noten folgen hier. 8_>\f _>| _> \repeat volta 2 { 8_>\f _>| _>\break 2 4 4 | 4.8 \autoBeamOn d f b | b4. a8 4 f | e8 f g c, f a | 2 4 4 | 4. 8 \autoBeamOn d f b | 2 } \alternative { { 8_> _>| _> } { 8_> _> | } } _> } rightTwo = \relative c' { \global \tiny s1 s1 \repeat volta 2 { s1 s1 s1 s1 2 b2 | c4. s8 s2| s1 s1 s1 | } \alternative { { s1 s1 } { s1 } } } left = \relative c { \global \tiny % Die Noten folgen hier. 8_> d\rest d\rest _> d2\rest 8_> d\rest d\rest _> d4\rest d8\rest f,8 \repeat volta 2 { 8_> d\rest d\rest _> d2\rest 8_> d\rest d\rest _> d4\rest d8\rest f,8 2 2 | 4. 8 2 | 2 | c,8 d e f~ f4 a | 2 2 | 4. 8 2 | 2 f, } \alternative { { 8_> d\rest d\rest _> d2\rest 8_> d\rest d\rest _> d4\rest d8\rest f,8 } { 8_> d\rest d\rest _> d2\rest } } } choirPart = \new ChoirStaff << \new Staff = "sa" \with { midiInstrument = "choir aahs" instrumentName = \markup \center-column { "S" "A" } } << \new Voice = "soprano" { \voiceOne \soprano } \new Voice = "alto" { \voiceTwo \alto } >> \new Lyrics \with { alignBelowContext = "sa" \override VerticalAxisGroup #'staff-affinity = #DOWN } \lyricsto "soprano" \sopranoVerse \new Staff = "tb" \with { midiInstrument = "choir aahs" instrumentName = \markup \center-column { "M" } } << \clef bass \new Voice = "bass" { \voiceTwo \bass } >> \new Lyrics \with { alignBelowContext = "tb" \override VerticalAxisGroup #'staff-affinity = #DOWN } \lyricsto "bass" \bassVerse >> pianoPart = \new PianoStaff << \new Staff = "right" << \rightOne \\ \rightTwo >> \new Staff = "left" { \clef bass \left } >> \score { << \choirPart \pianoPart >> \layout { } } signature.asc Description: OpenPGP digital signature ___
Re: Tweak horizontal spacing between two gracenotes
On 28 May 2017 at 18:46, Urs Liskawrote: > > > Am 28. Mai 2017 18:18:31 MESZ schrieb Sven Axelsson : >>Hello list. >> >>Most of the time Lilypond does a terrific job with my bagpipe music, >>but occasionally the optical spacing between notes does not work out. I >>would like to increase the spacing between the d-g gracenotes a little so >>they look more like the preceeding g-f pair. What is the best way of doing >>this? > > Maybe > \once \override NoteColumn.X-offset = 0.5 Yup, that did the trick. Thanks a lot. -- Sven Axelsson ++[>++>+++>++>++ ><-]>.+..>+.>+.<<-.>>+.>.<<. +++.>-.<<++.>>.<++.>>>++..>>.<. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi Charles (et al.), > Storing this information in the NoteEvents is clunky in my opinion Possibly… > and defeats the purpose of this project I don’t see how that necessarily/logically follows…? > the numerous benefits of an internal representation which understands the > semantics of a chord beyond its notes. This would clearly be a great and useful step forward from what we currently have. > the contexts that need the semantic information shouldn’t need note > information, and the contexts that need note information don’t need semantic > information. As someone who uses chords both for their note and semantic information simultaneously, I would disagree. David’s example > \new ChordNames \fixed c' { } perfectly illustrates how note and semantic information should be seamlessly swapped back and forth across any and all possible contexts. I tried to hint at this when I posted (earlier in this thread) about storing voicing information in the chord code — if I write explicitChords = \fixed c’ { } and then use << \new ChordNames \explicitChords \new Staff \explicitChords >> what I see (in both contexts) should be what I expect: the ChordNames output according to my settings/preferences, and the Staff showing the notes *with the voicings I coded*. The difficult part, of course, is figuring out how to provide this functionality with a reasonably consistent, compact, and intuitive input method and throughput (internal) representation. But that’s what your GSoC project is all about, right? =) Best, Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tweak horizontal spacing between two gracenotes
Am 28. Mai 2017 18:18:31 MESZ schrieb Sven Axelsson: >Hello list. > >Most of the time Lilypond does a terrific job with my bagpipe music, >but >occasionally the optical spacing between notes does not work out. I >would >like to increase the spacing between the d-g gracenotes a little so >they >look more like the preceeding g-f pair. What is the best way of doing >this? Maybe \once \override NoteColumn.X-offset = 0.5 HTH Urs > > > >Thanks, ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi Charles, how good of you to send a summary of this thread. I was very interested in it as you wrote the first mail but couldn't reply right away. And when I could, the thread had already grown so huge, I just could not keep up all posts. So it might well be that what I write has already been discussed. And it is quite possible that what I write is already covered by your plans without me realising it ... If so - sorry for the noise! Anyway, there is one thing that I have trouble with in writing jazz lead sheets. It's about dominant 7th chords with #5. There are several versions of it (I'll use C as root): C7(#5), C7alt, C+7. Seen solely as chord for comping, all of those could in principle be written as c : 7.5+ in chordmode, but the point is that they carry information about the underlying scale to be used in soloing (and of course melody). Basically, C7alt means that the underlying scale is the altered one, so C Db Eb E Gb Ab Bb whereas C+7 means that the underlying scale is the whole tone one C D E F# G# A# and I think that the notation C7(#5) might just be a variant of the altered chord. But I'm not sure right now - they both appear and might well have different implications about the underlying scale. My point is, right now the only of distinguishing these chords is by using parts of the explicit scale in chord mode to distinguish them. I've chosen to use c : 7.5+ for C7(#5) c : 7.5+.2 for C+7 c : 7.5+.2- for C7aug which of course doesn"t sound nice in the midi output. I can live with that - the midi is secondary for me, but it would of course be great to have some sort of interface to define "alt7 means to use 'alt7' in the ChordNames context of the layout but to use just (e.g.) < c e gis bes > in a Staff context or in midi". I hope what I write makes some sort of sense ... Another thing (which might have been discussed already on the thread) was: For reasons of clarity and brevity it sometimes is very helpful to write stuff like Bb-7 /Ab/Gb/F instead of having the root chord Bb-7 in each chord all the time. It would be great if there were an easy possiblity to suppress the chord and just leave the bass there. Right now that is not easily done ... Anyway thanks for putting all that effort into this! All the best, Robert Am 28.05.17 um 17:18 schrieb Charles Winston: Hi all, There have been some great discussions about new chord functionality you’d like to see in LilyPond. The first step is defining the internal representation. From there, I think all these issues can be much more easily solved. We have the EventChord structure, which contains an ‘articulations and ‘elements entry. The ‘elements entry contains some information about the root and inversion, but otherwise it is a list of NoteEvents to be iterated over. My plan is to add a ‘semantics entry whose elements will be semantic aspects of the chord: -root -quality of the third (minor, major, none) -quality of the fifth (diminished, perfect, augmented, none) -extensions (7, 9, 11, etc.) my plan for this is to have a list of extensions, each extension associated with a bool indicating its presence in the chord, and associated with an alteration. -added notes (6, 9, etc.) implemented similarly to extensions above -suspensions (sus4, sus2, etc.) -added bass note -inversions Let me know what more should be added to this list. So after this is implemented, we have an internal representation of a chord, EventChord, which contains both note information and semantic information, and each of these can be utilized independently in different contexts. Let me know what you guys think. Thanks, Charles ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Tweak horizontal spacing between two gracenotes
Hello list. Most of the time Lilypond does a terrific job with my bagpipe music, but occasionally the optical spacing between notes does not work out. I would like to increase the spacing between the d-g gracenotes a little so they look more like the preceeding g-f pair. What is the best way of doing this? Thanks, -- Sven Axelsson ++[>++>+++>++>++ ><-]>.+..>+.>+.<<-.>>+.>.<<. +++.>-.<<++.>>.<++.>>>++..>>.<. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Charles Winstonwrites: > Hi David, > >>> Hi all, >>> >>> There have been some great discussions about new chord functionality you’d >>> like to see in LilyPond. The first step is defining the internal >>> representation. From there, I think all these issues can be much more >>> easily solved. We have the EventChord structure, which contains an >>> ‘articulations and ‘elements entry. The ‘elements entry contains some >>> information about the root and inversion, but otherwise it is a list of >>> NoteEvents to be iterated over. My plan is to add a ‘semantics entry whose >>> elements will be semantic aspects of the chord: >>> >>> -root >>> -quality of the third (minor, major, none) >>> -quality of the fifth (diminished, perfect, augmented, none) >>> -extensions (7, 9, 11, etc.) >>> my plan for this is to have a list of extensions, each >>> extension associated with a bool indicating its presence in the chord, >>> and associated with an alteration. >>> -added notes (6, 9, etc.) >>> implemented similarly to extensions above >>> -suspensions (sus4, sus2, etc.) >>> -added bass note >>> -inversions >>> >>> Let me know what more should be added to this list. >> >> Any reason this information should not be stored in the NoteEvent events >> actually carrying the pitch information like it is done right now? > > Storing this information in the NoteEvents is clunky in my opinion, > and defeats the purpose of this project—the contexts that need the > semantic information shouldn’t need note information, and the contexts > that need note information don’t need semantic information. So you think that LilyPond should not be able to identify chords, only reproduce them as entered? >> It sounds like you are planning to add a completely different and >> orthogonal mechanism for specifying chords > > Yes, I am planning on adding a completely new mechanism for specifying > chords which LilyPond currently doesn’t support. This thread has > talked about the numerous benefits of an internal representation which > understands the semantics of a chord beyond its notes. s/beyond/instead/ if I understand correctly. >> it is not clear to me what the results would or should be when the >> respective information differs. > > I’m not exactly sure what you mean by the respective information > differing? If you mean the note information differing from the > semantic information, the goal is that that will not happen. \new ChordNames \fixed c' { } currently produces the "correct" result. You would want it to fail since the notes have not been entered in chord mode? > Even if it does, it should not create too much trouble, because > contexts will not use both forms of information, and it would be the > user’s mistake in causing the information to differ. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi David, >> Hi all, >> >> There have been some great discussions about new chord functionality you’d >> like to see in LilyPond. The first step is defining the internal >> representation. From there, I think all these issues can be much more easily >> solved. We have the EventChord structure, which contains an ‘articulations >> and ‘elements entry. The ‘elements entry contains some information about the >> root and inversion, but otherwise it is a list of NoteEvents to be iterated >> over. My plan is to add a ‘semantics entry whose elements will be semantic >> aspects of the chord: >> >> -root >> -quality of the third (minor, major, none) >> -quality of the fifth (diminished, perfect, augmented, none) >> -extensions (7, 9, 11, etc.) >> my plan for this is to have a list of extensions, each >> extension associated with a bool indicating its presence in the chord, >> and associated with an alteration. >> -added notes (6, 9, etc.) >> implemented similarly to extensions above >> -suspensions (sus4, sus2, etc.) >> -added bass note >> -inversions >> >> Let me know what more should be added to this list. > > Any reason this information should not be stored in the NoteEvent events > actually carrying the pitch information like it is done right now? Storing this information in the NoteEvents is clunky in my opinion, and defeats the purpose of this project—the contexts that need the semantic information shouldn’t need note information, and the contexts that need note information don’t need semantic information. > It sounds like you are planning to add a completely different and > orthogonal mechanism for specifying chords Yes, I am planning on adding a completely new mechanism for specifying chords which LilyPond currently doesn’t support. This thread has talked about the numerous benefits of an internal representation which understands the semantics of a chord beyond its notes. > it is not clear to me > what the results would or should be when the respective information > differs. I’m not exactly sure what you mean by the respective information differing? If you mean the note information differing from the semantic information, the goal is that that will not happen. Even if it does, it should not create too much trouble, because contexts will not use both forms of information, and it would be the user’s mistake in causing the information to differ. Thanks, Charles ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Export to ?????
On 2017-05-25 00:45, Don Gingrich wrote: I've been looking and looking and I cannot find any useful references to export file formats from LilyPond. Now, I will agree that LilyPond's PDF output is very good looking and is actually my preferred sheet music, But the sad reality it that there are people who do exist who use tools other than LilyPond, and that occasionally it becomes necessary to exchange files with these poor benighted souls. ;-) hi don, if you'll forgive me for self-promotion, i'm a contributor to an open source project (https://ncodamusic.org/) which aims to support translation between a number of music formats, including lilypond import and export. it's early in development, so definitely not helpful to you in its current state. but i know you're not the only person interested in this, so i just wanted to put this on the radar. nathan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Charles Winstonwrites: > Hi all, > > There have been some great discussions about new chord functionality you’d > like to see in LilyPond. The first step is defining the internal > representation. From there, I think all these issues can be much more easily > solved. We have the EventChord structure, which contains an ‘articulations > and ‘elements entry. The ‘elements entry contains some information about the > root and inversion, but otherwise it is a list of NoteEvents to be iterated > over. My plan is to add a ‘semantics entry whose elements will be semantic > aspects of the chord: > > -root > -quality of the third (minor, major, none) > -quality of the fifth (diminished, perfect, augmented, none) > -extensions (7, 9, 11, etc.) > my plan for this is to have a list of extensions, each > extension associated with a bool indicating its presence in the chord, >and associated with an alteration. > -added notes (6, 9, etc.) > implemented similarly to extensions above > -suspensions (sus4, sus2, etc.) > -added bass note > -inversions > > Let me know what more should be added to this list. Any reason this information should not be stored in the NoteEvent events actually carrying the pitch information like it is done right now? It sounds like you are planning to add a completely different and orthogonal mechanism for specifying chords and it is not clear to me what the results would or should be when the respective information differs. > So after this is implemented, we have an internal representation of a > chord, EventChord, which contains both note information and semantic > information, and each of these can be utilized independently in > different contexts. > > Let me know what you guys think. An EventChord currently is a _container_. It never even reaches a stream event listener. Instead it is unpacked and its contained notes/events are played to whatever listener is interested in them. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords in LilyPond
Hi all, There have been some great discussions about new chord functionality you’d like to see in LilyPond. The first step is defining the internal representation. From there, I think all these issues can be much more easily solved. We have the EventChord structure, which contains an ‘articulations and ‘elements entry. The ‘elements entry contains some information about the root and inversion, but otherwise it is a list of NoteEvents to be iterated over. My plan is to add a ‘semantics entry whose elements will be semantic aspects of the chord: -root -quality of the third (minor, major, none) -quality of the fifth (diminished, perfect, augmented, none) -extensions (7, 9, 11, etc.) my plan for this is to have a list of extensions, each extension associated with a bool indicating its presence in the chord, and associated with an alteration. -added notes (6, 9, etc.) implemented similarly to extensions above -suspensions (sus4, sus2, etc.) -added bass note -inversions Let me know what more should be added to this list. So after this is implemented, we have an internal representation of a chord, EventChord, which contains both note information and semantic information, and each of these can be utilized independently in different contexts. Let me know what you guys think. Thanks, Charles ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user