Fwd: PATCH: Improved tablature support

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Fwd: PATCH: Improved tablature support

Valentin Villenave
Administrator
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: PATCH: Improved tablature support
------------------------

From: Carl Sorensen <[hidden email]>
Date: 2009/7/16
To: Lily-Devel List <[hidden email]>


Marc Hohl has completed a patch for improved tablature support.  It is
available for review at:

http://codereview.appspot.com/95059

Please review and comment.

Thanks,

Carl



_______________________________________________
lilypond-devel mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-devel

----------
From: Jonathan Kulp <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


I like the features, especially the "moderntab" clef. Is it best for
"numbersOnly" to be default? I'm not saying it isn't best, I really
don't know. I'm a classical guitarist and have never dealt with
tablature except when working on the fretted-strings.itely and
recently when doing another project. Is it most common for tab not to
have any rhythmic indication?

I think the patch set should include one for fretted-strings.itely
showing the tab clef and whatever other features should be shown, as
well as a brief paragraph about tab conventions.

Great work, though. thanks. :)

Jon
--
Jonathan Kulp
http://www.jonathankulp.com

Having been erased,
The document you're seeking
Must now be retyped.

--a Haiku error message from GNU
----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/17
To: Jonathan Kulp <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


If tab is in a staffgroup with traditional notation, then no rhythmic
indication is given, because the rhythm comes from the traditional notation.

If tab is in a staff by itself, it has rhythmic indication, and that is when
\tabFullTab would be used to include stems and flags.

The folks who care about tab (which do not include me, BTW) think that
numbers only should be the default.
Yes, we need documentation for the new work.  However, according to
established policy (by Graham?), developers are not required to add
documentation information.  Documentation editors add documentation, using
regtests as their templates.

So, while I asked Marc to provide documentation, I didn't require it.  I
did, however, require regtests.

As soon as we get the patch applied, we can ask one of the people who is
clamoring for improved tab support on -user to get involved in writing the
documentation for it, working with you to get it in proper form.

Thanks for your review,

Carl

----------
From: Jonathan Kulp <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Thanks for the explanation. That's good enough for me. :) Yes, I saw
these and looked through them.  They should be good for the docs.
Excellent.  I'm happy to put it into texinfo format and make the
patch, but I'd prefer that actual tablature users write the text.

Thanks,
----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>, Lily-Devel List
<[hidden email]>, Marc Hohl <[hidden email]>


Marc,

Here are some comments.

1) All regression tests should be \version "2.13.4" -- I'll fix that.

2) Your regression test for the modernTab clef:
 Doc header should say "four- to seven- stringed instruments", which means
instruments having four to seven strings.  "four to seven stringed
instruments" means four to seven instruments having strings.  Isn't english
fun?
 You should demonstrate in the regtest that it works for four strings and
seven strings, and that it works with various staff sizes.  You may want two
different regtests -- one that shows variations in string numbers and one
that shows variation in sizes.

3) Is it necessary (or desirable) to have both \deadNote and
\deadNoteOn..\deadNoteOff?  Unless a whole piece is to be written in
DeadNotes, I can't imagine that it's better to write

\deadNoteOn e e deadNoteOff

than

\deadNotes{e e}.

If there's no value to the On..Off pairs, then it's probably best to
eliminate them.  But if there is value, we can keep them.  And I'm not the
judge of value.  I'm just asking the question.


4) Formatting nit on scm/tablature.scm

line 125-128: I think it would look better to put all the arguments to
ly:stencil-combine-at-edge on line 124.

