setting the beatlength for sixteenth-sixtuplets

View: New views
8 Messages — Rating Filter:   Alert me  

setting the beatlength for sixteenth-sixtuplets

by kontrapunktstefan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dear community,
I would like to define a function, that allows me to set the beat-length to 1/8 for 16th-triplets.  And I would like, if it could work for every kind of bar.
I tried it with:
\version "2.12.2"
SSX = #(define-music-function (parser location x) (ly:music?)
#{
   \set beatLength = #(ly:make-moment 1 8)
  \set tupletSpannerDuration = #(ly:make-moment 1 8 )
  \times 2/3 { $x }
  \unset tupletSpannerDuration
 \unset beatLength
#})

\relative c' {
  \SSX { c16 d e f e d e f g a g f a b c d c b }
}


_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Re: setting the beatlength for sixteenth-sixtuplets

by Paul Scott-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Stefan Thomas wrote:

> Dear community,
> I would like to define a function, that allows me to set the beat-length
> to 1/8 for 16th-triplets.  And I would like, if it could work for every
> kind of bar.
> I tried it with:
> \version "2.12.2"
> SSX = #(define-music-function (parser location x) (ly:music?)
> #{
>    \set beatLength = #(ly:make-moment 1 8)
>   \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>   \times 2/3 { $x }
>   \unset tupletSpannerDuration
>  \unset beatLength
> #})
>
> \relative c' {
>   \SSX { c16 d e f e d e f g a g f a b c d c b }
> }
>

I don't know if I'm missing the desired functionality but this is what I
do.  It may or not be as easy as what you want.

esTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 8)
eeTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 4)
eqTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 2)

%The second letter is *s*ixteenth, *e*ighth, *q*uarter

I just execute the one I want for the code which follows it.

Forgive me if I'm not understanding your need.

Paul Scott




_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Parent Message unknown Re: setting the beatlength for sixteenth-sixtuplets

by Paul Scott-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Stefan Thomas wrote:
> Dear Paul,
> I would like to have the Sixtheenth-Triplets beamed in groups of three,
> altough when there is a 2/2 bar, e.g..

Ah!

I haven't taken the time to understand auto beaming rules yet.  I
usually just manually beam some of the notes and the rest seem to follow
along:

\set tupletSpannerDuration = #(ly:make-moment 1 8)
\times 2/3 { a16 b a b[ a b] a b a b[ a b] }

Maybe now would be a good time for me to learn this.

Are you saying there isn't an auto-beaming solution for you?

Paul

>
> 2009/11/9 Paul Scott <waterhorse@...
> <mailto:waterhorse@...>>
>
>     Stefan Thomas wrote:
>
>         Dear community,
>         I would like to define a function, that allows me to set the
>         beat-length to 1/8 for 16th-triplets.  And I would like, if it
>         could work for every kind of bar.
>         I tried it with:
>         \version "2.12.2"
>         SSX = #(define-music-function (parser location x) (ly:music?)
>         #{
>           \set beatLength = #(ly:make-moment 1 8)
>          \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>          \times 2/3 { $x }
>          \unset tupletSpannerDuration
>          \unset beatLength
>         #})
>
>         \relative c' {
>          \SSX { c16 d e f e d e f g a g f a b c d c b }
>         }
>
>
>     I don't know if I'm missing the desired functionality but this is
>     what I do.  It may or not be as easy as what you want.
>
>     esTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 8)
>     eeTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 4)
>     eqTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 2)
>
>     %The second letter is *s*ixteenth, *e*ighth, *q*uarter
>
>     I just execute the one I want for the code which follows it.
>
>     Forgive me if I'm not understanding your need.
>
>     Paul Scott
>
>
>


--
Paul Scott
Librarian
Southern Arizona Symphony Orchestra


_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Re: setting the beatlength for sixteenth-sixtuplets

