Hi Federico,

What I need is the ability to generate score in two view modes: each page
individually, or all pages together.

Imagine the use case. A user works page scan by page scan to make the
lilypond engraving look exactly like it was originally published (possible
already). Then they want to visualize all pages together (possible but only
as images, one after the other), and finally they want to download a single
.ly file or to render a typeset pdf, or generate a midi file from all the
pages together (not possible).

Yes, with the mediawiki extension we already can put all pages together
(see [1], if you hover your mouse over the small number on the left you
will see that is composed of two pages "100", "101"). When you click on
that number you go to the page view of either one, and  if you click edit
you will see the lilypond source of the corresponding page. But to
associate several independent pages as a bundle (for rendering, download,
or midi generation), that doesn't work.

>From our side we are considering each page as an individual independent
file. It was suggested by Urs to use one variable for each page, and then
render them either individually (when the user is in page view) or all
together (when the user request a download of the whole book/score).
However, lilypond is running in safe mode, thus variables are not
supported...

I hope I have better explained the problem now... any ideas about how to
proceed?

If you want to dig deeper you can take a look to our Extension:Proofread
Page [2] which manages transclusion. And if you'd like to go even a step
further and have a test environment, it is easy to set up a virtual machine
with Vagrant [3].

Cheers,
Micru

[1]
https://ca.wikisource.org/wiki/Segona_serie_de_can%C3%A7ons_populars_catalanes/Fum,_fum,_fum
[2] https://www.mediawiki.org/wiki/Extension:Proofread_Page
[3] https://www.mediawiki.org/wiki/MediaWiki-Vagrant



On Mon, May 12, 2014 at 4:53 PM, Federico Bruni <fedel...@gmail.com> wrote:

> Hi David
>
> I haven't totally understood what you need, but it seems to me that what
> you are looking for should be achieved by the Mediawiki extension, not by
> LilyPond.
>
>
>
> 2014-05-09 13:21 GMT+02:00 David Cuenca <dacu...@gmail.com>:
>
> Hi Urs,
>>
>> unfortunately we cannot work with files, nor variables. The only thing we
>> can do is to join text inputs. What we are after is a way to append the
>> source texts that generate individual pages and generate a valid lilypond
>> input just by adding a header/footer.
>>
>> Is that possible?
>>
>> Thanks
>> David
>>
>>
>> On Fri, May 9, 2014 at 12:31 PM, Urs Liska <u...@openlilylib.org> wrote:
>>
>>> Am 09.05.2014 12:26, schrieb Urs Liska:
>>>
>>>  Am 09.05.2014 12:16, schrieb David Cuenca:
>>>>
>>>>> Hi,
>>>>>
>>>>> I'm a contributor from Wikisource, an online digital library part of
>>>>> the
>>>>> Wikimedia Foundation, where we transcribe works in the public domain.
>>>>> Since
>>>>> last year we have enabled a mediawiki extension to render scores [1],
>>>>> which
>>>>> now enables our users to transcribe pages with music like these [2] [3]
>>>>>
>>>>> Of course that is great when a work is only one page long, but for us
>>>>> it
>>>>> becomes problematic to stitch together all the different pages into a
>>>>> single one (what we call "transclusion").
>>>>> Some users are just considering each page independent, but that doesn't
>>>>> allow us to generate a whole lilypond file for download. For instance
>>>>> check
>>>>> this Catalan song [4], if you click on "edit" you will see that we are
>>>>> combining two pages [5] and [6], where the text resides.
>>>>>
>>>>> What we would like is to combine these pages to generate the lilypond
>>>>> file.
>>>>> I have been checking the input structure documentation [7] and I found
>>>>> "\book" and "\bookpart", but I didn't see anything like "\bookpage".
>>>>> Is there any command that would help us to achieve the page separation
>>>>> that
>>>>> we need?
>>>>>
>>>>
>>>> If I'm not mistaken that should be quite easy to achieve.
>>>> You can organize LilyPond input in variables, and you can combine those
>>>> variables to larger units. That is, you don't use variables only to
>>>> store the different parts in a score, but you can also separate
>>>> different sections of it.
>>>>
>>>> I'm not completely sure if that fits your use case, but you may have a
>>>> start with something like:
>>>>
>>>> violinPageI = Ĺ—elative c'' {
>>>> % some music
>>>> }
>>>>
>>>> violinPageII = Ĺ—elative c'' {
>>>> % some music
>>>> }
>>>>
>>>> violinMusic = {
>>>>    \violinPageI
>>>>    \violinPageII
>>>> }
>>>>
>>>> \score {
>>>>    \new Staff \violinMusic
>>>> }
>>>>
>>>> With this you can as well create alternative scores for individual pages
>>>> if you like.
>>>>
>>>> Does that sound plausible?
>>>>
>>>> Best
>>>> Urs
>>>>
>>>>
>>> Oh, I've already a few additional remarks that I forgot.
>>>
>>> Of course you will want to store the variables in individual files and
>>> include them.
>>>
>>> If you have spanners reaching from one variable to another (e.g. slurs)
>>> you will have to enclose the variables in an explicitly created voice:
>>>
>>> violinMusic = \new Voice {
>>> % ...
>>> }
>>>
>>> Urs
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> lilypond-user mailing list
>>> lilypond-user@gnu.org
>>> https://lists.gnu.org/mailman/listinfo/lilypond-user
>>>
>>
>>
>>
>> --
>> Etiamsi omnes, ego non
>>
>> _______________________________________________
>> lilypond-user mailing list
>> lilypond-user@gnu.org
>> https://lists.gnu.org/mailman/listinfo/lilypond-user
>>
>>
>


-- 
Etiamsi omnes, ego non
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to