line 129-131:  I would like it better to have the last three arguments to
the first ly:stencil-combine-at-edge call on line 125, nested to the same
depth as the inner (ly:stencil-combine-at-edge call.

Other than that, things look good.

Oh, BTW, Thomas Morgan is currently working on a new Parenthesize markup
command that will be better than the current parentheses; it will draw the
parentheses as slurs.  This may be something you want to use in the future.

----------
From: Jonathan Kulp <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


I've been looking more carefully at the regtests and think that
the texidoc headers might be enough to get started on the new
parts of fretted-strings.itely.  Would you like me to prepare a
patch based on these so that it can be applied at the same time as
the program code, or should we just wait?
----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/17
To: Jonathan Kulp <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Let's wait a bit -- I'd like to see if we can get somebody in the tablature
group to do it.  If they don't bite, then we'll have you do it.

Carl

----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: Of course I can write a documentation, but I
had the same idea as Carl -
there is a group of people interested in tablature features, and when the
patch is applied and the features are availabe, I'll ask them if someone
wants to work on the documentation.

Marc
----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: Thank you! Ah, I see. Yeah, english *is* fun,
but sometimes I just stumble through
half-finished sentences in despite search of a missing word, but at least,
the work on lilypond seems to improve my english a bit. Ok, I will
provide additional regtests. Hm, I introduced the ..On/..Off pairs
first, because this syntax seemed to be
"lilypondish"  -  and easier to read, especially if there are long
passages played
palm mute- or dead note-style. The latter construct looks more like a
programming language to me (yes, in fact it is a programming language, but
as there are many users not familiar with computer programming, we should
avoid this in general - but this is rather philosophical here).

On the other hand, for a single dead note
\deadNoteOn e \DeadNoteOff
is way too complicated, and furthermore
< c \deadNoteOn e \deadNoteOff g > won't work, so there is need for the
second syntax. I don't want to blame others here, but this piece of
code was 1:1 copied from Neil's mail.
Shall I reformat it and send a new patch, or are there other
possibilities to correct it? Great! This opens the possibilitiy of
drawing parentheses around chords, isn't it?

Thank you.


Marc
----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: Here it is - gzipped for proper line endings.
The first file, modern-tab-clef.ly
shows tablature for four and seven strings, while the second,
modern-tab-claf-scaled.ly
demonstrates the scaling.

Marc

_______________________________________________
lilypond-devel mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-devel


----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/17
To: Marc Hohl <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


There are actually two different "lilypondish" constructs.  One is a
setting, the other is a function.

For example, we do \relative c' {...} and \transpose e f { ... } which are
exactly equivalent to \deadNote { ... }.

But we also have lots of settings.
Right, so we *must* have the function mode.  Do we need the setting mode as
well?  I don't feel strongly about eliminating it, but I don't feel strongly
about keeping it either.  I trust your judgment.

However, now that I think about it, for the function call, I would prefer
the name \deadNotes (plural) instead of \deadNote (singular), because it can
take multiple notes in its argument.
This kind of judgment is somewhat subjective.  You can leave it as is, or
you can reformat it.  If you reformat it, please send a new patch.
It will, but it may yet have its own problems.  It will parenthesize any
stencil.  I don't know if the set of noteheads forms its own stencil
(separate from the stem) or not.  If it does, we'll be home free on
parenthesizing chords.  If not, we'll still have to figure out how to get
the set of noteheads for parenthesizing.

Thanks,

----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/17
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: I prefer to offer both variants. Yes, I had
that before, but I decided to remove the plural s, because
in chord constructs, it works only on the next note, and in normal
contexts,
c d \deadNote e f
influences only the e (\deadNotes would imply to influence e and f, in
my opinion).
When one uses { }, \deadNote works on a group of notes, so the meaning here
is clear. So personnally, I wouldn't change it ... If this is the only
thing to change, I will leave it as is until I had to apply
changes (for parentheses or additional functions) - not because I'm
lasy, but because of my incomplete knowledge of git (it is still a kind
of a fight each time) Ok, let's wait and see.

Marc
----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/18
To: Marc Hohl <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Thinking of similar functions, like \relative and \harmonic, perhaps we
should just name the function to \dead.  Then we'd have

<c \dead e g>4 or \dead {c d e f g a b}

This also brings more distinction between \deadNotesOn and \dead; one of my
concerns was potential confusion between \deadNote and \deadNotesOn.  What
do you think?

----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/20
To: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: Hm, sounds kind of morbid to me, calling a note
"dead", but since
I am not a native english speaker, I cannot judge this from a neutral
point of view.
Do you think that there will arise big problems with these commands?
I think \deadNotesOn and \deadNote are rather self-explanatory, so I
don't believe to confuse potential users.

Marc
----------
From: Mark Polesky <[hidden email]>
Date: 2009/7/20
To: Marc Hohl <[hidden email]>, Lily-Devel List <[hidden email]>
Cc: Carl Sorenson <[hidden email]>


I prefer "muted" rather than "dead". Though, the LilyPond internals
can get kind of violent, especially with the Hara_kiri_engraver, and
ly:grob-suicide! (whose docstring simply says "Kill grob"). I would
rule that more as a homicide. By the way, I killed a grob once, just
to watch him die.

- Mark
ps. joking aside, I think "muted" is alot better.

----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/20
To: Mark Polesky <[hidden email]>, Marc Hohl <[hidden email]>,
Lily-Devel List <[hidden email]>


grobicide, not homicide, I think! :)
So perhaps we have

<c \muted e g>4

\muted{ c d e f g}

