Skip to content

Conversation

uliska
Copy link
Contributor

@uliska uliska commented Apr 6, 2017

ID mods are property overrides that are addressed to individual
grobs by their ID.

They are able to apply everything that can be achieved through overriding grob properties, i.e. everything that can be done with \once \override or \tweak.

One potential issue I see is that using the ID mods "uses up" the before-line-breaking callback of the grobs that are activated.

Another thing to be discussed is the new grob property 'eidI defined. Of course it would be more natural to use the existing 'id property. But using IDs to address elements and to store mods requires the ID property to be of type symbol? because there will be a potentially huge alist with mods, and symbols are significantly more efficient as lookup keys.

Finally I'm not completely sure if the naming of the mod commands is ideal:

  • \idMod
  • \idMods
  • \idModList
  • \idVarModList

is the current state. I deliberately leave that uncommented here so people can look at them without being told beforehand what they mean. Their meaning and use is commented in the source files.


The fundamental question is if these functions are a natural fit as complement to the existing edition-engraver mods.

  • Is it a good idea to add this option to the edition-engraver in this way?
  • Should the edition-engraver functions themselves be updated instead so they can also work with IDs?
  • Or should the ID mods be separated out in their own package?
  • Is the naming sufficiently consistent?

ID mods are property overrides that are addressed to individual
grobs by their ID.
Copy link
Contributor Author

@uliska uliska left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure you intended to push this commit on top of the pull request branch id-mods?

@jpvoigt
Copy link
Collaborator

jpvoigt commented Apr 24, 2017

No, it was intended for master, as its just another demo file. The [WIP] in the subject is misleading, but now its pushed ... I will create another branch on the issue later.

@uliska
Copy link
Contributor Author

uliska commented Apr 24, 2017

You can set this branch back by one commit and re-push. I haven't touched it and I'm very sure noone else has either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants