lilypond-user
[Top][All Lists]
Advanced

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

Future of OpenLilyLib


From: Mark Knoop
Subject: Future of OpenLilyLib
Date: Mon, 21 Nov 2022 17:09:38 +0000
User-agent: mu4e 1.8.11; emacs 28.1

With the imminent release of LilyPond 2.24, I thought it would be good
to (once again) raise the topic of OpenLilyLib. There has been some
recent movement on this (thanks to Jean and Andrew) to get the code
mostly working with recent LilyPond versions and Guile 2.

I have also just pushed a bunch of commits to resolve (as far as I can
tell) the remaining errors and warnings, at least in the usage examples
included in the repositories. (See pull requests below.)

I believe there is still an important role for OpenLilyLib - the
edition-engraver in particular is an integral part of my own usage of
LilyPond - and it would seem to me to be a much better vehicle than the
LSR for anything more complex than small code examples. The recent
discussions on the lilypond-user list regarding the \alignTo function
and Jean's lyric spacing code would indicate that these would be prime
contenders for inclusion.

It would be good to get a feel from users how much this resource is
used, and which bits are most important to maintain. Following are my
impressions of the current problems with openlilylib and a proposal to
(begin to) address them.

## Problems

- unclear documentation
- too many repositories, duplicated and out-of-date content
- un-maintained code

## Proposal

1. Centralize into main 'entry-point' repository using git submodules
   containing newest, working code. This will contain clear instructions
   as to how to install `openlilylib`.

2. Update, fix or remove non-working code from this core set

3. Only target current stable LilyPond from 2.24.0 onwards (update to
   2.23.81 for now)

### Core repositories

I propose to include these as git submodules.

- `oll-core` :: core functions
- `edition-engraver`, and these packages that depend on it
  - `breaks`, `page-layout`, `partial-compilation`
- `analysis` :: graphical highlighting of musical analysis
- `ji` :: just intonation
- `notation-fonts` :: manage font selection
- `oll-misc` :: various helper functions
- `stylesheets` :: hierarchical stylesheets
- `scholarly` :: toolbox for annotating scores

### Older repositories - propose to deprecate

AFAICT these are deprecated and/or unused. I propose they are
"officially" dropped unless there are any regular users who are able to
maintain them.

- `openlilylib` :: very deprecated - turn this into the 'entry-point' repository
- `LO-ly` :: moved to https://github.com/OOoLilyPond
- `bezier` :: slur-attachment function and improved `\shape`
- `contemporary` :: nothing here
- `gridly` :: music editing in independent segments
- `grob-tools` :: moved to `oll-core`
- `lalily-templates` :: template package
- `lilypond-export` :: export to other formats
- `snippets` :: mostly moved to `oll-misc`
- `templates` :: templates and predefined instruments

## Pull requests

- https://github.com/openlilylib/oll-misc/pull/10
- https://github.com/openlilylib/scholarly/pull/73
- https://github.com/openlilylib/analysis/pull/17
--
Mark Knoop



reply via email to

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