Re: LilyPond 2.22.0 released!

2021-01-12 Thread Kenneth Wolcott
Hi Phil;

  Thank you for announcing the Lilypond 2.22 release!

  I was looking for the Lilypond 2.22 package for a 64-bit MacOS
(Intel) running Big Sur, 11.1.

  What I see is a 32-bit MacOS package.

  When I installed Lilypond 2.20, I found a 64-bit package.

  Am I missing something obvious?  Am I confused?

Thanks,
Ken Wolcott

On Mon, Jan 11, 2021 at 5:37 AM Phil Holmes  wrote:
>
> We are proud to announce the release of GNU LilyPond 2.22.0. LilyPond is a 
> music engraving program devoted to producing the highest-quality sheet music 
> possible. It brings the aesthetics of traditionally engraved music to 
> computer printouts.
>
> This version includes improvements and fixes since the branching of the 
> previous stable release in August 2017 (even though the final 2.20.0 was only 
> released in March 2020). A list of added features and other user-visible 
> changes can be found at https://lilypond.org/doc/v2.22/Documentation/changes/ 
> Behind the scenes, this release switches to Python 3 and includes a number of 
> performance improvements that should be noticeable for larger scores.
>
> --
> Phil Holmes



Re: lilypond-book V2.22.0 hanging on Windows 10

