lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: review of a Mutopia file (why TabStaff gives error here?)


From: David Kastrup
Subject: Re: review of a Mutopia file (why TabStaff gives error here?)
Date: Sat, 24 Nov 2012 10:12:56 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux)

Federico Bruni <address@hidden> writes:

> Il 24/11/2012 03:34, Keith OHara ha scritto:
>> You might not have seen that Nick posted a much nicer formatting for
>> barre indications.
>> <http://lists.gnu.org/archive/html/lilypond-user/2012-11/msg00570.html>
>> It avoids taking apart LilyPond's internal data structures, which makes
>> it better for mutopiaproject.
>>
>> You can adjust Nick's function to use it as \barre 3 { %{ music %} } and
>> have it set minimumFret=3 so you don't need so many string number
>> entries.  Scheme can convert to Roman numerals.
>> barre = #(define-music-function (parser location
>>      strg music) (number? ly:music?)
>>      #{
>>        \set TabStaff.minimumFret = $strg
>>        \set TabStaff.restrainOpenStrings = ##t
>>        \once\override TextSpanner #'(bound-details left text)
>>              = #(format #f "B address@hidden" strg)
>>         %{ ... Nick's other style settings ...%}
>> <>\startTextSpan
>>        $music
>> <>\stopTextSpan
>>        \unset TabStaff.minimumFret
>>        \unset TabStaff.restrainOpenStrings
>>      #})
>
> I've just realized that there's a problem in this command.
> I want to comment the TabStaff part of \score, so classical players
> can enjoy a clean score while those who can't sight-read music can
> activate the tablature.
>
> But if you comment TabStaff the score breaks: a lot of tab staves are
> printed, I see that it's because of the \set TabStaff in the barre
> command above.  What do you recommend?

You could use \set Staff... instead.  The normal staff will likely just
ignore those settings, and within a tabstaff, Staff is aliased to
TabStaff.

The disadvantage is that if you use \barre outside of any staff, it will
create a default Staff rather than a TabStaff.

-- 
David Kastrup




reply via email to

[Prev in Thread] Current Thread [Next in Thread]