Re: Markup in left and right margins

2020-10-15 Thread Matthew Fong
Hello Aaron,

Wowsers -- I am dense. That completely makes sense. And it is simple!


Many thanks,
mattfong

On Thu, Oct 15, 2020 at 6:46 PM Aaron Hill  wrote:

> On 2020-10-15 6:03 pm, Matthew Fong wrote:
> > Many thanks for the solution of translation. I'm toying around with it
> > right now, and had a question:
> > I am possible misunderstanding the solution, and using the abs-override
> > incorrectly. I cannot seem to place a comment string next to the stave.
>
> The code I showed was purely to demonstrate that you *could* move things
> outside the margins.  But it was not prescriptive.  In practice, take a
> simpler route:
>
> 
> \version "2.20.0"
>
> \paper {
>#(set-paper-size "a6landscape")
>top-margin = 1.5\cm bottom-margin = 3\cm
>left-margin = 2\cm right-margin = 2.5\cm
>indent = 0 ragged-right = ##f
> }
>
> loremIpsum =
> \markup
>\override #'(baseline-skip . 2.5)
>\smaller \left-column {
>  \line { Lorem ipsum dolor sit amet, }
>  \line { consectetur adipscing elit. }
>}
>
> \markup
>% Collapse dimensions so the \markup takes no space.
>\with-dimensions-from \null
>
>% Move the \markup further into the left margin.
>\translate #'(-1 . 0)
>
>% Adjust alignment of \markup to top-right corner.
>\general-align #X #RIGHT
>\general-align #Y #UP
>
>% The \markup itself.
>\rotate #90 \with-color #red \loremIpsum
>
> % NOTE:
> % The \fill-line { \null ... } pattern is useful for
> % aligning content to the right margin automatically.
>
> \markup \fill-line { \null
>% Collapse dimensions so the \markup takes no space.
>\with-dimensions-from \null
>
>% Move the \markup further into the right margin.
>\translate #'(1 . 0)
>
>% Adjust alignment of \markup to top-left corner.
>\general-align #X #LEFT
>\general-align #Y #UP
>
>% The \markup itself.
>\rotate #-90 \with-color #blue \loremIpsum
> }
>
> \new Staff \fixed c'' {
>c1^\markup \with-color #green \loremIpsum
> }
> 
>
> Given the above approach, there is no need to mess about with "absolute"
> measurements.  Staff space units are generally pretty nice to work with
> anyway.
>
>
> -- Aaron Hill


Re: [OLL] openLilyLib news

2020-10-15 Thread Freeman Gilmore
Nice, ƒg

On Thu, Oct 15, 2020 at 9:31 PM Andrew Bernard  wrote:
>
> What's happening with OLL, latest news. I have made a dedicated
> website, https://openlilylib.space.
>
> I think OLL is distinct enough to have it's own mailing list, and I
> don't want to clog the lilypond user list with technical OLL
> development posts, so I am in the business of setting up a list,
> probably using GNU Mailman 3 (not the greatest software, but I have
> used it a lot before).
>
> OLL development is managed with Git. For personal and technical
> reasons I have started a project on GitLab, and have copied the repos
> there. I am not touching or changing the existing GitHub work, but I
> am expecting that we move across to GitLab now. One reason for the
> change is that I am refactoring the OLL repos into one single repo
> (this is quite tricky in git if you want to keep the commit histories)
> because I think this is far simpler for me to manage and far easier
> for end users, to just clone one item. No criticism of the existing
> structure, but I think that just grew. I'll provide the GitLab details
> when I have done the refactoring, soonish.
>
> And by popular demand, I have corrected the capitalization of openLilyLib. :-)
>
> Andrew
>



Re: Markup in left and right margins

2020-10-15 Thread Aaron Hill

On 2020-10-15 6:03 pm, Matthew Fong wrote:

Many thanks for the solution of translation. I'm toying around with it
right now, and had a question:
I am possible misunderstanding the solution, and using the abs-override
incorrectly. I cannot seem to place a comment string next to the stave.


The code I showed was purely to demonstrate that you *could* move things 
outside the margins.  But it was not prescriptive.  In practice, take a 
simpler route:



\version "2.20.0"

\paper {
  #(set-paper-size "a6landscape")
  top-margin = 1.5\cm bottom-margin = 3\cm
  left-margin = 2\cm right-margin = 2.5\cm
  indent = 0 ragged-right = ##f
}

loremIpsum =
\markup
  \override #'(baseline-skip . 2.5)
  \smaller \left-column {
\line { Lorem ipsum dolor sit amet, }
\line { consectetur adipscing elit. }
  }

\markup
  % Collapse dimensions so the \markup takes no space.
  \with-dimensions-from \null

  % Move the \markup further into the left margin.
  \translate #'(-1 . 0)

  % Adjust alignment of \markup to top-right corner.
  \general-align #X #RIGHT
  \general-align #Y #UP

  % The \markup itself.
  \rotate #90 \with-color #red \loremIpsum

% NOTE:
% The \fill-line { \null ... } pattern is useful for
% aligning content to the right margin automatically.

\markup \fill-line { \null
  % Collapse dimensions so the \markup takes no space.
  \with-dimensions-from \null

  % Move the \markup further into the right margin.
  \translate #'(1 . 0)

  % Adjust alignment of \markup to top-left corner.
  \general-align #X #LEFT
  \general-align #Y #UP

  % The \markup itself.
  \rotate #-90 \with-color #blue \loremIpsum
}

\new Staff \fixed c'' {
  c1^\markup \with-color #green \loremIpsum
}


Given the above approach, there is no need to mess about with "absolute" 
measurements.  Staff space units are generally pretty nice to work with 
anyway.



-- Aaron Hill

[OLL] openLilyLib news

2020-10-15 Thread Andrew Bernard
What's happening with OLL, latest news. I have made a dedicated
website, https://openlilylib.space.