2021-01-12 Thread David Wright
On Tue 12 Jan 2021 at 11:21:40 (-0500), Daniel Connors wrote:
> I am trying to embed a music engraving in a LaTeX document and am following
> the example given at
> https://lilypond.org/doc/v2.19/Documentation/usage/an-example-of-a-musicological-document.
> My example is a bit simpler than what is given in the documentation.  I
> have named this file lilylatexly.lytex
> ---
> 
> \documentclass[a4paper]{article}
> 
> \begin{document}
> 
> Documents for \verb+lilypond-book+ may freely mix music and text.
> For example,
> 
> \begin{lilypond}
> \relative c' {
>   c2 e2 \tuplet 3/2 { f8 a b } a2 e4
> }
> \end{lilypond}
> 
> Options are put in brackets.
> 
> \begin{lilypond}[fragment,quote,staffsize=26,verbatim]
>   c'4 f16
> \end{lilypond}
> 
> \end{document}
> 
> -
> 
> When I run the lilypond-book python script to process the .lytex file, the
> process starts, then hands and I get this python error traceback when I
> kill the process with Ctrl-C:
> 
> c:\Labs>lilypond-book --output=out --pdf lilylatexly.lytex
> lilypond-book.py (GNU LilyPond) 2.22.0
> Reading `c:\Labs\lilylatexly.lytex'
> Running `pdflatex' on file
> `C:\Users\X~1\AppData\Local\Temp\tmphrkt8nkt.tex' to detect default
> page settings.
> 
> Traceback (most recent call last):
>   File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
> 820, in 
> main()
>   File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
> 798, in main
> chunks = do_file(files[0])
>   File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
> 600, in do_file
> global_options.formatter.init_default_snippet_options(source)
>   File "C:\Program Files
> (x86)\LilyPond\usr\share\lilypond\current\python\book_base.py", line 173,
> in init_default_snippet_options
> line_width = self.get_line_width(source)
>   File "C:\Program Files
> (x86)\LilyPond\usr\share\lilypond\current\python\book_latex.py", line 314,
> in get_line_width
> textwidth = get_latex_textwidth(source, self.global_options)
>   File "C:\Program Files
> (x86)\LilyPond\usr\share\lilypond\current\python\book_latex.py", line 247,
> in get_latex_textwidth
> (parameter_string, error_string) = proc.communicate()
>   File
> "C:\Users\X\AppData\Local\Programs\Python\Python37\lib\subprocess.py",
> line 920, in communicate
> stdout, stderr = self._communicate(input, endtime, timeout)
>   File
> "C:\Users\X\AppData\Local\Programs\Python\Python37\lib\subprocess.py",
> line 1244, in _communicate
> self.stdout_thread.join(self._remaining_time(endtime))
>   File
> "C:\Users\\AppData\Local\Programs\Python\Python37\lib\threading.py",
> line 1032, in join
> self._wait_for_tstate_lock()
>   File
> "C:\Users\X\AppData\Local\Programs\Python\Python37\lib\threading.py",
> line 1048, in _wait_for_tstate_lock
> elif lock.acquire(block, timeout):
> KeyboardInterrupt
> ---
> NOTES:
> (1) I am running python 3.7;  I don't have any versions of python 2.X on my
> PC.  I had seen in discussion threads that I needed to have a newer version
> of lilypond so that python 3 would work with the lilypond-book python
> scripts.  I removed my older version of lilypond and now have V2.22.0
> installed.
> 
> (2) I had to rename lilypond-book to lilypond-book.py so that Windows 10
> recognized it as a python script.
> 
> (3) This example works fine with my linux installation of lilypond 2.22.0.
> 
> (4) From the python traceback there is some locking going on.  I don't know
> if this is some problem with write access to files?  Do I need to invoke
> the script with ADMIN privileges?

You appear to be running on Windows. A common problem is that Windows
doesn't let you write to a file that another application has open.
So make sure you close out.pdf before you run lilypond-book.
(I don't *think* you have to delete it as well.)

Cheers,
David.



Re: Why does -dbackend=svg -dcrop remove system-system-spacing?

2021-01-12 Thread David Wright
On Tue 12 Jan 2021 at 09:30:05 (-0500), Trevor Bača wrote:
> Hi Werner, Aaron and David (again),
> 
> I’m the OP, and I realize that I failed to provide the context of my
> workflow. I’ll try to do that now, to help make better use of all your time!
> 
> My workflow has to do with maintaining the docs for Abjad. (Abjad is a
> Python package for generating LilyPond files programmatically.) I’ve used
> Lily for years to produce (PDF output of) my own scores, which never
> involved cropping. More recently, documentation of examples on the Abjad
> website has necessitated cropping. Here’s an example of a minuet-generating
> game from the 18th-century, sometimes attributed to Mozart:
> 
> https://abjad.github.io/literature_examples/mozart.html
> 
> That page contains three examples created by LilyPond:
> 
>1.
> 
>a two-measure (single-system) toy example (near the top of the page);
>2.
> 
>a 17-measure minuet (near the bottom of the page); and
>3.
> 
>the same 17-measure minuet with a few more overrides (at the very bottom
>of the page).
> 
> You can right away the quality of Lily’s SVG output for these examples is
> fantastic. Lily’s SVG images have added a new level of professionalism to
> my docs.
> 
> But you can also see the multisystem examples (#2 and #3) look kinda crazy
> because of the “system-packing” trait carried by the current implementation
> of -dcrop:
> 
> [image: screen-shot-example-2.png]
> 
> There’s just not enough whitespace between systems. And it would be so
> lovely to bring the whole thing up to the beautiful standards that are now
> possible with the sharpness of the SVG output. (And the bass clef hasn’t
> been attached yet in that example! ;)
> 
> In the upcoming release of Abjad’s docs, my workaround has been to add
> transparent markup “struts” above notes in the top system, sprinkling
> something like …
> 
>   - \tweak staff-padding #10
>   - \tweak transparent ##t
>   ^ \markup A
> 
> … at strategic places.

A workaround that wouldn't involve changing the source code for every
multiline score would be to remove "-dcrop" from the flags list in
sphinx.py, and instead use Python's subprocess module to crop the
image with Niols's method (inkscape), shown half-a-dozen posts upthread.

The result would look like cartoon D in my earlier post (with
tagline=##f.) (My own workflow is PDF-based, and pdfcrop is the
utility I use to achieve the same result as what you want.)

> Surprisingly, the presence of the (transparent)
> markup tricks -dcrop into preserving the whitespace between systems, giving
> totally beautiful results. Here’s an example (local to my machine and not
> yet visible at the link above):
> 
> [image: local-with-whitespace.png]
> 
> Ok, apologies for going on at length here, but hopefully now my workflow is
> a little more clear.
> 
> I’m not here to condemn the implementation of a feature (or anyone’s
> work!). I was just surprised that -dcrop “packs” systems together, because
> that’s not a behavior of cropping I'm used to in other pieces of software.
> And the “system packing” behavior of the current implementation of -dcrop
> means that in the Abjad docs I have really wonderful single-system examples
> … but messier multisystem examples.
> 
> In the end, I guess all of this reduces to the following: the current
> (“system-packing”) trait of -dcrop means that my multisystem examples are
> less than ideal. That’s all ;)
> 
> Knowing all this, would it be possible to allow for a non-system-packing
> version of -dcrop?
> 
> Only because I have hard time imagining a use case for the current
> system-packing behavior, I suppose it’s possible that the behavior of
> -dcrop should be changed globally to preserve intersystem spacing. (“Why
> would we want to remove an element of page layout that users specify by
> hand, with system-system-spacing and the like?”) But maybe there are users
> with creative uses of the current system-packing behavior? In which case
> I’d be delighted with perhaps an additional flag (-dcrop-preserve?) to
> allow page-layout-preserving cases, too.
> 
> Either outcome opens up a new world of possibilities in which users can use
> SVG output to demo the page layout of music, cropped to fit nicely into doc
> websites and the like.

Cheers,
David.



Re: convert-ly error

2021-01-12 Thread keith Luke
 Thanks, Dan.  Renaming convert-ly to convert-ly.py worked.

On Tue, Jan 12, 2021 at 5:07 PM Daniel Connors  wrote:

> convert-ly is a python script.  For Windows, rename *the file c:\Program
> Files (x86)\usr\bin\convert-ly to convert-ly.py*
>
> *Then Windows will know to run the python interpreter on this file.*
>
> *NOTE:  This script works as is on Linux because the first line of the
> script says to run python on the file.  But that's for Linux.  Windows
> doesn't know about #!/usr/bin/python3.*
>
> *Dan Connors*
>


Re: convert-ly error

2021-01-12 Thread Daniel Connors
 convert-ly is a python script.  For Windows, rename *the file c:\Program
Files (x86)\usr\bin\convert-ly to convert-ly.py*

*Then Windows will know to run the python interpreter on this file.*

*NOTE:  This script works as is on Linux because the first line of the
script says to run python on the file.  But that's for Linux.  Windows
doesn't know about #!/usr/bin/python3.*

*Dan Connors*


Re: convert-ly error

2021-01-12 Thread keith Luke
 Have any Windows 10 LP2.22.0 successfully run convert-ly?

I uninstalled LP2.22.0 and reinstalled it in *c:\Program Files
(x86)\LilyPond*
Here is my Path variable:

PATH=C:\Program Files
(x86)\LilyPond;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;c:\sysinternals;*C:\Program
Files (x86)\LilyPond\usr\bin**;*C:\Program Files\Dell\Dell Wireless WLAN
Card;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\ATI
Technologies\ATI.ACE\Core-Static;C:\Program
Files\Git\cmd;C:\Ruby26-x64\bin;C:\Users\K2L2\AppData\Local\Microsoft\WindowsApps

lilypond.exe is recognized as a program

lilypond-book and convert-ly do not have “.exe” extension and are only
recognized as files.

Directory of C:\Program Files (x86)\LilyPond\usr\bin


01/10/2021 04:40 AM 27,690 lilypond-book

01/10/2021 04:50 AM 9,106,393 lilypond.exe

01/10/2021 04:40 AM 14,196 convert-ly

Typing lilypond invokes the lilypond program:

c:\Program Files (x86)\LilyPond\usr\bin>lilypond

GNU LilyPond 2.22.0

Usage: lilypond [OPTION]... FILE...

Typeset music and/or produce MIDI from FILE.

LilyPond produces beautiful music notation.

For more information, see https://lilypond.org

Typing convert-ly fails:

c:\Program Files (x86)\LilyPond\usr\bin>convert-ly

'convert-ly' is not recognized as an internal or external command,

operable program or batch file.

Note the ">" is my prompt character.


On Tue, Jan 12, 2021 at 12:39 PM Michael Hendry 
wrote:

> > On 12 Jan 2021, at 20:12, keith Luke  wrote:
> >
> > I just installed lilypond 2.20.0 and tried running convert-ly to update
> old versions of scores.
> >
> > I get the following error messages:
> >
> > C:\LilyPond220\usr\bin>convert-ly -e alice2.ly
> > 'convert-ly' is not recognized as an internal or external command,
> > operable program or batch file.
> >
> > How do I get convert-ly to run?
> >
> > Thanks,
> >
> > Keith Luke
>
> Could the problem be the “>” sign in the path reported in the error
> message?
>
> > C:\LilyPond220\usr\bin>convert-ly -e alice2.ly
>
> "C:\LilyPond220\usr\bin\convert-ly -e alice2.ly” looks more promising.
>
> Regards,
>
> Michael Hendry


Re: convert-ly error

2021-01-12 Thread Federico Bruni
On Tue, Jan 12 2021 at 10:39:40 PM +, Michael Hendry 
 wrote:
Could the problem be the “>” sign in the path reported in the 
error message?



 C:\LilyPond220\usr\bin>convert-ly -e alice2.ly


I think it's the command line prompt symbol. In other words, he entered 
that directory and launched the command in that directory as it was in 
the PATH instead of calling that file. I don't know Windows, but in 
Linux you would have used ./convert-ly in that directory.


Anyway, the best suggestion is adding the binary path to the system 
PATH.







Re: convert-ly error

2021-01-12 Thread Michael Hendry
> On 12 Jan 2021, at 20:12, keith Luke  wrote:
> 
> I just installed lilypond 2.20.0 and tried running convert-ly to update old 
> versions of scores.
> 
> I get the following error messages:
> 
> C:\LilyPond220\usr\bin>convert-ly -e alice2.ly
> 'convert-ly' is not recognized as an internal or external command,
> operable program or batch file.
> 
> How do I get convert-ly to run?
> 
> Thanks,
> 
> Keith Luke

Could the problem be the “>” sign in the path reported in the error message?

> C:\LilyPond220\usr\bin>convert-ly -e alice2.ly

"C:\LilyPond220\usr\bin\convert-ly -e alice2.ly” looks more promising.

Regards,

Michael Hendry


Re: convert-ly error

2021-01-12 Thread Federico Bruni




On Tue, Jan 12 2021 at 10:12:04 AM -1000, keith Luke 
 wrote:
I just installed lilypond 2.20.0 and tried running convert-ly to 
update old versions of scores.


I get the following error messages:

C:\LilyPond220\usr\bin>convert-ly -e alice2.ly
'convert-ly' is not recognized as an internal or external command,
operable program or batch file.

How do I get convert-ly to run?




I guess you did not add that path - C:\LilyPond220\usr\bin - to the 
PATH variable, as described here:

http://lilypond.org/doc/v2.22/Documentation/web/windows






convert-ly error

2021-01-12 Thread keith Luke
I just installed lilypond 2.20.0 and tried running convert-ly to update old
versions of scores.

I get the following error messages:

C:\LilyPond220\usr\bin>convert-ly -e alice2.ly
'convert-ly' is not recognized as an internal or external command,
operable program or batch file.

How do I get convert-ly to run?

Thanks,

Keith Luke


Re: Error with default value on predicate on 2.22.0

2021-01-12 Thread Paolo Prete
Thanks very much Lukas-Fabian.
This fixed all for me.
But at the same time I wonder: doesn't that API change risk to break some
other code that uses the default value in the same order I used it? I
think, for example, at Harm's snippets.
Not sure if it is a realistic case, but I suggest to check it.

Best,
Paolo

On Tue, Jan 12, 2021 at 8:01 PM Lukas-Fabian Moser  wrote:

> Hi Paolo,
>
> Am 12.01.21 um 17:01 schrieb Paolo Prete:
> > Hello,
> >
> > I just experienced (on Linux) that this compiles with <= 2.20
> >
> > 
> >
> > foo = #(define-music-function (parser location col staff mus)((color?
> > red) string? ly:music?)
> > #{ c' d' #})
> >
> > {
> > \foo "bar" {}
> > }
> >
> > 
> >
> > But it doesn't compile with 2.22.0
> > What's wrong?
>
> Last May, Valentin (in 1ea236291f96dbe5) added the ability to use
> CSS-style color names (and hex color codes, and four-number RGBA colors
> with alpha channel) everywhere where previously one had to use RGB-style
> colors. (I only found out about this _great_ addition by researching
> your problem, so I'm actually quite happy right now.)
>
> For this, the color? predicate had to be weakened in order to cover more
> possible data types: Where previously, we had
>
>   (define-public (color? x)
>(and (list? x)
> (= 3 (length x))
> (every number? x)
> (every (lambda (y) (<= 0 y 1)) x)))
>
> in scm/output-lib.scm, it now reads
>
>   (define-public (color? x)
>(or
> (string? x)
> (and (list? x)
>  (let ((l (length x)))
>   (or (= 3 l)
>(= 4 l)))
>  (every number? x)
>  (every (lambda (y) (<= 0 y 1)) x
>
> To wit, while a color? used to be a list of exactly three numbers in
> [0,1], now it is _either_ a string _or_ a list of three or four numbers
> in the same interval.
>
> So, in your function definition, "bar" is now a valid color?, hence is
> taken as "col", and consequently LilyPond tries to read {} as a string?.
> I see two solutions for your problem:
>
> a) If you only ever need rgb colors, you could define and old-style
> color? predicate and use this in your function definition.
> b) You could re-order the parameters to your function in such a way that
> the next predicate after the optional color? is not a sub-predicate of
> color?. One example would be ly:music?, so the following works (I omit
> "parser"/"location"):
>
> \version "2.22"
>
> foo = #(define-music-function (col mus staff) ((color? red) ly:music?
> string?)
> #{ c' d' #})
>
> {
> \foo {} "bar"
> }
>
> Best
> Lukas
>
>


Re: Error with default value on predicate on 2.22.0

2021-01-12 Thread Lukas-Fabian Moser

Hi Paolo,

Am 12.01.21 um 17:01 schrieb Paolo Prete:

Hello,

I just experienced (on Linux) that this compiles with <= 2.20



foo = #(define-music-function (parser location col staff mus)((color? 
red) string? ly:music?)

#{ c' d' #})

{
\foo "bar" {}
}



But it doesn't compile with 2.22.0
What's wrong?


Last May, Valentin (in 1ea236291f96dbe5) added the ability to use 
CSS-style color names (and hex color codes, and four-number RGBA colors 
with alpha channel) everywhere where previously one had to use RGB-style 
colors. (I only found out about this _great_ addition by researching 
your problem, so I'm actually quite happy right now.)


For this, the color? predicate had to be weakened in order to cover more 
possible data types: Where previously, we had


 (define-public (color? x)
  (and (list? x)
   (= 3 (length x))
   (every number? x)
   (every (lambda (y) (<= 0 y 1)) x)))

in scm/output-lib.scm, it now reads

 (define-public (color? x)
  (or
   (string? x)
   (and (list? x)
    (let ((l (length x)))
 (or (= 3 l)
  (= 4 l)))
    (every number? x)
    (every (lambda (y) (<= 0 y 1)) x

To wit, while a color? used to be a list of exactly three numbers in 
[0,1], now it is _either_ a string _or_ a list of three or four numbers 
in the same interval.


So, in your function definition, "bar" is now a valid color?, hence is 
taken as "col", and consequently LilyPond tries to read {} as a string?. 
I see two solutions for your problem:


a) If you only ever need rgb colors, you could define and old-style 
color? predicate and use this in your function definition.
b) You could re-order the parameters to your function in such a way that 
the next predicate after the optional color? is not a sub-predicate of 
color?. One example would be ly:music?, so the following works (I omit 
"parser"/"location"):


\version "2.22"

foo = #(define-music-function (col mus staff) ((color? red) ly:music? 
string?)

#{ c' d' #})

{
\foo {} "bar"
}

Best
Lukas




lilypond-book V2.22.0 hanging on Windows 10

2021-01-12 Thread Daniel Connors
I am trying to embed a music engraving in a LaTeX document and am following
the example given at
https://lilypond.org/doc/v2.19/Documentation/usage/an-example-of-a-musicological-document.
My example is a bit simpler than what is given in the documentation.  I
have named this file lilylatexly.lytex
---

\documentclass[a4paper]{article}

\begin{document}

Documents for \verb+lilypond-book+ may freely mix music and text.
For example,

\begin{lilypond}
\relative c' {
  c2 e2 \tuplet 3/2 { f8 a b } a2 e4
}
\end{lilypond}

Options are put in brackets.

\begin{lilypond}[fragment,quote,staffsize=26,verbatim]
  c'4 f16
\end{lilypond}

\end{document}

-

When I run the lilypond-book python script to process the .lytex file, the
process starts, then hands and I get this python error traceback when I
kill the process with Ctrl-C:

c:\Labs>lilypond-book --output=out --pdf lilylatexly.lytex
lilypond-book.py (GNU LilyPond) 2.22.0
Reading `c:\Labs\lilylatexly.lytex'
Running `pdflatex' on file
`C:\Users\X~1\AppData\Local\Temp\tmphrkt8nkt.tex' to detect default
page settings.

Traceback (most recent call last):
  File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
820, in 
main()
  File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
798, in main
chunks = do_file(files[0])
  File "C:\Program Files (x86)\LilyPond\usr\bin\lilypond-book.py", line
600, in do_file
global_options.formatter.init_default_snippet_options(source)
  File "C:\Program Files
(x86)\LilyPond\usr\share\lilypond\current\python\book_base.py", line 173,
in init_default_snippet_options
line_width = self.get_line_width(source)
  File "C:\Program Files
(x86)\LilyPond\usr\share\lilypond\current\python\book_latex.py", line 314,
in get_line_width
textwidth = get_latex_textwidth(source, self.global_options)
  File "C:\Program Files
(x86)\LilyPond\usr\share\lilypond\current\python\book_latex.py", line 247,
in get_latex_textwidth
(parameter_string, error_string) = proc.communicate()
  File
"C:\Users\X\AppData\Local\Programs\Python\Python37\lib\subprocess.py",
line 920, in communicate
stdout, stderr = self._communicate(input, endtime, timeout)
  File
"C:\Users\X\AppData\Local\Programs\Python\Python37\lib\subprocess.py",
line 1244, in _communicate
self.stdout_thread.join(self._remaining_time(endtime))
  File
"C:\Users\\AppData\Local\Programs\Python\Python37\lib\threading.py",
line 1032, in join
self._wait_for_tstate_lock()
  File
"C:\Users\X\AppData\Local\Programs\Python\Python37\lib\threading.py",
line 1048, in _wait_for_tstate_lock
elif lock.acquire(block, timeout):
KeyboardInterrupt
---
NOTES:
(1) I am running python 3.7;  I don't have any versions of python 2.X on my
PC.  I had seen in discussion threads that I needed to have a newer version
of lilypond so that python 3 would work with the lilypond-book python
scripts.  I removed my older version of lilypond and now have V2.22.0
installed.

(2) I had to rename lilypond-book to lilypond-book.py so that Windows 10
recognized it as a python script.

(3) This example works fine with my linux installation of lilypond 2.22.0.

(4) From the python traceback there is some locking going on.  I don't know
if this is some problem with write access to files?  Do I need to invoke
the script with ADMIN privileges?

Thank you for your help in resolving this problem.


Re: Why does -dbackend=svg -dcrop remove system-system-spacing?

2021-01-12 Thread Noeck
Hi,

many years ago, I asked for a -dcrop options for SVG for a very similar
usecase: adding SVG images to a website (a markdown extension in
particular). It was then implemented some time later and I was happy
with it (with my single line scores). It might be that Étienne Beaulé
implemented it, but that is just a guess from a distant memory - git
could surely tell.

I am writing that here, because I’d like to add that as far as I
remember, the intention for -dcrop was like Trevor explained and the
removal of inter-system white-space seems like an accident to me.

