Thanks for looking into it. The issue describes the situation well. I've almost succeded in implementing the first solution with config (in oll core), but it was too messy so I dropped it. But then, the new proposal with "applyOpts" seems to be more elegant.
Will keep an eye on oll activity, Pedro Em qui, 4 de abr de 2019 05:50, Urs Liska <li...@openlilylib.org> escreveu: > Hi Pedro, > > I've now looked into the code, and the issue is the following > > \loadPackage \with { > option = "B" > } local > > will set the option correctly, but only *after* loading the package. This > means the option is available within your test.ly file after loading the > package. This is basically a shorthand for loading the package and *then* > configuring it. > > What is currently not possible is setting the option in a way that the > package itself can make use of it. This is exactly the issue I referenced > (only that I had only noticed it on the *module* level). So what is needed > is basically a workaround similar to what you did, but it should be done in > oll-core, not by an individual package. > > I hope this can be fixed rather soon (it shouldn't be that hard but I > currently have to restrain myself from diving into such issues). > > Urs > Am 30.03.19 um 23:45 schrieb Pedro Pessoa: > > Hello, > I'm trying to use OLL infrastructure to organize my local toolset. I'm > mostly trying to mimic the structure of other packages and modules. I've an > aparently working package called 'local', where I intend to put all my > personal tools as modules/submodules. > > I'm currently having an apparently simple problem dealing with options. > The option I set on the loadPackage or loadModule "\with" does not take > precedence over the value used in register the options. > > Eg: > %%% file: local/package.ily > > \include "oll-core/package.ily" > \registerOption local.option "A" > #(display (getOption '(local option))) > > %%% end > > %%% file: whatever/project.ly > > \include "oll-core/package.ily" > \loadPackage \with { > option = "B" > } local > > %%% end > > -- Outputs: "A" > > > > > I've came up with a workaround, but then I tought that is most likely I just > don't know how to proper handle it. "\registerDefaultOpt" is a simple > function that only register the value if the option is unregistered. > > %%% file: local/package.ily > > \include "oll-core/package.ily" > \registerDefaultOpt local.option "A" > #(display (getOption '(local option))) > > %%% end > > %%% file: whatever/project.ly > > \include "oll-core/package.ily" > \registerOption local.option "B" > \loadPackage local > > %%% end > > -- Outputs: "B" > > > > So the question is: how to properly handle this? > Cheers, > -- Pedro Pessoa > > > > -- > Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html > > _______________________________________________ > lilypond-user mailing > listlilypond-user@gnu.orghttps://lists.gnu.org/mailman/listinfo/lilypond-user > > _______________________________________________ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user >
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user