I think OLL is distinct enough to have it's own mailing list, and I
don't want to clog the lilypond user list with technical OLL
development posts, so I am in the business of setting up a list,
probably using GNU Mailman 3 (not the greatest software, but I have
used it a lot before).

OLL development is managed with Git. For personal and technical
reasons I have started a project on GitLab, and have copied the repos
there. I am not touching or changing the existing GitHub work, but I
am expecting that we move across to GitLab now. One reason for the
change is that I am refactoring the OLL repos into one single repo
(this is quite tricky in git if you want to keep the commit histories)
because I think this is far simpler for me to manage and far easier
for end users, to just clone one item. No criticism of the existing
structure, but I think that just grew. I'll provide the GitLab details
when I have done the refactoring, soonish.

And by popular demand, I have corrected the capitalization of openLilyLib. :-)

Andrew



Re: font construction

2020-10-15 Thread Andrew Bernard

Lilypond uses MetaFont, does it not? That is well documented elsewhere.


Andrew


On 16/10/2020 4:13 am, Shane Brandes wrote:
Is there any documentation floating around on how fonts for LilyPond 
are actually built?




Re: Markup in left and right margins

2020-10-15 Thread Matthew Fong
Hello Andrew,

Yes, in fact, I was considering rotating the content. There isn't much
room, but just enough to get a few words sideways.



Hello Aaron,

Many thanks for the solution of translation. I'm toying around with it
right now, and had a question:
I am possible misunderstanding the solution, and using the abs-override
incorrectly. I cannot seem to place a comment string next to the stave.
Here is my sample code.

\paper {

   paper-width = 8\cm

   paper-height = 6\cm

   top-margin = 1\cm

   bottom-margin = 1\cm

   left-margin = 1.5\cm

   right-margin = 2.5\cm

   tagline = ##f

}


\layout { indent = 0 ragged-right = ##t }


\new Staff \relative c' {

  c'1^"Comment"

}


\markup \overlay {

   \abs-translate #(cons (ly:cm -1.5) 0)

   \abs-override #(cons 'line-width (ly:cm 4))

   \with-color #'(0.8 0.3 0.2)

   \rotate #90 "This is a test"

}



Many thanks,
mattfong

On Thu, Oct 15, 2020 at 3:23 AM Aaron Hill  wrote:

> On 2020-10-15 2:53 am, Andrew Bernard wrote:
> > Hi Matthew,
> >
> > A good question. But I would have thought that margins are exactly
> > that - margins. I don't think LilyPond was ever conceived to support
> > marginal annotations and complex print formatting. Wouldn't you have
> > to narrow your content in whatever way so as to create left or right
> > vertical space and simply add it there, so, inside the margins? But I
> > am sure all the TeX experts on the list will chime in.
>
> Nothing prevents you from \translating \markup outside the normal
> bounds.
>
> NOTE: The following code requires some helper functions in order to
> specify absolute dimensions in \markup.  A real-world usage probably
> should be querying the values directly from \paper to eliminate
> redundancy.
>
> 
> \version "2.20.0"
>
> #(define-markup-command
>(abs-override layout props arg rest)
>(pair? markup?)
>(let* ((sym (car arg))
>   (val (cdr arg))
>   (scl (ly:output-def-lookup layout 'output-scale)))
>  (interpret-markup layout props
>(markup #:override (cons sym (/ val scl)) rest
>
> #(define-markup-command
>(abs-translate layout props arg rest)
>(pair? markup?)
>(let* ((x (car arg))
>   (y (cdr arg))
>   (scl (ly:output-def-lookup layout 'output-scale)))
>  (interpret-markup layout props
>(markup #:translate (cons (/ x scl) (/ y scl)) rest
>
> \paper {
>paper-width = 8\cm
>paper-height = 5\cm
>top-margin = 1\cm
>bottom-margin = 1\cm
>left-margin = 1.5\cm
>right-margin = 2.5\cm
>tagline = ##f
> }
>
> visualizeBounds =
> #(define-scheme-function
>(text)
>(markup?)
>#{
>  \markup
>\override #'(thickness . 1.5)
>\fill-line {
>  \overlay {
>\lower #0.5 \draw-line #'(0 . 1)
>\arrow-head #X #LEFT ##f
>\draw-line #'(2 . 0)
>  }
>  #text
>  \overlay {
>\lower #0.5 \draw-line #'(0 . 1)
>\arrow-head #X #RIGHT ##f
>\draw-line #'(-2 . 0)
>  }
>}
>#})
>
> \markup \smaller \column {
>\fill-line { paper: \concat { 5cm \char ##xd7 8cm } }
>\fill-line { left-margin: 1.5cm }
>\fill-line { right-margin: 2.5cm }
>\vspace #0.5
> }
>
> \markup \overlay {
>\abs-translate #(cons (ly:cm -1.5) 0)
>\abs-override #(cons 'line-width (ly:cm 1.5))
>\with-color #'(0.8 0.3 0.2)
>\visualizeBounds left
>
>\with-color #'(0.2 0.8 0.4)
>\visualizeBounds normal
>
>\abs-translate #(cons (ly:cm 4) 0)
>\abs-override #(cons 'line-width (ly:cm 2.5))
>\with-color #'(0.2 0.5 0.8)
>\visualizeBounds right
> }
> 
>
>
> -- Aaron Hill


Re: headers, and what include doesn't do

2020-10-15 Thread David Wright
On Thu 15 Oct 2020 at 19:23:36 (-0400), Molly Preston wrote:
> Thank you guys. I tried the way Mark suggested before and I get the same
> result of III. being shown on the first page. So still not seeming to
> understand.

Perhaps you could start with an example like the attached, and just
remove everything that you don't need. The "default" behaviour of LP
is shown by the first attachment, where you wouldn't expect to have
all the titling repeated before the second and third movements
(unless you manage to chart with your delightful slow movement:) ).

The second attachment shows the effect of print-all-headers = ##t,
which you might use where, for example, the lyrics of each movement
come from a different source.

After you've modified and pruned one of these to show whichever headings
you need, you could then distribute the contents amongst your sonata files.

> > > I am trying to use \include to compile my sonata. The score block and
> > headings are in each file.
> > >
> > > I basically just have this:
> > >
> > > \include "Circle_mvt1.ly"
> > > \pageBreak
> > > \include "Circle_mvt2.ly"
> > > \pageBreak
> > > \include "Circle_mvt3.ly"
> > >
> > > The third movement's heading is what's being shown on the first page.
> > That is why I ask about the hierarchy of headings. I tried putting the
> > headings in this file instead of in each individual file.

It's seems very likely from the way you've expressed your problem that
you think LP attaches some meaning to \include. It doesn't. Writing
\include "foo.ly"   just pastes the contents of foo.ly into the source
at that point. After all the \include files have been copied in, then
LP processes the resulting big/gigantic file that results. (You could
perfectly well do the same assembly job with cut in an editor.)

Cheers,
David.
%%\version "2.18.2" % 2015-11-06
%%\include "Letter.lily"
%%\include "Margins-10-15.lily"

\header {
  title = "The Title in external header 0"
  subtitle = "The Subtitle 0"
  subsubtitle = "The Subsubtitle 0"
  poet = "The Poet 0"
  composer = "The Composer 0"
  meter = "The Meter 0"
  opus = "The Opus 0"
  arranger = "The Arranger 0"
  instrument = "The Instrument 0"
  dedication = "The Dedication 0"
  piece = "The Piece 0"
  head = "The Head 0"
  copyright = "The Copyright 0"
  tagline = "The Tagline 0"
}

\layout {
  indent = 0
  \context {
\Staff
\remove Time_signature_engraver
\remove Bar_engraver
  }
}

#(set-global-staff-size 20)

\paper {
  ragged-right = ##f
  ragged-last-bottom = ##f
}

thescore = \score {
  \new ChoirStaff <<
\new Staff <<
  \new Voice { \clef treble s1 }
>>
\new Staff <<
  \new Voice { \clef treble s1 }
>>
\new Staff <<
  \new Voice { \clef "treble_8" s1 }
>>
\new Staff <<
  \new Voice { \clef bass s1 }
>>
  >>
  \layout { }
  \header {
title = "The Title in internal header 1"
subtitle = "The Subtitle 1"
subsubtitle = "The Subsubtitle 1"
poet = "The Poet 1"
composer = "The Composer 1"
meter = "The Meter 1"
opus = "The Opus 1"
arranger = "The Arranger 1"
instrument = "The Instrument 1"
dedication = "The Dedication 1"
piece = "The Piece in internal header 1"
head = "The Head 1"
copyright = "The Copyright 1"
tagline = "The Tagline 1"
  }
}

\score {
  \thescore
}
\score {
  \thescore
  \header {
title = "The Title in internal header 2"
subtitle = "The Subtitle 2"
subsubtitle = "The Subsubtitle 2"
poet = "The Poet 2"
composer = "The Composer 2"
meter = "The Meter 2"
opus = "The Opus 2"
arranger = "The Arranger 2"
instrument = "The Instrument 2"
dedication = "The Dedication 2"
piece = "The Piece in internal header 2"
head = "The Head 2"
copyright = "The Copyright 2"
tagline = "The Tagline 2"
  }
}
\score {
  \thescore
  \header {
title = "The Title in internal header 3"
subtitle = "The Subtitle 3"
subsubtitle = "The Subsubtitle 3"
poet = "The Poet 3"
composer = "The Composer 3"
meter = "The Meter 3"
opus = "The Opus 3"
arranger = "The Arranger 3"
instrument = "The Instrument 3"
dedication = "The Dedication 3"
piece = "The Piece in internal header 3"
head = "The Head 3"
copyright = "The Copyright 3"
tagline = "The Tagline 3"
  }
}
%%\version "2.18.2" % 2015-11-06
%%\include "Letter.lily"
%%\include "Margins-10-15.lily"

\header {
  title = "The Title in external header 0"
  subtitle = "The Subtitle 0"
  subsubtitle = "The Subsubtitle 0"
  poet = "The Poet 0"
  composer = "The Composer 0"
  meter = "The Meter 0"
  opus = "The Opus 0"
  arranger = "The Arranger 0"
  instrument = "The Instrument 0"
  dedication = "The Dedication 0"
  piece = "The Piece 0"
  head = "The Head 0"
  copyright = "The Copyright 0"
  tagline = "The Tagline 0"
}

\layout {
  indent = 0
  \context {
\Staff
\remove Time_signature_engraver
\remove Bar_engraver
  }
}

#(set-global-staff-size 20)

\paper 

Re: lilypond-user Digest, Vol 215, Issue 75

2020-10-15 Thread Molly Preston
Thank you guys. I tried the way Mark suggested before and I get the same
result of III. being shown on the first page. So still not seeming to
understand.

I have also tried the include-all-headings=##t which doesn't seem to change
anything. What I have is:
\version "2.20.0"

\paper {
 %system-system-spacing,  #' basic-distance = #25
 systems-per-page =  6
 print-all-headers = ##f
}

\header {
  title = "Circle"
   subtitle = \markup { "I."  }
  composer = \markup {
   \center-column {

"Molly Preston"
(2020)
 }
  }
tagline = ##f
}


\include "Circle_mvt1.ly"
\pageBreak



\include "Circle_mvt2.ly"
\pageBreak
\include "Circle_mvt3.ly"


My ly files are set up as :

\header {
}
upper =
lower =


\score {
  \new PianoStaff = "piano" <<
\set PianoStaff.instrumentName = #"Piano"
  \new Staff = "upper"{  \upper }
  \new Staff = "lower" { \lower }
   >>
}

On Thu, Oct 15, 2020 at 1:11 PM  wrote:

> Send lilypond-user mailing list submissions to
> lilypond-user@gnu.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://lists.gnu.org/mailman/listinfo/lilypond-user
> or, via email, send a message with subject or body 'help' to
> lilypond-user-requ...@gnu.org
>
> You can reach the person managing the list at
> lilypond-user-ow...@gnu.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of lilypond-user digest..."
>
>
> Today's Topics:
>
>1. Re: compiling sonata with \include (Xavier Scheuer)
>2. Re: compiling sonata with \include (Molly Preston)
>3. one system in the last page (Martín Rincón Botero)
>4. Re: one system in the last page (Xavier Scheuer)
>5. Cut Common Time signature (Ritchie Fraser)
>
>
> --
>
> Message: 1
> Date: Thu, 15 Oct 2020 18:16:51 +0200
> From: Xavier Scheuer 
> To: Molly Preston 
> Cc: lilypond-user 
> Subject: Re: compiling sonata with \include
> Message-ID:
> <
> cadgqhrfzpaz5uzuhtp5obh2ezb0kkyp1tre5tzob+huhywf...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> On Thu, 15 Oct 2020 at 18:00, Molly Preston 
> wrote:
> >
> > Hello. I am confused by the hierarchy of headings. I have read about it
> in the manuals and still find it confusing.
> >
> > I am trying to use \include to compile my sonata. The score block and
> headings are in each file.
> >
> > I basically just have this:
> >
> > \include "Circle_mvt1.ly"
> > \pageBreak
> > \include "Circle_mvt2.ly"
> > \pageBreak
> > \include "Circle_mvt3.ly"
> >
> > The third movement's heading is what's being shown on the first page.
> That is why I ask about the hierarchy of headings. I tried putting the
> headings in this file instead of in each individual file.
>
> Hello,
>
> Difficult to answer if you do not show us what is present in your files...
> I guess it is each time a \score block and its corresponding \header block.
>
> Anyway, I guess what you are looking for is
> \paper {
>   print-all-headers = ##t
> }
>
> But instead of putting these manual \pageBreak it would be more interesting
> to use \bookpart.
> All this is documented in NR 3.2 Titles and headers and NR 3.1.5 File
> structure.
>
> Personally for works with several movements I have customized the
> headers (scoreTitleMarkup,
> see NR 3.2.2) and use a custom "movement" field.
>
> Cheers,
> Xavier
>
> --
> Xavier Scheuer 
> -- next part --
> An HTML attachment was scrubbed...
> URL: <
> https://lists.gnu.org/archive/html/lilypond-user/attachments/20201015/4acce62c/attachment.html
> >
>
> --
>
> Message: 2
> Date: Thu, 15 Oct 2020 12:22:33 -0400
> From: Molly Preston 
> To: Xavier Scheuer 
> Cc: lilypond-user 
> Subject: Re: compiling sonata with \include
> Message-ID:
>  q...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I tried the print-all-headers = ##t and it didn't work.
> I also tried \bookpart around the \include and it gave me fatal errors.
>
> I have looked at the documents you reference, but I will have to look at
> the TitleMarkup I think.
>
> Thank you for directing me.
>
> On Thu, Oct 15, 2020 at 12:17 PM Xavier Scheuer 
> wrote:
>
> > On Thu, 15 Oct 2020 at 18:00, Molly Preston 
> > wrote:
> > >
> > > Hello. I am confused by the hierarchy of heading

Help with HEJI fonts

2020-10-15 Thread Dave Seidel
Hello,

I am trying to HEJI microtonal notation with Lilypond, using the OTF fonts
downloaded from plainsound.org, and the microlily package (originally by
Graham Breed and now being worked on by Konstantin Steuer). The specific
problem I'm having is that Lilypond does not seem to load or use these
fonts.

Here's the code I'm currently using to test this, not getting into the
microlily code at all

\markup { saldkfjh }
\paper{ myStaffSize = #20 #(define fonts (make-pango-font-tree "HEJI"
"HEJI" "HEJI" (/ myStaffSize 20))) }

which should print some glyphs from the font, but only prints the normal
letters.

I have tried this on both Windows 10 and Linux, with the fonts installed as
system fonts on both systems. I have also tried installing TTF versions of
the fonts, but with the same negative results.

Is there something else I need to do with these fonts so that
Lilypond will load them, such as copying them to some specific disk
location?

Proviso: I am a Lilypond and Scheme newbie (though no newbie to either
music or programming).

Thanks,
Dave


Re: font construction

2020-10-15 Thread Karlin High

On 10/15/2020 12:13 PM, Shane Brandes wrote:
Is there any documentation floating around on how fonts for LilyPond are 
actually built?


Have you seen Simon Tatham's Gonville font? I cannot comment on whether 
its construction is the best starting point or not for your project, though.



--
Karlin High
Missouri, USA



font construction

2020-10-15 Thread Jean Abou Samra

Hi all,

Is there any documentation floating around on how fonts for LilyPond 
are actually built? I know Abraham Lee has successfully made some new 
ones, but is he the only guy now that knows the process? I tried 
fiddling with working on one, but that was just by opening an extant 
font and replacing glyphs. Somehow I think that approach might lead to 
unexpected consequences or is it as simple as that?


regards,
Shane Brandes


Hi,

What do you want to achieve?

For just including special glyphs, you can take a look at 
lilypond.org/doc/v2.21/Documentation/notation/fonts.html.


For creating an entire font, you could replicate the structure of 
Emmentaler, I guess, or make a stylesheet (since a new font usually 
requires different defaults for various values). You may take 
inspiration at https://github.com/openlilylib/notation-fonts.


This area is being worked on currently, with Owen Lamb having conducted 
a Google Summer of Code project to improve SMuFL support. Eventually, it 
should be possible to get it right by following the SMuFL specification. 
Maybe he can provide you with more details. There is also this blog post:


https://lilypondblog.org/2020/08/google-summer-of-code-2020-smufl/

Best,
Jean




Re: Cut Common Time signature

2020-10-15 Thread Ritchie Fraser
Thanks,
Yes that's exactly what I was looking for
:-)

I should have just tried that. Doh!
Ritchie

On Thu, 15 Oct 2020, 18:22 Pierre Perol-Schneider, <
pierre.schneider.pa...@gmail.com> wrote:

> Hi Ritchie,
> See also:
> http://lilypond.org/doc/v2.20/Documentation/notation/displaying-rhythms.html#index-_005cnumericTimeSignature
> Cheers,
> Pierre
>
> Le jeu. 15 oct. 2020 à 19:21, bobr...@centrum.is  a
> écrit :
>
>> \time 2/2
>>
>> That will, by default, produce the C with vertical slash.
>>
>> David
>>
>> - Ritchie Fraser  wrote:
>> > Hello all,
>> >
>> > I am trying the engrave a Cut Common time signature (Capital C with a
>> > vertical line through it) and the beginning of the stave and can't find
>> > out how to achieve this.
>> >
>> > I have scoured the lilypond docs online but can't find any examples or
>> > the syntax to use.
>> >
>> > "Cut Common" appears in the glossary (alla breve) but does not seem to
>> > be in the syntax guide:-(
>> >
>> > Is this time signature just a brass band thing?
>> >
>> > Any help will be most welcome.
>> >
>> > Kind regards
>> >
>> > Ritchie
>> >
>> >
>>
>>
>>


Re: Cut Common Time signature

2020-10-15 Thread Kevin Barry
Hi Ritchie,

I get a cut C automatically with
\time 2/2

Is that what you mean?

Kevin

On Thu, 15 Oct 2020 at 18:10, Ritchie Fraser  wrote:
>
> Hello all,
>
> I am trying the engrave a Cut Common time signature (Capital C with a
> vertical line through it) and the beginning of the stave and can't find
> out how to achieve this.
>
> I have scoured the lilypond docs online but can't find any examples or
> the syntax to use.
>
> "Cut Common" appears in the glossary (alla breve) but does not seem to
> be in the syntax guide:-(
>
> Is this time signature just a brass band thing?
>
> Any help will be most welcome.
>
> Kind regards
>
> Ritchie
>
>



Re: Cut Common Time signature

2020-10-15 Thread Pierre Perol-Schneider
Hi Ritchie,
See also:
http://lilypond.org/doc/v2.20/Documentation/notation/displaying-rhythms.html#index-_005cnumericTimeSignature
Cheers,
Pierre

Le jeu. 15 oct. 2020 à 19:21, bobr...@centrum.is  a
écrit :

> \time 2/2
>
> That will, by default, produce the C with vertical slash.
>
> David
>
> - Ritchie Fraser  wrote:
> > Hello all,
> >
> > I am trying the engrave a Cut Common time signature (Capital C with a
> > vertical line through it) and the beginning of the stave and can't find
> > out how to achieve this.
> >
> > I have scoured the lilypond docs online but can't find any examples or
> > the syntax to use.
> >
> > "Cut Common" appears in the glossary (alla breve) but does not seem to
> > be in the syntax guide:-(
> >
> > Is this time signature just a brass band thing?
> >
> > Any help will be most welcome.
> >
> > Kind regards
> >
> > Ritchie
> >
> >
>
>
>


Re: Cut Common Time signature

2020-10-15 Thread bobr...@centrum.is
\time 2/2 

That will, by default, produce the C with vertical slash.  

David

- Ritchie Fraser  wrote:
> Hello all,
> 
> I am trying the engrave a Cut Common time signature (Capital C with a 
> vertical line through it) and the beginning of the stave and can't find 
> out how to achieve this.
> 
> I have scoured the lilypond docs online but can't find any examples or 
> the syntax to use.
> 
> "Cut Common" appears in the glossary (alla breve) but does not seem to 
> be in the syntax guide:-(
> 
> Is this time signature just a brass band thing?
> 
> Any help will be most welcome.
> 
> Kind regards
> 
> Ritchie
> 
> 




font construction

2020-10-15 Thread Shane Brandes
Hi all,

Is there any documentation floating around on how fonts for LilyPond are
actually built? I know Abraham Lee has successfully made some new ones, but
is he the only guy now that knows the process? I tried fiddling with
working on one, but that was just by opening an extant font and replacing
glyphs. Somehow I think that approach might lead to unexpected consequences
or is it as simple as that?

regards,
Shane Brandes


Re: one system in the last page

2020-10-15 Thread Martín Rincón Botero
> \paper {
>  min-systems-per-page = #2
> }
> is another possibility

Thank you! This is exactly the rule I was looking for :-).

www.martinrinconbotero.com
On 15. Oct 2020, 18:56 +0200, Xavier Scheuer , wrote:
>
> \paper {
>   min-systems-per-page = #2
> }
> is another possibility


Cut Common Time signature

2020-10-15 Thread Ritchie Fraser

Hello all,

I am trying the engrave a Cut Common time signature (Capital C with a 
vertical line through it) and the beginning of the stave and can't find 
out how to achieve this.


I have scoured the lilypond docs online but can't find any examples or 
the syntax to use.


"Cut Common" appears in the glossary (alla breve) but does not seem to 
be in the syntax guide:-(


Is this time signature just a brass band thing?

Any help will be most welcome.

Kind regards

Ritchie




Re: one system in the last page

2020-10-15 Thread Xavier Scheuer
On Thu, 15 Oct 2020 at 18:37, Martín Rincón Botero <
martinrinconbot...@gmail.com> wrote:
>
> Hello,
>
> not that it's something too difficult to fix with manual \pageBreaks, but
is there any way I can tell Lilypond to never put a single system on the
last page if there's more than one page, unless the last system takes up
the "whole" page (f.ex. in a piece for orchestra)? I have the feeling that
with all the intelligence of its fabulous engine, Lilypond should know
about this already. Or am I missing something?

Hi Martín,

Not exactly what you are asking but
\paper {
  ragged-last-bottom = ##f
}
won't probably put a single system on the last page (unless it is taking a
whole page).

\paper {
  min-systems-per-page = #2
}
is another possibility.

Cheers,
Xavier

-- 
Xavier Scheuer 


one system in the last page

2020-10-15 Thread Martín Rincón Botero
Hello,

not that it's something too difficult to fix with manual \pageBreaks, but
is there any way I can tell Lilypond to never put a single system on the
last page if there's more than one page, unless the last system takes up
the "whole" page (f.ex. in a piece for orchestra)? I have the feeling that
with all the intelligence of its fabulous engine, Lilypond should know
about this already. Or am I missing something?

Regards,
Martín.

-- 
www.martinrinconbotero.com


Re: compiling sonata with \include

2020-10-15 Thread Molly Preston
I tried the print-all-headers = ##t and it didn't work.
I also tried \bookpart around the \include and it gave me fatal errors.

I have looked at the documents you reference, but I will have to look at
the TitleMarkup I think.

Thank you for directing me.

On Thu, Oct 15, 2020 at 12:17 PM Xavier Scheuer  wrote:

> On Thu, 15 Oct 2020 at 18:00, Molly Preston 
> wrote:
> >
> > Hello. I am confused by the hierarchy of headings. I have read about it
> in the manuals and still find it confusing.
> >
> > I am trying to use \include to compile my sonata. The score block and
> headings are in each file.
> >
> > I basically just have this:
> >
> > \include "Circle_mvt1.ly"
> > \pageBreak
> > \include "Circle_mvt2.ly"
> > \pageBreak
> > \include "Circle_mvt3.ly"
> >
> > The third movement's heading is what's being shown on the first page.
> That is why I ask about the hierarchy of headings. I tried putting the
> headings in this file instead of in each individual file.
>
> Hello,
>
> Difficult to answer if you do not show us what is present in your files...
> I guess it is each time a \score block and its corresponding \header block.
>
> Anyway, I guess what you are looking for is
> \paper {
>   print-all-headers = ##t
> }
>
> But instead of putting these manual \pageBreak it would be more
> interesting to use \bookpart.
> All this is documented in NR 3.2 Titles and headers and NR 3.1.5 File
> structure.
>
> Personally for works with several movements I have customized the headers 
> (scoreTitleMarkup,
> see NR 3.2.2) and use a custom "movement" field.
>
> Cheers,
> Xavier
>
> --
> Xavier Scheuer 
>
>


Re: compiling sonata with \include

2020-10-15 Thread Xavier Scheuer
On Thu, 15 Oct 2020 at 18:00, Molly Preston 
wrote:
>
> Hello. I am confused by the hierarchy of headings. I have read about it
in the manuals and still find it confusing.
>
> I am trying to use \include to compile my sonata. The score block and
headings are in each file.
>
> I basically just have this:
>
> \include "Circle_mvt1.ly"
> \pageBreak
> \include "Circle_mvt2.ly"
> \pageBreak
> \include "Circle_mvt3.ly"
>
> The third movement's heading is what's being shown on the first page.
That is why I ask about the hierarchy of headings. I tried putting the
headings in this file instead of in each individual file.

Hello,

Difficult to answer if you do not show us what is present in your files...
I guess it is each time a \score block and its corresponding \header block.

Anyway, I guess what you are looking for is
\paper {
  print-all-headers = ##t
}

But instead of putting these manual \pageBreak it would be more interesting
to use \bookpart.
All this is documented in NR 3.2 Titles and headers and NR 3.1.5 File
structure.

Personally for works with several movements I have customized the
headers (scoreTitleMarkup,
see NR 3.2.2) and use a custom "movement" field.

Cheers,
Xavier

-- 
Xavier Scheuer 


compiling sonata with \include

2020-10-15 Thread Molly Preston
Hello. I am confused by the hierarchy of headings. I have read about it in
the manuals and still find it confusing.

I am trying to use \include to compile my sonata. The score block and
headings are in each file.

I basically just have this:

\include "Circle_mvt1.ly"
\pageBreak
\include "Circle_mvt2.ly"
\pageBreak
\include "Circle_mvt3.ly"

The third movement's heading is what's being shown on the first page. That
is why I ask about the hierarchy of headings. I tried putting the headings
in this file instead of in each individual file.

I know this must be simple, but I can't figure out how to set it up even
with the manual.
Thank you for your time.

-Molly


Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Klaus Blum

Hi Leszek,

Am 15.10.2020 um 15:13 schrieb lilypond-user-requ...@gnu.org:

I would like to put pagebreaks in specific places in
the full score, so that they would not operate when parts are compiled.


I can confirm all the replies that recommend include files and invisible
voices. (I truly should learn how to use the edition engraver, but still
didn't find the time.)

This is what I've been using so far:

% -- definitions.ily --
\version "2.20.0"

violin_voice = { c'1 d' e' f' g' a' b' }

cello_voice = { \clef bass  c1 d e f g a b }

break_voice = {  % "invisible voice"
  s1 s  \bar "||" \mark "A" s s
  \pb
  s s s \bar "|."
}
% -

The invisible voice also cares about bar lines, rehearsal marks etc.
\pb still needs to be defined. For the score, it's "\pageBreak" while
for the parts, it simply does nothing:

% -- score.ly --
\version "2.20.0"
pb = \pageBreak
\include "definitions.ily"

\score {
  <<
    \new Staff << \violin_voice \break_voice >>
    \new Staff << \cello_voice \break_voice >>
  >>
}
% --

% -- parts.ly --
\version "2.20.0"
pb = {} % does nothing
\include "definitions.ily"

\markup "Violin part:"
\score {
  \new Staff << \violin_voice \break_voice >>
}

\markup "Cello part:"
\score {
  \new Staff << \cello_voice \break_voice >>
}
% --

...not perfect, but simple.  :-)
Hope this helps.

Cheers,
Klaus



Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Leszek Wroński
Thank you all for your suggestions! This is very helpful. Leo and
Christian, I will try the 'skip' idea: in this particular case I have 616
measures of straightforward 2/4, so it should not be too unwieldy. Kieren,
I will investigate the edition-engraver... I've already attempted to learn
it a few times, but maybe this time I'll succeed.

You've all been very helpful. My thanks again!

Cheers,

Leszek.

On Thu, 15 Oct 2020 at 15:13, Kieren MacMillan <
kieren_macmil...@sympatico.ca> wrote:

> Hi Leszek,
>
> > I would like to compile a full score and parts based on one file
> containing musical definitions. I would like to put pagebreaks in specific
> places in the full score, so that they would not operate when parts are
> compiled. The way I'm doing it now is that I put a \pagebreak in one of the
> parts and use tags. E.g. the oboe part "oboeMusic" may contain
> >
> > \tag #'fullscoreonly { \pageBreak }
> >
> > And in the full score the part figures in the score as
> > \keepWithTag #'fullscoreonly \oboeMusic
> >
> > while in the part file the part is compiled as
> >   \removeWithTag #'fullscoreonly \oboeMusic
> >
> > I don't really like this solution; it's just not tidy... and I have to
> remember which part I put the page breaks in. Are there any established
> Lilypond practices for doing this? Is it e.g. possible to introduce some
> sort of 'invisible part' on top of the rest which would just be used for
> editorial stuff like this?
>
> I highly recommend looking into the edition-engraver for this purpose —
> “editorial stuff” (including breaks/layout control) is its primary use
> case, and it handles that kind of thing spectacularly.
>
> Cheers,
> Kieren.
> 
>
> Kieren MacMillan, composer (he/him/his)
> ‣ website: www.kierenmacmillan.info
> ‣ email: kie...@kierenmacmillan.info
>
>


Re: Markup Between Systems

2020-10-15 Thread Kieren MacMillan
Hi all,

> I've been looking for a long time to do something like Kieren's example. If 
> this also works for multi-line markup between systems it will be very helpful 
> for many of my scores. I can't wait to see the source code.
> 
> Thanks,
> Aberforth D
> 
> On Wed, 14 Oct 2020 at 16:11, Marc Shepherd  wrote:
> Something like Kieren's example is exactly what I am looking for. If you 
> could provide source code for that, I think it will give me all that I need!

I’ll put together a little document/tutorial on how I do this, including some 
of the syntactic sugar I’ve developed over the years. But it will take me a few 
days (I’m home-schooling my kids, etc.).

Cheers,
Kieren.


Kieren MacMillan, composer (he/him/his)
‣ website: www.kierenmacmillan.info
‣ email: kie...@kierenmacmillan.info




Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Kieren MacMillan
Hi Leszek,

> I would like to compile a full score and parts based on one file containing 
> musical definitions. I would like to put pagebreaks in specific places in the 
> full score, so that they would not operate when parts are compiled. The way 
> I'm doing it now is that I put a \pagebreak in one of the parts and use tags. 
> E.g. the oboe part "oboeMusic" may contain 
> 
> \tag #'fullscoreonly { \pageBreak } 
> 
> And in the full score the part figures in the score as 
> \keepWithTag #'fullscoreonly \oboeMusic
> 
> while in the part file the part is compiled as 
>   \removeWithTag #'fullscoreonly \oboeMusic  
> 
> I don't really like this solution; it's just not tidy... and I have to 
> remember which part I put the page breaks in. Are there any established 
> Lilypond practices for doing this? Is it e.g. possible to introduce some sort 
> of 'invisible part' on top of the rest which would just be used for editorial 
> stuff like this?

I highly recommend looking into the edition-engraver for this purpose — 
“editorial stuff” (including breaks/layout control) is its primary use case, 
and it handles that kind of thing spectacularly.

Cheers,
Kieren.


Kieren MacMillan, composer (he/him/his)
‣ website: www.kierenmacmillan.info
‣ email: kie...@kierenmacmillan.info




Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Christian Masser
Hi Leszek!

I usually put the layout-Stuff in a separate voice, but I can imagine, this
would be a total mess when dealing with many time signature changes. This
sounds a lot like the "Invisible part" you're speaking of.

music = { c1 c c c c c }
breakVoice = { s1 s \pageBreak }
\score {
   \new Staff {<<
  \music
  \breakVoice
   >> }
}

Best regards
Christian

Am Do., 15. Okt. 2020 um 14:20 Uhr schrieb Leszek Wroński :

> Dear Experts,
>
> I would like to compile a full score and parts based on one file
> containing musical definitions. I would like to put pagebreaks in specific
> places in the full score, so that they would not operate when parts are
> compiled. The way I'm doing it now is that I put a \pagebreak in one of the
> parts and use tags. E.g. the oboe part "oboeMusic" may contain
>
> \tag #'fullscoreonly { \pageBreak }
>
> And in the full score the part figures in the score as
> \keepWithTag #'fullscoreonly \oboeMusic
>
> while in the part file the part is compiled as
>   \removeWithTag #'fullscoreonly \oboeMusic
>
> I don't really like this solution; it's just not tidy... and I have to
> remember which part I put the page breaks in. Are there any established
> Lilypond practices for doing this? Is it e.g. possible to introduce some
> sort of 'invisible part' on top of the rest which would just be used for
> editorial stuff like this?
>
> Thanks in advance!
>
> Leszek Wronski.
>


Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Federico Bruni

Then your use of tags seems the best solution.



Il giorno gio 15 ott 2020 alle 14:40, Leszek Wroński 
 ha scritto:
Thank you very much! I'm already doing that :-) Still, it's a 70+ 
pages single-movement work where I'd like to control page-breaking in 
a precise way in a few locations...


Best regards,

Leszek.

On Thu, 15 Oct 2020 at 14:29, Federico Bruni  
wrote:

Il giorno gio 15 ott 2020 alle 14:19, Leszek Wroński
  ha scritto:
 > I don't really like this solution; it's just not tidy... and I 
have

 > to remember which part I put the page breaks in. Are there any
 > established Lilypond practices for doing this? Is it e.g. 
possible to

 > introduce some sort of 'invisible part' on top of the rest which
 > would just be used for editorial stuff like this?

 Instead of using \pageBreak (within the music input), you may 
control

 the line and page breaking with two different \paper blocks, one for
 the part and one for the score (using \include).









Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Leszek Wroński
Thank you very much! I'm already doing that :-) Still, it's a 70+ pages
single-movement work where I'd like to control page-breaking in a precise
way in a few locations...

Best regards,

Leszek.

On Thu, 15 Oct 2020 at 14:29, Federico Bruni  wrote:

> Il giorno gio 15 ott 2020 alle 14:19, Leszek Wroński
>  ha scritto:
> > I don't really like this solution; it's just not tidy... and I have
> > to remember which part I put the page breaks in. Are there any
> > established Lilypond practices for doing this? Is it e.g. possible to
> > introduce some sort of 'invisible part' on top of the rest which
> > would just be used for editorial stuff like this?
>
> Instead of using \pageBreak (within the music input), you may control
> the line and page breaking with two different \paper blocks, one for
> the part and one for the score (using \include).
>
>
>
>


Re: good practices regarding page breaks -- full score and parts

2020-10-15 Thread Federico Bruni
Il giorno gio 15 ott 2020 alle 14:19, Leszek Wroński 
 ha scritto:
I don't really like this solution; it's just not tidy... and I have 
to remember which part I put the page breaks in. Are there any 
established Lilypond practices for doing this? Is it e.g. possible to 
introduce some sort of 'invisible part' on top of the rest which 
would just be used for editorial stuff like this?


Instead of using \pageBreak (within the music input), you may control 
the line and page breaking with two different \paper blocks, one for 
the part and one for the score (using \include).







good practices regarding page breaks -- full score and parts

2020-10-15 Thread Leszek Wroński
Dear Experts,

I would like to compile a full score and parts based on one file containing
musical definitions. I would like to put pagebreaks in specific places in
the full score, so that they would not operate when parts are compiled. The
way I'm doing it now is that I put a \pagebreak in one of the parts and use
tags. E.g. the oboe part "oboeMusic" may contain

\tag #'fullscoreonly { \pageBreak }

And in the full score the part figures in the score as
\keepWithTag #'fullscoreonly \oboeMusic

while in the part file the part is compiled as
  \removeWithTag #'fullscoreonly \oboeMusic

I don't really like this solution; it's just not tidy... and I have to
remember which part I put the page breaks in. Are there any established
Lilypond practices for doing this? Is it e.g. possible to introduce some
sort of 'invisible part' on top of the rest which would just be used for
editorial stuff like this?

Thanks in advance!

Leszek Wronski.


Re: Markup in left and right margins

2020-10-15 Thread Aaron Hill

On 2020-10-15 2:53 am, Andrew Bernard wrote:

Hi Matthew,

A good question. But I would have thought that margins are exactly
that - margins. I don't think LilyPond was ever conceived to support
marginal annotations and complex print formatting. Wouldn't you have
to narrow your content in whatever way so as to create left or right
vertical space and simply add it there, so, inside the margins? But I
am sure all the TeX experts on the list will chime in.


Nothing prevents you from \translating \markup outside the normal 
bounds.


NOTE: The following code requires some helper functions in order to 
specify absolute dimensions in \markup.  A real-world usage probably 
should be querying the values directly from \paper to eliminate 
redundancy.



\version "2.20.0"

#(define-markup-command
  (abs-override layout props arg rest)
  (pair? markup?)
  (let* ((sym (car arg))
 (val (cdr arg))
 (scl (ly:output-def-lookup layout 'output-scale)))
(interpret-markup layout props
  (markup #:override (cons sym (/ val scl)) rest

#(define-markup-command
  (abs-translate layout props arg rest)
  (pair? markup?)
  (let* ((x (car arg))
 (y (cdr arg))
 (scl (ly:output-def-lookup layout 'output-scale)))
(interpret-markup layout props
  (markup #:translate (cons (/ x scl) (/ y scl)) rest

\paper {
  paper-width = 8\cm
  paper-height = 5\cm
  top-margin = 1\cm
  bottom-margin = 1\cm
  left-margin = 1.5\cm
  right-margin = 2.5\cm
  tagline = ##f
}

visualizeBounds =
#(define-scheme-function
  (text)
  (markup?)
  #{
\markup
  \override #'(thickness . 1.5)
  \fill-line {
\overlay {
  \lower #0.5 \draw-line #'(0 . 1)
  \arrow-head #X #LEFT ##f
  \draw-line #'(2 . 0)
}
#text
\overlay {
  \lower #0.5 \draw-line #'(0 . 1)
  \arrow-head #X #RIGHT ##f
  \draw-line #'(-2 . 0)
}
  }
  #})

\markup \smaller \column {
  \fill-line { paper: \concat { 5cm \char ##xd7 8cm } }
  \fill-line { left-margin: 1.5cm }
  \fill-line { right-margin: 2.5cm }
  \vspace #0.5
}

\markup \overlay {
  \abs-translate #(cons (ly:cm -1.5) 0)
  \abs-override #(cons 'line-width (ly:cm 1.5))
  \with-color #'(0.8 0.3 0.2)
  \visualizeBounds left

  \with-color #'(0.2 0.8 0.4)
  \visualizeBounds normal

  \abs-translate #(cons (ly:cm 4) 0)
  \abs-override #(cons 'line-width (ly:cm 2.5))
  \with-color #'(0.2 0.5 0.8)
  \visualizeBounds right
}



-- Aaron Hill

Re: Markup in left and right margins

2020-10-15 Thread Andrew Bernard

Hi Matthew,

A good question. But I would have thought that margins are exactly that 
- margins. I don't think LilyPond was ever conceived to support marginal 
annotations and complex print formatting. Wouldn't you have to narrow 
your content in whatever way so as to create left or right vertical 
space and simply add it there, so, inside the margins? But I am sure all 
the TeX experts on the list will chime in.


Andrew


On 15/10/2020 3:22 am, Matthew Fong wrote:


For example, I might want to add notes in the margins, rather than in 
the music.