Cheers,
Joram



Error with default value on predicate on 2.22.0

2021-01-12 Thread Paolo Prete
Hello,

I just experienced (on Linux) that this compiles with <= 2.20



foo = #(define-music-function (parser location col staff mus)((color? red)
string? ly:music?)
#{ c' d' #})

{
\foo "bar" {}
}



But it doesn't compile with 2.22.0
What's wrong?

Thanks!


Re: Why does -dbackend=svg -dcrop remove system-system-spacing?

2021-01-12 Thread Werner LEMBERG

> In the upcoming release of Abjad’s docs, my workaround has been to
> add transparent markup “struts” above notes in the top system, [...]

Nice idea!  For multi-system cropped output this is a good temporary
workaround IMHO.

> Knowing all this, would it be possible to allow for a
> non-system-packing version of -dcrop?

I hope that some of the more powerful LilyPond developers find time
and interest to fix this in the not too distant future.

You might help us with submitting a bug report, BTW – it seems that
the problem has been discussed on the mailing list(s) but I can't find
something related in lilypond's issue database.


Werner


Re: Clear musi view button

2021-01-12 Thread Freeman Gilmore
On Tue, Jan 12, 2021 at 6:53 AM Federico Bruni  wrote:

>
>
> Il giorno lun, gen 11 2021 at 21:35:31 -0500, Freeman Gilmore
>  ha scritto:
> > Is there a hotkey for the 'Clear musi view button'?
> > Thank you ƒg
>
> In Frescobaldi?
>
> There's no default shortcut, but you can set your own. Go to
> Edit>Preferences, click on Keyboard Shortcuts and search "clear" to
> find the command.
>
> Thank you.  That worked for me.   The 'Clear Music View" works great for
when I am trying things
 when I do not have a clue.
