lilypond-devel
[Top][All Lists]
Advanced

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

Re: Issue 185: Remove Pitch_squash_engraver (issue 35080044)


From: dak
Subject: Re: Issue 185: Remove Pitch_squash_engraver (issue 35080044)
Date: Fri, 29 Nov 2013 23:31:57 +0000

Reviewers: J. Rohrer,

Message:
On 2013/11/29 19:28:44, J. Rohrer wrote:
To make sure I understand correctly (unfortunately I cannot test the
patch right
now, I only looked over the diffs): After this change,

- you can still freely mix squashed and unsquashed voices in one
staff,

Yes.  The Pitch_squash_engraver actually does exactly that: if
squashedPosition is not set to a numeric value, it does nothing.

- to squash notes in one voice, you just set Voice.squashedPosition to
an
appropriate numeric value, and
- to stop squashing again, you set it to #f (anything non-numeric
actually).

Correct?

Not "anything non-numeric": LilyPond will protest against most.  #f and
#'() are always permitted (#f switches off, and #'() defers judgment to
the parent context setting).

And it only affects Note_heads_engraver for now: Pitch_squash_engraver
worked on anything including custom engravers.  I did not see the point
for Drum_notes_engraver but may be convinced otherwise.

If so, this is a nice simplification IMO.

The most logical simplification would have been
\override NoteHead.staff-position = #0
but that could not easily have been made to encompass the "leave only
one notehead" functionality.

Description:
Issue 185: Remove Pitch_squash_engraver

Actually, this issue is called "RhythmicStaff squishing chords should
produce single notes" and that's one thing that it does.  But in the
course of it, it completely replaces the Pitch_squash_engraver since
the Note_heads_engraver has to look at squashedPosition anyway in
order to decide how many note events to handle.

Articulations and fingerings on spurious noteheads get lost when
squashing.  It would be conceivable to transfer them to the remaining
note event, but it's not clear that this would not cause problems of
its own.

Contains convert-ly rules as well.


Additional commits:

Perfunctorily remove bad links to Pitch_squash_engraver in translations


A few documentation fixes after removing Pitch_squash_engraver


Run scripts/auxiliar/update-with-convert-ly.sh

Please review this at https://codereview.appspot.com/35080044/

Affected files (+72, -164 lines):
  M Documentation/de/essay/engraving.itely
  M Documentation/de/notation/changing-defaults.itely
  M Documentation/de/notation/pitches.itely
  M Documentation/de/notation/rhythms.itely
  M Documentation/es/essay/engraving.itely
  M Documentation/es/notation/changing-defaults.itely
  M Documentation/es/notation/pitches.itely
  M Documentation/es/notation/rhythms.itely
  M Documentation/essay/engraving.itely
  M Documentation/fr/essay/engraving.itely
  M Documentation/fr/notation/changing-defaults.itely
  M Documentation/fr/notation/pitches.itely
  M Documentation/fr/notation/rhythms.itely
  M Documentation/it/notation/pitches.itely
  M Documentation/it/notation/rhythms.itely
  M Documentation/ja/notation/changing-defaults.itely
  M Documentation/ja/notation/pitches.itely
  M Documentation/ja/notation/rhythms.itely
  M Documentation/notation/changing-defaults.itely
  M Documentation/notation/pitches.itely
  M Documentation/notation/rhythms.itely
  M Documentation/snippets/engravers-one-by-one.ly
  M Documentation/snippets/guitar-strum-rhythms.ly
  M input/regression/no-staff.ly
  M lily/include/lily-proto.hh
  M lily/note-heads-engraver.cc
  D lily/pitch-squash-engraver.cc
  M ly/engraver-init.ly
  M python/convertrules.py
  M scm/define-context-properties.scm





reply via email to

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