pizz and arco in midi
Hello, Dear list, I am more and more glad with our list; instead of fumbling and trying out as I used to be, I just ask ^_^ A small question again.. How do you just pizz a few measures, then return to arco, in midi? thanks very much Neuro ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: pizz and arco in midi
Why not try the obvious solution: \score{ \relative c'{ \set Staff.midiInstrument = "violin" c d e f \set Staff.midiInstrument = "pizzicato strings" c d e f \set Staff.midiInstrument = "violin" c d e f } \midi{} } /Mats Neuro wrote: Hello, Dear list, I am more and more glad with our list; instead of fumbling and trying out as I used to be, I just ask ^_^ A small question again.. How do you just pizz a few measures, then return to arco, in midi? thanks very much Neuro ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: pizz and arco in midi
Yes ~ , It works ^_^ Thank you Mats, very much :) Neuro - Original Message - From: "Mats Bengtsson" <[EMAIL PROTECTED]> To: "Neuro" <[EMAIL PROTECTED]> Cc: Sent: Thursday, December 21, 2006 1:01 AM Subject: Re: pizz and arco in midi Why not try the obvious solution: \score{ \relative c'{ \set Staff.midiInstrument = "violin" c d e f \set Staff.midiInstrument = "pizzicato strings" c d e f \set Staff.midiInstrument = "violin" c d e f } \midi{} } /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: pizz and arco in midi
> Why not try the obvious solution: > \score{ > \relative c'{ > \set Staff.midiInstrument = "violin" > c d e f > \set Staff.midiInstrument = "pizzicato strings" > c d e f > \set Staff.midiInstrument = "violin" > c d e f > } > \midi{} > } BTW, there is a buglet in lilypond currently: \once doesn't work for midiInstrument... Werner ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
beamlet length in grace
hi list ! I'm sorry I haven't found a good trick for your pb, but when I put : c4 \afterGrace d4 \override Voice.Stem #'length = #50.0 { c16[ d] } the grace aspect changes. Actually, I'm not an expert in override, so... I'll try something else today JMarc ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On Wednesday 20 December 2006 10:58, Mats Bengtsson wrote: > Graham Percival wrote: > > ... hmm, what about allowing > > \tuplet 3:2 {c8 d e} \tuplet { f e d} > > Again, I definitely vote against! We already now have too many > optional constructs in the syntax, which causes more confusion than > it helps. I also vote against this. AFAIK, this kind of repetition seldom happens for other cases than 2/3 and 4/6; we can easily build music functions for those cases (i.e., create a unary function \triplet etc.) -- Erik ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On Wednesday 20 December 2006 07:51, Graham Percival wrote: > Han-Wen Nienhuys wrote: > > Jonathan Henkelman escreveu: > >> I think Eriks point is actually well founded. The discussion started > >> with my discussion of trying to trim down the grammer complexity. Adding > >> syntax is not really in that direction. > > > > Another option: > > > > - add \tuplet 3:2 {.. } > > > > - replace \times 2/3 by \times #'(2 . 3) ; this can be implemented with > > a standard music function > > Oh God no. It took me a year to get used to #'(2 . 3) -- I kept on > trying '#( and #( and #'(2.3)... every time I gave up after ten minutes > and found an example from the documentation to copy. Scheme has rational numbers as a builtin type, so it _is_ possible to pass the easy-to-type #2/3 as an argument to a music function (AFAIK, this is the only case where scheme doesn't use polish notation). Unfortunately, this would not work with \times: #2/3 and #4/6 are the same rational number, but 2/3 and 4/6 are different tuplet fractions. Also, Scheme rational numbers may not contain whitespaces, so #2 / 3 is not the same as #2/3. (hm.. for obvious mathematical reasons this solution doesn't work, but if it WOULD have worked, it would have been a nice solution in a mathematical sense) -- Erik ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On Tuesday 19 December 2006 15:25, Mats Bengtsson wrote: > Werner LEMBERG wrote: > >>> \tuplet 3:2 {...} > >> > >> One minor detail is that the name isn't exactly appropriate when you > >> do > >> \set tupletSpannerDuration = #(ly:make-moment 1 4) > >> \times 2/3 {c8 d e f e d e f g f e d } > > > > Well, in that case just stay with \times. > > I thought the proposal was to completely get rid of \times and replace it > by \tuplet (which I think is a good idea). Just wanted to see if anybody > had any bright idea on a command name that's accurate also in this > special case. What about: \tuplets 2/3 {c8 d e f e d e f g f e d } We could also make \tuplet and \tuplets differ on the iterator level, so that the tupletSpannerDuration property affects \tuplets expressions but not \tuplet expressions. BTW, in this case it may be good to register the fraction as its own argument type, so \tuplets and \tuplet are generic music functions, both with signature (tuplet-fraction? music?) -- Erik ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Erik Sandberg wrote: What about: \tuplets 2/3 {c8 d e f e d e f g f e d } We could also make \tuplet and \tuplets differ on the iterator level, so that the tupletSpannerDuration property affects \tuplets expressions but not \tuplet expressions. I think that may just cause more confusion. I vote for the single command \tuplet (which occasionally might mean "tuplets" as well). BTW, in this case it may be good to register the fraction as its own argument type, so \tuplets and \tuplet are generic music functions, both with signature (tuplet-fraction? music?) Maybe such an argument type can also be used in functions like \compressMusic and perhaps also as the value for some properties. /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Erik Sandberg escreveu: > BTW, in this case it may be good to register the fraction as its own argument > type, so \tuplets and \tuplet are generic music functions, both with > signature > (tuplet-fraction? music?) it would be cool if we could pull this off, that would make \time generic too. -- Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen LilyPond Software Design -- Code for Music Notation http://www.lilypond-design.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Mats Bengtsson wrote: BTW, in this case it may be good to register the fraction as its own argument type, so \tuplets and \tuplet are generic music functions, both with signature (tuplet-fraction? music?) Maybe such an argument type can also be used in functions like \compressMusic and perhaps also as the value for some properties. At second thought, couldn't we expect problems since as you said in an earlier email, #6/8 is interpreted by Scheme as a rational number, so \tuplet #6/8 wouldn't be the same thing as \tuplet 6/8 (the former would perhaps give a syntax error). /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Align Chord Name with Chord Position
You didn't really say what kind of alignment you want. Also, it is good habit to cut down the example files to only illustrate the specific problem you are asking about. However, here is an example that gives (at least almost) centered alignment. If you want left alignment, just replace #CENTER with #LEFT. Note that in your original example, you had specified your \layout{...} block at the top level of the file, which means that it applies to all the \score{...} blocks in the file. I choose to put it within the \score{...} block, so it only applies to that particular "score". Note also, that it in general is a better idea to make all the modifications of a certain context type within a single \context{...}, see my example. \version "2.10.0" \markup { \bold "Acordes Usados" } \score{ << \new ChordNames \chordmode { e cis:m fis:7 b fis:m7 fis:m fis e:7 a:9 b:sus4 b:7 } \new Lyrics \lyricmode { \markup {\fret-diagram-terse #"o;2;2;1;o;o;"} \markup {\fret-diagram-terse #"x;4-(;6;6;5;4-);"} \markup {\fret-diagram-terse #"2-(;4;;3;;2-);"} \markup {\fret-diagram-terse #"x;2-(;4;4;4;2-);"} \markup {\fret-diagram-terse #"2-(;42-);"} \markup {\fret-diagram-terse #"2-(;4;4;;;2-);"} \markup {\fret-diagram-terse #"2-(;4;4;3;;2-);"} \markup {\fret-diagram-terse #"o;2;2;1;3;o;"} \markup {\fret-diagram-terse #"x;o;2-(;4;;2-) 3;"} \markup {\fret-diagram-terse #"x;2-(;4;4;5;2-);"} \markup {\fret-diagram-terse #"o;2;2;1;o;o;"} } >> \layout { indent = 0 \context { \Score \remove "Bar_number_engraver" } \context { \Lyrics \override LyricSpace #'minimum-distance = #1.5 \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1) \override LyricText #'self-alignment-X = #CENTER } \context { \ChordNames \override ChordName #'font-size = #1 \override ChordName #'self-alignment-X = #CENTER \override ChordName #'X-offset = #ly:self-alignment-interface::aligned-on-x-parent } } } /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Paul Scott: > Karl Hammar wrote: ... > > I support Eriks idea: > > . it is much easier to write 2 3 instead of 2/3 > > > much?? It's about the same on my keyboard. 2/3 is even easier with the > numeric keypad. Well, it depends on which keyboard layout you are using. The swedish one is like shift-7. Regards /Karl Hammar ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On Thursday 21 December 2006 12:55, Han-Wen Nienhuys wrote: > Erik Sandberg escreveu: > > BTW, in this case it may be good to register the fraction as its own > > argument type, so \tuplets and \tuplet are generic music functions, both > > with signature > > (tuplet-fraction? music?) > > it would be cool if we could pull this off, that would make \time generic > too. Hm, if we do this together with the 2:3 syntax change, then we would suddenly be able to write: \time 4:3 which would be equivalent to: \time 3/4 That's a bit confusing. BTW, if we start adding new types, it would be nice to create a new 'type' data structure, to be used in function signatures. The data structure would contain a type-checking predicate, a name (displayed when type-check fails), and perhaps a type ID for the lexer. This would allow more complex types, e.g. 'sequential music', 'single note or chord', 'pair of numbers' (as in #'(1 . 3)), etc; perhaps the system could be used for define-context-properties.scm as well. -- Erik ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Getting involved
Hi everybody, a while ago I thought i might put my own bit into the lilypond work. So I checked the stuff on the development pages and ended up that a German translation for the web page and the documentation would be a nice thing. But first I thought of asking here if there is this kind of project already under progress (like the similar case recently with the French docu). I know that in the end i should move to the developer's list but for now it seems this list is bigger. Sure this would be quite a big project, so it would be interesting to hear if people like/need this and if there would be possible co-workers. First information about the process itself I got from the lilypondwiki, but it seems to be quite old information, and when I translated a page of the 2.11 docu according to this how-to and opened it in my browser, no pics where shown (wile being in their correct folders) -- is this then a problem that will only be fixed after the translation or is it the bug about the links that I encountered here? Another point is the support for ancient notation, especially the mensural or renaissance engravers. I think there should still be some work done, and I would be happy if I could also help here -- though I don't know will I actually be able to write some code; so far I have no experiences in programming. For instance the spacing of this music should be done quite differently to modern music, especially the ligatures leave as much space as the according durations would take by themselves, and this is not the way this notations was written. Another point are the symbols themselves, which look quite decently, but have not the same perfectness as the default notation symbols. Also I think there should be support for "Black mensural notation", used until the 15th century in central Europe. I don't have much knowledge about font design at the moment, but would be glad if someone could point out where I could find some basics so I could start some drawing if this feature is welcomed. Greetings from Finland Till ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
no cautionary clef
how can I make no cautionary clefs? I tried without success: \override Staff.Clef #'transparent = ##t and \set Staff.forceClef = ##f thanks.. -- Mehmet Okonsar, pianist-composer-conductor www.okonsar.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Erik Sandberg escreveu: > On Thursday 21 December 2006 12:55, Han-Wen Nienhuys wrote: >> Erik Sandberg escreveu: >>> BTW, in this case it may be good to register the fraction as its own >>> argument type, so \tuplets and \tuplet are generic music functions, both >>> with signature >>> (tuplet-fraction? music?) >> it would be cool if we could pull this off, that would make \time generic >> too. > > Hm, if we do this together with the 2:3 syntax change, then we would suddenly > be able to write: > \time 4:3 > which would be equivalent to: > \time 3/4 > That's a bit confusing. > > BTW, if we start adding new types, it would be nice to create a new 'type' > data structure, to be used in function signatures. The data structure would > contain a type-checking predicate, a name (displayed when type-check fails), > and perhaps a type ID for the lexer. This would allow more complex types, > e.g. 'sequential music', 'single note or chord', 'pair of numbers' (as in > #'(1 . 3)), etc; perhaps the system could be used for > define-context-properties.scm as well. be careful. If you introduce type, you will have to introduce subtypes as well: seq-music is a subtype of music. Before you know, we'll be writing a type inference engine. -- Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen LilyPond Software Design -- Code for Music Notation http://www.lilypond-design.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Rhythms Notations
I was interested in construct/processing rhythms with lisp or python, like we could do in open music with "tree" library, and output for Lillypond. OM uses the Comom Music Notation, that is very good for this kind of task. It looks like this: (cmn treble (rqq '(2 ((1 (1 1 1 2)) (1 (1 2)) (1 (1 2 4 g4 fs4 sixteenth-rest en4 (chord c4 ef4) eighth-rest af4 bf4 gf4)) the part '(2 ((1 (1 1 1 2)) (1 (1 2)) (1 (1 2 4 is the rhythm, and you can make construct very easily in different ways, and then further modify it, sometimes very radically. this kind of rhythm notation, separated from the pitch material, can be interesting for this kind of construction and processing. I can choose a sequence of measures sizes, and then a sequence of proportions inside it. I can't figure out how to do this and export to lilypond easily. This separations between proportions and measures sizes. Does Lilypond allow other kinds of notation that is separated from pitch material and more handy for tuples.. ? If not, is there projects for that? I found very easy to generate pitch material for lilypond output, but I didn't have any insight about rhythms yet... :-( Any comments or advise ? Cheers, Bernardo ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Stephen Kress wrote: > 4. By default, a single number will be engraved in the tuplet bracket. There is already the text property of the TupletNumber object that can be tweaked to get the ratio printed if one so desires. In other words, no changes need to be made to LP in how the single number vs. ratio engraving is done; LP already does it right. How exactly will this work. \times 2/3 {c8 d e f g a} does not produce the output _I_ would expect, which is two standard triplets. Instead it produces two triplets with a single spanner with the text '3' in it. Do we want to work on this default notation at the same time? J ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: no cautionary clef
You mean the small clef at the end of the line if the clef change happens at a line break, right? Try \set Staff.explicitClefVisibility = #end-of-line-invisible /Mats Mehmet Okonsar wrote: how can I make no cautionary clefs? I tried without success: \override Staff.Clef #'transparent = ##t and \set Staff.forceClef = ##f thanks.. -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Jonathan Henkelman wrote: How exactly will this work. \times 2/3 {c8 d e f g a} does not produce the output _I_ would expect, which is two standard triplets. Instead it produces two triplets with a single spanner with the text '3' in it. Do we want to work on this default notation at the same time? That's an example where you need to set the tupletSpannerDuration property: \set tupletSpannerDuration = #(ly:make-moment 1 4) \times 2/3 {c8 d e f g a} /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On Thursday 21 December 2006 15:01, Han-Wen Nienhuys wrote: > Erik Sandberg escreveu: > > On Thursday 21 December 2006 12:55, Han-Wen Nienhuys wrote: > >> Erik Sandberg escreveu: > >>> BTW, in this case it may be good to register the fraction as its own > >>> argument type, so \tuplets and \tuplet are generic music functions, > >>> both with signature > >>> (tuplet-fraction? music?) > >> > >> it would be cool if we could pull this off, that would make \time > >> generic too. > > > > Hm, if we do this together with the 2:3 syntax change, then we would > > suddenly be able to write: > > \time 4:3 > > which would be equivalent to: > > \time 3/4 > > That's a bit confusing. > > > > BTW, if we start adding new types, it would be nice to create a new > > 'type' data structure, to be used in function signatures. The data > > structure would contain a type-checking predicate, a name (displayed when > > type-check fails), and perhaps a type ID for the lexer. This would allow > > more complex types, e.g. 'sequential music', 'single note or chord', > > 'pair of numbers' (as in #'(1 . 3)), etc; perhaps the system could be > > used for > > define-context-properties.scm as well. > > be careful. If you introduce type, you will have to introduce subtypes as > well: seq-music is a subtype of music. Before you know, we'll be writing a > type inference engine. I don't understand. Why isn't is sufficient to let typechecking be carried out by an arbitrary user-defined turing-complete function? music and seq-music don't need to share any code, the type inference engine machinery would be voluntary AFAICS (seq-music's predicate would check that the object is a Music and that it's of type SequentialMusic, and seq-music's name would be "sequential music"). And when it comes to parser, seq-music can just tell it that it expects a Music, and typecheck after parsing. Alternatively, we create an independent rule for seq-music which only accepts stuff on the form { }. This rule will exist independently of the generic Music rule. Or did I miss something? -- Erik ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Frédéric Chiasson wrote: > But to avoid repeating \tuplet functions for long passages with the > same tuplets, we could admit that kind of syntax : > > \tuplet 3:2 {c8 d e f g a b c d e d c b a g f e d} > > without having one long bracket going through all the notes. But I > understand that you don't want to change that for programming issues. It is not possible to determine whether "long" tuplets should be splitted or not; how then would you determine whether \tuplet 3:2 {c4 c8 c c4} should be printed as |- 3 | __ | | | | | | | | X X X X or as |- 3 -| |- 3 -| | |\ |\ | | | | | X X X X ? In your example, \set tupletSpannerDuration = #(ly:make-moment 1 4) can already save from typing \tuplet (\times today) a lot of times. Cheers, -- John Mandereau <[EMAIL PROTECTED]> ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Getting involved
Till Rettig <[EMAIL PROTECTED]> writes: Hi Till, > a while ago I thought i might put my own bit into the lilypond > work. So I checked the stuff on the development pages and ended up > that a German translation for the web page and the documentation would > be a nice thing. But first I thought of asking here if there is this > kind of project already under progress (like the similar case recently > with the French docu). There was a project started by Marc Weber (Cc). Marc made an initial translation in July 2005. We then had discussions with a lot of suggestions going until 2006, but did not receive an update. Because of your post, I have just added Marc's last effort to the GIT repository. It would be up to you (and Marc) to see if this is helpful, or if you would want to start fresh. If we do not hear from Marc, I will try to add make the changes that Werner and I suggested to GIT. Marc, are you there? Do you have an updated version available? See http://git.sv.gnu.org/gitweb/?p=lilypond.git;a=blob_plain;f=README;hb=web/master and http://git.sv.gnu.org/gitweb/?p=lilypond.git;a=blob_plain;f=TRANSLATION;hb=web/master for how to get started. See also the discussion about french documentation http://lists.gnu.org/archive/html/lilypond-devel/2005-04/msg00233.html that has lead to the french website. Greetings, Jan. -- Jan Nieuwenhuizen <[EMAIL PROTECTED]> | GNU LilyPond - The music typesetter http://www.xs4all.nl/~jantien | http://www.lilypond.org ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: no cautionary clef
On Thursday 21 December 2006 16:11, Mats Bengtsson wrote: > \set Staff.explicitClefVisibility = #end-of-line-invisible ok thank you -- Mehmet Okonsar, pianist-composer-conductor www.okonsar.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Convert-ly crashes
I'm moving this to lilypond-user, since it no longer has anything to do with the particular bug that started the thread. > "Graham" == Graham Percival <[EMAIL PROTECTED]> writes: Graham> Laura Conrad wrote: >>> "Graham" == Graham Percival <[EMAIL PROTECTED]> writes: >> Graham> I puzzled over what priority to give this -- I mean, who's Graham> going to be converting things that old >> >> Most of us who were using lilypond that long ago. Graham> Huh. I was going to make some kind of comment like Graham> "... but surely people update their files at least every Graham> three years", but I just discovered 10 of my scores with Graham> \version "2.0.1". And I discovered another 30 scores that Graham> were definitely written before 2.0.1, but don't have any Graham> \version strings at all. My my, I was such a naughty boy. Graham> :) I think this might be worth discussing on the users' list. The contributors are probably all making some assumptions about people's work habits that doubtless hold true for only some of the population. So here's the question: What are your actual and theoretical work habits with respect to using convert-ly and \version strings? In my case, I transcribe two or three pieces a week for my group that meets on Tuesdays. If the piece is out of copyright (most of what I do), it usually gets uploaded to my website within a few weeks of transcription. The lilypond gets updated only if I use it again and find I really need a new feature or I'm really being annoyed by the "old fashioned" spacing algorithm, or if someone finds an error. The situation is a little different for things that are part of a major project, like the Dowland and Morley books, or the drinking songs compilation. In that case, the whole project has to be updated whenever I add or change anything, since lilypond-book needs to have everything in the same lilypond version. The Dowland project is particularly demanding that way, since there are over a hundred pieces, each with 2-5 parts, and each part has an incipit using some of the ancient notation. It would not have made the jump from 2.0.1 to 2.8, which required a lot of manual intervention, without a lot of help from Warren Stickney, one of the users of my web site. In any case, I find that I have to look at things (or even better have my group look at them) when I update them, so I've never even considered a routine updating of all the hundreds of pieces at once. In theory, I think having version strings in every piece is a good idea. In practice, I don't find there's a problem with using convert-ly with an older version than is actually needed. My older stuff was almost all entered in ABC and converted with abc2ly, which didn't used to insert a version string, but did put in a comment with the abc2ly version. My current practice is to use templates for entering the lilypond. The templates have a version string, but it isn't always updated every time I update lilypond. So I often find I have to give convert-ly an explicit version, but so far that hasn't been a terrible problem. -- Laura (mailto:[EMAIL PROTECTED] , http://www.laymusic.org/ ) (617) 661-8097 fax: (501) 641-5011 233 Broadway, Cambridge, MA 02139 ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Chord library
Hi there, I am working on a guitar chord library for lily [1] based on the \fret-diagram command. The generator is written in python. The chord configuration file is quite simple: a section header indicates the chord type. Followin lines a defining a chord name. If a chord name ends with "-b" the chord is considered a a barred chord and would be expanded througth the whole neck. If a chord has more than definition then a "-Two-" or "-Three-" ... should be placed after the pitch name. My explainations may be confusing (my english is not perfect :-/), so this is an example: [m] # pitch 6th 5th 4th 3rd 2nd 1st # E A D G B E d = x x o 2-2 3-3 1-1 dis-b = x x 1-1 3-3 4-4 2-2 d-Two = x o o 2-2 3-3 1-1 dis-Two-b = x 1-1 1-1 3-3 4-4 2-2 o = open string x = muted string x-y = fret-finger Barre are autodetected d => a classic Dm chord d-Two => a variation of Dm including open A on the 5th string. dis-b => the Dm chord played one fret higher to be expaned to the whole neck dis-Two-b => same as dis-b with the 5th string the gen-chords.py script will generate chords commands like: dm = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;" } dmTwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;6-x;5-o;4-o;3-2-2;2-3-3;1-1-1;" } dismITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-1;6-x;5-1-1;4-1-1;3-3-3;2-4-4;1-2-2;" } eesmITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-1;6-x;5-1-1;4-1-1;3-3-3;2-4-4;1-2-2;" } emIITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-2;6-x;5-2-1;4-2-1;3-4-3;2-5-4;1-3-2;" } fmIIITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-3;6-x;5-3-1;4-3-1;3-5-3;2-6-4;1-4-2;" } fismIVTwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-4;6-x;5-4-1;4-4-1;3-6-3;2-7-4;1-5-2;" } [...] fmIIITwo => A Fm chord played on the 3rd fret variation named "Two". Then in an lilypond file you can use: ^\fmIIITwo To call this chord. a chord name is defined using this rule: # M|m|sus(Two|Four) # M = Major chords # m = minor chords # sus = suspended chords (no 3rd) # # Additionnal tones: # # (no|add)?(d|M|A)(Eight) <- should not be used # (no|add)?(d|m|M|A)(Two|Three|Six|Seven|Nine|Ten|Thirteen|Fourteen) # (no|add)?(d|P|A)(Four|Five|Eleven|Twelve) # # d = diminished # M = Major # P = Perfect # m = minor # A = Augmented Thus: [m] => minor [MmSevenAFive] => 7/5# [mmSevendFive] => m7b5 [susFourmSeven] => 7sus4 Currently not a lot of chord are defined and the generator is still experimental. The aim of this library is to get a lot of predefined chords out-of-the-box to prevent from redefining them in all files. Comments are welcome. Merry Xmas & happy new year. [1] - http://lilypond.chezwam.org/cgi-bin/darcsweb.cgi?r=Lilypond - http://lilypond.chezwam.org/darcs/lilypond/tools/chords-dict/ -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
I hope you have read the NEWS included in the on-line documentation for version 2.10, especially about the FretBoards context. /Mats Sébastien Gross wrote: Hi there, I am working on a guitar chord library for lily [1] based on the \fret-diagram command. The generator is written in python. The chord configuration file is quite simple: a section header indicates the chord type. Followin lines a defining a chord name. If a chord name ends with "-b" the chord is considered a a barred chord and would be expanded througth the whole neck. If a chord has more than definition then a "-Two-" or "-Three-" ... should be placed after the pitch name. My explainations may be confusing (my english is not perfect :-/), so this is an example: [m] # pitch 6th 5th 4th 3rd 2nd 1st # E A D G B E d = x x o 2-2 3-3 1-1 dis-b = x x 1-1 3-3 4-4 2-2 d-Two = x o o 2-2 3-3 1-1 dis-Two-b = x 1-1 1-1 3-3 4-4 2-2 o = open string x = muted string x-y = fret-finger Barre are autodetected d => a classic Dm chord d-Two => a variation of Dm including open A on the 5th string. dis-b => the Dm chord played one fret higher to be expaned to the whole neck dis-Two-b => same as dis-b with the 5th string the gen-chords.py script will generate chords commands like: dm = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;" } dmTwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;6-x;5-o;4-o;3-2-2;2-3-3;1-1-1;" } dismITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-1;6-x;5-1-1;4-1-1;3-3-3;2-4-4;1-2-2;" } eesmITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-1;6-x;5-1-1;4-1-1;3-3-3;2-4-4;1-2-2;" } emIITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-2;6-x;5-2-1;4-2-1;3-4-3;2-5-4;1-3-2;" } fmIIITwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-3;6-x;5-3-1;4-3-1;3-5-3;2-6-4;1-4-2;" } fismIVTwo = \markup{ \fret-diagram #"d:0.25;f:2;h:4;p:0.6;s:1;w:6;c:5-4-4;6-x;5-4-1;4-4-1;3-6-3;2-7-4;1-5-2;" } [...] fmIIITwo => A Fm chord played on the 3rd fret variation named "Two". Then in an lilypond file you can use: ^\fmIIITwo To call this chord. a chord name is defined using this rule: # M|m|sus(Two|Four) # M = Major chords # m = minor chords # sus = suspended chords (no 3rd) # # Additionnal tones: # # (no|add)?(d|M|A)(Eight) <- should not be used # (no|add)?(d|m|M|A)(Two|Three|Six|Seven|Nine|Ten|Thirteen|Fourteen) # (no|add)?(d|P|A)(Four|Five|Eleven|Twelve) # # d = diminished # M = Major # P = Perfect # m = minor # A = Augmented Thus: [m] => minor [MmSevenAFive] => 7/5# [mmSevendFive] => m7b5 [susFourmSeven] => 7sus4 Currently not a lot of chord are defined and the generator is still experimental. The aim of this library is to get a lot of predefined chords out-of-the-box to prevent from redefining them in all files. Comments are welcome. Merry Xmas & happy new year. [1] - http://lilypond.chezwam.org/cgi-bin/darcsweb.cgi?r=Lilypond - http://lilypond.chezwam.org/darcs/lilypond/tools/chords-dict/ -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Mats Bengtsson ee.kth.se> writes: > Jonathan Henkelman wrote: > > > > How exactly will this work. \times 2/3 {c8 d e f g a} does not produce the > > output _I_ would expect, which is two standard triplets. Instead it produces > > two triplets with a single spanner with the text '3' in it. Do we want to > > work on this default notation at the same time? > > > That's an example where you need to set the tupletSpannerDuration property: > \set tupletSpannerDuration = #(ly:make-moment 1 4) > \times 2/3 {c8 d e f g a} > >/Mats > I understand from the manual and the archives that \set tupletSpanner... etc. will do what I am expecting, but in the interest of making the language more intuitive, esp. for new users, it is worth considering having the default behaviour as follows: \tuplet 3:2 {c8 d e f g a} yielding: __3__ __3__ | | | | | | | | | | | | X X X X X X which is what I would expect from an instruction told to parse a musical stream such that 3 notes take the space of two. Instead, what I do get is rather meaningless: +---3---+ _ _ | | | | | | | | | | | | X X X X X X It means a new user has to set an internal variable to get the behaviour they expect. It would make more sense to have an experienced user, who might want the latter, setting the internal variable to get the more unusal behaviour. Jonathan ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
Yes, that makes sense. Frédéric 2006/12/21, John Mandereau <[EMAIL PROTECTED]>: Frédéric Chiasson wrote: > But to avoid repeating \tuplet functions for long passages with the > same tuplets, we could admit that kind of syntax : > > \tuplet 3:2 {c8 d e f g a b c d e d c b a g f e d} > > without having one long bracket going through all the notes. But I > understand that you don't want to change that for programming issues. It is not possible to determine whether "long" tuplets should be splitted or not; how then would you determine whether \tuplet 3:2 {c4 c8 c c4} should be printed as |- 3 | __ | | | | | | | | X X X X or as |- 3 -| |- 3 -| | |\ |\ | | | | | X X X X ? In your example, \set tupletSpannerDuration = #(ly:make-moment 1 4) can already save from typing \tuplet (\times today) a lot of times. Cheers, -- John Mandereau <[EMAIL PROTECTED]> ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Getting involved
Am Donnerstag, 21. Dezember 2006 14:05 schrieb Till Rettig: > Another point is the support for ancient notation, especially the > mensural or renaissance engravers. I think there should still be some > work done, and I would be happy if I could also help here -- though I > don't know will I actually be able to write some code; so far I have no > experiences in programming. For instance the spacing of this music > should be done quite differently to modern music, especially the > ligatures leave as much space as the according durations would take by > themselves, and this is not the way this notations was written. Another > point are the symbols themselves, which look quite decently, but have > not the same perfectness as the default notation symbols. Also I think > there should be support for "Black mensural notation", used until the > 15th century in central Europe. I don't have much knowledge about font > design at the moment, but would be glad if someone could point out where > I could find some basics so I could start some drawing if this feature > is welcomed. Hi Till, I would be very glad to see improved support for mensural notation in lilypond. I won't have the time to actually contribute code or graphics, but as a musicologist with special interest in 14-16th-century notation I could help with advice or comments if needed. Robert -- Robert Memering Arbeitsbereich Linguistik, Universität Münster Hüfferstraße 27, D-48149 Münster, Germany Raum 01.85, Tel. +49-251-83-31958 http://santana.uni-muenster.de ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Rhythms Notations
On 12/21/06, bbarros <[EMAIL PROTECTED]> wrote: I was interested in construct/processing rhythms with lisp or python, like we could do in open music with "tree" library, and output for Lillypond. OM uses the Comom Music Notation, that is very good for this kind of task. It looks like this: (cmn treble (rqq '(2 ((1 (1 1 1 2)) (1 (1 2)) (1 (1 2 4 g4 fs4 sixteenth-rest en4 (chord c4 ef4) eighth-rest af4 bf4 gf4)) the part '(2 ((1 (1 1 1 2)) (1 (1 2)) (1 (1 2 4 is the rhythm, and you can make construct very easily in different ways, and then further modify it, sometimes very radically. this kind of rhythm notation, separated from the pitch material, can be interesting for this kind of construction and processing. I can choose a sequence of measures sizes, and then a sequence of proportions inside it. I can't figure out how to do this and export to lilypond easily. This separations between proportions and measures sizes. Does Lilypond allow other kinds of notation that is separated from pitch material and more handy for tuples.. ? If not, is there projects for that? I found very easy to generate pitch material for lilypond output, but I didn't have any insight about rhythms yet... :-( Hi Bernardo, If you know about LilyPond's RhythmicStaff context and if you're clever with recursion, you should be able to write a single function in Scheme (or python or whatever) to transform OpenMusic stuff like ... '(2 ((1 (1 1 1 2)) (1 (1 2)) (1 (1 2 4 ... into ... \new Rhythmic Staff \time 2/4 \times 2/3 { \times 4/5 { c'16 [ c'16 c'16 c'8 ] } \times 2/3 { c'8 c'4 } \times 6/7 { c'16 [ c'8 ] c'4 } } } ... which, IIRC, is the LilyPond representation. In other words, LilyPond is perfect for complex rhythmic modelling outside the pitch domain. Just build up your OpenMusic expressions however you want and then write a transform function that will spit out the LilyPond input and shove it into a RhythmicStaff. One *really* helpful thing about LilyPond that you'll find when you start using it for time modelling is that LilyPond -- unlike Finale and Sibelius -- is not bound by the measure in any way whatsoever. So nonbinary meters like 3/14, 7/9 and 5/28 all work correctly out of the box (which is almost impossible to believe), as do incomplete tuplets like \times 2/3 { c'8 [ c'8 ] }. If barlines do not fit *between* the notes of your rhythm but rather come *in the middle* of the notes of your rhythm, no problem: put your rhythms in one voice, put you barlines in a second voice, and set both voices against each other using << and >>. This works absolutely perfectly out of the box and is a major reason to model complex rhythm in LilyPond as opposed to any other notation package. (What's more, not only will LilyPond correctly typeset barlines that come in the middle of note durations, LilyPond will also typeset *line breaks* that come in the middle of note durations (!). To do this, simply \remove Forbid_line_break_engraver.) Finally, if your rhythms are involved you'll probably find it quite helpful to turn on the different proportional notation settings, especially 'uniform-stretching = ##t in the SpacingSpanner. You'll see time proportions exactly. If you do wind up using LilyPond for your rhythmic modelling, please feel free to post back examples to the list. -- Trevor Bača [EMAIL PROTECTED] ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
On 12/20/06, Kress, Stephen <[EMAIL PROTECTED]> wrote: Ok. Based on what everyone has been saying and seeming to come to an agreement on, here's the details of the changes that we are proposing be made. 1. \times is replaced by \tuplet since tuplet makes more musical sense and convert-ly can easily be updated to make the change. Because of convert-ly, there's not a real reason (other than the status quo people are used to) to keep \times around. 2. The first argument to \tuplet may be either a ratio (more understandable to musicians) or a division (as is currently supported). The punctuation between the two numbers marks what it is. A single number will not be supported. 3. The second argument remains an arbitrary musical expression. There is no reason to force the expression to contain only the "proper" duration of notes since LP is already built to engrave this situation properly. 4. By default, a single number will be engraved in the tuplet bracket. There is already the text property of the TupletNumber object that can be tweaked to get the ratio printed if one so desires. In other words, no changes need to be made to LP in how the single number vs. ratio engraving is done; LP already does it right. The first three of these suggestions make great sense. But could we please change #4? Note that, today, the expression \times 3/5 { c'16 c'16 c'16 c'16 c'16 } prints with a lone "5" above the backet. A lone 5 is interpreted as an abbreviation of "5:4" and not as "5:3". This means that hte output is not merely typographically incorrect but musically incorrect. (The solution in the current implementations of the program is to override TupletNumber to a fraction, which definitely does work. However, this means that we have a rare example of a case where Lily's default behavior is actually musically incorrect.) If we're going to change tuplet input and rendering behavior, I think a better version of #4 might be something like "print, by default, a lone integer over the bracket, except where a lone integer is musically incorrect, in which case print the ratio over the bracket". See http://lists.gnu.org/archive/html/lilypond-user/2006-11/msg00514.html -- Trevor Bača [EMAIL PROTECTED] ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
seb-g wrote: > > Hi there, > > I am working on a guitar chord library for lily [1] based on the > \fret-diagram command. > > The generator is written in python. > > The chord configuration file is quite simple: > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > Yes, as Mats said please check out the FretBoards context, I sponsored it! It will allow you to transpose fret diagrams and enter fret diagrams using standard lilypond notes, it will auto detect the strings for minimal hand stretch and position shifts, etc. recognizes all the base class properties for staff alignment, duration, etc. Building a chord library upon the foundation of the FretBoards context should be a snap because most of the work is done for you already. I'm still trying different approaches to my own chord library, right now I'm leaning toward using \tag where some note clusters give the chord name and others in each collection give the various fret fingerings, then I just extract the notes I want into the music using \keepWithTag either in FretBoards or ChordNames context. My library only needs all the chords stated in the key of C then I use \transpose in the piece proper to move the library chords up/down the neck to different root notes. Han-Wen did a great job on FretBoards, check it out. Rick -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8011249 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
Rick Hansen (aka RickH) wrote: > > > > seb-g wrote: >> >> Hi there, >> >> I am working on a guitar chord library for lily [1] based on the >> \fret-diagram command. >> >> The generator is written in python. >> >> The chord configuration file is quite simple: >> >> -- >> Sebastien Gross >> >> >> ___ >> lilypond-user mailing list >> lilypond-user@gnu.org >> http://lists.gnu.org/mailman/listinfo/lilypond-user >> >> > > > Yes, as Mats said please check out the FretBoards context, I sponsored it! > > It will allow you to transpose fret diagrams and enter fret diagrams using > standard lilypond notes, it will auto detect the strings for minimal hand > stretch and position shifts, etc. recognizes all the base class > properties for staff alignment, duration, etc. > > Building a chord library upon the foundation of the FretBoards context > should be a snap because most of the work is done for you already. I'm > still trying different approaches to my own chord library, right now I'm > leaning toward using \tag where some note clusters give the chord name and > others in each collection give the various fret fingerings, then I just > extract the notes I want into the music using \keepWithTag either in > FretBoards or ChordNames context. My library only needs all the chords > stated in the key of C then I use \transpose in the piece proper to move > the library chords up/down the neck to different root notes. > > Han-Wen did a great job on FretBoards, check it out. > > Rick > > > In my previous post the phrase "stated in the key of C" should have read "stated with roots of C", as chords have "roots" not "keys", sorry for any confusion. -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8011336 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Doublequotes in markup?
Hi, What's the right way to typeset doublequotes in markup? The expression ... \markup { The word "andante" should appear between quotes. } ... doesn't do what I would imagine. -- Trevor Bača [EMAIL PROTECTED] ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Doublequotes in markup?
What's the right way to typeset doublequotes in markup? The expression ... \markup { The word "andante" should appear between quotes. } I guess it wouldn't. Can you use the character code instead? Or set real left and right double-quotes, which LilyPond doesn't use for anything else? Geoff ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
I have enclosed two messages which I think are getting at the same problem in different ways. Regardless of \tuplet vs. \times and the associated programming discussion, I think the fact that Lily's default is to print nonsense in this kind of case, should be thought of as a bug. Jonathan Henkelman wrote: >I understand from the manual and the archives that \set tupletSpanner... etc. >will do what I am expecting, but in the interest of making the language more >intuitive, esp. for new users, it is worth considering having the default >behaviour as follows: > >\tuplet 3:2 {c8 d e f g a} yielding: > __3__ __3__ > | | | | | | > | | | | | | >X X X X X X > >which is what I would expect from an instruction told to parse a musical >stream such that 3 notes take the space of two. Instead, what I do get is >rather meaningless: > > +---3---+ > _ _ > | | | | | | > | | | | | | >X X X X X X > >It means a new user has to set an internal variable to get the behaviour they >expect. It would make more sense to have an experienced user, who might want >the latter, setting the internal variable to get the more unusal behaviour. and Trevor Bacˇa wrote: >On 12/20/06, Kress, Stephen <[EMAIL PROTECTED]> wrote: >> >> >> >> >> Ok. Based on what everyone has been saying and seeming to come to an >> agreement on, here's the details of the changes that we are proposing >be >> made. >> >> 1. \times is replaced by \tuplet since tuplet makes more musical >sense and >> convert-ly can easily be updated to make the change. Because of >convert-ly, >> there's not a real reason (other than the status quo people are used >to) to >> keep \times around. >> >> 2. The first argument to \tuplet may be either a ratio (more >> understandable to musicians) or a division (as is currently >supported). The >> punctuation between the two numbers marks what it is. A single number >will >> not be supported. >> >> 3. The second argument remains an arbitrary musical expression. >There is >> no reason to force the expression to contain only the "proper" >duration of >> notes since LP is already built to engrave this situation properly. >> >> 4. By default, a single number will be engraved in the tuplet >bracket. >> There is already the text property of the TupletNumber object that can >be >> tweaked to get the ratio printed if one so desires. In other words, >no >> changes need to be made to LP in how the single number vs. ratio >engraving >> is done; LP already does it right. > >The first three of these suggestions make great sense. > >But could we please change #4? > >Note that, today, the expression > > \times 3/5 { c'16 c'16 c'16 c'16 c'16 } > >prints with a lone "5" above the backet. A lone 5 is interpreted as an >abbreviation of "5:4" and not as "5:3". This means that hte output is >not merely typographically incorrect but musically incorrect. > >(The solution in the current implementations of the program is to >override TupletNumber to a fraction, which definitely does work. >However, this means that we have a rare example of a case where Lily's >default behavior is actually musically incorrect.) > >If we're going to change tuplet input and rendering behavior, I think >a better version of #4 might be something like "print, by default, a >lone integer over the bracket, except where a lone integer is >musically incorrect, in which case print the ratio over the bracket". > >See >http://lists.gnu.org/archive/html/lilypond-user/2006-11/msg00514.html > > > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
ungroup a staff
how to temporarily "ungroup" a staff, i.e. remove it from the group it belongs so barlines are not connected.. thanks -- Mehmet Okonsar, pianist-composer-conductor www.okonsar.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Doublequotes in markup?
Popular question nowadays. See "Entering Lyrics" in the manual. /Mats Trevor Bača wrote: Hi, What's the right way to typeset doublequotes in markup? The expression ... \markup { The word "andante" should appear between quotes. } ... doesn't do what I would imagine. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ungroup a staff
That's a tricky question. I don't see any obvious solution. /Mats Mehmet Okonsar wrote: how to temporarily "ungroup" a staff, i.e. remove it from the group it belongs so barlines are not connected.. thanks -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
How to silently change the current duration in music?
How can I change the "current" duration in my music without actually entering something that will take up any beats? IOW we all know that duration is "sticky", it remains at whatever you last set it to so that you do not have to continually type in duration numbers. What command can I enter to "set" the current duration but not actually put anything on the page? I have a feeling it would be with the make-moment command, but I'm not sure how to use it. Since it is syntactically incorrect to code a duration after a variable like this: \myVariable = { a } \myVariable4 I would like to do something like this: \myVariable = { a } make-moment 1 4 \myVariable So that the "a" comes out as a quarter note. Is this possible? If so what is the syntax to silently change the duration without entering any music or rests etc.? Thanks for any help on this. Rick -- View this message in context: http://www.nabble.com/How-to-silently-change-the-current-duration-in-music--tf2867525.html#a8014494 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Doublequotes in markup?
I just learned to input them so: \score { { c' d' e' f' } \header { piece = "Branle \"Quatre Branles\"" opus = "Susato" } } for a title. Maybe you can use it for your purposes. Manuel Am 21/12/2006 um 18:17 schrieb Trevor Bača: Hi, What's the right way to typeset doublequotes in markup? The expression ... \markup { The word "andante" should appear between quotes. } ... doesn't do what I would imagine. -- Trevor Bača [EMAIL PROTECTED] ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
seb-g wrote: > > Hi there, > > I am working on a guitar chord library for lily [1] based on the > \fret-diagram command. > > The generator is written in python. > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > Here is an example of my "non-programmers" approach to forming a chord library: (note this example can only be run in version 2.11.4 or better due to a crash issue) < EXAMPLE BEGIN % NOTE!! this must be run in 2.11.4 or better or it will abend (crash) \version "2.11.2" \include "english.ly" varMyChordLibrary = { % Major seventh chords \tag #'Maj7 { \relative { } } \tag #'Maj7_1 { \relative { } } \tag #'Maj7_2 { \relative { } } % Minor seventh chords \tag #'Min7 { \relative { } } \tag #'Min7_1 { \relative { } } \tag #'Min7_2 { \relative { } } % Dominant seventh chords \tag #'Dom7 { \relative { } } \tag #'Dom7_1 { \relative { } } % Diminished seventh chords \tag #'Dim7 { \relative { } } \tag #'Dim7_1 { \relative { } } } \score { << \new ChordNames \with { chordChanges = ##f chordNameSeparator = \markup { \hspace #0.45 } } { s4 \transpose c a \keepWithTag #'Maj7 \varMyChordLibrary \transpose c b \keepWithTag #'Maj7 \varMyChordLibrary \transpose c c \keepWithTag #'Min7 \varMyChordLibrary \transpose c d \keepWithTag #'Min7 \varMyChordLibrary \transpose c c \keepWithTag #'Dom7 \varMyChordLibrary \transpose c bf \keepWithTag #'Dim7 \varMyChordLibrary } \new Staff \with { \override Stem #'transparent = ##t } { #(set-accidental-style 'forget) \key c \major s4 \transpose c a, \keepWithTag #'Maj7_1 \varMyChordLibrary \transpose c b, \keepWithTag #'Maj7_2 \varMyChordLibrary \transpose c c \keepWithTag #'Min7_1 \varMyChordLibrary \transpose c d \keepWithTag #'Min7_2 \varMyChordLibrary \transpose c c \keepWithTag #'Dom7_1 \varMyChordLibrary \transpose c bf \keepWithTag #'Dim7_1 \varMyChordLibrary } \new FretBoards { \transpose c c, { s4 \transpose c a, \keepWithTag #'Maj7_1 \varMyChordLibrary \transpose c b, \keepWithTag #'Maj7_2 \varMyChordLibrary \transpose c c \keepWithTag #'Min7_1 \varMyChordLibrary \transpose c d \keepWithTag #'Min7_2 \varMyChordLibrary \transpose c c \keepWithTag #'Dom7_1 \varMyChordLibrary \transpose c bf \keepWithTag #'Dim7_1 \varMyChordLibrary } } >> % end music expression \layout { ragged-right = ##t ragged-last = ##t ragged-bottom = ##t ragged-last-bottom = ##t indent = 0.0\in \context { \Score \remove Bar_number_engraver } \context { \Staff \remove Clef_engraver \remove Time_signature_engraver } \context { \Voice \remove New_fingering_engraver } \context { \FretBoards \override FretBoard #'number-type = #'arabic } } % end layout } % end score < EXAMPLE END -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8014665 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to silently change the current duration in music?
The problem is that the approach won't work, since when you do \myVariable = { a } the note will get a duration already when you do the variable assignment, taken from the previous duration used in the file. In general, the "sticky" durations are handled directly when the file is parsed, so the only thing that matters is the order the notes appear in the input file. You may want to use a pure preprocessor like m4 to handle this situation. /Mats Rick Hansen (aka RickH) wrote: How can I change the "current" duration in my music without actually entering something that will take up any beats? IOW we all know that duration is "sticky", it remains at whatever you last set it to so that you do not have to continually type in duration numbers. What command can I enter to "set" the current duration but not actually put anything on the page? I have a feeling it would be with the make-moment command, but I'm not sure how to use it. Since it is syntactically incorrect to code a duration after a variable like this: \myVariable = { a } \myVariable4 I would like to do something like this: \myVariable = { a } make-moment 1 4 \myVariable So that the "a" comes out as a quarter note. Is this possible? If so what is the syntax to silently change the duration without entering any music or rests etc.? Thanks for any help on this. Rick -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Convert-ly crashes
Laura Conrad <[EMAIL PROTECTED]> writes: > I think this might be worth discussing on the users' list. The > contributors are probably all making some assumptions about people's > work habits that doubtless hold true for only some of the population. > So here's the question: What are your actual and theoretical work > habits with respect to using convert-ly and \version strings? Most of the scores I typeset are on the 120-180 pages scale. Here are the rules I follow, regarding behavior/syntax change issues: - the \version number is written once, in a main definition file (I do not use lilypond-book, but run lilypond once for the whole book); - each voice music is entered in its own file, without any "\new SomeThing { }" structure, and without tweaks (ie no \override). Same for Lyrics and figured bass. Rationale: the notation for notes, lyrics, figures is quite stable. If there is a syntax change regarding one of these particular things, I can apply specific conversion rules, and thus avoid undesired effects. Tweaks, time signatures, marks, dynamics, are entered in a global.ily file (one per score), using loads of \tags; - the score structure: \score, \header, \layout, \midi, voice inclusion, etc, is written in a score.ily file (one per score); - all the scores that have to be included in the book (which can be reduced to a single score when I'm typing it) are included in a main .ly file, which also includes library files; - music functions and markup commands for *every* frequently (read: more than once) used things are defined in library files, even functions for replacing \clef, including notes, or defining new staves. Rationale: in case of a syntax or behavior change, the definition of the music function only have to be updated. Or also when a derivated score has to be made, where a different behavior is needed, such as transposing, then setting an option in the command line is enough to generate a score with all voices transposed, with different clefs. The library files also contain the default \paper, \header and \layout blocks. The conversion from 1.6 or 1.8 to 2.2 was painful, because of the many syntax changes there were then (\markup, or << >> vs < > for instance), but also because I had not used good pratics. None of the following version changes, after adopting better coding rules, had been an issue. nicolas ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Doublequotes in markup?
"Trevor Bača" <[EMAIL PROTECTED]> writes: > Hi, > > What's the right way to typeset doublequotes in markup? The expression ... > > \markup { The word "andante" should appear between quotes. } > > > ... doesn't do what I would imagine. \markup { The word "\"andante\"" \italic does appear between quotes. } nicolas ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to silently change the current duration in music?
Would it be possible to change the stencil of a grace note so that it appears invisible and of zero width? Then enter the grace note with the desired "current" duration? It is my understanding that grace notes dont count against my beats but they do appear to reset the current sticky duration, if I could just get one to appear invisible. As a non-programmer I gave m4 a chance earlier but decided I would rather stay at a pure LP level as an end-user looking for creative work-arounds other than m4. Mats Bengtsson-4 wrote: > > The problem is that the approach won't work, since > when you do > > \myVariable = { a } > > the note will get a duration already when you do the > variable assignment, taken from the previous duration > used in the file. In general, the "sticky" durations are > handled directly when the file is parsed, so the only > thing that matters is the order the notes appear in the > input file. > > You may want to use a pure preprocessor like m4 to > handle this situation. > > /Mats > > Rick Hansen (aka RickH) wrote: > >>How can I change the "current" duration in my music without actually entering >>something that will take up any beats? IOW we all know that duration is >>"sticky", it remains at whatever you last set it to so that you do not have >>to continually type in duration numbers. What command can I enter to "set" >>the current duration but not actually put anything on the page? I have a >>feeling it would be with the make-moment command, but I'm not sure how to >>use it. Since it is syntactically incorrect to code a duration after a >>variable like this: >> >>\myVariable = { a } >>\myVariable4 >> >>I would like to do something like this: >> >>\myVariable = { a } >>make-moment 1 4 >>\myVariable >> >>So that the "a" comes out as a quarter note. >> >>Is this possible? If so what is the syntax to silently change the duration >>without entering any music or rests etc.? >> >>Thanks for any help on this. >> >>Rick >> >> >> > > > -- > = > Mats Bengtsson > Signal Processing > Signals, Sensors and Systems > Royal Institute of Technology > SE-100 44 STOCKHOLM > Sweden > Phone: (+46) 8 790 8463 > Fax: (+46) 8 790 7260 > Email: [EMAIL PROTECTED] > WWW: http://www.s3.kth.se/~mabe > = > > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > -- View this message in context: http://www.nabble.com/How-to-silently-change-the-current-duration-in-music--tf2867525.html#a8015171 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
John Mandereau wrote: Frédéric Chiasson wrote: But to avoid repeating \tuplet functions for long passages with the same tuplets, we could admit that kind of syntax : \tuplet 3:2 {c8 d e f g a b c d e d c b a g f e d} without having one long bracket going through all the notes. But I understand that you don't want to change that for programming issues. It is not possible to determine whether "long" tuplets should be splitted or not; how then would you determine whether \tuplet 3:2 {c4 c8 c c4} should be printed as |- 3 | __ | | | | | | | | X X X X or as |- 3 -| |- 3 -| | |\ |\ | | | | | X X X X ? In your example, \set tupletSpannerDuration = #(ly:make-moment 1 4) can already save from typing \tuplet (\times today) a lot of times. Cheers, Yes, I was wondering about this too. It seems to me that either you still need to have \set tupletSpannerDuration or you need to build the tuplet duration into the tuplet function itself, e.g. \tuplet 3:2 2. {c c8 c c4} for John's first example, and \tuplet 3:2 4. {c4 c8 c c4} for the second. But then this is probably making \tuplet a little more complicated than people would like. (unless maybe the duration value is optional and can be omitted?) Just a thought. Brett -- Brett Duncan [EMAIL PROTECTED] "opinio tam stulta non est quam philosophus quidam exprimere non possit" (there is no opinion so absurd that some philosopher will not express it) Marcus Tullius Cicero (106 BC-43 BC) ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Convert-ly crashes
Nicolas Sceaux wrote: The conversion from 1.6 or 1.8 to 2.2 was painful, because of the many syntax changes there were then (\markup, or << >> vs < > for instance), The conversion rules in convert-ly to handle the changes around 1.9.0 have been revised some year ago and should handle the conversion much better now than they did with the convert-ly from early 2.x versions. /Mats ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to make "undisappearable" hyphens?
Citando Eduardo Vieira <[EMAIL PROTECTED]>: Hello list, I'm still puzzled with this problem. Can anybody help me? > We know that in some words an hyphen should be used and as part of lyrics of > a > song it must not disappear. > I'm trying to do that based on a suggestion of an older version of the > manual, > but to no avail: > > %%% Here's the snippet: > > %% I don't want the hyphen "ti" and "frut" to disappear. The others can > disappear. > > \version "2.10.2" > melody = \relative c' { > \clef treble > \key c \major > \time 4/4 > > a4 b c d > } > > text = \lyricmode { > Tut -- > \override LyricHyphen #'minimum-length = #1.0 > \override LyricHyphen #'springs-and-rods = > #ly:hyphen-spanner::set-spacing-rods > > ti -- frut -- ti > } > > \score{ > << >\new Voice = "one" { > \melody >} >\new Lyrics \lyricsto "one" \text > >> > > } > > \paper { ragged-right = ##t } > > %% > > Eduardo > > Have a good day! > ___ > Com o Click21 você tem sempre vantagens! Além do email com 1 Gb, Acelerador, > Blog, > Flog, Games e atendimento 24 horas, voce também pode falar minutos DDD com a > promoção Click 21 Minutos. Quanto mais você navega mais fala DDD. > > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > Have a good day! ___ Neste Fim de Ano, interurbano para cidades próximas ou distantes é com o 21. A Embratel tem tarifas muito baratas de presente para você ligar para quem você gosta e economizar. Faz um 21 e aproveite. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
problems compiling 2.10.2 and 2.10.3
hello list, i can't compile either 2.10.2 or 2.10.3 on my gentoo linux (everything went fine with 2.8.8). the problem is that configure doesn't detect correctly the versions of guile and mftrace. configure stops thus: ERROR: Please install required programs: guile-config >= 1.6.7 (installed: 1.6) mftrace >= 1.1.19 (installed: 1.1) but: [EMAIL PROTECTED] ~ $ guile-config --version guile-config - Guile version 1.6.7 [EMAIL PROTECTED] ~ $ mftrace -v mftrace 1.1.19 i tried to search for differences in the configure scripts between 2.8.8 (which works) and 2.10.3, but IANAP, so i couldn't make much of it. any help greatly appreciated. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: problems compiling 2.10.2 and 2.10.3
luis jure wrote: hello list, i can't compile either 2.10.2 or 2.10.3 on my gentoo linux (everything went fine with 2.8.8). the problem is that configure doesn't detect correctly the versions of guile and mftrace. configure stops thus: ERROR: Please install required programs: guile-config >= 1.6.7 (installed: 1.6) mftrace >= 1.1.19 (installed: 1.1) but: [EMAIL PROTECTED] ~ $ guile-config --version guile-config - Guile version 1.6.7 [EMAIL PROTECTED] ~ $ mftrace -v mftrace 1.1.19 i tried to search for differences in the configure scripts between 2.8.8 (which works) and 2.10.3, but IANAP, so i couldn't make much of it. I found this problem in my attempt to upgrade the lilypond available with Fedora 5 to 2.10.2. It seems there was a change in the configure script between 2.10.0 and 2.10.1. It's the same line of code that appears in several places, which you can see by diffing the two configure scripts. I don't know what the purpose of the change was meant to be, but I think it broke detection of version information of dependencies. Quentin ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
On Thu, Dec 21, 2006 at 09:05:20AM -0800, [EMAIL PROTECTED] wrote: > Yes, as Mats said please check out the FretBoards context, I sponsored it! > > It will allow you to transpose fret diagrams and enter fret diagrams using > standard lilypond notes, it will auto detect the strings for minimal hand > stretch and position shifts, etc. recognizes all the base class properties > for staff alignment, duration, etc. > > Building a chord library upon the foundation of the FretBoards context > should be a snap because most of the work is done for you already. I'm > still trying different approaches to my own chord library, right now I'm > leaning toward using \tag where some note clusters give the chord name and > others in each collection give the various fret fingerings, then I just > extract the notes I want into the music using \keepWithTag either in > FretBoards or ChordNames context. My library only needs all the chords > stated in the key of C then I use \transpose in the piece proper to move the > library chords up/down the neck to different root notes. Yes I saw it but I didn't find so much doc on it (maybe my fault ;-/ ). Nevermind, I would be glad to use the FretBoards context to build a chord lib. Please note I originaly started to write thios lib to save (?!?!?) time when facing similar chords. I will have a closer look on it. On an other hand, I am still facing to a human readable naming convention as long as names only accept letters. Cheers -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
On Thu, Dec 21, 2006 at 12:45:52PM -0800, [EMAIL PROTECTED] wrote: > > Here is an example of my "non-programmers" approach to forming a chord > library: (note this example can only be run in version 2.11.4 or better due > to a crash issue) Ok I will install 2.11.4. I am still old fashion with 2.11.2 :-). This is a GREAT idea as long as tags can include any chars. Thanks a lot. -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
seb-g wrote: > > On Thu, Dec 21, 2006 at 09:05:20AM -0800, [EMAIL PROTECTED] > wrote: >> Yes, as Mats said please check out the FretBoards context, I sponsored >> it! >> >> It will allow you to transpose fret diagrams and enter fret diagrams >> using >> standard lilypond notes, it will auto detect the strings for minimal hand >> stretch and position shifts, etc. recognizes all the base class >> properties >> for staff alignment, duration, etc. >> >> Building a chord library upon the foundation of the FretBoards context >> should be a snap because most of the work is done for you already. I'm >> still trying different approaches to my own chord library, right now I'm >> leaning toward using \tag where some note clusters give the chord name >> and >> others in each collection give the various fret fingerings, then I just >> extract the notes I want into the music using \keepWithTag either in >> FretBoards or ChordNames context. My library only needs all the chords >> stated in the key of C then I use \transpose in the piece proper to move >> the >> library chords up/down the neck to different root notes. > > Yes I saw it but I didn't find so much doc on it (maybe my fault ;-/ ). > Nevermind, I would be glad to use the FretBoards context to build a > chord lib. > > Please note I originaly started to write thios lib to save (?!?!?) time > when facing similar chords. > > I will have a closer look on it. > > On an other hand, I am still facing to a human readable naming > convention as long as names only accept letters. > > Cheers > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > See my second post for how to use numbers in the chord names of the library. I would like to not use the \tag solution, but I have to first learn how to write a define-music-function then the whole library would be in a function with a giant stream of "if statements" to generate the desired library entry based on a string name in the parameter, along with root and duration. I'm not much of a programmer so I am at a great disadvantage with define-music-function usage. -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8016584 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
seb-g wrote: > > On Thu, Dec 21, 2006 at 12:45:52PM -0800, [EMAIL PROTECTED] > wrote: >> >> Here is an example of my "non-programmers" approach to forming a chord >> library: (note this example can only be run in version 2.11.4 or better >> due >> to a crash issue) > > Ok I will install 2.11.4. I am still old fashion with 2.11.2 :-). > > This is a GREAT idea as long as tags can include any chars. > > Thanks a lot. > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > A define-music-function would be better than tags, then the whole library would be inside a function where you just specify the chord name as a string parameter then have a giant IF statement to generate the named chord, (root and duration would also be function parameters). Like this: \myChordLibrary c, "Maj7_2", 4 The above would generate a chord with a transpose root of c, with the inversion of "Maj7_2" (version 2 of a maj7 chord), for a quarter note duration. Do you know how to use define-music-function (I dont)? Would this be a hard function to write? Thanks Rick -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8016644 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
My first define-music-function, I'm trying, need help
The simple substitution example below should be pretty easy, but I'm "in a pickle", can someone show me how to replace the note name in the transpose statement with the note specified on the function call (parameter called "root")? But it gets the following error: :2:13: error: syntax error, unexpected MUSIC_IDENTIFIER, expecting NOTENAME_PITCH or TONICNAME_PITCH \transpose c \lilyvartmpb { \relative { } } EXAMPLE BEGIN \version "2.11.4" \include "english.ly" myChord = #(define-music-function (parser location root) (ly:music?) #{ \transpose c $root { \relative { } } #}) \new Staff { % An A chord %\transpose c a { \relative { } } % Theoretically, this should also generate "an A chord" just like above \myChord a } EXAMPLE END -- View this message in context: http://www.nabble.com/My-first-define-music-function%2C-I%27m-trying%2C-need-help-tf2868174.html#a8016450 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
On Thu, Dec 21, 2006 at 03:05:25PM -0800, [EMAIL PROTECTED] wrote: > A define-music-function would be better than tags, then the whole library > would be inside a function where you just specify the chord name as a string > parameter then have a giant IF statement to generate the named chord, (root > and duration would also be function parameters). Indeed > > Like this: > > \myChordLibrary c, "Maj7_2", 4 > > The above would generate a chord with a transpose root of c, with the > inversion of "Maj7_2" (version 2 of a maj7 chord), for a quarter note > duration. > > Do you know how to use define-music-function (I dont)? Would this be a hard > function to write? an unchecked stuf may be: myChord = #(define-music-function (parser location root chord duration) (ly:music? string integer) #{ \transpose c $root \keepWithTag $chord \varMyChordLibrary $duration #}) But obviously it won't work ;-) I tried to play with \displayMusic and (display-scheme-music ...) functions. It helps a lot. Just let me some time and I will have a look ater new year's day. -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
seb-g wrote: > > On Thu, Dec 21, 2006 at 03:05:25PM -0800, [EMAIL PROTECTED] > wrote: >> A define-music-function would be better than tags, then the whole library >> would be inside a function where you just specify the chord name as a >> string >> parameter then have a giant IF statement to generate the named chord, >> (root >> and duration would also be function parameters). > > Indeed > >> >> Like this: >> >> \myChordLibrary c, "Maj7_2", 4 >> >> The above would generate a chord with a transpose root of c, with the >> inversion of "Maj7_2" (version 2 of a maj7 chord), for a quarter note >> duration. >> >> Do you know how to use define-music-function (I dont)? Would this be a >> hard >> function to write? > > > an unchecked stuf may be: > > > myChord = #(define-music-function (parser location root chord > duration) (ly:music? string integer) > #{ > \transpose c $root \keepWithTag $chord \varMyChordLibrary > $duration > #}) > > > But obviously it won't work ;-) > > I tried to play with \displayMusic and (display-scheme-music ...) > functions. It helps a lot. > > Just let me some time and I will have a look ater new year's day. > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > Yes, I was thinking \varMyChordLibrary would not be needed in this case, all the chords would simply come out of the function each embraced by an IF statement to match the input parameter (like a giant CASE selection). Because I know from past experience that a duration number cannot follow a variable name to be recognized. The duration would have to be generated along with the music. -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8017012 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
No parenthesises
Hello, I tried for the first time to use parenthesises on notes but it doesn't work. Am I doing something wrong? \version "2.11.3" \relative c'{ \parenthesize b1 } Frédéric ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
On Thu, Dec 21, 2006 at 03:41:19PM -0800, [EMAIL PROTECTED] wrote: > > Yes, I was thinking \varMyChordLibrary would not be needed in this case, all > the chords would simply come out of the function each embraced by an IF > statement to match the input parameter (like a giant CASE selection). > Because I know from past experience that a duration number cannot follow a > variable name to be recognized. The duration would have to be generated > along with the music. indeed, you have to set the duration to each note of the chord one after the other. maybe a simple syntax would be: \function a4 #'chord_type then extract both note duration and pitch from a4 ly:music then use them for transpose and duration setting. playing arround with \displayMusic and (display-scheme-music ...) help a lot. -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to make "undisappearable" hyphens?
Citando Laura Conrad <[EMAIL PROTECTED]>: > > "Eduardo" == Eduardo Vieira <[EMAIL PROTECTED]> writes: > > >> %% I don't want the hyphen "ti" and "frut" to disappear. The others > can > >> disappear. > > Why not just: > > text = \lyricmode { > Tut -- ti- -- frut -- ti > } > Because the hyphen will not be nicely centered in many cases. ___ Neste Fim de Ano, interurbano para cidades próximas ou distantes é com o 21. A Embratel tem tarifas muito baratas de presente para você ligar para quem você gosta e economizar. Faz um 21 e aproveite. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
On Thu, Dec 21, 2006 at 12:45:52PM -0800, [EMAIL PROTECTED] wrote: > Here is an example of my "non-programmers" approach to forming a chord > library: (note this example can only be run in version 2.11.4 or better due > to a crash issue) With this solution, fingering and notation will cause a problem. A basic C Major chord might be strung like: C Major x o o +=+=+=+=+=+ | | | | X | +-+-+-+-+-+ | | X | | | +-+-+-+-+-+ | X | | | | +-+-+-+-+-+ 3 2 1 So like: \tag #'M {\relative c { < c\5-3 e\4-2 g\3 c\2-1 e\1> } } And a D Major can be see as a 2nd fret barre of the C Major: D Major x +-+-+-+-+-+ XXX II +-+-+-+-+-+ | | | | X | +-+-+-+-+-+ | | X | | | +-+-+-+-+-+ | X | | | | +-+-+-+-+-+ 4 3 1 2 1 As you can see the fingering changes from a chord to its barre declinaison. Then we should define the base (the C form) like: \tag #'M_b {\relative c { < c\5-4 e-3 g-1 c-2 e-1> } } "_b" would stands for barre to make it work with the barre form (even if the barre is not shown on the diagram). Maybe the Fretboard context could detect if a finger is used on several strings and then show a barre. Is it possible to define a fingering like: \tag #'M {\relative c { < c\5-3:4 e\4-2:3 g\3-o:1 c\2-1:2 e\1-o:1> } } Which could be interpreted as: - use 3, 2, o, 1, o fingers if there is an open string (o would stand for "open string") - use 4, 3, 1, 2, 1 fingers if there is no open string this would factorise previous declarations in one. But maybe the "-x:y" notation is confusing? Then we would need to define chords twice. In an other hand, the ChordNames would name chords as: "C add8 add10" and "D add8 add10". This is due to the C and E repetition one octave higer (1st and 2nd string). For same reason if you string C/E (add the open 6th string) you will get: "E b6/b10/addb13/add15" Maybe this is parametable ? cheers -- Sebastien Gross ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: no cautionary clef
>> how can I make no cautionary clefs? > You mean the small clef at the end of the line if the clef change > happens at a line break, right? Try > > \set Staff.explicitClefVisibility = #end-of-line-invisible Well, for no cautionary time signatures (at the end of a line) I've used \override Score.TimeSignature #'break-visibility = #end-of-line-invisible But to get no cautionary key signature at the end of a line (when the key signature changes on the following line), I wasn't able to figure out how to accomplish that at the point (some time ago) when I would have preferred to do without the cautionary key-change indication. How is that done? Thanks. -- Tom --- Mats Bengtsson wrote: You mean the small clef at the end of the line if the clef change happens at a line break, right? Try \set Staff.explicitClefVisibility = #end-of-line-invisible /Mats Mehmet Okonsar wrote: > how can I make no cautionary clefs? > > I tried without success: > > \override Staff.Clef #'transparent = ##t > and > \set Staff.forceClef = ##f > > thanks.. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: ungroup a staff
can we make the barline running between and connecting the staves disappear? can we also make the "left barline" transparent at the start of systems? On Thursday 21 December 2006 22:27, Mats Bengtsson wrote: > That's a tricky question. I don't see any obvious solution. > > /Mats > > Mehmet Okonsar wrote: > >how to temporarily "ungroup" a staff, i.e. remove it from the group it > > belongs so barlines are not connected.. > > > >thanks -- Mehmet Okonsar, pianist-composer-conductor www.okonsar.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Constructive Criticism and a Question
> . . . either you still need to have \set tupletSpannerDuration > or you need to build the tuplet duration into the tuplet function > itself, e.g. \tuplet 3:2 2. {c c8 c c4} for John's first example, > and \tuplet 3:2 4. {c4 c8 c c4} for the second. . . Yes. Up until this point, the argument has been to replace \times with \tuplet for no functional reason whatsoever: the two are functionally absolutely identical. But being able to specify the tuplet duration as a second argument would provide a functional reason for creating a \tuplet keyword, and the addition of the tuplet-duration would be extremely simple and enormously helpful for specifying exactly what the user intended. Since the duration would be the second of three arguments, it could not be optional, but that's not a problem. I think (?) this would have the side effect that \tuplet 3:2 2. would be the same as \tuplet 6:4 2. or \tuplet 9:6 2., which would mean that it would always be OK (even if not required) to express the ratio in reduced form (3:2 here). -- Tom --- John Mandereau wrote: > Frédéric Chiasson wrote: > >> But to avoid repeating \tuplet functions for long passages with the >> same tuplets, we could admit that kind of syntax : >> >> \tuplet 3:2 {c8 d e f g a b c d e d c b a g f e d} >> >> without having one long bracket going through all the notes. But I >> understand that you don't want to change that for programming issues. >> > > It is not possible to determine whether "long" tuplets should be > splitted or not; how then would you determine whether > > \tuplet 3:2 {c4 c8 c c4} > > should be printed as > > |- 3 | > __ > | | | | > | | | | > X X X X > > or as > > |- 3 -| |- 3 -| > > | |\ |\ | > | | | | > X X X X > > ? > > In your example, > > \set tupletSpannerDuration = #(ly:make-moment 1 4) > > can already save from typing \tuplet (\times today) a lot of times. > > Cheers, > Yes, I was wondering about this too. It seems to me that either you still need to have \set tupletSpannerDuration or you need to build the tuplet duration into the tuplet function itself, e.g. \tuplet 3:2 2. {c c8 c c4} for John's first example, and \tuplet 3:2 4. {c4 c8 c c4} for the second. But then this is probably making \tuplet a little more complicated than people would like. (unless maybe the duration value is optional and can be omitted?) Just a thought. Brett ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chord library
For ChordNames, to eliminate all the "add" whatevers, I use an exceptions list which is documented, or search the archive for "jazzychord". I've had my exceptions list for some time now and just use it routinely, there are also cases where I'll call a chord a 6th vs a 13th, a sus4th an 11th, a sus2 a 9th, etc and my exceptions list can override what LP comes up with for a given note stack, depending on the context of the music. If a specific string is named then FretBoards context should select the note on that string, otherwise it only expects the bass string to be named and it will determine the fretting dots for the other notes using minimal, (humanly do-able), hand stretch on the upper strings. I have not to date found a chord that I could not make come out properly. As for finger numbers and barres... I generally dont bother depicting the barre because given enough dots it's easy to figure that out, I'm not sure that barres even work on FretBoards context. Your D chord example would just show all dots on what were the open strings of the C chord and yes you would have to redefine the finger numbers (if you are using finger numbers). I generally dont bother with finger numbers or barre depictions on the fretboards, just the dots. Short of any change to LP I suppose the barred versions (in a library) could just be defined separately with different fingers than when the chord is moved out of open position. But, since most chords dont involve open strings, I would probably make the non-barred chords the exceptions with a different name maybe "_o" for open position, and all others the rule because they are moveable without refingering. Maybe a future sponsor can request barre symbols be added to FretBoards, that should be easy as the markup already supports it, it's just a matter of the music (chord) expression passing it through where it is coded. As for alternate fingerings, again I would have the presence of any OPEN string in the chord trigger the use of the alternative finger numbers, as opposed to looking for the presence of a barre which the user may not have even coded. (IOW the presence of an open string means that the guitar nut has become the barre so use the alternate finger numbers) Rick seb-g wrote: > > On Thu, Dec 21, 2006 at 12:45:52PM -0800, [EMAIL PROTECTED] > wrote: >> Here is an example of my "non-programmers" approach to forming a chord >> library: (note this example can only be run in version 2.11.4 or better >> due >> to a crash issue) > > With this solution, fingering and notation will cause a problem. > > A basic C Major chord might be strung like: > > C Major > x o o > +=+=+=+=+=+ > | | | | X | > +-+-+-+-+-+ > | | X | | | > +-+-+-+-+-+ > | X | | | | > +-+-+-+-+-+ > 3 2 1 > > So like: \tag #'M {\relative c { < c\5-3 e\4-2 g\3 c\2-1 e\1> } } > > And a D Major can be see as a 2nd fret barre of the C Major: > > D Major > x > +-+-+-+-+-+ > XXX II > +-+-+-+-+-+ > | | | | X | > +-+-+-+-+-+ > | | X | | | > +-+-+-+-+-+ > | X | | | | > +-+-+-+-+-+ > 4 3 1 2 1 > > As you can see the fingering changes from a chord to its barre > declinaison. > > Then we should define the base (the C form) like: > \tag #'M_b {\relative c { < c\5-4 e-3 g-1 c-2 e-1> } } > > "_b" would stands for barre > > to make it work with the barre form (even if the barre is not shown on > the diagram). > Maybe the Fretboard context could detect if a finger is used on several > strings and then show a barre. > > Is it possible to define a fingering like: > \tag #'M {\relative c { < c\5-3:4 e\4-2:3 g\3-o:1 c\2-1:2 e\1-o:1> } } > Which could be interpreted as: > - use 3, 2, o, 1, o fingers if there is an open string (o would > stand for "open string") > - use 4, 3, 1, 2, 1 fingers if there is no open string > this would factorise previous declarations in one. > But maybe the "-x:y" notation is confusing? > > Then we would need to define chords twice. > > In an other hand, the ChordNames would name chords as: > "C add8 add10" and "D add8 add10". This is due to the C and E repetition > one octave higer (1st and 2nd string). > For same reason if you string C/E (add the open 6th string) you will > get: "E b6/b10/addb13/add15" > Maybe this is parametable ? > > cheers > > -- > Sebastien Gross > > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > -- View this message in context: http://www.nabble.com/Chord-library-tf2866120.html#a8019913 Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user