ƒg


Re: Why does -dbackend=svg -dcrop remove system-system-spacing?

2021-01-12 Thread Trevor Bača
On Fri, Jan 8, 2021 at 6:02 PM David Wright 
wrote:

> On Thu 07 Jan 2021 at 19:57:12 (-0500), Trevor Bača wrote:
> > On Wed, Jan 6, 2021 at 2:29 PM David Wright wrote:
> > > On Wed 06 Jan 2021 at 11:34:24 (-0500), Trevor Bača wrote:
> > > > On Tue, Jan 5, 2021 at 11:31 PM David Wright wrote:
> > > > > On Tue 05 Jan 2021 at 19:05:30 (-0500), Trevor Bača wrote:
> > > > > > I love the functionality for cropped SVGs! (Added back in 2019,
> or
> > > > > > around then?)
> > > > > >
> > > > > > Question: it appears that cropped multisystem SVGs remove all
> > > > > > whitespace between systems. Is this supposed to happen?
> > > > >
> > > > > I think that removing all the margins is the functionality "crop"
> is
> > > > > supposed to add to LP. To generate the equivalent cropped and
> packed
> > > > > image without this facility would be quite tedious to do (unless
> > > > > someone has a trick for doing it?).
> > > > >
> > > > > > %%% BEGIN %%%
> > > > > > […]
> > > > > > %%% END %%%
> > > > > >
> > > > > > Called with ...
> > > > > >lilypond -dbackend=svg -dcrop test.ly
> > > > > > ... produces test.cropped.svg as attached here.
> > > > > >
> > > > > > Screenshot:
> > > > > > […]
> > > > > >
> > > > > > Seems like cropping should be around the edges of the image
> (rather
> > > > > > than between systems)?
> > > > >
> > > > > If you just want to crop the whole page image, you can do that
> easily
> > > > > at the end of a normal run with the usual utilities. If you require
> > > > > LP to set the entire score on a single page, just use a very long
> > > > > custom page (as in NR §4.1.2: width, then length).
> > > >
> > > > I'm sorry; I don't understand.
> > > >
> > > > What I want Lily to do: remove whitespace from the *edges* of an SVG.
> > >
> > > As I said, you run LP as normal, and then trim to taste. So, taking
> > > your example, I ran it with
> > > $ lilypond-2.21.80-1.linux-64/bin/lilypond --svg -dno-point-and-click
> > > Bača.ly
> > > and then edited the first line of Bača.svg, resulting in
> Bača-trimmed.svg.
> > > The end of the first line is modified from
> > >  width="210.00mm" height="297.00mm" viewBox="0 0 119.5016 169.0094">
> > > to
> > >  width="192.00mm" height="297.00mm" viewBox="4.5 0 109.5016 169.0094">
> > > which I did by inspection. As you use SVG files in your workflow,
> > > I assume you can carry this out more easily and precisely¹ with some
> > > particular tool. (I'm PDF-centric myself.) I only considered X because
> > > I was inspecting the file on a landscape screen (and you didn't remove
> > > the tagline anyway).
> > >
> > > > What Lily actually does when -dcrop is set: removes whitespace from
> the
> > > > edges *and from between all systems* of an SVG.
> > >
> > > That's right, so that your file contains all the information,
> > > unencumbered by margins, ready for some sort of further processing.
> > > Obviously, I don't know what that will be in your case.
> > >
> > > It reminds me of those PNG files that you find in browsers' cache,
> > > which have a strip or grid of little images that are used internally,
> > > either as a toolbar, or displayed sequentially like a movie.
> > >
> > > > So my question is: is Lily supposed to remove whitespace from
> *between*
> > > > systems when -d[c]rop is set?
> > >
> > > AIUI yes. But this is policy: I await pronouncements from higher-ups.
> > >
> > > ¹ I believe the modifications need to be kept proportional, in order
> > >   to preserve the aspect ratio.
> >
> > I really appreciate the responses, but I'm even more confused than
> before.
> >
> > When you ran ...
> >
> > $ lilypond-2.21.80-1.linux-64/bin/lilypond --svg -dno-point-and-click
> Bača.ly
> >
> > ... why didn't you include the -dcrop option?
>
> [You need a fixed width font to make sense of text below.]
>
> What running my command on your source produces might be represented by:
>
> A   ┌┐
> ││
> ││
> │⸱⸱⸱▒▒⸱⸱⸱│
> ││
> │⸱⸱⸱▒▒⸱⸱⸱│
> ││
> │⸱⸱⸱▒▒⸱⸱⸱│
> ││
> ││
> ││
> ││
> ││
> ││
> │⸱tt⸱│
> ││
> └┘
>
> where ⸱ is white space, ▒ is music, and t is the tagline.
>
> What my previous post also had attached to it was the result of
> trimming off the whitespace from just the sides:
>
> B   ┌──┐
> │⸱⸱│
> │⸱⸱│
> │▒▒│
> │⸱⸱│
> │▒▒│
> │⸱⸱│
> │▒▒│
> │⸱⸱│
> │⸱⸱│
> │⸱⸱│
> │⸱⸱│
> │⸱⸱│
> │⸱⸱│
> │⸱⸱tt⸱⸱│
> │⸱⸱│
> └──┘
>
> (I trimmed only the sides because the 

Re: Clear musi view button

2021-01-12 Thread Federico Bruni




Il giorno lun, gen 11 2021 at 21:35:31 -0500, Freeman Gilmore 
 ha scritto:

Is there a hotkey for the 'Clear musi view button'?
Thank you ƒg


In Frescobaldi?

There's no default shortcut, but you can set your own. Go to 
Edit>Preferences, click on Keyboard Shortcuts and search "clear" to 
find the command.







Frescobaldi and Lilypond on Apple Silicon

2021-01-12 Thread Jan-Peter Voigt
Hi list,

at the beginning of this year, I received a MacBookPro with Apple
Silicon. Have any of you used Lilypond and Frescobaldi successfully on
this hardware?
A preview version of Docker is running on the machine and with an ARM
Ubuntu it is indeed possible to start an ARM Lilypond. I will test this
out further and report back later.

Jan-Peter



Re: Lyrics as verses or in system?

2021-01-12 Thread Peter Chubb


Thanks that looks pretty much like what I want.
I felt sure that someone would have done it already!

--
Peter C