lilypond-devel
[Top][All Lists]
Advanced

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

Re: predefined commands for figured bass


From: Mats Bengtsson
Subject: Re: predefined commands for figured bass
Date: Mon, 26 May 2008 09:52:20 +0200
User-agent: Thunderbird 2.0.0.5 (X11/20070716)

I hope your suggestions are based on your own experience of typesetting figured bass,
and thereby knowing what would be useful to have.
In general, trying to make up a good selection of predefined commands for a feature that
you haven't used much yourself will probably not lead to a useful result.

   /Mats

Carl D. Sorensen wrote:
Here are some proposed predefined commands for Figured Bass:

bassFigureStaffAlignmentDown = {
  \override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
}

bassFigureStaffAlignmentUp = {
  \revert Staff.BassFigureAlignmentPositioning #'direction
}

bassFigureStackingUp = {
  \override Staff.BassFigureAlignment #'stacking-dir = #1
  \override BassFigureAlignment #'stacking-dir = #1
}

bassFigureStackingDown = {
  \revert Staff.BassFigureAlignment #'stacking-dir
  \revert BassFigureAlignment #'stacking-dir
}

bassFigureExtendersOn = {
  \set useBassFigureExtenders = ##t
  \set Staff.useBassFigureExtenders = ##t
}

bassFigureExtendersOff = {
  \set useBassFigureExtenders = ##f
  \set Staff.useBassFigureExtenders = ##f
}
bassFigureAlterationsRight = {
  \set figuredBassAlterationDirection = #RIGHT
  \set Staff.figuredBassAlterationDirection = #RIGHT
}

bassFigureAlterationsLeft = {
  \set figuredBassAlterationDirection = #LEFT
  \set Staff.figuredBassAlterationDirection = #LEFT
}

bassFigurePlusRight = {
  \set figuredBassPlusDirection = #RIGHT
  \set Staff.figuredBassPlusDirection = #RIGHT
}

bassFigurePlusLeft = {
  \set figuredBassPlusDirection = #LEFT
  \set Staff.figuredBassPlusDirection = #LEFT
}

Here is a snippet that tests each of these commands:

{
  <<
  \new Staff = myStaff
  \figuremode {
    \bassFigureStaffAlignmentDown
    <4>4 <6 10>8 s8
    <4+ 6>4 <4\+ 6>
    \bassFigureStaffAlignmentUp
    <4>4
    \bassFigureExtendersOn
    <6 10\+>8 s8
    \bassFigureAlterationsRight
    <4+ 6>4 <4 6>
    \bassFigureStackingUp
    \bassFigureStaffAlignmentDown
    \bassFigureExtendersOff
    \bassFigureStackingUp
    \bassFigureAlterationsLeft
    \bassFigurePlusRight
    <4>4 <6- 10\+>8 s8
    <4 6>4 <4 6>
    \bassFigureStaffAlignmentUp
    <4>4
    \bassFigureExtendersOn
    <6 10>8 s8
    \bassFigureStackingUp
    <4 6>4 <4 6>
  }
  %% send to existing Staff.
  \context Staff = myStaff
  \relative c' {
    c4 c'8 r8 c,4 c'
    c4 c'8 r8 c,4 c'
    c,,4 c'8 r8 c,4 c'
    c4 c'8 r8 c,4 c'
 }
  >>
  <<
  \context Staff = myStaff
  \relative c' {
    c4 c'8 r8 c,4 c'
    c4 c'8 r8 c,4 c'
    c,,4 c'8 r8 c,4 c'
    c4 c'8 r8 c,4 c'
 }
 \new FiguredBass {
  \figuremode {
    \bassFigureStaffAlignmentDown
    <4>4 <6 10>8 s8
    <4+ 6>4 <4\+ 6>
    \bassFigureStaffAlignmentUp
    <4>4
    \bassFigureExtendersOn
    <6 10\+>8 s8
    \bassFigureAlterationsRight
    <4+ 6>4 <4 6>
    \bassFigureStackingUp
    \bassFigureStaffAlignmentDown
    \bassFigureExtendersOff
    \bassFigureStackingUp
    \bassFigureAlterationsLeft
    \bassFigurePlusRight
    <4>4 <6- 10\+>8 s8
    <4 6>4 <4 6>
    \bassFigureStaffAlignmentUp
    <4>4
    \bassFigureExtendersOn
    <6 10>8 s8
    \bassFigureStackingUp
    <4 6>4 <4 6>
  }
 }
  >>
}


Please let me know if you have any comments before we add these to 
property-init.ly.

Thanks,

Carl



_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel

--
=============================================
        Mats Bengtsson
        Signal Processing
        School of Electrical Engineering
        Royal Institute of Technology (KTH)
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463                         
       Fax:   (+46) 8 790 7260
        Email: address@hidden
        WWW: http://www.s3.kth.se/~mabe
=============================================





reply via email to

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