by kontrapunktstefan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Well, I found a solution, but I thought, there would be an easier solution.
\version "2.12.2"
ST = #(define-music-function (parser location x) (ly:music?)
#{
 #(override-auto-beam-setting '(end 1 24 * *) 1 8)
  #(override-auto-beam-setting '(end 1 24 * *) 2 8)
   #(override-auto-beam-setting '(end 1 24 * *) 3 8)
 #(override-auto-beam-setting '(end 1 24 * *) 4 8)
  #(override-auto-beam-setting '(end 1 24 * *) 5 8)
 #(override-auto-beam-setting '(end 1 24 * *) 6 8)
  #(override-auto-beam-setting '(end 1 24 * *) 7 8)
   #(override-auto-beam-setting '(end 1 24 * *) 8 8)
    #(override-auto-beam-setting '(end 1 24 * *) 9 8)
     #(override-auto-beam-setting '(end 1 24 * *) 10 8)
      #(override-auto-beam-setting '(end 1 24 * *) 11 8)
       #(override-auto-beam-setting '(end 1 24 * *) 12 8)
  \set tupletSpannerDuration = #(ly:make-moment 1 8 )
  \times 2/3 { $x }
    #(revert-auto-beam-setting '(end 1 24 * *) 1 8)
#(revert-auto-beam-setting '(end 1 24 * *) 2 8)
#(revert-auto-beam-setting '(end 1 24 * *) 3 8)
#(revert-auto-beam-setting '(end 1 24 * *) 4 8)
#(revert-auto-beam-setting '(end 1 24 * *) 5 8)
#(revert-auto-beam-setting '(end 1 24 * *) 6 8)
#(revert-auto-beam-setting '(end 1 24 * *) 7 8)
#(revert-auto-beam-setting '(end 1 24 * *) 8 8)
#(revert-auto-beam-setting '(end 1 24 * *) 9 8)
#(revert-auto-beam-setting '(end 1 24 * *) 10 8)
#(revert-auto-beam-setting '(end 1 24 * *) 11 8)
#(revert-auto-beam-setting '(end 1 24 * *) 12 8)
  \unset tupletSpannerDuration
 
#})

\relative c' { \time 2/2
  \ST { c16 d e f e d e f g a g f a b c d c b
  c b a g f e
  }
}


2009/11/9 Paul Scott <waterhorse@...>
Stefan Thomas wrote:
Dear Paul,
I would like to have the Sixtheenth-Triplets beamed in groups of three, altough when there is a 2/2 bar, e.g..

Ah!

I haven't taken the time to understand auto beaming rules yet.  I usually just manually beam some of the notes and the rest seem to follow along:

\set tupletSpannerDuration = #(ly:make-moment 1 8)
\times 2/3 { a16 b a b[ a b] a b a b[ a b] }

Maybe now would be a good time for me to learn this.

Are you saying there isn't an auto-beaming solution for you?

Paul


2009/11/9 Paul Scott <waterhorse@... <mailto:waterhorse@...>>


   Stefan Thomas wrote:

       Dear community,
       I would like to define a function, that allows me to set the
       beat-length to 1/8 for 16th-triplets.  And I would like, if it
       could work for every kind of bar.
       I tried it with:
       \version "2.12.2"
       SSX = #(define-music-function (parser location x) (ly:music?)
       #{
         \set beatLength = #(ly:make-moment 1 8)
        \set tupletSpannerDuration = #(ly:make-moment 1 8 )
        \times 2/3 { $x }
        \unset tupletSpannerDuration
        \unset beatLength
       #})

       \relative c' {
        \SSX { c16 d e f e d e f g a g f a b c d c b }
       }


   I don't know if I'm missing the desired functionality but this is
   what I do.  It may or not be as easy as what you want.

   esTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 8)
   eeTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 4)
   eqTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 2)

   %The second letter is *s*ixteenth, *e*ighth, *q*uarter

   I just execute the one I want for the code which follows it.

   Forgive me if I'm not understanding your need.

   Paul Scott





--
Paul Scott
Librarian
Southern Arizona Symphony Orchestra


_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Re: setting the beatlength for sixteenth-sixtuplets

by Mats Bengtsson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

How about the following:

\version "2.12.2"
SSX = #(define-music-function (parser location x) (ly:music?)
#{
  \set beamSettings = #'()
   \set beatLength = #(ly:make-moment 1 8)
  \set tupletSpannerDuration = #(ly:make-moment 1 8 )
  \times 2/3 { $x }
  \unset tupletSpannerDuration
 \unset beatLength
 \unset beamSettings
#})

\relative c' {
  \SSX { c16 d e f e d e f g a g f a b c d c b }
}


It seems that there's a default beaming rule that causes your problems.
Setting beamSetting = #'() removes all such default rules so that your
beamLength setting is effective.

    /Mats

Stefan Thomas wrote:

