[tablatures] Fwd: Take 1 |
[ Thread Index | Date Index | More lilynet.net/tablatures Archives ]
For archival purposes, I am forwarding to the tablatures list some previous discussions that may have taken place privately or on the LilyPond-user mailing list. - Valentin Forwarded conversation Subject: Take 1 ------------------------ From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/24 To: Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Marc Hohl <marc@xxxxxxxxxx>, "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Hello all, At long last, here is the first set of 'requests' for advance Guitar Tab implementation in LilyPond. See the attached *.pdf. First, I must apologize for taking so long to get around to this. Like many of you, I struggle to find balance between my family and civic responsibilities on the one hand and my work and passions on the other. The focus of this first set is bends. I've tried to be as detailed as possible in the notes. If anyone has any questions, please feel free. Also, these suggestions are all open for discussion. I can offer guidance since I spend my professional life doing this, but I'm sure many will have good questions regarding these suggestions. At this point, questions of syntax are completely open (although, I feel this will probably be the easiest parameter to adjust). Any and all feedback is welcome. I'll try to respond to questions/discussion in a timely manner. David ---------- From: Grammostola Rosea <rosea.grammostola@xxxxxxxxx> Date: 2009/6/24 To: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Cc: Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Marc Hohl <marc@xxxxxxxxxx>, "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Thanks David. Looks decent! :) I hope it can be implemented in Lilypond soon. Regards, \r ---------- From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/24 To: Marc Hohl <marc@xxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, "Carl D. Sorensen" <c_sorensen@xxxxxxx> Hi Marc, Marc Hohl wrote: > > David Stocker schrieb: Hello David, > > great job! Very detailed, so this is a good starting point. > Just one question: in example j, you use slurs arching under - why not over? The reason the pointed slurs arch under in example j is the conventional grace note (with the stem). In regular notation, acciacaturas are alway upstem and the slur connecting them to the regular note arches under. ....which leads to an important point: these should be the default values (\stemNeutral, \oneVoice, etc.) and should automatically self-adjust under the \voiceOne or \stemUp or similar commands. For voiceOne/stemUp, the pointed slurs arch over and for voiceTwo/stemDown, they arch under. At some point, I'll do some examples of bends in /divisi/ notation, so you can see the way the pointed slurs and grace notes behave. > > Greetings > > Marc Best, David ---------- From: Carl D. Sorensen <c_sorensen@xxxxxxx> Date: 2009/6/24 To: David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Marc Hohl <marc@xxxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Thanks for the input, David. I hope it will be helpful for those who are implementing tablature (primarily Marc Hohl, right now). I have a couple of questions/comments. First, we are currently working on a parentheses grob that will use a vertical slur to draw parentheses. The application creating this is a chord name, where it will surround stacked modifiers. It should be readily applicable to tablature. Second, I wanted to ask about using slurs for bends. In your sample sheet, you use curved lines, which are uniform thickness. Slurs, on the other hand, are variable thickness (thin at the ends, thick in the middle). Do you want the bends to have uniform thickness or variable thickness? In general, syntax should not be requested by users, but created by developers. Features should be requested by users, which is what you're currently doing. I just wanted to make this clear to others. Thanks, Carl ---------- From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/24 To: "Carl D. Sorensen" <c_sorensen@xxxxxxx> Cc: Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Marc Hohl <marc@xxxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> And thanks to Marc for volunteering his time and efforts. As things get implemented, I'll be happy to help with the documentation. That would solve the problem. The TAB bend lines with arrowheads should be of a uniform thickness, unlike the curves used for slurs. Thanks for clarifying. > > Thanks, > > Carl > David > > > ---------- From: Grammostola Rosea <rosea.grammostola@xxxxxxxxx> Date: 2009/6/24 To: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Cc: "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Marc Hohl <marc@xxxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Are there people who like to help Marc if that's necessary? Regards, \r ---------- From: Marc Hohl <marc@xxxxxxxxxx> Date: 2009/6/29 To: "Carl D. Sorensen" <c_sorensen@xxxxxxx> Cc: David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Carl D. Sorensen schrieb: > > [...] Concerning the syntax, I think bends should be called by commands like d4 \bendUp es \releaseBend d r % David's example (a) d4 \bendUp e \bendUp fis2 % example (e) lilypond should calculate the amount in whole steps and place the right number accordingly. For grace notes, I think it would be the best to use the \grace command, e.g. \grace d \bendUp e2 r2 % example (g) \grace d \preBend e r2 % example (i) (in the second case, the use of \preBend should force lilypond to put the grace notes in parentheses automatically). I'm not sure about a clever way to code unison bends as in example (c). Any suggestions/proposals? Marc ---------- From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/29 To: Marc Hohl <marc@xxxxxxxxxx> Cc: "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> In the example I sent, all of the notes were down-stems. It probably goes without saying, but for upstem notes, the pointed slurs arch under in \oneVoice situations. In \voiceOne through \voiceFour scenarios, the pointed slurs arch in the direction of the stems. When I work up the next example, I'll include all the details for that as well as divisi situations and double stop bends. Let us know when you have something to test. This is going to be neat. David ---------- From: Carl D. Sorensen <c_sorensen@xxxxxxx> Date: 2009/6/29 To: Marc Hohl <marc@xxxxxxxxxx> Cc: David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Remember, syntax comes last. The first step is to develop a music function that will create the output you want. Then, if desired, you create the syntax that you want. If the syntax you want doesn't work with music functions or markup functions, then you will need to modify the parser. I've never modified the parser, so I don't know how big a job that is. If you're going to modify the parser, then you may wish to create a bend_engraver (you may be able to do that by copying the slur_engraver and modifying it). I will be of limited help if you want to take the bend_engraver route. But the bend_engraver route may be the best way to go, long term. If I were working this project I'd probably start with a music function something like \bendNotes{d4 ees d} \bendNotes{d4 e fis2} Example c could be coded in music functions as \bendNotes{<d e>2 e} Similarly, the grace notes can just be included as part of the argument to \bendNotes, and so no special syntax is required to handle grace notes. HTH, Carl ---------- From: Andrew Wilson <andrew@xxxxxxxxxxxxx> Date: 2009/6/29 To: Marc Hohl <marc@xxxxxxxxxx> Cc: "Carl D. Sorensen" <c_sorensen@xxxxxxx>, David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> 2009/6/29 Marc Hohl <marc@xxxxxxxxxx>: > Carl D. Sorensen schrieb: What about quarter tone bends? I don't think these sytnaxes handles those. andrew ---------- From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/29 To: Andrew Wilson <andrew@xxxxxxxxxxxxx> Cc: Marc Hohl <marc@xxxxxxxxxx>, "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> There are 2 different notations in modern usage for quarter-tone bends and which one you used depends on the musical context. I'll try to include examples of quarter-tone bends with explanations in the next batch of visuals. David > > ---------- From: Marc Hohl <marc@xxxxxxxxxx> Date: 2009/6/29 To: "Carl D. Sorensen" <c_sorensen@xxxxxxx> Cc: David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Carl D. Sorensen schrieb: Hm, I think the syntax is somehow necessary in the developing process. As far as I can see, we will need a new engraver, (a task which is beyond my knowledge, but as far as I remember, there are some c++ experts among the tablature group). Thinking about the syntax, we can figure out how many new commands are needed and how they should behave in different situations. All the bend functions or commands should fit into the standard lilypond syntax, so my aim was to emphasize that the bend command should be placed between the concerning notes. Ok, the number of different music functions is equal to the number of new lilypond commands, so probably it will be the best way to concentrate at those functions and build a new engraver later, but in my opinion, this step is important. Marc ---------- From: David Stocker <dstocker@xxxxxxxxxxxxxxxxx> Date: 2009/6/29 To: Marc Hohl <marc@xxxxxxxxxx> Cc: "Carl D. Sorensen" <c_sorensen@xxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Just some forward-thinking, I know we don't want to get too into these questions right now, but: In LilyPond, other ways of connecting notes to each other are (mostly) done without commands that are worded like \bendUp and so forth. I'm thinking of ties and slurs here. Since slurs are probably the most analogous to bends here, might the syntax look something like: d ^ e or even: d < e > d I know that in the second example, the <> construct is already in use for chords. Might we instead use: d \< e \> d or even d \^ e \^ d Just something to file away for later, perhaps. I'm sure that with the thoughtful and intelligent folks on the list working on these issues, whatever they settle on will be more than satisfactory. David ---------- From: Carl D. Sorensen <c_sorensen@xxxxxxx> Date: 2009/6/29 To: Marc Hohl <marc@xxxxxxxxxx> Cc: David Stocker <dstocker@xxxxxxxxxxxxxxxxx>, Grammostola Rosea <rosea.grammostola@xxxxxxxxx>, Andrew Wilson <andrew@xxxxxxxxxxxxx>, Viktor Mastoridis <viktor@xxxxxxxxxxxxxxxx>, "David B. Stocker (dstocker@xxxxxxxxxxxxxxxxx)" <dstocker@xxxxxxxxxxxx>, Tony Willoughby <tonyw@xxxxxxxxx>, Valentin Villenave <v.villenave@xxxxxxxxx>, Julian Casadesus <julian@xxxxxxxxxxxxxxxx> Yes, syntax will be necessary when you want to move to native LilyPond syntax from LilyPond extensions available through the use of music functions. But if you can first figure out how to get the output you want within the existing syntax, then we know that we have the capability in LilyPond and we can extend the syntax as needed. Behavior in different situations can be developed without ever thinking about syntax. Actually, I think that the bend command has more in common with slurs and beams, so if I were doing a real parser rewrite, I'd want to have some kind of enclosing element -- it would come after the first note of the bend and after the last note of the bend. I don't know what the exact syntax would be; there are no unused enclosing elements. David has proposed \< and \> as possibilities. I suspect they're not right yet. Once the functionality is created, we can hash out syntax proposals on -devel. But I would expect (again, drawing from similarity with slurs) that \bendUp would be used not to create a bend, but to specify the direction of a bend. I agree that the syntax will eventually be important. And if it's decided to do the engraver and create the new syntax, it'll need to be thought through carefully. But it's seldom the best way to get *started*. Thanks again for all your work. Carl -- Regards, Valentin
Attachment:
guitar-tab_1.pdf
Description: Adobe PDF document
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |