Re: Position of rests inside beamed groups

2017-09-22 Thread Gilberto Agostinho
Hello Harm,

Thanks for your reply.


Thomas Morley-2 wrote
> Best I can think of is:
> 
> {
>   \override Staff.Stem.stemlet-length = #1.25
>   c'16[ d'
>   \once\override NoteColumn.X-offset = 1
>   r deses']
> }

This works quite well! I've made some quick tests and the scores are looking
much better (I am algorithmically adjusting the value of the
NoteColumn.X-offset depending on the size of the beamed group). I will make
some more tests, but it looks like this solves my issue. Many thanks!

Cheers,
Gilberto



--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Creating a 11-line system

2017-09-22 Thread Ståle Ødegården
Thank you, this is excactly what I was looking for!

I have another challenge: making the key signature also mimic a standard 
PianoStaff setup.
I have a partial solution with «\override KeySignature.flat-positions = #'((-10 
. 10))» and similar, but I don’t want the «extra» accidentals in the middle.

How do I do this?


Ståle



> 22. sep. 2017 kl. 02.44 skrev Nathan Ho :
> 
> On 2017-09-21 14:05, Ståle Ødegården wrote:
>> Hi!
>> I wonder how I can create a 11-line system with both treble and bass
>> clefs present.
>> I have two ideas, but I can’t make any of them work:
>> - Create a PianoStaff or ChoirStaff and force the spacing between them
>> to be _excactly_ one line apart - then add the extra line
>> - Create lots of extra lines in a single staff and set up the two
>> clefs to mimic a PianoStaff
>> What could be the best solution to this problem?
> 
> hi Ståle,
> 
> personally i'd go with the second idea. this part of the notation manual 
> concerns staff modification: 
> http://lilypond.org/doc/v2.18/Documentation/notation/modifying-single-staves
> 
> the main tricky part is modifying the Clef stencil, which can be done using a 
> markup:
> 
> {
>  \override Staff.StaffSymbol.line-count = #11
>  \override Staff.Clef.stencil = #ly:text-interface::print
>  \override Staff.Clef.text =
>\markup
>  \combine
>\raise #2 \musicglyph #"clefs.G"
>\lower #2 \musicglyph #"clefs.F"
>  \clef alto
>  c'1
> }
> 
> 
> 
> nathan
> 




___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Regtest for issue 5181 (was: \mark and slur)

2017-09-22 Thread David Kastrup
Thomas Morley  writes:

> 2017-09-16 22:21 GMT+02:00 David Kastrup :
>> Thomas Morley  writes:
>>
>>> 2017-09-16 21:49 GMT+02:00 David Kastrup :
>>>
 And, uh, it is lacking regtests and documentation.  Because someone for
 some reason finds it less challenging to implement functionality than
 inventing examples using it...
>>>
>>> Absolutely no idea which person you may have in mind ...
>>>
 If you are testing things out anyway, at least regtests should not be
 too far away...
>>>
>>> Will do, at least for regtests and as soon as I find some time.
>>
>> Thanks.  Sorry for my mental laziness.
>
> You? Lazy? Rubbish!
>
> Here my suggestion for a regtest. Not sure if we discuss/demonstrate
> problems in regtests, though.
> Ofcourse the title would be removed (only done for demonstration here)
> and surpressing the warning probably needs to be adjusted, depending
> how 5194 will be done finally.

Now things become _really_ embarrassing.  Trying to come up with
improvements on your regtest convinced me that this kind of syntactical
feature is not served well by a graphical test featuring the typeset
results.

So I stole a bunch of code from the display-lily-tests.ly regtest.

I am not convinced this is good either: only outputting stuff that is
less than perfect, and only to the terminal (namely without any typeset
output) is not nice for the printed variant of the regtests either.  But
if there is a better choice, it would probably also warrant implementing
in display-lily-tests.ly .

Not putting up an issue just yet.  Need to hear that you're ok with what
amounts to scrapping your work after it helped me figure out why I
wasn't even able to start writing something that I felt good about.

\version "2.21.0"

\header {

  texidoc = "This is a test of combining post-events with various
constructs.  Problems are reported on the stderr of this run; there
are no images produced."

}

%%%
%%% Testing utilities
%%%
#(use-modules (scm display-lily))

#(define (parse-lily-and-compute-lily-string chr port)
  (let ((lily-string (call-with-output-string
  (lambda (out)
(do ((c (read-char port) (read-char port)))
((and (char=? c #\#)
  (char=? (peek-char port) #\]))
 (read-char port))
  (display c out))
`(let* ((parser-clone (ly:parser-clone))
(input-str (string-append "\\displayLilyMusic "
  (string-trim-both ,lily-string)))
	(music #f)
	(seen
	 (string-trim-both
	  (with-output-to-string
	   (lambda ()
		(set! music
		 (ly:parse-string-expression parser-clone input-str))
	(result-str (string-trim-both (music->lily-string music
  (cons* input-str result-str seen

#(read-hash-extend #\[ parse-lily-and-compute-lily-string) %{ ] %}

#(define (lily-string->markup str)
   (make-column-markup (string-split str #\NewLine)))

test =
#(define-void-function (harmless strings)
  ((string?) pair?)
  (let ((input (car strings))
	(output (cadr strings))
	(seen (cddr strings))
	(result-info (or harmless "BUG")))
   (if harmless
(if (not (equal? output seen))
 (ly:progress "Test unequal: ~a.\ninput  = ~a\nvalue  = ~a\noutput = ~a\n"
  harmless input output seen)
 (ly:input-warning (*location*) "Test equal: unexpected.\ninput  = ~a\nvalue  = ~a\noutput = ~a"
  input output seen))
(if (not (equal? output seen))
 (ly:input-warning (*location*) "Test unequal: BUG.\ninput  = ~a\nvalue  = ~a\noutput = ~a"
  input output seen)

pitch = c'
note = c'4
chord = 

\test "limitation" ##[ \note -1 #]
\test "limitation" ##[ $note -1 #]
\test "limitation" ##[ \chord -1 #]
\test ##[ { \note -1 } #]
\test "limitation" ##[ { \note -1 } -2 #]
\test ##[ < \note -1 g' > -2 #]
\test ##[ { \chord -1 } #]
\test ##[ $pitch -1 #]
\test "limitation" ##[ #pitch -1 #]
\test ##[ c-\single \slurUp ( -1 #]
\test "limitation" ##[ c \single \slurUp ( -1 #]

%% end test.

#(read-hash-extend #\[ #f) %{ ] %}

-- 
David Kastrup
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


partcombine grace

2017-09-22 Thread Pierre-Luc Gauthier
Hi there,

When I use grace notes in a partcombined part, I often get this
situation where the CombineTextScript is attached *after* the grace
notes instead of being attached to the first grace notes.

I tried adding spacers here and there but it does not help.

Is this an expected behavior?

Here is my MWE :

\version "2.21.0"

partA = \relative c'' {
  c4 d e f |
  R1*2
}

partB = \relative c'' {
  c4 b a g
  R1
  \acciaccatura {f16 g a b}
  c1 |
}

\partcombine \partA \partB


Thanks for any input.
-- 
Pierre-Luc Gauthier
\version "2.21.0"

partA = \relative c'' {
  c4 d e f |
  R1
  \grace {s16 s s s}
  R1
}

partB = \relative c'' {
  c4 b a g
  R1
  \acciaccatura {f16 g a b}
  c1 |
}

\partcombine \partA \partB___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


restrain string numbers

2017-09-22 Thread bb
I want to restrain/omit string numbers in the score. But I need them to
define because of the guitar tabs. How can I do that?

I was looking in the lilypond-user Archives for restrain/omit/avoid/no
string numbers but found no hit.

Regards BB


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


MMR vs Rest collision

2017-09-22 Thread Pierre-Luc Gauthier
Hi there,

Why is it that rests avoid collisions and MMRs do not?
Also, is there a way to tell the MMR to go as far as needed to be
bellow voice one?

MWE :
\version "2.21.0"

<<
  \repeat unfold 4 {c8 d}
  \\
  r1
>>

<<
  \repeat unfold 4 {c8 d}
  \\
  R1
>>

Thank you
-- 
Pierre-Luc Gauthier
\version "2.21.0"

<<
  \repeat unfold 4 {c8 d}
  \\
  r1
>>

<<
  \repeat unfold 4 {c8 d}
  \\
  R1
>>___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: restrain string numbers

2017-09-22 Thread David Kastrup
bb  writes:

> I want to restrain/omit string numbers in the score. But I need them to
> define because of the guitar tabs. How can I do that?
>
> I was looking in the lilypond-user Archives for restrain/omit/avoid/no
> string numbers but found no hit.

Huh.  At any rate,

\new Voice \with { \omit StringNumber } { ... }

should work fine here.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: restrain string numbers

2017-09-22 Thread Malte Meyn



Am 22.09.2017 um 16:51 schrieb bb:

I want to restrain/omit string numbers in the score. But I need them to
define because of the guitar tabs. How can I do that?

I was looking in the lilypond-user Archives for restrain/omit/avoid/no
string numbers but found no hit.

Regards BB


\omit StringNumber

in a \layout or \with block or music

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MMR vs Rest collision

2017-09-22 Thread Phil Holmes
- Original Message - 
From: "Pierre-Luc Gauthier" 

To: "lilypond-user" 
Sent: Friday, September 22, 2017 3:58 PM
Subject: MMR vs Rest collision



Hi there,

Why is it that rests avoid collisions and MMRs do not?
Also, is there a way to tell the MMR to go as far as needed to be
bellow voice one?

MWE :
\version "2.21.0"

<<
 \repeat unfold 4 {c8 d}
 \\
 r1




<<
 \repeat unfold 4 {c8 d}
 \\
 R1




Thank you
--
Pierre-Luc Gauthier


http://lilypond.org/doc/v2.19/Documentation/notation/writing-rests#full-measure-rests

See "Positioning multi-measure rests"

--
Phil Holmes 



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Creating a 11-line system

2017-09-22 Thread Nathan Ho

On 2017-09-22 00:55, Ståle Ødegården wrote:

Thank you, this is excactly what I was looking for!

I have another challenge: making the key signature also mimic a
standard PianoStaff setup.
I have a partial solution with «\override KeySignature.flat-positions
= #'((-10 . 10))» and similar, but I don’t want the «extra»
accidentals in the middle.

How do I do this?


hi Ståle,

you can intercept the stencil and tell it to print the default key 
signature twice with different translations:


{
  \override Staff.StaffSymbol.line-count = #11

  \override Staff.KeySignature.stencil =
#(lambda (grob)
   (let ((stencil (ly:key-signature-interface::print grob)))
 (ly:stencil-add
   (ly:stencil-translate-axis stencil 3.5 Y)
   (ly:stencil-translate-axis stencil -3.5 Y

  \override Staff.Clef.stencil = #ly:text-interface::print
  \override Staff.Clef.text =
\markup
  \combine
\raise #2 \musicglyph #"clefs.G"
\lower #2 \musicglyph #"clefs.F"
  \clef alto
  \key es \minor
  c'1
}


nathan



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: restrain string numbers

2017-09-22 Thread Marc Hohl
Am 22.09.2017 4:51 nachm. schrieb bb :I want to restrain/omit string numbers in the score. But I need them to

define because of the guitar tabs. How can I do that?
\new Staff \with { \omit StringNumber } { ... your music }HTHMarc___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: restrain string numbers

2017-09-22 Thread bb
Thanks, works nice!


Am 22.09.2017 um 17:07 schrieb Marc Hohl:
> \new Staff \with { \omit StringNumber } { ... your music }


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: restrain string numbers

2017-09-22 Thread bb
Thanks, works nice!


Am 22.09.2017 um 17:06 schrieb David Kastrup:
> bb  writes:
>
>> I want to restrain/omit string numbers in the score. But I need them to
>> define because of the guitar tabs. How can I do that?
>>
>> I was looking in the lilypond-user Archives for restrain/omit/avoid/no
>> string numbers but found no hit.
> Huh.  At any rate,
>
> \new Voice \with { \omit StringNumber } { ... }
>
> should work fine here.
>


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MMR vs Rest collision

2017-09-22 Thread Pierre-Luc Gauthier
Hi Phil,

2017-09-22 11:17 GMT-04:00 Phil Holmes :
> http://lilypond.org/doc/v2.19/Documentation/notation/writing-rests#full-measure-rests
> See "Positioning multi-measure rests"

Thanks for the pointer. I should have mentioned that I'm aware that
you can set them manually.
But I'm still curious as to why (technically) do they not behave like
"normal" rest as far as vertical positioning with voices is concerned.
I suppose that since they are in the very middle of the measure, they
are not attached to (I guess) a notes-column hence they cannot be
aware of them? I do not have a clue.

I take it there is no current way for MMR to be placed automaticaly
"bellow" a voice as a rest would.

My first example was using \cueDuring and the MMR positioning override
*does* work correctly.
I was trying to avoid having to split \tagging \overrided stuff and
"normal" stuff.

\version "2.21.0"

cued = \repeat unfold 8 {c'8 d'}
\addQuote "cued" \cued

{
  c'1
  \cueDuring "cued" #UP {R1}
}

{
  c'1
  <<
\repeat unfold 4 {c8 d'}
\\
r1
  >>
}

Again thanks for your help.
-- 
Pierre-Luc Gauthier

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: NullVoice lyrics alignment error

2017-09-22 Thread Pierre-Luc Gauthier
2017-09-21 18:43 GMT-04:00 David Wright :
> Say I'm setting a typical Anglican (Episcopal) hymn in four parts on
> two staves with the words in between them. The voice parts will have
> passing notes etc. at different times, each of which necessitates a
> left-alignment of that syllable and an appropriate lyric extender.
>
> Before NullVoice came along, the lyrics would be full of \vs \va \vt
> and \vb (shorthand for \set associatedVoice = "vsoprano" etc) and there
> would be a separate context for the lyric position in the system
> (because the lower parts' notes appear after the lyrics).
>
> Now all I do is duplicate the most moving part as a NullVoice, then
> subdivide its non-moving notes to correspond with any part(s) moving
> at that point. Setting the lyrics to the NullVoice now does everything
> automatically, with the odd exception. (For example, the moving part
> might have a note displaced by the neighbouring voice being only a
> (semi-)tone away.)




>> For example, I'm pretty sure the \hideNotes technique won't work for
>> adding lyrics to a \partcombine part which I use extensively.

> I've hardly used \partcombine
> I loathe doing
> I've read here that certain things are fragile.

Yes, partcombine can be quite the hassle.

But I'm sure things will get better over time.


>> So am-I correct to assume the notes are still there?

> I'm just rationalising from what I've observed, but it would appear
> that \hideNotes is the one that just blanks the stencils, so the notes
> are still there, the lyrics have to lie under them, and so the measure
> gets expanded appropriately.

Yes, I understand.


>> I suppose that the lyrics has no "timed" stuff to align to.

> My observations (again without knowing what the code actually does)
> suggest that because no X-space is required to set anything¹, the
> positions of the timing "anchors" produced by NullVoice have a
> zero-point near to the beginning of the line. If you set (and then
> hide) something, a rest or a note, then a collision with the clef
> and signatures has to be avoided, so the zero-point of time gets
> pushed rightwards to a position after them.

So if I understood correctly, we could infer that it is aligned with
the basis of all alignment which is (is it?) the start of the line but
with *no* offset as LilyPond hasn't added any.



-- 
Pierre-Luc Gauthier

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Regtest for issue 5181 (was: \mark and slur)

2017-09-22 Thread Thomas Morley
2017-09-22 12:22 GMT+02:00 David Kastrup :
> Thomas Morley  writes:
>
>> 2017-09-16 22:21 GMT+02:00 David Kastrup :
>>> Thomas Morley  writes:
>>>
 2017-09-16 21:49 GMT+02:00 David Kastrup :

> And, uh, it is lacking regtests and documentation.  Because someone for
> some reason finds it less challenging to implement functionality than
> inventing examples using it...

 Absolutely no idea which person you may have in mind ...

> If you are testing things out anyway, at least regtests should not be
> too far away...

 Will do, at least for regtests and as soon as I find some time.
>>>
>>> Thanks.  Sorry for my mental laziness.
>>
>> You? Lazy? Rubbish!
>>
>> Here my suggestion for a regtest. Not sure if we discuss/demonstrate
>> problems in regtests, though.
>> Ofcourse the title would be removed (only done for demonstration here)
>> and surpressing the warning probably needs to be adjusted, depending
>> how 5194 will be done finally.
>
> Now things become _really_ embarrassing.  Trying to come up with
> improvements on your regtest convinced me that this kind of syntactical
> feature is not served well by a graphical test featuring the typeset
> results.
>
> So I stole a bunch of code from the display-lily-tests.ly regtest.
>
> I am not convinced this is good either: only outputting stuff that is
> less than perfect, and only to the terminal (namely without any typeset
> output) is not nice for the printed variant of the regtests either.  But
> if there is a better choice, it would probably also warrant implementing
> in display-lily-tests.ly .
>
> Not putting up an issue just yet.  Need to hear that you're ok with what
> amounts to scrapping your work after it helped me figure out why I
> wasn't even able to start writing something that I felt good about.
>
>
>
> --
> David Kastrup
>
Hi David,

for now only very few notes. I will need some more time to make my
mind about it, not in the middle of the night...


(define (lily-string->markup str) ...)
seems to be unused (same in display-lily-tests.ly) any reason not to delete it?

I'd like to see an example for LyricText/Hyphen. Like:

lyr = \lyricmode { foo }
\test "limitation" ##[ \lyr -- #]

This wish is triggered by an ongoing thread at the german forum:
https://lilypondforum.de/index.php/topic,150.msg982.html#msg982


So far for now, cheers,
  Harm

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: NullVoice lyrics alignment error

2017-09-22 Thread David Wright
On Fri 22 Sep 2017 at 16:48:38 (-0400), Pierre-Luc Gauthier wrote:
> 2017-09-21 18:43 GMT-04:00 David Wright :

> > My observations (again without knowing what the code actually does)
> > suggest that because no X-space is required to set anything¹, the
> > positions of the timing "anchors" produced by NullVoice have a
> > zero-point near to the beginning of the line. If you set (and then
> > hide) something, a rest or a note, then a collision with the clef
> > and signatures has to be avoided, so the zero-point of time gets
> > pushed rightwards to a position after them.
> 
> So if I understood correctly, we could infer that it is aligned with
> the basis of all alignment which is (is it?) the start of the line but
> with *no* offset as LilyPond hasn't added any.

As I said, I'm just making suggestions based on observations. If you
were to remove the clef and any signatures (like those band parts
that aggressively save X-space), then there would be an optional
barline or bracket at the start of the staff, followed by r16 after
a tasteful space. So, as far as NullVoice is concerned, those
decorations don't exist, and it looks as if even the tasteful space
before the r16 disappears as well.

Cheers,
David.
displayedMusic = {R1}
lyricsMusic = {r16 c''}
verse = \lyricmode {Lyrics}

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic }
  \new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #LEFT 
\verse }
>>

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic}
  %%\new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #LEFT 
\verse }
>>

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic }
  \new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #CENTER 
\verse }
>>

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic}
  %%\new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #CENTER 
\verse }
>>

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic }
  \new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #RIGHT 
\verse }
>>

\new Staff <<
  \new Voice { \displayedMusic }
  \new NullVoice = vv { \lyricsMusic}
  %%\new Voice = vv { \lyricsMusic }
  \new Lyrics \lyricsto vv { \override LyricText.self-alignment-X = #RIGHT 
\verse }
>>


ali.pdf
Description: Adobe PDF document
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Error with Frescobaldi and python-poppler

2017-09-22 Thread Jaime Oliver La Rosa

Hi all,

I am encountering this problem when trying to engrave any score in 
Frescobaldi. The score compiles fine, but I can't see the preview, and I 
get the error below as described in this post:


https://github.com/wbsoft/frescobaldi/issues/838

Is there a known solution for this?

I am using Ubuntu 17.04, Lilypond 2.18.2-7 and Frescobaldi 
3.0.0~git20161001.0.eec60717+ds1-2


best,

J

ERROR MESSAGE:

An internal error has occurred:

Traceback (most recent call last):

File 
"/usr/share/frescobaldi/frescobaldi_app/musicview/pointandclick.py", 
line 44, in links


return _cache[document]

File "/usr/lib/python3.5/weakref.py", line 394, in __getitem__

return self.data[ref(key)]

KeyError: 

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "/usr/share/frescobaldi/frescobaldi_app/musicview/widget.py", line 
116, in openDocument


self._links = pointandclick.links(document)

File 
"/usr/share/frescobaldi/frescobaldi_app/musicview/pointandclick.py", 
line 54, in links


t = textedit.link(link.url())

File "/usr/share/frescobaldi/frescobaldi_app/textedit.py", line 48, in link

m = textedit_match(url)

TypeError: expected string or bytes-like object

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user