> Well, I found a solution, but I thought, there would be an easier
> solution.
> \version "2.12.2"
> ST = #(define-music-function (parser location x) (ly:music?)
> #{
>  #(override-auto-beam-setting '(end 1 24 * *) 1 8)
>   #(override-auto-beam-setting '(end 1 24 * *) 2 8)
>    #(override-auto-beam-setting '(end 1 24 * *) 3 8)
>  #(override-auto-beam-setting '(end 1 24 * *) 4 8)
>   #(override-auto-beam-setting '(end 1 24 * *) 5 8)
>  #(override-auto-beam-setting '(end 1 24 * *) 6 8)
>   #(override-auto-beam-setting '(end 1 24 * *) 7 8)
>    #(override-auto-beam-setting '(end 1 24 * *) 8 8)
>     #(override-auto-beam-setting '(end 1 24 * *) 9 8)
>      #(override-auto-beam-setting '(end 1 24 * *) 10 8)
>       #(override-auto-beam-setting '(end 1 24 * *) 11 8)
>        #(override-auto-beam-setting '(end 1 24 * *) 12 8)
>   \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>   \times 2/3 { $x }
>     #(revert-auto-beam-setting '(end 1 24 * *) 1 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 2 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 3 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 4 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 5 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 6 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 7 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 8 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 9 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 10 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 11 8)
> #(revert-auto-beam-setting '(end 1 24 * *) 12 8)
>   \unset tupletSpannerDuration
>  
> #})
>
> \relative c' { \time 2/2
>   \ST { c16 d e f e d e f g a g f a b c d c b
>   c b a g f e
>   }
> }
>
>
> 2009/11/9 Paul Scott <waterhorse@...
> <mailto:waterhorse@...>>
>
>     Stefan Thomas wrote:
>
>         Dear Paul,
>         I would like to have the Sixtheenth-Triplets beamed in groups
>         of three, altough when there is a 2/2 bar, e.g..
>
>
>     Ah!
>
>     I haven't taken the time to understand auto beaming rules yet.  I
>     usually just manually beam some of the notes and the rest seem to
>     follow along:
>
>     \set tupletSpannerDuration = #(ly:make-moment 1 8)
>     \times 2/3 { a16 b a b[ a b] a b a b[ a b] }
>
>     Maybe now would be a good time for me to learn this.
>
>     Are you saying there isn't an auto-beaming solution for you?
>
>     Paul
>
>
>         2009/11/9 Paul Scott <waterhorse@...
>         <mailto:waterhorse@...> <mailto:waterhorse@...
>         <mailto:waterhorse@...>>>
>
>
>            Stefan Thomas wrote:
>
>                Dear community,
>                I would like to define a function, that allows me to
>         set the
>                beat-length to 1/8 for 16th-triplets.  And I would
>         like, if it
>                could work for every kind of bar.
>                I tried it with:
>                \version "2.12.2"
>                SSX = #(define-music-function (parser location x)
>         (ly:music?)
>                #{
>                  \set beatLength = #(ly:make-moment 1 8)
>                 \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>                 \times 2/3 { $x }
>                 \unset tupletSpannerDuration
>                 \unset beatLength
>                #})
>
>                \relative c' {
>                 \SSX { c16 d e f e d e f g a g f a b c d c b }
>                }
>
>
>            I don't know if I'm missing the desired functionality but
>         this is
>            what I do.  It may or not be as easy as what you want.
>
>            esTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 8)
>            eeTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 4)
>            eqTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 2)
>
>            %The second letter is *s*ixteenth, *e*ighth, *q*uarter
>
>            I just execute the one I want for the code which follows it.
>
>            Forgive me if I'm not understanding your need.
>
>            Paul Scott
>
>
>
>
>
>     --
>     Paul Scott
>     Librarian
>     Southern Arizona Symphony Orchestra
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@...
> http://lists.gnu.org/mailman/listinfo/lilypond-user
>  

--
=============================================
        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: mats.bengtsson@...
        WWW: http://www.s3.kth.se/~mabe
=============================================



_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Re: setting the beatlength for sixteenth-sixtuplets

by kontrapunktstefan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dear Mats,
thanks for Your help, but with Your code I got the file, I've attached to this mail!

2009/11/9 Mats Bengtsson <mats.bengtsson@...>
How about the following:


\version "2.12.2"
SSX = #(define-music-function (parser location x) (ly:music?)
#{
 \set beamSettings = #'()

 \set beatLength = #(ly:make-moment 1 8)
 \set tupletSpannerDuration = #(ly:make-moment 1 8 )
 \times 2/3 { $x }
 \unset tupletSpannerDuration
