Re: Position of rests inside beamed groups
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
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)
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
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
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
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
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
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
- 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
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
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
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
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
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-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 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
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
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