[Top][All Lists]

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

[Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] Ticket 1375 di

From: Auto mailings of changes to Lily Issues
Subject: [Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] Ticket 1375 discussion
Date: Sat, 28 Jan 2017 00:33:36 +0000

Issue 1375: Scheme engravers support in and documentation

This is sort of basic. For one thing, registered engravers will bleed
into the following sessions for now. For another,
ly:register-translator is very rigid about the format of the
translator description. Then there still is only support for Scheme
engravers (rather than other translators).

Documentation for the feature itself is basically non-existent, so are
regtests. As long as the feature is in a state where more than
internal use is not advisable, that's tolerable.

Consists of commits:

Register scheme engravers

This registers Measure_counter_engraver and Span_stem_engraver
to make them documented and callable like C++ engravers.

Create Translator_creator class

Previously, translators were created by copying from a context-less
instantiation of the translator containing its documentation. This had
several unpleasant consequences, the most problematic likely being the
inability to register Scheme engravers because their documentation would
be identical to all other Scheme engravers.

A new Translator_creator class takes over the task of creating
Translator instances when called with a context argument.

As a result of joining the mechanisms for Scheme engravers and C++
engravers, ly:translator-name and ly:translator-description are
reimplemented in a manner resembling object properties.

Let Translator constructor take a Context argument

This is the first step towards constructing rather than cloning translators
when creating contexts. On its own, it does not make sense, but the change
is large and mostly mechanical, so keeping it separate from the actually
difficult parts makes sense.

[issues:#1375] Enhancement: Scheme engravers support in and documentation

Status: Started
Created: Sun Oct 31, 2010 03:34 AM UTC by Anonymous
Last Updated: Sat Jan 28, 2017 12:33 AM UTC
Owner: David Kastrup

Originally created by: *anonymous

Originally created by: v.villenave
Originally owned by: address@hidden

Since the 2.13.11, we've had the ability of implementing engravers using Scheme only.  However, this currently has two limitations: such engravers may not be directly \consisted in, and no proper documentation support has been implemented.

Read for example the following discussion, where an engraver had to be rewritten in C++ just because of these limitations:

Sent from because address@hidden is subscribed to

To unsubscribe from further messages, a project admin can change settings at Or, if this is a mailing list, you can unsubscribe from the mailing list.

Check out the vibrant tech community on one of the world's most
engaging tech sites,!
Testlilyissues-auto mailing list

reply via email to

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