Hi Christopher, 2016-12-03 21:56 GMT+01:00 christopher-heckman <ccheck...@gmail.com>: > I've been coding this up, on and off for the past three weeks, and I have a > workable program. This should probably be called chTab 0.1. (ch either > stands for Chuanjun He (who developed the algorithm) or Christopher Heckman > (who implemented it in Scheme/Lilypond) ... Take your pick.)
from your initial posts I expected you'd rewrite the current noteToFretFunction, i.e. 'determine-frets'. Instead your 'chTab' is a music-function, still relying on 'determine-frets'. > It does not recognize ties or glissandos, and does not attempt to > incorporate harmonics into the tablature. > > This algorithm can be tuned quite extensively; max-fret, hand-width, > use-open-strings, use-harmonics, and track-tabs can be set to various > values. Up to now I took only a very quick glance over the code. That said, we have context-properties for some of those settings. I'd recommend to use them. Others are not documented sufficiently, like 'track-tabs'. (I don't understand what "best tabs" are.) In general I'd prefer more comments why you do what inline. Otherwise you'll likely find not many people diving deeper into it. > Other tweaks are possible, and that's where I'd like to have some feedback. > If you play guitar, enter something and test the tablature for playability. > If you feel the playability is bad for some reason, let me know. > > Of course, if there are any bugs, let me know about that as well. It fails for \version "2.18.2" \include "chTab.ly" openStrings = { e,4 a, d g b e' } << \new Staff { \clef "G_8" \openStrings } \new TabStaff \with { instrumentName = "default" } \openStrings % \new TabStaff % \with { stringTunings = #guitar-tuning } % { \chTab { \openStrings } #guitar-tuning } >> Even if I set 'use-open-strings' true. With this example: mus = { f4\1 f\2 f\3 f' f f f f' } << \new Staff { \clef bass \mus } %% Lilypond's default tablature \new TabStaff \with { stringTunings = #bass-tuning instrumentName = "default" } \mus %% chTab \new TabStaff \with { stringTunings = #bass-tuning instrumentName = "chTab" } { \chTab \mus #bass-tuning } >> My settings for the strings are simply ignored. Ok, they are a little strange, but the user-settings should be respected, imho. Cheers, Harm _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel