Can an augmentation dot be parenthesized?

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Can an augmentation dot be parenthesized?

Robert Blackstone-2
Dear all,
I'm transcribing a few handwritten late 17th century fragments of music.

There are a few problematic spots. (Perhaps the composer or writer was in a hurry, the whole thing is difficult to read anyway and it contains some symbols I've never seen before. see screensho.t)

For two consecutive bars the time seems to have changed, from 6/2 to 5/2, which, as far as I know, was never done in that period. There is, in fact no time signature at all but 11 of the 13 bars in the fragment are clearly in 6/2 (or perhaps 3/1) and 2 bars contain notes and rests in both staves that add up to 5/2

That leaves me with the choice: either to ignore it, or correct it. In the latter case I would have to add an augmentation dot to a few notes and rests.

Can anybody tell what the standard procedure is in cases like this one:
- ignore, i.e. tweaking things so that it looks exactly like the manuscript , or
- correct it. In the latter case the corrections or corrected symbols must probably be marked somehow. I can place (?) above the corrected note or rest, which is not very specific. 

I would tather like to parenthesize these added augmenation dots but I've not found a way to do that.

Is it at all possible? And if yes, how?

Thanks in advance for any advice.

Best regards, 

Robert Blackstone



_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

re: Can an augmentation dot be parenthesized?

Remy CLAVERIE

Hi Robert,

 

You can use this definition:

ficta = { \once \override AccidentalSuggestion #'parenthesized = ##t \once \set suggestAccidentals = ##t }

 

And use it this way just before the note with an ? : cis4 \ficta cis?

 

Have a nice day,

 

Rémy

 

 

> Message du 24/05/17 10:59

> De : "Robert Blackstone" <[hidden email]>
> A : [hidden email]
> Copie à :
> Objet : Can an augmentation dot be parenthesized?
>
>Dear all,
I'm transcribing a few handwritten late 17th century fragments of music.

>
There are a few problematic spots. (Perhaps the composer or writer was in a hurry, the whole thing is difficult to read anyway and it contains some symbols I've never seen before. see screensho.t)

>
For two consecutive bars the time seems to have changed, from 6/2 to 5/2, which, as far as I know, was never done in that period. There is, in fact no time signature at all but 11 of the 13 bars in the fragment are clearly in 6/2 (or perhaps 3/1) and 2 bars contain notes and rests in both staves that add up to 5/2

>
That leaves me with the choice: either to ignore it, or correct it. In the latter case I would have to add an augmentation dot to a few notes and rests.

>
Can anybody tell what the standard procedure is in cases like this one:
- ignore, i.e. tweaking things so that it looks exactly like the manuscript , or
- correct it. In the latter case the corrections or corrected symbols must probably be marked somehow. I can place (?) above the corrected note or rest, which is not very specific. 

>
I would tather like to parenthesize these added augmenation dots but I've not found a way to do that.

>
Is it at all possible? And if yes, how?

>
Thanks in advance for any advice.

>
Best regards, 

>
Robert Blackstone

>

>


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

Lukas-Fabian Moser
In reply to this post by Robert Blackstone-2
Hi Robert,
 
I would tather like to parenthesize these added augmenation dots but I've not found a way to do that.

I don't know how to parenthesize them, but here is a solution yielding brackets around them:

\version "2.19.44"

#(define (special-bracketify original-stencil len thick protusion padding)
  (let* (
         (left-bracket (ly:bracket Y (cons (- len) len) thick (- protusion)))
         (right-bracket (ly:bracket Y (cons (- len) len) thick protusion)))
    (set! original-stencil
 (ly:stencil-combine-at-edge original-stencil X RIGHT right-bracket (- -0.73 padding)))
    (set! original-stencil
(ly:stencil-combine-at-edge original-stencil X RIGHT left-bracket padding))
    original-stencil))

bracketDot = \once \override Dots.stencil = #(lambda (grob)
    (special-bracketify (ly:dots::print grob) 0.4 0.1 0.2 0)) 
% first number (0.4): bracket length
% second number (0.1): thickness
% third number (0.2): protrusion
% fourth number (0.1): space between dot and brackets


 {
  c''4.
  r8
  \bracketDot
  a'4.
  r8


Question to the experts: If I unterstand my own code correctly :-), the right-hand edge of the dot stencil (used by stencil-combine-at-edge) is the right-most part of the dot itself, while the left-hand edge seems to be the right-most part of the note the dot is attached to.
For this reason I took (for the left bracket) the *right* hand edge of the dot and added offsets with trial-and-error, which should be fine since I assume the dot will have the same size wherever it occurs. But nevertheless there must be a more conceptual way?

Best
Lukas

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

Thomas Morley-2
In reply to this post by Robert Blackstone-2
2017-05-24 10:58 GMT+02:00 Robert Blackstone <[hidden email]>:

>
> Dear all,
> I'm transcribing a few handwritten late 17th century fragments of music.
>
> There are a few problematic spots. (Perhaps the composer or writer was in a hurry, the whole thing is difficult to read anyway and it contains some symbols I've never seen before. see screensho.t)
>
> For two consecutive bars the time seems to have changed, from 6/2 to 5/2, which, as far as I know, was never done in that period. There is, in fact no time signature at all but 11 of the 13 bars in the fragment are clearly in 6/2 (or perhaps 3/1) and 2 bars contain notes and rests in both staves that add up to 5/2
>
> That leaves me with the choice: either to ignore it, or correct it. In the latter case I would have to add an augmentation dot to a few notes and rests.
>
> Can anybody tell what the standard procedure is in cases like this one:
> - ignore, i.e. tweaking things so that it looks exactly like the manuscript , or
> - correct it. In the latter case the corrections or corrected symbols must probably be marked somehow. I can place (?) above the corrected note or rest, which is not very specific.
>
> I would tather like to parenthesize these added augmenation dots but I've not found a way to do that.
>
> Is it at all possible? And if yes, how?
>
> Thanks in advance for any advice.
>
> Best regards,
>
> Robert Blackstone
>
>

Hi,

here my approach:


\version "2.19.60"

#(define (parenthesize-dot parentheses-item)
  (let* ((dot (ly:grob-object (ly:grob-parent parentheses-item Y) 'dot)))
    (if (not (null? dot))
        (begin
          (set! (ly:grob-object parentheses-item 'elements) '())
          ;; -0.2 found by try and error
          (ly:grob-set-property! parentheses-item 'padding -0.2)
          (ly:pointer-group-interface::add-grob parentheses-item 'elements dot)
          (ly:stencil-translate-axis
            (parentheses-item::print parentheses-item)
            0.2 ;; 0.2 found by try and error
            X))
        (parentheses-item::print parentheses-item))))

%% a possible tweak, not demonstrated in the example, thus commented
% parenthesizeDot =
%   \tweak ParenthesesItem.stencil #(lambda (grob) (parenthesize-dot
grob))
%   \parenthesize
%   \etc

parenthesizeDots =
  \temporary
  \override ParenthesesItem.stencil = #(lambda (grob) (parenthesize-dot grob))

defaultParentheses =
  \revert ParenthesesItem.stencil



{
    \time 3/4

    \parenthesizeDots

    \parenthesize d'2.
    <\parenthesize d' f'>2.
    < d' \parenthesize f'>2.
    \parenthesize r2.
    \parenthesize <d' f'>2.
    %% no effect here, because \parenthesize is missing, although the
    %% ParenthesesItem.stencil-override is present
    <d' f'>2.

    %% back to default
    \defaultParentheses
    \parenthesize <d' f'>2.
}

HTH,
  Harm

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

David Nalesnik
In reply to this post by Lukas-Fabian Moser
Hi,

On Wed, May 24, 2017 at 12:47 PM, Lukas-Fabian Moser <[hidden email]> wrote:
> Hi Robert,
>
>>
>> I would tather like to parenthesize these added augmenation dots but I've
>> not found a way to do that.
>
>
> I don't know how to parenthesize them, but here is a solution yielding
> brackets around them:

You can use the function parenthesize-stencil to do this.

>
> \version "2.19.44"
>
> #(define (special-bracketify original-stencil len thick protusion padding)
>   (let* (
>          (left-bracket (ly:bracket Y (cons (- len) len) thick (-
> protusion)))
>          (right-bracket (ly:bracket Y (cons (- len) len) thick protusion)))
>     (set! original-stencil
>  (ly:stencil-combine-at-edge original-stencil X RIGHT right-bracket (- -0.73
> padding)))
>     (set! original-stencil
> (ly:stencil-combine-at-edge original-stencil X RIGHT left-bracket padding))
>     original-stencil))
>
> bracketDot = \once \override Dots.stencil = #(lambda (grob)
>     (special-bracketify (ly:dots::print grob) 0.4 0.1 0.2 0))
> % first number (0.4): bracket length
> % second number (0.1): thickness
> % third number (0.2): protrusion
> % fourth number (0.1): space between dot and brackets
>
>
>  {
>   c''4.
>   r8
>   \bracketDot
>   a'4.
>   r8
> }
>
>
> Question to the experts: If I unterstand my own code correctly :-), the
> right-hand edge of the dot stencil (used by stencil-combine-at-edge) is the
> right-most part of the dot itself, while the left-hand edge seems to be the
> right-most part of the note the dot is attached to.
> For this reason I took (for the left bracket) the *right* hand edge of the
> dot and added offsets with trial-and-error, which should be fine since I
> assume the dot will have the same size wherever it occurs. But nevertheless
> there must be a more conceptual way?

The dots are created by a character in the font which consists of the
actual dot and whitespace to the left.  (This means that the space
between dots can't be adjusted.  I wonder if it would be better to
trim the character and add a property, like 'dot-separation.)

You can go your route, adding the brackets individually with an
offset, or you could make your own dots, gleaning information from the
dots.dot glyph. That's what I do below.  (You can get either
parentheses or brackets.)

%%%%%%%%%%%%%%%%%
\version "2.19.44"

#(define (parenthesized-dots grob)
   (let ((mol empty-stencil)
         (c (ly:grob-property grob 'dot-count)))
     (if (number? c)
         (let* ((d (ly:font-get-glyph (ly:grob-default-font grob) "dots.dot"))
                (thick (ly:output-def-lookup (ly:grob-layout grob)
'line-thickness))
                (Y-ext (ly:stencil-extent d Y))
                (replacement-dot (make-circle-stencil
                                  (/ (- (interval-length Y-ext) thick) 2)
                                  thick
                                  #t))
                (dw (interval-length (ly:stencil-extent d X)))
                (mol-lst (make-list c replacement-dot))
                (mol (reduce
                      (lambda (elem prev) (ly:stencil-combine-at-edge
prev X RIGHT elem dw))
                      point-stencil
                      mol-lst))
                ; to make brackets instead
                ; stencil, axis, thick, protrusion, padding
                ;(mol (bracketify-stencil mol Y thick 0.2 0))
                ; stencil, half-thickness, width, angularity, padding
                (mol (parenthesize-stencil mol (/ thick 2) 0.2 0 0))
                (mol (ly:stencil-translate-axis mol (+ dw thick) X)))
           mol))))

parenthesizeDots = \override Dots.stencil = #parenthesized-dots

{
  \parenthesizeDots
  c''4 r
  c''4. r8
  c''4.. r16
  c''4... r32
  c''4.... r64
  c''4..... r128
}

%%%%%%%%%%%

Hope this helps,
David

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

Simon Albrecht-2
In reply to this post by Robert Blackstone-2
Am 24.05.2017 um 10:58 schrieb Robert Blackstone:
> For two consecutive bars the time seems to have changed, from 6/2 to
> 5/2, which, as far as I know, was never done in that period.

This makes me think of John Dowland, who used bar lines in his songs,
but quite irregularly (depending on the ‘phrasing’), so there are ‘bars’
of 5/2 and similar (IIRC).

> There is, in fact no time signature at all but 11 of the 13 bars in
> the fragment are clearly in 6/2 (or perhaps 3/1) and 2 bars contain
> notes and rests in both staves that add up to 5/2
>
> That leaves me with the choice: either to ignore it, or correct it.

There is no ‘standard’ way to proceed – you have to decide which makes
more sense musically and from the context. Or you could ask someone who
is well acquainted with that particular kind of repertoire.

Best, Simon

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

Thomas Morley-2
In reply to this post by David Nalesnik
Hi David,

2017-05-24 22:40 GMT+02:00 David Nalesnik <[hidden email]>:

> Hi,
>
> On Wed, May 24, 2017 at 12:47 PM, Lukas-Fabian Moser <[hidden email]> wrote:
>> Hi Robert,
>>
>>>
>>> I would tather like to parenthesize these added augmenation dots but I've
>>> not found a way to do that.
>>
>>
>> I don't know how to parenthesize them, but here is a solution yielding
>> brackets around them:
>
> You can use the function parenthesize-stencil to do this.
>>
>> \version "2.19.44"
>>
>> #(define (special-bracketify original-stencil len thick protusion padding)
>>   (let* (
>>          (left-bracket (ly:bracket Y (cons (- len) len) thick (-
>> protusion)))
>>          (right-bracket (ly:bracket Y (cons (- len) len) thick protusion)))
>>     (set! original-stencil
>>  (ly:stencil-combine-at-edge original-stencil X RIGHT right-bracket (- -0.73
>> padding)))
>>     (set! original-stencil
>> (ly:stencil-combine-at-edge original-stencil X RIGHT left-bracket padding))
>>     original-stencil))
>>
>> bracketDot = \once \override Dots.stencil = #(lambda (grob)
>>     (special-bracketify (ly:dots::print grob) 0.4 0.1 0.2 0))
>> % first number (0.4): bracket length
>> % second number (0.1): thickness
>> % third number (0.2): protrusion
>> % fourth number (0.1): space between dot and brackets
>>
>>
>>  {
>>   c''4.
>>   r8
>>   \bracketDot
>>   a'4.
>>   r8
>> }
>>
>>
>> Question to the experts: If I unterstand my own code correctly :-), the
>> right-hand edge of the dot stencil (used by stencil-combine-at-edge) is the
>> right-most part of the dot itself, while the left-hand edge seems to be the
>> right-most part of the note the dot is attached to.
>> For this reason I took (for the left bracket) the *right* hand edge of the
>> dot and added offsets with trial-and-error, which should be fine since I
>> assume the dot will have the same size wherever it occurs. But nevertheless
>> there must be a more conceptual way?
>
> The dots are created by a character in the font which consists of the
> actual dot and whitespace to the left.  (This means that the space
> between dots can't be adjusted.

To illustrate:

{
  \once \override Dots.stencil =
    #(lambda (grob) (box-stencil (ly:dots::print grob) 0 0))
  <a' c'' e''>4.
}

> I wonder if it would be better to
> trim the character and add a property, like 'dot-separation.)

I tend to agree, though, more for DotColumn than Dots, I assume.
And DotColumn is a beasty thing ...

> You can go your route, adding the brackets individually with an
> offset, or you could make your own dots, gleaning information from the
> dots.dot glyph. That's what I do below.  (You can get either
> parentheses or brackets.)
>
> %%%%%%%%%%%%%%%%%
> \version "2.19.44"
>
> #(define (parenthesized-dots grob)
>    (let ((mol empty-stencil)
>          (c (ly:grob-property grob 'dot-count)))
>      (if (number? c)
>          (let* ((d (ly:font-get-glyph (ly:grob-default-font grob) "dots.dot"))
>                 (thick (ly:output-def-lookup (ly:grob-layout grob)
> 'line-thickness))
>                 (Y-ext (ly:stencil-extent d Y))
>                 (replacement-dot (make-circle-stencil
>                                   (/ (- (interval-length Y-ext) thick) 2)
>                                   thick
>                                   #t))
>                 (dw (interval-length (ly:stencil-extent d X)))
>                 (mol-lst (make-list c replacement-dot))
>                 (mol (reduce
>                       (lambda (elem prev) (ly:stencil-combine-at-edge
> prev X RIGHT elem dw))
>                       point-stencil
>                       mol-lst))
>                 ; to make brackets instead
>                 ; stencil, axis, thick, protrusion, padding
>                 ;(mol (bracketify-stencil mol Y thick 0.2 0))
>                 ; stencil, half-thickness, width, angularity, padding
>                 (mol (parenthesize-stencil mol (/ thick 2) 0.2 0 0))
>                 (mol (ly:stencil-translate-axis mol (+ dw thick) X)))
>            mol))))
>
> parenthesizeDots = \override Dots.stencil = #parenthesized-dots
>
> {
>   \parenthesizeDots
>   c''4 r
>   c''4. r8
>   c''4.. r16
>   c''4... r32
>   c''4.... r64
>   c''4..... r128
> }

Well done. Though I can't see a way how to parenthesize only one dot in
<c'' d''>4.

So I prefer my coding at
http://lists.gnu.org/archive/html/lilypond-user/2017-05/msg00371.html

Otoh, with your coding and only a little additional code it is be
possible to parenthesize only the last dot in
c''4..
but not with mine.

#(define (parenthesized-dots grob)
   (let ((mol empty-stencil)
         (c (ly:grob-property grob 'dot-count)))
     (if (number? c)
         (let* ((d (ly:font-get-glyph (ly:grob-default-font grob) "dots.dot"))
                (thick (ly:output-def-lookup (ly:grob-layout grob)
'line-thickness))
                (Y-ext (ly:stencil-extent d Y))
                (replacement-dot (make-circle-stencil
                                  (/ (- (interval-length Y-ext) thick) 2)
                                  thick
                                  #t))
                (dw (interval-length (ly:stencil-extent d X)))
                (mol-lst (make-list c replacement-dot))
;; added
                ;; all but elegant,
                ;; just a proof of concept:
                (mol-lst
                  (append
                     (drop-right mol-lst 1)
                     (list
                       (parenthesize-stencil
                         replacement-dot (/ thick 2) 0.2 0 0))))
                (mol (reduce
                      (lambda (elem prev)
                        (ly:stencil-combine-at-edge prev X RIGHT elem dw))
                      point-stencil
                      mol-lst))
                ; to make brackets instead
                ; stencil, axis, thick, protrusion, padding
                ;(mol (bracketify-stencil mol Y thick 0.2 0))
                ; stencil, half-thickness, width, angularity, padding
;; commented
                ;(mol (parenthesize-stencil mol (/ thick 2) 0.2 0 0))
                (mol (ly:stencil-translate-axis mol (+ dw thick) X)))
           mol))))

>
> %%%%%%%%%%%
>
> Hope this helps,
> David

Cheers,
  Harm

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Can an augmentation dot be parenthesized?

Robert Blackstone-2
In reply to this post by Robert Blackstone-2
Good morning,

Thanks again for your answers to my question and for showing how to do it.

My question now is: Shouldn't your solutions be added to the LilyPond snippet repository?

I have collected the three possibilities, with your comments (outcommented,) in one testfile which could perhaps be used in some way.
I'm unfamiliar with the procedure of submitting items for the snippet repository but I have the feeling that it is not for me to do it.

Best regards,
Robert





_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Augmentattion-dot-parenthesizing-tests_all.ly (4K) Download Attachment