Many thanks for the link - I'll check it out. Lukas-Fabian's functions work very well, though.
cheers, Alasdair On Tue, 8 Aug 2023 at 19:39, Thomas Morley <thomasmorle...@gmail.com> wrote: > Am Di., 8. Aug. 2023 um 11:14 Uhr schrieb Lukas-Fabian Moser <l...@gmx.de>: > > > > Hi Alasdair, > > > > > Thank you very much - that is quite amazing! > > You're very welcome. > > > But it does show what I have long suspected: that without some extra > > > programming, Lilypond does not have a current facility to extract the > > > rhythm from a music definition. All of the tablatures I've seen in > > > Lilypond require the music to be entered twice: once fully, and the > > > other as durations only. As well, the tablature section in the > > > documentation nowhere shows how to do this: to create a tablature > > > score with just the rhythm above it. Maybe this will be amended in > > > future versions? > > > [...] > > > I should add that those remarks of mine were not meant as complaints > > > about Lilypond; merely as observations. I'm very aware that as an > > > open-source project, Lilypond's strength derives from the hard, > > > unpaid, tireless and often thankless work by its developers. It is > > > often said about open source projects that if you want some > > > particular functionality, you should write it yourself and submit it > > > for review. However, my programming skills (at least in scheme) are > > > too poor for this myself. > > Well, I think the point with LilyPond is that - unlike other open-source > > projects - you actually don't have to modify the program itself in order > > to add new functionality, but instead, you can implement the function > > you want _inside_ your own .ly file which you can re-use, share and put > > on a snippet repository. I have lots of custom-tailored functions like > > this in an include file (.ily) on my computer which I simply \include in > > any project where I need them. > > > > So that's what I recommend for you: Just copy the relevant parts of my > > code into a .ily file and \include it whenever you need to use tablature. > > > > Of course I concede that I needed to know a bit about LilyPond's inner > > workings and about Scheme to write a function like this. But nowadays > > there's even lots of well-written documentation that can get you > > started; do you know Jean's manual on > https://extending-lilypond.gitlab.io ? > > > > > But maybe your code could be submitted to be part of Lilypond in > future? > > That's always a possibility, but the way I see it, there are two > > requirements for this: > > > > 1) The desired functionality should be sufficiently "general" or > > "standard" that there's a chance that it'll actually be being used. I > > don't know much about tabulature, so I can't really judge if the > > notation you want to use is standard in some area. > > > > 2) The submitted code should be of high quality. That's definitely not > > the case with the function I wrote yesterday; it would need quite a bit > > of polishing in order to gracefully deal with special cases and so on. > > (E.g. how should we deal with polyphony inside the given music?) > > > > At the moment I feel that my function would probably best be put in a > > LSR snippet, so maybe I should do this. > > > > As a side remark: In order to put music into a RhythmicStaff, one > > doesn't even have to remove the pitches, they will just be ignored. But > > I noticed yesterday that LilyPond does not behave very well with chords > > in that situation: > > > > \version "2.24.0" > > > > mus = { c' d' <e' g' b'>4. f'8 } > > > > << > > \new RhythmicStaff \mus > > \new Staff \mus > > >> > > > > I'm not sure whether that should be called a bug: one would have to > > think a bit about the most natural way to deal with chords here. > > > > Lukas > > > > > > > > There's also an old thread on -devel > https://lists.gnu.org/archive/html/lilypond-devel/2016-09/msg00023.html > This is the last public code. After that the discussion went offlist. > Anway, this code is unfinished, maybe one gets some ideas, though. > > Cheers, > Harm > -- Alasdair McAndrew (he/him) mob: 0432 854 858 https://numbersandshapes.net