{
 \mutedNotesOn
 \mutedNotesOff
Or maybe it becomes

{
 \mutedOn
 c d e f
 \mutedOff
 c d e f
}

I think I prefer this to \deadNote, \deadNotesOn, \deadNotesOff.

Carl

----------
From: Carl Sorensen <[hidden email]>
Date: 2009/7/21
To: Mark Polesky <[hidden email]>, Marc Hohl <[hidden email]>,
Lily-Devel List <[hidden email]>


After my previous post, I thought that the term in LilyPond ought to reflect
the most appropriate musical usage term, rather than what I think is the
best non-musical english term.

So I did a search for "dead note" and found that it is widely accepted in
the rock guitar world (which is the largest market for tablatures, I think).

The Virginia Tech Multimedia Music Dictionary

http://www.music.vt.edu/musicdictionary/

has an entry for "dead note" that consists solely of a link to the entry for
"false note"; both the guitar term "dead note" and the wind instrument term
"ghost note" point to the term false note.  But I can't find any other links
in the first few pages of Google to indicate that this VT usage is
commonly-accepted or widespread.

Wikipedia (in a poorly-cited article) uses the term "ghost note" for all
instruments (including the string-muted and palm-muted notes).  This entry
seems to indicate that "ghost note" is a term widely used with drums.

Following up on links to "ghost note" in the guitar world causes me to
believe that ghost notes in guitar are different than ghost notes in wind
instruments.  So I don't think that "ghost note" is a good universal term
either.

After this little search, I'm inclined to lean toward the Virginia Tech
answer -- use the "false note" term, since it's not used anywhere else, and
point it to "dead notes" for guitar and "ghost notes" for woodwinds.

If this were strictly a tablature issue, I'd say keep it at "dead notes",
since that is the guitar term.  But Marc's excellent patch also applies to
musical staffs, and those notating for woodwinds might want to use it as
well (although that can be done with an override, since it's not part of a
chord).

Anyway, what do you think we should do for this notation?

Thanks,

Carl

----------
From: Graham Percival <[hidden email]>
Date: 2009/7/21
To: Mark Polesky <[hidden email]>
Cc: Lily-Devel List <[hidden email]>, Carl Sorenson <[hidden email]>


We actually changed the name based on a complaint --
\removeStaffContext used to be called \haraKiriStaff (or
something like that).  The renaming didn't reach all of the
internals, but I suppose this could be considered a code janitor
task.

Cheers,
- Graham

----------
From: Marc Hohl <[hidden email]>
Date: 2009/7/21
To: Carl Sorensen <[hidden email]>
Cc: Lily-Devel List <[hidden email]>


Carl Sorensen schrieb: The situation seems to be somewhat complicated.
I didn't know the term "false notes" (yes, I do, but not in this case :-)
but "ghost notes" on guitar are parenthesized notes which are
played so that the can hardly be heard. The same goes for drums
(I don't play very well, but my teacher once told me that ghost
notes on the snare are so silent that the microphones on stage
don't even transfer a signal, but you can still "feel" the ghost notes
in the groove). I have no experience in woodwind notation,
so I cannot speak for them.

It is possible to use dead notes and ghost notes as aliases,
but guitarists expect something else in both cases, and drummers
will be confused by ghost notes, so perhaps it would be the best
to stay with the term "dead notes" and add a line or two in the
Documentation about woodwinds clarifying that dead notes can be
used as a synonym for ghost notes.

Another (much more complicated solution) would be do define
some kind of "environments" for special instruments.
By including "guitar.ly", you'll have \deadNotes and stuff,
by including "woodwinds.ly", you have a command called \ghostNotes
which provides the same functionality - and so on.

But I don't know if this really makes sense...probably it will be more
confusing rather than helping the users.

Marc
----------
From: <[hidden email]>
Date: 2009/7/21
To: Lily-Devel List <[hidden email]>


but what of citterns, ukes, banjoes and other modern plucked instruments
who would (do) use tablature notation?

BTW, its been several decades since I was actively consulting tutors on
classical guitar (my first serious instrument), but I do not recall any
mention of 'dead' notes, tho from my singing experience I am reminded of
'morire', an instruction to bring the sound volume down to nothing (but
not suddenly, not quite the same as damping a string).  I should think
harp would have terminology for playing dampened; maybe even
harpsichord/piano pedaling instructions (or organ swell shade
instructions) would be relevant.

My druthers would be for 'muted' over 'dead' - more professional, and a
better cognate.

Also, lots more instruments gonna wanna be using modern tablature than
just guitar - bass guitar, uke, cittern, bozouki, banjo.
--
Dana Emery

----------
From: Jonathan Kulp <[hidden email]>
Date: 2009/7/21
To: [hidden email]
Cc: Lily-Devel List <[hidden email]>


In classical guitar parlance, notes that are damped by the right palm
as they're being played are usually designated "pizzicato," since the
resulting sound is similar to that of pizz on bowed string
instruments. In the scores I have where this is desired, the composer
writes "pizz." followed by a spanner like this
----------------------------------| to indicate how long to keep doing
it.  Maybe in more modern scores it's done by different noteheads, I
don't know.  If I saw "dead notes" written, I think I'd know what to
do, but I'm leaning toward "muted" instead.

_______________________________________________
lilypond-devel mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-devel





--
Regards,
Valentin

additional-regtests.tar.gz (770 bytes) Download Attachment
Loading...