\unset beatLength
\unset beamSettings

#})

\relative c' {
 \SSX { c16 d e f e d e f g a g f a b c d c b }
}


It seems that there's a default beaming rule that causes your problems. Setting beamSetting = #'() removes all such default rules so that your beamLength setting is effective.

  /Mats

Stefan Thomas wrote:
Well, I found a solution, but I thought, there would be an easier solution.
\version "2.12.2"
ST = #(define-music-function (parser location x) (ly:music?)
#{
 #(override-auto-beam-setting '(end 1 24 * *) 1 8)
 #(override-auto-beam-setting '(end 1 24 * *) 2 8)
  #(override-auto-beam-setting '(end 1 24 * *) 3 8)
 #(override-auto-beam-setting '(end 1 24 * *) 4 8)
 #(override-auto-beam-setting '(end 1 24 * *) 5 8)
 #(override-auto-beam-setting '(end 1 24 * *) 6 8)
 #(override-auto-beam-setting '(end 1 24 * *) 7 8)
  #(override-auto-beam-setting '(end 1 24 * *) 8 8)
   #(override-auto-beam-setting '(end 1 24 * *) 9 8)
    #(override-auto-beam-setting '(end 1 24 * *) 10 8)
     #(override-auto-beam-setting '(end 1 24 * *) 11 8)
      #(override-auto-beam-setting '(end 1 24 * *) 12 8)
 \set tupletSpannerDuration = #(ly:make-moment 1 8 )
 \times 2/3 { $x }
   #(revert-auto-beam-setting '(end 1 24 * *) 1 8)
#(revert-auto-beam-setting '(end 1 24 * *) 2 8)
#(revert-auto-beam-setting '(end 1 24 * *) 3 8)
#(revert-auto-beam-setting '(end 1 24 * *) 4 8)
#(revert-auto-beam-setting '(end 1 24 * *) 5 8)
#(revert-auto-beam-setting '(end 1 24 * *) 6 8)
#(revert-auto-beam-setting '(end 1 24 * *) 7 8)
#(revert-auto-beam-setting '(end 1 24 * *) 8 8)
#(revert-auto-beam-setting '(end 1 24 * *) 9 8)
#(revert-auto-beam-setting '(end 1 24 * *) 10 8)
#(revert-auto-beam-setting '(end 1 24 * *) 11 8)
#(revert-auto-beam-setting '(end 1 24 * *) 12 8)
 \unset tupletSpannerDuration
 #})

\relative c' { \time 2/2
 \ST { c16 d e f e d e f g a g f a b c d c b
 c b a g f e
 }
}


2009/11/9 Paul Scott <waterhorse@... <mailto:waterhorse@...>>

   Stefan Thomas wrote:

       Dear Paul,
       I would like to have the Sixtheenth-Triplets beamed in groups
       of three, altough when there is a 2/2 bar, e.g..


   Ah!

   I haven't taken the time to understand auto beaming rules yet.  I
   usually just manually beam some of the notes and the rest seem to
   follow along:

   \set tupletSpannerDuration = #(ly:make-moment 1 8)
   \times 2/3 { a16 b a b[ a b] a b a b[ a b] }

   Maybe now would be a good time for me to learn this.

   Are you saying there isn't an auto-beaming solution for you?

   Paul


       2009/11/9 Paul Scott <waterhorse@...
       <mailto:waterhorse@...> <mailto:waterhorse@...

       <mailto:waterhorse@...>>>


          Stefan Thomas wrote:

              Dear community,
              I would like to define a function, that allows me to
       set the
              beat-length to 1/8 for 16th-triplets.  And I would
       like, if it
              could work for every kind of bar.
              I tried it with:
              \version "2.12.2"
              SSX = #(define-music-function (parser location x)
       (ly:music?)
              #{
                \set beatLength = #(ly:make-moment 1 8)
               \set tupletSpannerDuration = #(ly:make-moment 1 8 )
               \times 2/3 { $x }
               \unset tupletSpannerDuration
               \unset beatLength
              #})

              \relative c' {
               \SSX { c16 d e f e d e f g a g f a b c d c b }
              }


          I don't know if I'm missing the desired functionality but
       this is
          what I do.  It may or not be as easy as what you want.

          esTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 8)
          eeTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 4)
          eqTuplets = \set tupletSpannerDuration = #(ly:make-moment 1 2)

          %The second letter is *s*ixteenth, *e*ighth, *q*uarter

          I just execute the one I want for the code which follows it.

          Forgive me if I'm not understanding your need.

          Paul Scott





   --    Paul Scott
   Librarian
   Southern Arizona Symphony Orchestra


