Abraham:
You just gave me a wonderful solution, I'll explain myself:
My current file layout is like this:
*formato.ly*
\version "2.19.15"
\include "snippets.ly" % file with lots of snippets (really)
\include "tipografia.ly" % typographies
\layout {
% some overrides here
}
% some format snippets here:
formatoPerc = { \stemDown }
*voice_with_piano_example.ly*
\include "formato.ly"
control { } % this normaly stays empty, but can be used to add code
to the voice without "polluting" it
voz = { a4 b c }
verso = \lyricmode { la la la }
pianoDer = { a4 b c }
pianoIzq = {a4 b c }
dinamicas = { s4\pp s4 s4\f } % some dynamics here
\score {
<<
\new Staff \with { instrumentName = \vozSolo } << % this
variable is defined in /formato.ly/
\new Voice \voz
\addlyrics \verso
\new Voice \control
>>
\new PianoStaff \with { instrumentName = \pianoIns } <<
\new Staff = "MD" <<
\new Voice \pianoDer
\new Dynamics \dinamicas
>>
\new Staff = "MI" {
\clef bass
\pianoIzq
}
>>
>>
}
But now I've realized that \score should be declared in a separate file,
something like*/voz_y_piano.ly/*, and there I can easely comment out the
piano staff for all my files at once, avoiding both pain and human mistakes.
Thanks again to all of you for your support. Best regards,
Víctor.
El 08/07/15 a las 11:33, tisimst escribió:
Victor,
You have gotten some great advice. Sorry they don't work for you. As
I've been thinking about your dilemma I wondered if you could just do
something like
\layout {
\context {
\Score
\denies "PianoStaff"
}
}
on the top-level to remove the PianoStaff altogether (assuming this is
how you built the piano part), but that doesn't do it either. This
would be the kind of solution you would be looking for. Sorry it
doesn't work like I postulated. I think I have a solution, but seeing
a tiny example of a couple of files the exemplify your work-flow may
help us out. Just put them in the body of an email like this:
%%% file1.ly <http://file1.ly>
voicePart = { c1 }
pianoRH = { c1 }
pianoLH = { c1 }
\include "formato.ly <http://formato.ly>"
%%% file2.ly <http://file2.ly>
voicePart = { b1 }
pianoRH = { b1 }
pianoLH = { b1 }
\include "formato.ly <http://formato.ly>"
%%% formato.ly <http://formato.ly>
\paper {
indent = 0
}
\layout {
\override SomeThing.property = 1.5
\override SomeThingElse.property = 0
}
\score {
<<
\new Staff \voicePart
\new PianoStaff <<
\new Staff \pianoRH
\new Staff \pianoLH
>>
>>
\layout {}
}
%%% masterfile.ly <http://masterfile.ly>
\include "file1.ly <http://file1.ly>"
\include "file2.ly <http://file2.ly>"
%%%
I just made that up, of course. Thank you in advance for clarifying
things so that we may help you better.
- Abraham
On Wed, Jul 8, 2015 at 9:44 AM, Víctor [via Lilypond] <[hidden email]
</user/SendEmail.jtp?type=node&node=178515&i=0>> wrote:
Wow, so many answers. I think Rob's solution will be the most
close to what I need, however I fear Abraham already answered my
question.
I'll explain my problem further: I'm working in a three volume
anthology for a singers school, each volume will come in two
versions, one for the professor and the other for the student. The
professor's version must have all voice piano parts, while the
student's should only have the voice part. Now, because this is a
very large project that includes gregorian scores, a lot of text
and some didactics, I've decide to assemble the book in LuaLaTeX
using lyluatex <https://github.com/jperon/lyluatex> package (a
recent replacement for lilypond-book). So all lilypond files
(about 80 right now, but they will be something like 200 in the
end) are configured from a single style sheet named /formato.ly
<http://formato.ly>/, wich contains all snippets, formats, etc. So
what I am looking for, is a snippet that can disable all piano
parts across the project from a single line in such /formato.ly
<http://formato.ly>/. To replace the \score block in all of the
files could be both painful and dangerous, but I prefer to do it
right now than later, when there will be much more of them; and
since all files are generated from a template, I can just replace
it with any text editor.
Anyway, if somebody has an idea of how to make this, I'll really
apreciate.
Thanks to all for your answers, best regards.
Víctor
El 08/07/15 a las 07:00, Robert Schmaus escribió:
Hi Chris,
The tag method is a fantastic tool in many cases, so it's great
to be aware of it. Just in this particular case it's maybe not
the easiest way to go.
Yeah, that's how I mostly use variables as well - placing just
the music in variables and then, in the score block, build up a
\new StaffGroup <<
\new Staff \new Voice \someMusic
\new Staff <<
\new Voice { \voiceOne \moreMusic }
\new Voice { \voiceTwo \yetMoreMusic }
>>
>>
I find this a very clear structure ... and it allows me to have a
"complete" template where you just comment out all \Staffs you
don't need in a particular case.
Cheers, Rob
______
Truth does not change according to our ability to stomach it.
-- /Flannery O'Connor/
On 8 Jul 2015, at 13:11, Chris Yate <[hidden email]
<http:///user/SendEmail.jtp?type=node&node=178514&i=0>> wrote:
Hi Rob,
Wow, thanks, that's a much neater way. I think I should probably
look at refactoring my band template.
I agree, my method is a bit complicated -- but it's bothering me
a bit, because I think there was a reason I did it like this in
the first place! Could well be an insufficient understanding at
the time, of how variables work :-)
I do already use variables as:
violinMusic = { a b c d }
violinVoice = \new Voice {
% voice setup stuff %
\violinMusic
}
Chris
On 8 July 2015 at 09:58, Robert Schmaus <[hidden email]
<http:///user/SendEmail.jtp?type=node&node=178514&i=1>> wrote:
In addition to the suggested way with tags (which surely
works, but
which I find overly complicated), a simpler way would be to
simply place
the Staffs in variables and comment out the ones you don't
want to have
in the next engraving. Like this:
violinStaff = \new Staff \with { instrumentName = "Violin" }{
\relative c'' { c4 d e f }
}
celloStaff = \new Staff \with { instrumentName = "Cello" }{
\relative c { c4 d e f }
}
\score{
<<
\violinStaff
\celloStaff
>>
}
IMO there's no need for a complicated tag structure, just go
for a
simple approach. You will want to use a variable structure
for any
non-trivial score anyway ...
Best, Rob
Am 07/07/15 um 17:42 schrieb Víctor:
> Hello Lilyponders:
>
> Is there a way to place a switch in some instrument part
so it is not
> rendered when such switch is off? Something like:
>
> \score{
> <<
> \new Staff \with { instrumentName = "Violin" }{
> \relative c'' { c4 d e f }
> }
> \new Staff \with { instrumentName = "Cello" }{
> \relative c { c4 d e f }
> }
> >>
> }
>
> \layout{
> \disableCello
> }
>
> Thanks,
> Víctor.
>
> _______________________________________________
> lilypond-user mailing list
> [hidden email]
<http:///user/SendEmail.jtp?type=node&node=178514&i=2>
> https://lists.gnu.org/mailman/listinfo/lilypond-user
_______________________________________________
lilypond-user mailing list
[hidden email]
<http:///user/SendEmail.jtp?type=node&node=178514&i=3>
https://lists.gnu.org/mailman/listinfo/lilypond-user
_______________________________________________
lilypond-user mailing list
[hidden email] <http:///user/SendEmail.jtp?type=node&node=178514&i=4>
https://lists.gnu.org/mailman/listinfo/lilypond-user
_______________________________________________
lilypond-user mailing list
[hidden email] <http:///user/SendEmail.jtp?type=node&node=178514&i=5>
https://lists.gnu.org/mailman/listinfo/lilypond-user
------------------------------------------------------------------------
If you reply to this email, your message will be added to the
discussion below:
http://lilypond.1069038.n5.nabble.com/Switching-on-off-instrument-staff-tp178484p178514.html
To start a new topic under User, email [hidden email]
</user/SendEmail.jtp?type=node&node=178515&i=1>
To unsubscribe from Lilypond, click here.
NAML
<http://lilypond.1069038.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
------------------------------------------------------------------------
View this message in context: Re: Switching on/off instrument staff
<http://lilypond.1069038.n5.nabble.com/Switching-on-off-instrument-staff-tp178484p178515.html>
Sent from the User mailing list archive
<http://lilypond.1069038.n5.nabble.com/User-f3.html> at Nabble.com.
_______________________________________________
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