lilypond-devel
[Top][All Lists]
Advanced

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

predefined commands for figured bass


From: Carl D. Sorensen
Subject: predefined commands for figured bass
Date: Fri, 23 May 2008 14:12:49 -0600

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





reply via email to

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