------------------------------------------------------------------------

_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user
 

--
=============================================
       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: mats.bengtsson@...
       WWW: http://www.s3.kth.se/~mabe
=============================================




_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

trioltest.png (17K) Download Attachment

Re: setting the beatlength for sixteenth-sixtuplets

by Mats Bengtsson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

My solution works in version 2.13, but apparently not in 2.12. However,
if you replace "beamSettings" by "autoBeamSettings" in my proposal, it
should work in version 2.12.

    /Mats

Stefan Thomas wrote:

> Dear Mats,
> thanks for Your help, but with Your code I got the file, I've attached
> to this mail!
>
> 2009/11/9 Mats Bengtsson <mats.bengtsson@...
> <mailto:mats.bengtsson@...>>
>
>     How about the following:
>
>
>     \version "2.12.2"
>     SSX = #(define-music-function (parser location x) (ly:music?)
>     #{
>      \set beamSettings = #'()
>
>      \set beatLength = #(ly:make-moment 1 8)
>      \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>      \times 2/3 { $x }
>      \unset tupletSpannerDuration
>     \unset beatLength
>     \unset beamSettings
>
>     #})
>
>     \relative c' {
>      \SSX { c16 d e f e d e f g a g f a b c d c b }
>     }
>
>
>     It seems that there's a default beaming rule that causes your
>     problems. Setting beamSetting = #'() removes all such default
>     rules so that your beamLength setting is effective.
>
>       /Mats
>
>     Stefan Thomas wrote:
>
>         Well, I found a solution, but I thought, there would be an
>         easier solution.
>         \version "2.12.2"
>         ST = #(define-music-function (parser location x) (ly:music?)
>         #{
>          #(override-auto-beam-setting '(end 1 24 * *) 1 8)
>          #(override-auto-beam-setting '(end 1 24 * *) 2 8)
>           #(override-auto-beam-setting '(end 1 24 * *) 3 8)
>          #(override-auto-beam-setting '(end 1 24 * *) 4 8)
>          #(override-auto-beam-setting '(end 1 24 * *) 5 8)
>          #(override-auto-beam-setting '(end 1 24 * *) 6 8)
>          #(override-auto-beam-setting '(end 1 24 * *) 7 8)
>           #(override-auto-beam-setting '(end 1 24 * *) 8 8)
>            #(override-auto-beam-setting '(end 1 24 * *) 9 8)
>             #(override-auto-beam-setting '(end 1 24 * *) 10 8)
>              #(override-auto-beam-setting '(end 1 24 * *) 11 8)
>               #(override-auto-beam-setting '(end 1 24 * *) 12 8)
>          \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>          \times 2/3 { $x }
>            #(revert-auto-beam-setting '(end 1 24 * *) 1 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 2 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 3 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 4 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 5 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 6 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 7 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 8 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 9 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 10 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 11 8)
>         #(revert-auto-beam-setting '(end 1 24 * *) 12 8)
>          \unset tupletSpannerDuration
>          #})
>
>         \relative c' { \time 2/2
>          \ST { c16 d e f e d e f g a g f a b c d c b
>          c b a g f e
>          }
>         }
>
>
>         2009/11/9 Paul Scott <waterhorse@...
>         <mailto:waterhorse@...> <mailto:waterhorse@...
>         <mailto:waterhorse@...>>>
>
>            Stefan Thomas wrote:
>
>                Dear Paul,
>                I would like to have the Sixtheenth-Triplets beamed in
>         groups
>                of three, altough when there is a 2/2 bar, e.g..
>
>
>            Ah!
>
>            I haven't taken the time to understand auto beaming rules
>         yet.  I
>            usually just manually beam some of the notes and the rest
>         seem to
>            follow along:
>
>            \set tupletSpannerDuration = #(ly:make-moment 1 8)
>            \times 2/3 { a16 b a b[ a b] a b a b[ a b] }
>
>            Maybe now would be a good time for me to learn this.
>
>            Are you saying there isn't an auto-beaming solution for you?
>
>            Paul
>
>
>                2009/11/9 Paul Scott <waterhorse@...
>         <mailto:waterhorse@...>
>                <mailto:waterhorse@...
>         <mailto:waterhorse@...>>
>         <mailto:waterhorse@... <mailto:waterhorse@...>
>
>                <mailto:waterhorse@...
>         <mailto:waterhorse@...>>>>
>
>
>                   Stefan Thomas wrote:
>
>                       Dear community,
>                       I would like to define a function, that allows me to
>                set the
>                       beat-length to 1/8 for 16th-triplets.  And I would
>                like, if it
>                       could work for every kind of bar.
>                       I tried it with:
>                       \version "2.12.2"
>                       SSX = #(define-music-function (parser location x)
>                (ly:music?)
>                       #{
>                         \set beatLength = #(ly:make-moment 1 8)
>                        \set tupletSpannerDuration = #(ly:make-moment 1 8 )
>                        \times 2/3 { $x }
>                        \unset tupletSpannerDuration
>                        \unset beatLength
>                       #})
>
>                       \relative c' {
>                        \SSX { c16 d e f e d e f g a g f a b c d c b }
>                       }
>
>
>                   I don't know if I'm missing the desired
>         functionality but
>                this is
>                   what I do.  It may or not be as easy as what you want.
>
>                   esTuplets = \set tupletSpannerDuration =
>         #(ly:make-moment 1 8)
>                   eeTuplets = \set tupletSpannerDuration =
>         #(ly:make-moment 1 4)
>                   eqTuplets = \set tupletSpannerDuration =
>         #(ly:make-moment 1 2)
>
>                   %The second letter is *s*ixteenth, *e*ighth, *q*uarter
>
>                   I just execute the one I want for the code which
>         follows it.
>
>                   Forgive me if I'm not understanding your need.
>
>                   Paul Scott
>
>
>
>
>
>            --    Paul Scott
>            Librarian
>            Southern Arizona Symphony Orchestra
>
>
>         ------------------------------------------------------------------------
>
>         _______________________________________________
>         lilypond-user mailing list
>         lilypond-user@... <mailto:lilypond-user@...>
>         http://lists.gnu.org/mailman/listinfo/lilypond-user
>          
>
>
>     --
>     =============================================
>            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: mats.bengtsson@...
>     <mailto:mats.bengtsson@...>
>            WWW: http://www.s3.kth.se/~mabe <http://www.s3.kth.se/%7Emabe>
>     =============================================
>
>
>
> ------------------------------------------------------------------------
>

