diff options
| author | Dan Eble <[email protected]> | 2025-10-19 07:24:36 -0400 |
|---|---|---|
| committer | Dan Eble <[email protected]> | 2025-10-24 15:38:53 -0400 |
| commit | 7037b9e19fcbd86ffcabfdb1c880b68735a628ec (patch) | |
| tree | 03f9f4ec8e4d99a8f85efd9525e8c30bbaf421c5 | |
| parent | efdb7dd6d1073ef141d319e92957a79efa8dea77 (diff) | |
| download | lilypond-master.tar.gz | |
The name `\enablePolymeter` was too general. It is not for use in
polymetric scores where measures start and end at the same points in all
staves, as demonstrated in the NR under the heading, "Different time
signatures with equal-length measures."
20 files changed, 67 insertions, 60 deletions
diff --git a/Documentation/ca/essay/engraving.itely b/Documentation/ca/essay/engraving.itely index 0e5b0be400..0ec2e00b86 100644 --- a/Documentation/ca/essay/engraving.itely +++ b/Documentation/ca/essay/engraving.itely @@ -8,7 +8,7 @@ Guide, node Updating translation committishes.. @end ignore -@c \version "2.23.7" +@c \version "2.25.30" @c Translator: Walter Garcia-Fontes @@ -1094,7 +1094,7 @@ considerem un exemple musical més complicat: @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } \new PianoStaff << diff --git a/Documentation/en/changes.tely b/Documentation/en/changes.tely index 394dc0874f..7b91cf0952 100644 --- a/Documentation/en/changes.tely +++ b/Documentation/en/changes.tely @@ -306,6 +306,11 @@ Certain spurious change clefs have been fixed. @itemize @item +@code{\enablePolymeter} has been renamed to +@code{\enablePerStaffTiming} to avoid confusion because it is +recommended in only a subset of polymetric use cases. + +@item The @code{TimeSignature@/.time-signature} property replaces the old @code{fraction} property. The new property is more general and can be overridden, which allows certain tricks without diff --git a/Documentation/en/essay/engraving.itely b/Documentation/en/essay/engraving.itely index ed2776ca81..9511f9020a 100644 --- a/Documentation/en/essay/engraving.itely +++ b/Documentation/en/essay/engraving.itely @@ -8,7 +8,7 @@ Guide, node Updating translation committishes.. @end ignore -@c \version "2.25.8" +@c \version "2.25.30" @node Music engraving @@ -1042,7 +1042,7 @@ consider a more complicated musical example: @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } \new PianoStaff << diff --git a/Documentation/en/notation/rhythms.itely b/Documentation/en/notation/rhythms.itely index 199c9ad39b..0aadcd6930 100644 --- a/Documentation/en/notation/rhythms.itely +++ b/Documentation/en/notation/rhythms.itely @@ -1437,7 +1437,7 @@ established for different staves by enabling polymetric notation } >> \layout { - \enablePolymeter + \enablePerStaffTiming } } @end lilypond @@ -2022,11 +2022,11 @@ affect the auto-beaming rules. @subsubheading Different time signatures with unequal-length measures Each staff can be given its own independent time signature as soon -as @code{\enablePolymeter} is placed in the @code{\layout} block. +as @code{\enablePerStaffTiming} is placed in the @code{\layout} block. @lilypond[quote,verbatim] \layout { - \enablePolymeter + \enablePerStaffTiming } % Now each staff has its own time signature. @@ -2053,7 +2053,7 @@ as @code{\enablePolymeter} is placed in the @code{\layout} block. >> @end lilypond -To have just one polymetric score, include @code{\enablePolymeter} +To have just one polymetric score, include @code{\enablePerStaffTiming} in a @code{\layout} block inside the @code{\score} block. @lilypond[verbatim,quote] @@ -2066,7 +2066,7 @@ in a @code{\layout} block inside the @code{\score} block. \score { \layout { - \enablePolymeter + \enablePerStaffTiming } << \new Staff { \time 4/4 c''1 1 } @@ -2084,7 +2084,7 @@ like hairpins is synchronized with bar lines. @c no verbatim on purpose @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } upper = { c'1 | d' | f' } @@ -2104,16 +2104,16 @@ dynamics = { s2. s2.\p\< s\> s\! } @end lilypond In order to use this feature with MIDI output, also include -@code{\enablePolymeter} in a @code{\midi} block. +@code{\enablePerStaffTiming} in a @code{\midi} block. @quotation @verbatim \layout { - \enablePolymeter + \enablePerStaffTiming } \midi { - \enablePolymeter + \enablePerStaffTiming } @end verbatim @end quotation diff --git a/Documentation/es/essay/engraving.itely b/Documentation/es/essay/engraving.itely index 57b8c3970c..94a3e705f8 100644 --- a/Documentation/es/essay/engraving.itely +++ b/Documentation/es/essay/engraving.itely @@ -8,7 +8,7 @@ Guide, node Updating translation committishes.. @end ignore -@c \version "2.25.8" +@c \version "2.25.30" @node Music engraving @@ -1122,7 +1122,7 @@ complejo: @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } \new PianoStaff << diff --git a/Documentation/es/notation/rhythms.itely b/Documentation/es/notation/rhythms.itely index 9c77224de0..e093c2db81 100644 --- a/Documentation/es/notation/rhythms.itely +++ b/Documentation/es/notation/rhythms.itely @@ -1496,7 +1496,7 @@ notation}). } >> \layout { - \enablePolymeter + \enablePerStaffTiming } } @end lilypond @@ -2093,11 +2093,11 @@ las duraciones afecta a las reglas de barrado automático. Se puede dar a cada pentagrama su propia indicación de compás independiente en el momento en que se escriba -@code{\enablePolymeter} dentro del bloque @code{\layout}. +@code{\enablePerStaffTiming} dentro del bloque @code{\layout}. @lilypond[quote,verbatim] \layout { - \enablePolymeter + \enablePerStaffTiming } % Now each staff has its own time signature. @@ -2125,7 +2125,7 @@ independiente en el momento en que se escriba @end lilypond Para tener solo una partitura polimétrica, escriba -@code{\enablePolymeter} en un bloque @code{\layout} dentro del +@code{\enablePerStaffTiming} en un bloque @code{\layout} dentro del bloque @code{\score}. @lilypond[verbatim,quote] @@ -2138,7 +2138,7 @@ bloque @code{\score}. \score { \layout { - \enablePolymeter + \enablePerStaffTiming } << \new Staff { \time 4/4 c''1 1 } @@ -2157,7 +2157,7 @@ como los reguladores se sincroniza con las barras de compás. @c no verbatim on purpose @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } upper = { c'1 | d' | f' } @@ -2177,16 +2177,16 @@ dynamics = { s2. s2.\p\< s\> s\! } @end lilypond Para poder usar esta funcionalidad con la salida MIDI, escriba -también @code{\enablePolymeter} dentro del bloque @code{\midi}. +también @code{\enablePerStaffTiming} dentro del bloque @code{\midi}. @quotation @verbatim \layout { - \enablePolymeter + \enablePerStaffTiming } \midi { - \enablePolymeter + \enablePerStaffTiming } @end verbatim @end quotation diff --git a/Documentation/fr/essay/engraving.itely b/Documentation/fr/essay/engraving.itely index ab7fb90f5b..179f4df7cd 100644 --- a/Documentation/fr/essay/engraving.itely +++ b/Documentation/fr/essay/engraving.itely @@ -8,7 +8,7 @@ Guide, node Updating translation committishes.. @end ignore -@c \version "2.25.8" +@c \version "2.25.30" @c Translators: Jean-Charles Malahieude, John Mandereau, Gauvain Pocentek @@ -1110,7 +1110,7 @@ musique se complique : @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } \new PianoStaff << diff --git a/Documentation/fr/notation/rhythms.itely b/Documentation/fr/notation/rhythms.itely index fcd307cb0b..142c135903 100644 --- a/Documentation/fr/notation/rhythms.itely +++ b/Documentation/fr/notation/rhythms.itely @@ -1478,7 +1478,7 @@ réglages particuliers pour les différentes portées d'un regroupement -- } >> \layout { - \enablePolymeter + \enablePerStaffTiming } } @end lilypond @@ -2055,12 +2055,12 @@ ligature automatique. @c VO Different time signatures with unequal-length measures Il arrive aussi que chaque portée ait sa propre métrique. Vous y -parviendrez en insérant l'instruction @code{\enablePolymeter} dans le +parviendrez en insérant l'instruction @code{\enablePerStaffTiming} dans le bloc @code{\layout}. @lilypond[quote,verbatim] \layout { - \enablePolymeter + \enablePerStaffTiming } % Now each staff has its own time signature. @@ -2088,7 +2088,7 @@ bloc @code{\layout}. @end lilypond Lorsqu'un seul morceau est polymétrique, l'instruction -@code{\enablePolymeter} sera placée dans la section @code{\layout} du +@code{\enablePerStaffTiming} sera placée dans la section @code{\layout} du bloc @code{\score} considéré. @lilypond[verbatim,quote] @@ -2101,7 +2101,7 @@ bloc @code{\score} considéré. \score { \layout { - \enablePolymeter + \enablePerStaffTiming } << \new Staff { \time 4/4 c''1 1 } @@ -2120,7 +2120,7 @@ synchronisé sur les barres de mesure. @c no verbatim on purpose @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } upper = { c'1 | d' | f' } @@ -2145,11 +2145,11 @@ qu'elle est libellée dans le bloc @code{\midi}. @quotation @verbatim \layout { - \enablePolymeter + \enablePerStaffTiming } \midi { - \enablePolymeter + \enablePerStaffTiming } @end verbatim @end quotation diff --git a/Documentation/it/essay/engraving.itely b/Documentation/it/essay/engraving.itely index 4e37f80579..c5aa88116d 100644 --- a/Documentation/it/essay/engraving.itely +++ b/Documentation/it/essay/engraving.itely @@ -8,7 +8,7 @@ Guide, node Updating translation committishes.. @end ignore -@c \version "2.23.8" +@c \version "2.25.30" @c Translators: Tommaso Gordini @c Translation checkers: Federico Bruni @@ -1075,7 +1075,7 @@ musicale più complesso: @lilypond[quote] \layout { - \enablePolymeter + \enablePerStaffTiming } \new PianoStaff << diff --git a/input/regression/alternating-time-beam-exceptions.ly b/input/regression/alternating-time-beam-exceptions.ly index 95322a64d8..bb547ced21 100644 --- a/input/regression/alternating-time-beam-exceptions.ly +++ b/input/regression/alternating-time-beam-exceptions.ly @@ -1,4 +1,4 @@ -\version "2.25.28" +\version "2.25.30" \header { texidoc = "The beat structure and beaming exceptions for a component of a @@ -9,7 +9,7 @@ strictly alternating time signature are the same as when it appears alone." \layout { indent = 0 - \enablePolymeter + \enablePerStaffTiming } \fixed c' << diff --git a/input/regression/break-alignment-anchor-average-clamp.ly b/input/regression/break-alignment-anchor-average-clamp.ly index eb62bc3ede..50124258a5 100644 --- a/input/regression/break-alignment-anchor-average-clamp.ly +++ b/input/regression/break-alignment-anchor-average-clamp.ly @@ -1,4 +1,4 @@ -\version "2.23.14" +\version "2.25.30" \header { texidoc = "In this case, the compound time signature has a CENTER @@ -21,7 +21,7 @@ arrow should point there." \override TimeSignature.break-align-anchor-alignment = #RIGHT } - \enablePolymeter + \enablePerStaffTiming } \fixed c' << diff --git a/input/regression/break-alignment-anchor-average-midpoint.ly b/input/regression/break-alignment-anchor-average-midpoint.ly index d3afed57e0..4daa7012f9 100644 --- a/input/regression/break-alignment-anchor-average-midpoint.ly +++ b/input/regression/break-alignment-anchor-average-midpoint.ly @@ -1,4 +1,4 @@ -\version "2.23.14" +\version "2.25.30" \header { texidoc = "The ``average'' anchor of a diverse group of @@ -21,7 +21,7 @@ next." \override TimeSignature.break-align-anchor-alignment = #-0.75 } - \enablePolymeter + \enablePerStaffTiming } \fixed c' << diff --git a/input/regression/break-alignment-anchor-average-unanimous.ly b/input/regression/break-alignment-anchor-average-unanimous.ly index 501314e61f..65094d6930 100644 --- a/input/regression/break-alignment-anchor-average-unanimous.ly +++ b/input/regression/break-alignment-anchor-average-unanimous.ly @@ -1,4 +1,4 @@ -\version "2.23.14" +\version "2.25.30" \header { texidoc = "When a group of break-aligned items agree on the position @@ -16,7 +16,7 @@ point to the stated point relative to the compound time signature." \override TextMark.self-alignment-X = #CENTER } - \enablePolymeter + \enablePerStaffTiming } #(define-markup-command (test-mark layout props arg) diff --git a/input/regression/midi/midi-polymeter.ly b/input/regression/midi/midi-polymeter.ly index 1e72fc970d..760d80b871 100644 --- a/input/regression/midi/midi-polymeter.ly +++ b/input/regression/midi/midi-polymeter.ly @@ -1,13 +1,13 @@ -\version "2.23.7" +\version "2.25.30" \header { - texidoc = "@code{\enablePolymeter} can also be used with MIDI output. + texidoc = "@code{\enablePerStaffTiming} can also be used with MIDI output. This test should not produce bar check errors." } \score { \midi { - \enablePolymeter + \enablePerStaffTiming } << \new Staff { \time 3/4 c'2. | 4 2 | 2 4 | 4 4 4 } diff --git a/input/regression/partial-polymetric.ly b/input/regression/partial-polymetric.ly index f4fd3c5708..9085ae0d73 100644 --- a/input/regression/partial-polymetric.ly +++ b/input/regression/partial-polymetric.ly @@ -1,11 +1,11 @@ -\version "2.25.21" +\version "2.25.30" \header { - texidoc = "@code{\\partial} works with polymetric staves." + texidoc = "@code{\\partial} works with per-staff timing." } \layout { - \enablePolymeter + \enablePerStaffTiming } %% Weird beaming should make this test more sensitive to regressions in diff --git a/input/regression/polymeter-ossia-partial.ly b/input/regression/polymeter-ossia-partial.ly index f7072e8912..f4fce358f6 100644 --- a/input/regression/polymeter-ossia-partial.ly +++ b/input/regression/polymeter-ossia-partial.ly @@ -1,4 +1,4 @@ -\version "2.25.5" +\version "2.25.30" #(ly:set-option 'warning-as-error #t) @@ -13,7 +13,7 @@ usual." } \layout { - \enablePolymeter + \enablePerStaffTiming \context { \Staff diff --git a/input/regression/polymeter-ossia.ly b/input/regression/polymeter-ossia.ly index 262b4c16b7..43a8faed6f 100644 --- a/input/regression/polymeter-ossia.ly +++ b/input/regression/polymeter-ossia.ly @@ -1,4 +1,4 @@ -\version "2.25.5" +\version "2.25.30" #(ly:set-option 'warning-as-error #t) @@ -11,7 +11,7 @@ with the staff in 3/4 time (apart from its grace note) and end after } \layout { - \enablePolymeter + \enablePerStaffTiming \context { \Staff diff --git a/input/regression/polymeter.ly b/input/regression/polymeter.ly index f2a669a959..c3c3547e0b 100644 --- a/input/regression/polymeter.ly +++ b/input/regression/polymeter.ly @@ -1,12 +1,12 @@ -\version "2.23.7" +\version "2.25.30" \header { - texidoc = "The @code{\enablePolymeter} command turns on polymetric -notation, making time signatures independent between staves." + texidoc = "The @code{\enablePerStaffTiming} command makes @code{measureLength} +and other timing properties independent between staves." } \layout { - \enablePolymeter + \enablePerStaffTiming } << diff --git a/ly/context-mods-init.ly b/ly/context-mods-init.ly index fa97fb129c..403b49bebc 100644 --- a/ly/context-mods-init.ly +++ b/ly/context-mods-init.ly @@ -87,9 +87,9 @@ context @var{to} is accepted as a child by all contexts that also accept module) (ly:parser-error (G_ "Not in an output definition"))))) -enablePolymeter = +enablePerStaffTiming = #(define-void-function () () - (_i "Enable polymetry. + (_i "Enable polymeter with unaligned measures. This function moves the timing management from @code{Score} to @code{Staff}-like contexts. This is done by removing the @code{Timing_@/translator} from diff --git a/python/convertrules.py b/python/convertrules.py index 1fe9b3ab07..52b7a4c06e 100644 --- a/python/convertrules.py +++ b/python/convertrules.py @@ -5555,9 +5555,11 @@ def conv(s): @rule((2, 25, 30), r""" TimeSignature.fraction -> TimeSignature.time-signature +enablePolymeter -> enablePerStaffTiming """) def conv(s): s = re.sub(r'(TimeSignature\s*\.\s*)fraction\b', r'\1time-signature', s) + s = re.sub(r'\benablePolymeter\b', r'enablePerStaffTiming', s) return s |
