bug-lilypond
[Top][All Lists]
Advanced

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

Ottava bracket


From: Noeck
Subject: Ottava bracket
Date: Sat, 15 Feb 2014 16:59:04 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Hi,

considering the statement by Gould below and my personal findings,
I would like to see the following change to the ottavation bracket be
added to LilyPond like proposed in this thread:
http://lists.gnu.org/archive/html/lilypond-user/2014-02/msg00321.html
and now updated in this mail.
Could this be added to the issues as a wish or enhancement (it is even a
bit ugly).

Cheers,
Joram


Here is my wish including examples:


>> What does E. Gould say ...
>
> Page 28:
>> The octave sign is written in italic, the numeral '8' is 1 1/2
>> stave-paces high.  The optional 'va' is placed flush with the top of
>> _ottava sopra_ (_8^va_), flush with the base of _ottava bassa_ (_8va_).
>>
>> Indicate the extent of the transposition with a line of dashes
>> (hereafter called a dotted line).  The line extends from the top edge
>> of the _8_ for _8 sopra_ and the base of the _8_ for _8 bassa_, and
>> runs parallel to the stave.
>
> And those 8s look bold to me.
>
> Brian Barker

This has something in common with the current situation, but these
points are different:
- there should be super/subscript for va etc.
- it should be bold
- the lines should be at the top edge/base and not in the middle

Here is my incomplete suggestion with some comments:

Text positioning:
- \super does not look good
- \raise depends on the staff size (not on the font size)
- therefore \translate-scaled
- the value is a compromise for 8 and 15 which look slightly different
- should we add text for a third octave to LP? ±3 (i.e. 22va and 22vb)
  (this is easy in scm/define-music-callbacks.scm)
  or a general text calculated from the octavation:
  |octavation|*7 + 1 and va if octavation > 0, vb if octavation < 0

Lines
- The lines are unchanged but they should go to the top line or base
  line respectively.
- The right edge would look better if it was a solid vertical line
  (without a dash gap)
- I have seen more dotted than dashed lines, but that’s debatable.

This snippet shows what I propose as default. If accepted, the markups
would have to be translated to scheme:

\version "2.18.0"

ottavaaI = { % this is an alternative proposal to all the rest
  \ottava 1
  \set Staff.ottavation = \markup  \concat {
   \bold "8" \fontsize #-2 \translate-scaled #'(0 . 0.85) "va"
  }
}

ottavaa = {
  \ottava 1
  \set Staff.ottavation = \markup  \concat {
   \bold "8" \fontsize #-2 \translate-scaled #'(0 . 0.85) "va"
  }
}

ottavab = {
  \ottava -1
  \set Staff.ottavation = \markup \bold \concat{
    "8" \fontsize #-2 "vb" }
}

ottavac = {
  \ottava 2
  \set Staff.ottavation = \markup \bold \concat{
    "15" \fontsize #-2 \translate-scaled #'(0 . 0.85) "ma"
  }
}

ottavad = {
  \ottava -2
  \set Staff.ottavation = \markup \bold \concat{
    "15" \fontsize #-2 "mb" }
}

ottavae = {
  \ottava 3
  \set Staff.ottavation = \markup \bold \concat {
    "22" \tiny \translate-scaled #'(0 . 0.85) "ma"
  }
}

ottavaf = {
  \ottava -3
  \set Staff.ottavation = \markup \bold \concat {
    "22"\fontsize #-2 "mb"
  }
}

<<
  \new Staff \relative c''' {
    \ottava #1 a a
    \ottava #-1 a,, a
    \ottava #2 a''' a
    \ottava #-2 a,,,, a
    \ottava #3 a''''' a
    \ottava #-3 a,,,,,, a
    \ottava #0
  }
  \new Staff \relative c''' {
    \ottavaa a a
    \ottavab a,, a
    \ottavac a''' a
    \ottavad a,,,, a
    \ottavae a''''' a
    \ottavaf a,,,,,, a
    \ottavaaI a'''' a
  }
>>



This function might also be helpful, but is perhaps overkill:

#(define-markup-command (topalign layout props arg)
(markup?)
(let* ((mol (interpret-markup layout props arg)))
(ly:stencil-aligned-to mol Y 1)))

\markup \huge \bold \italic \concat {AB \topalign 8 \topalign \tiny va}




reply via email to

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