--
=============================================
        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: mats.bengtsson@...
        WWW: http://www.s3.kth.se/~mabe
=============================================



_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user

Re: setting the beatlength for sixteenth-sixtuplets

by kontrapunktstefan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Yes, thanks! Now it works!

2009/11/9 Mats Bengtsson <mats.bengtsson@...>
My solution works in version 2.13, but apparently not in 2.12. However, if you replace "beamSettings" by "autoBeamSettings" in my proposal, it should work in version 2.12.

  /Mats

Stefan Thomas wrote:
Dear Mats,
thanks for Your help, but with Your code I got the file, I've attached to this mail!

2009/11/9 Mats Bengtsson <mats.bengtsson@... <mailto:mats.bengtsson@...>>


   How about the following:


   \version "2.12.2"
   SSX = #(define-music-function (parser location x) (ly:music?)
   #{
    \set beamSettings = #'()

    \set beatLength = #(ly:make-moment 1 8)
    \set tupletSpannerDuration = #(ly:make-moment 1 8 )
    \times 2/3 { $x }
    \unset tupletSpannerDuration
   \unset beatLength
   \unset beamSettings

   #})

   \relative c' {
    \SSX { c16 d e f e d e f g a g f a b c d c b }
   }


   It seems that there's a default beaming rule that causes your
   problems. Setting beamSetting = #'() removes all such default
   rules so that your beamLength setting is effective.

     /Mats

   Stefan Thomas wrote:

       Well, I found a solution, but I thought, there would be an
       easier solution.
       \version "2.12.2"
       ST = #(define-music-function (parser location x) (ly:music?)
       #{
        #(override-auto-beam-setting '(end 1 24 * *) 1 8)
        #(override-auto-beam-setting '(end 1 24 * *) 2 8)
         #(override-auto-beam-setting '(end 1 24 * *) 3 8)
        #(override-auto-beam-setting '(end 1 24 * *) 4 8)
        #(override-auto-beam-setting '(end 1 24 * *) 5 8)
        #(override-auto-beam-setting '(end 1 24 * *) 6 8)
        #(override-auto-beam-setting '(end 1 24 * *) 7 8)
         #(override-auto-beam-setting '(end 1 24 * *) 8 8)
          #(override-auto-beam-setting '(end 1 24 * *) 9 8)
           #(override-auto-beam-setting '(end 1 24 * *) 10 8)
            #(override-auto-beam-setting '(end 1 24 * *) 11 8)
             #(override-auto-beam-setting '(end 1 24 * *) 12 8)
        \set tupletSpannerDuration = #(ly:make-moment 1 8 )
        \times 2/3 { $x }
          #(revert-auto-beam-setting '(end 1 24 * *) 1 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 2 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 3 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 4 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 5 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 6 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 7 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 8 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 9 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 10 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 11 8)
       #(revert-auto-beam-setting '(end 1 24 * *) 12 8)
        \unset tupletSpannerDuration
        #})

       \relative c' { \time 2/2
        \ST { c16 d e f e d e f g a g f a b c d c b
        c b a g f e
        }
       }


       2009/11/9 Paul Scott <waterhorse@...
       <mailto:waterhorse@...> <mailto:waterhorse@...
       <mailto:waterhorse@...>>>

          Stefan Thomas wrote:

              Dear Paul,
              I would like to have the Sixtheenth-Triplets beamed in
       groups
              of three, altough when there is a 2/2 bar, e.g..


          Ah!

          I haven't taken the time to understand auto beaming rules
       yet.  I
          usually just manually beam some of the notes and the rest
       seem to
          follow along:

          \set tupletSpannerDuration = #(ly:make-moment 1 8)
          \times 2/3 { a16 b a b[ a b] a b a b[ a b] }

          Maybe now would be a good time for me to learn this.

          Are you saying there isn't an auto-beaming solution for you?

          Paul


              2009/11/9 Paul Scott <waterhorse@...
       <mailto:waterhorse@...>
              <mailto:waterhorse@...
       <mailto:waterhorse@...>>
       <mailto:waterhorse@... <mailto:waterhorse@...>

              <mailto:waterhorse@...
       <mailto:waterhorse@...>>>>


                 Stefan Thomas wrote:

                     Dear community,
                     I would like to define a function, that allows me to
              set the
                     beat-length to 1/8 for 16th-triplets.  And I would
              like, if it
                     could work for every kind of bar.
                     I tried it with:
                     \version "2.12.2"
                     SSX = #(define-music-function (parser location x)
              (ly:music?)
                     #{
                       \set beatLength = #(ly:make-moment 1 8)
                      \set tupletSpannerDuration = #(ly:make-moment 1 8 )
                      \times 2/3 { $x }
                      \unset tupletSpannerDuration
                      \unset beatLength
                     #})

                     \relative c' {
                      \SSX { c16 d e f e d e f g a g f a b c d c b }
                     }


                 I don't know if I'm missing the desired
       functionality but
              this is
                 what I do.  It may or not be as easy as what you want.

                 esTuplets = \set tupletSpannerDuration =
       #(ly:make-moment 1 8)
                 eeTuplets = \set tupletSpannerDuration =
       #(ly:make-moment 1 4)
                 eqTuplets = \set tupletSpannerDuration =
       #(ly:make-moment 1 2)

                 %The second letter is *s*ixteenth, *e*ighth, *q*uarter

                 I just execute the one I want for the code which
       follows it.

                 Forgive me if I'm not understanding your need.

                 Paul Scott





          --    Paul Scott
          Librarian
          Southern Arizona Symphony Orchestra


       ------------------------------------------------------------------------

       _______________________________________________
       lilypond-user mailing list
       lilypond-user@... <mailto:lilypond-user@...>

       http://lists.gnu.org/mailman/listinfo/lilypond-user
       

   --    =============================================
          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: mats.bengtsson@...
   <mailto:mats.bengtsson@...>
          WWW: http://www.s3.kth.se/~mabe <http://www.s3.kth.se/%7Emabe>
   =============================================



------------------------------------------------------------------------


--
=============================================
       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: mats.bengtsson@...
       WWW: http://www.s3.kth.se/~mabe
=============================================



_______________________________________________
lilypond-user mailing list
lilypond-user@...
http://lists.gnu.org/mailman/listinfo/lilypond-user