Re: Fingering brackets

2024-08-07 Thread Robin Bannister

Luca Fascione wrote:


I'm looking for a way to make a "fingering bracket": this would be a
vertical bracket on the left or right of a few simultaneous notes, to
indicate they are all to be fingered with the same finger.

Things to note:
  - I can't use the arpeggio mark, because it's not uncommon to have both an
indication of a  few notes played with LH finger and with the arpeggio
squiggle (see 3rd example below). It seems like it would be a good idea to
reuse the infrastructure for the arpeggio bracket, of course. I just don't
know how to achieve this



Each voice can have its own arpeggio.
So your example can have 2 arpeggios.


See the F9sus example in the demo of [1].

Changing "l22]" to "l223!" moves the alto bracket back to the default 
side and applies a padding of 3 to avoid a collision with the extended 
sqiggle.



Cheers,
Robin



[1] https://lists.gnu.org/archive/html/lilypond-user/2024-01/msg00320.html



Re: Transparent box around notes

2024-04-28 Thread Robin Bannister

Paolo Prete wrote:

Note that there's also this (no trial-and-error):

https://lists.gnu.org/archive/html/lilypond-user/2015-01/msg00142.html

But it doesn't compile with 2.24...



That's due to merge request !818 [1], applied between 2.23.3 and 2.23.4.

Simon Albrecht ran into the same problem in another case, and Jean 
helped him out [2] by adapting just the add-grob-definition part.


Doing the same to David N's add-grob-definition gets his code running 
again.  Maybe that's all you need to do.



[1] https://gitlab.com/lilypond/lilypond/-/merge_requests/818
[2] https://lists.gnu.org/archive/html/lilypond-user/2021-12/msg00045.html


Cheers,
Robin



Re: Transparent box around notes

2024-04-27 Thread Robin Bannister

Paolo Prete wrote:

Something like:

\coloredBox color offsLeft offsTop offsRight offsBottom "labelstring"
labeldirection { c' e' f' }

Many thanks for your help!
Paolo



This may get you started:

https://lsr.di.unimi.it/LSR/Search?q=background+%7C+colorspan


Cheers,
Robin



Re: explicit arpeggio

2024-04-26 Thread Robin Bannister

 Robert Garrigos wrote:



I don’t find a way to do this kind of explicit arpeggio (piano):




This is covered at
https://lilypond.org/doc/v2.25/Documentation/snippets/rhythms_003a-using-ties-with-arpeggios



Cheers,
Robin



Re: Delayed turns etc

2024-04-17 Thread Robin Bannister

Peter Mayes wrote:

On 16/04/2024 23:33, Knute Snortum wrote:


3. How to stop the second line being justified out to the right?
In the fuller score, something like this is followed by a page
break and more music, but there is a natural break at this double
bar, and it looks very "stretched out". I tried various "ragged"
keywords, but none of them just operated on the one line.


Is this not what you want?

\paper {
  ragged-last = ##t
}

That works for the last line of the whole score. The line I want to be
"ragged" is the last line of a page. with more music on the next page.



A similar question last year got several answers:
https://lists.gnu.org/archive/html/lilypond-user/2023-06/msg00148.html

If you want to try pseudoIndent, I have appended the latest version.


Cheers,
Robin
 PSEUDOINDENT FUNCTIONS 

% these two functions are for indenting individual systems
% - to left-indent a system, apply \pseudoIndent before the music continues
% - \pseudoIndents is similar, but lets you also indent on the right
% - both provide an option for changing that system's instrument names

% N.B. these functions 
% - assume application to non-ragged lines (generally the default)
% - include a manual \break to ensure application at line start 
% - misbehave if called more than once at the same line start

% the parameters of the (full) pseudoIndents function are:
% 1: name-tweaks
%  usually omitted; accepts replacement \markup for instrument names 
%  as an ordered list; starred elements leave their i-names unchanged.
% 2: left-indent 
%  additional left-indentation, in staff-space units; can be negative, 
%  but avoid a total indentation which implies (unsupported) stretching. 
% 3: right-indent 
%  amount of right-indentation, in staff-space units; can be negative. 
%  - not offered by the (reduced) pseudoIndent function


pseudoIndents = % inline alternative to a new \score, also with right-indent
#(define-music-function (name-tweaks left-indent right-indent) 
  ((markup-list? '()) number? number?)
  (define (warn-stretched p1 p2) (ly:input-warning (*location*) (G_
" pseudoIndents ~s ~s is stretching staff; expect distorted layout") p1 p2))
  (let* ( 
(narrowing (+ left-indent right-indent)) ; of staff implied by args

(set-staffsymbol! (lambda (staffsymbol-grob) ; change staff to new width 
  (let* (
(left-bound (ly:spanner-bound staffsymbol-grob LEFT))
(left-moment (ly:grob-property left-bound 'when))
(capo? (moment<=? left-moment ZERO-MOMENT)) ; in first system of score
(layout (ly:grob-layout staffsymbol-grob))
(lw (ly:output-def-lookup layout 'line-width)) ; debugging info
(indent (ly:output-def-lookup layout (if capo? 'indent 'short-indent)))
(old-stil (ly:staff-symbol::print staffsymbol-grob))
(staffsymbol-x-ext (ly:stencil-extent old-stil X))
;; >=2.19.16's first system has old-stil already narrowed [2]
;; compensate for this (ie being not pristine) when calculating 
;; - old leftmost-x (its value is needed when setting so-called 'width) 
;; - the new width and position (via local variable narrowing_) 
(ss-t (ly:staff-symbol-line-thickness staffsymbol-grob))
(pristine? (<= 0 (car staffsymbol-x-ext) ss-t)) ; would expect half
(leftmost-x (+ indent (if pristine? 0 narrowing))) 
(narrowing_ (if pristine? narrowing 0)) ; uses 0 if already narrowed
(old-width (+ (interval-length staffsymbol-x-ext) ss-t))
(new-width (- old-width narrowing_))
(new-rightmost-x (+ leftmost-x new-width)) ; and set! this immediately
(junk (ly:grob-set-property! staffsymbol-grob 'width new-rightmost-x))
(in-situ-stil (ly:staff-symbol::print staffsymbol-grob))
(new-stil (ly:stencil-translate-axis in-situ-stil narrowing_ X))
   ;(new-stil (stencil-with-color new-stil red)) ; for when debugging
(new-x-ext (ly:stencil-extent new-stil X)))
  (ly:grob-set-property! staffsymbol-grob 'stencil new-stil)
  (ly:grob-set-property! staffsymbol-grob 'X-extent new-x-ext)
  )))

(set-X-offset! (lambda (margin-grob) ; move grob across to line start 
  (let* (
(old (ly:grob-property-data margin-grob 'X-offset)) 
(new (lambda (grob) (+ (if (procedure? old) (old grob) old) narrowing
  (ly:grob-set-property! margin-grob 'X-offset new

(tweak-text! (lambda (i-name-grob mkup) ; tweak both instrumentname texts   
  (if (and (markup? mkup) (not (string=? (markup->string mkup) "*")))
  (begin 
(ly:grob-set-property! i-name-grob 'long-text mkup)
(ly:grob-set-property! i-name-grob 'text mkup)
 ; else retain existing text 

(install-narrowing (lambda (leftedge-grob) ; on staves, + adapt left margin
  (define (grob-name x) (assq-ref (ly:grob-property x 'meta) 'name))

Re: LilyPond 2.25.14

2024-03-23 Thread Robin Bannister

Jonas Hahnfeld via LilyPond user discussion wrote:


Windows build with Guile JIT: https://cloud.hahnjo.de/s/Ek5x9rybpiPNtoj
This turns on just-in-time compilation that was added in Guile 3.0, but
we had to keep disabled on Windows until now. Please test, especially
on larger scores where this should provide a performance advantage.




GNU LilyPond 2.25.14 (running Guile 3.0)
Processing `3.ly'
Parsing...
Interpreting music...
Interpreting music...[8][16][24][32][40][48][56][64][72][80][88][96][104]
Preprocessing graphical objects...
MIDI output to `3.mid'...
Finding the ideal number of pages...
Fitting music on 3 or 4 pages...
Drawing systems...
Converting to `3.pdf'...
Success: compilation successfully completed


No problem here on Win7, but I have nothing large.
  N.B. the log doesn't mention JIT mode.


Cheers,
Robin



Re: performance marks

2024-01-31 Thread Robin Bannister

Stan Sanderson wrote:
Certain marks are used to indicate emphasis (phrase breaking) and across-staff fingering. 



I don't know about the phrase breaking, but you could try doing the 
across-staff fingering with my undocumented code, called thumbBracket.


Look at the Reger 17 and 60 examples in the demo.

The .ily file provides the \thumbBracket funtion which the demo file 
abbreviates to \thBr.  You call this with a string parameter which 
starts with the letter R or L, for right or left.  You can then append a 
digit to make the stem longer.


The attached files are updated versions which need 2.24 and should be ok 
with Guile3.



Cheers,
Robin





\version "2.24.0"

% compatibility changes: u15k0830 u23k0114

%% +thumb bracket

#(define (make-thumb-bracket-props location spec-str settings-alist) 
  (define (inchar? index) (> (string-length spec-str) index))
  (define (inchar  index) (string-ref spec-str index))
  (define (char->dir ch) 
   (case (char-upcase ch) ((#\R) 1) ((#\L) -1) (else 0))) 
  (define (char->digit ch)
   (if (char-numeric? ch) (- (char->integer ch) (char->integer #\0)) 0))
  (define (inhit->1 key-str) (if (string-contains spec-str key-str) 1 0))
  (define (get key) (assq-ref settings-alist key))
  (define (warn p1 p2) (ly:input-warning location 
   (G_ " bad thumb-bracket:   ~a ~a~a~a") p1 "\"" p2 "\"")) ; cf 
  (let* ( ;% decode spec 
(vdir(if (inchar? 0) (char->dir   (inchar 0)) 0))
(vbigger  (* 0.5 (if (inchar? 1) (char->digit (inchar 1)) 0)))
(vfurther (* 0.5 (if (inchar? 2) (char->digit (inchar 2)) 0)))
(hcloser  (* 0.5 (if (inchar? 3) (char->digit (inchar 3)) 0)))
(hrear(* 0.5 (if (inchar? 4) (char->digit (inchar 4)) 0)))
(vbigger+ (* 5 (string-count spec-str #\|)))
(posdir   ((if (string-contains spec-str "*") - +) vdir))
(hcloser? (eq? (string-contains spec-str "!") #f))
(vtip=?   (string-contains spec-str "="))
(hdir-req (- (inhit->1 "]") (inhit->1 "[")))
(closed? (char-lower-case? (inchar 0
   (if (zero? vdir) (begin (warn "first char in" spec-str) '())
   (let* ( ;% collect settings
(hdir-init (get 'hdir-init))   (htip (get 'htip)) 
(vtip (get (if vtip=? 'vtip= 'vtip)))  
(vstem (get 'vstem))   (vmin (get 'vmin))   (hvernier (get 'hvernier))
(vO 0) (hO 0) (hpad-base 0.5) ;% givens
(hdir (if (zero? hdir-req) hdir-init hdir-req))
(hflip? (positive? hdir))
(h-interval 
 (if (positive? hdir) (cons hO (+ htip hrear)) (cons (- hrear) htip)))
(vsize (+ vtip (if closed? vtip vstem) vbigger vbigger+))
(vsize+ (if (and closed? (< vsize vmin)) (- vmin vsize) 0))
(vshift (+ vfurther vtip (* 0.5 vsize+)))
(bracket (lambda (grob) (let* ( ;% collect chord range from grob
  (vnote-lo-hi (ly:grob-property grob 'positions))
  (vnote ((if (eq? posdir 1) cdr car) vnote-lo-hi)))
 (grob-interpret-markup grob (markup #:translate (cons 
((if (positive? hdir) - +) hvernier) (- vnote (* vdir vshift)))
   #:combine #:draw-line (cons htip vO) #:combine 
#:translate (cons hO (if closed? (* vdir (+ vsize vsize+)) vO))
 #:draw-line (cons htip vO)
#:translate (cons (if (positive? hdir) htip hO) vO)
 #:draw-line (cons hO (* vdir (+ vsize vsize+)
;% alist of props for misusing Arpeggio as a thumb bracket
`((stencil . ,bracket) 
  (X-extent . ,h-interval) 
  (padding . ,((if hcloser? - +) hpad-base hcloser)) 
  (direction . ,hdir) 
  (thickness . ,(get 'weight)))

thumbBracketEx = #(define-music-function 
  (spec settings) (string? list?)
 (let* (
   (props (make-thumb-bracket-props (*location*) spec settings)))
   (define (get key) (assq-ref props key))
  (if (null? props) #{ #} ;% abort without bracket
   #{
 \once \override Arpeggio.stencil   = #(get 'stencil)
 \once \override Arpeggio.X-extent  = #(get 'X-extent)
 \once \override Arpeggio.padding   = #(get 'padding)
 \once \override Arpeggio.direction = #(get 'direction) 
 \once \override Arpeggio.thickness = #(get 'thickness)
 $(make-music 'EventChord 'elements (list (make-music 'ArpeggioEvent)))
   #})))

thumbBracket = #(define-music-function (spec) (string?)
 (let ((settings thumbBracketSettings)) ;% as Defaults, or user defined
#{ \thumbBracketEx $spec $settings #}))

thumbBracketDefaults = #(quasiquote( 
  (hdir-init . ,LEFT) ;% usual placement wrt note: on RIGHT or LEFT
  (weight. 1.5  ) ;% line thickness
  (htip  . 0.8  ) ;% horizontal length of bracket tip
  (vtip  . 0.75 ) ;% usual vertical overlap beyond notehead centre 
  (vtip= . 0.30 ) ;% alternative vertical overlap 
  (vstem . 1.25 ) ;% length of an unextended open bracket (excl. tip)
  (vmin  . 0.6  ) ;% minimum length of a closed bracket
  (hvernier  . 0.2  ) ;% horizontal quasi-extra-offset
  ))

thumbBracketSettin

Re: fony-size chord wiyh bass chord

2024-01-14 Thread Robin Bannister

achar wrote:


I would like to be able to change only the size of the bass in a bass
chord, for example G in the F/G chord.

And possibly be able to move it down and to the right of the agreement name.



Add the attached layout section and adjust the numbers.


Cheers,
Robin
\layout{ 
  \context { \ChordNames 
slashChordSeparator = % is only a dividing line;
#(make-with-dimensions-markup (cons 0 0) (cons 0 0) ;; displaces nothing
(make-translate-markup  (cons -1 -1.5) ;; just clear of root-stuff base
(make-rotate-markup -45 "/"))) % roughly perp to bass/root axis 
chordNoteNamer = #(lambda (p l?)
(make-lower-markup 2.0 ;; not too cramped but still belonging graphically
(make-small-markup ;; as qualifier is subordinate to root name 
(note-name->markup p l?
  }
}


Re: Changes to Notename - lost some functionality

2023-12-13 Thread Robin Bannister

Stefano Antonelli wrote:



A good place to start is a minimum working example.  I can't help debug
this, but I put together a minimum working example that shows the
problem.  Maybe someone with better scheme can spot the problem.

With liilypond v2.20 there is no issue.  With lilypond v2.23.3

Preprocessing graphical objects...
programming error: Trying to interpret a non-markup object: #f
continuing, cross fingers
programming error: Trying to interpret a non-markup object: #f
continuing, cross fingers
programming error: Trying to interpret a non-markup object: #f
continuing, cross fingers
programming error: Trying to interpret a non-markup object: #f
continuing, cross fingers
Finding the ideal number of pages...

newnames =
#`(
   ("c" . "cee")
   ("d" . "dee")
   ("e" . "eee")
   ("f" . "fff")
)



With lilypond v2.20 there is no issue.
With lilypond v2.21.1, the names are missing
(and the 4 errors are reported differently)


warning: no \version statement found, please add
\version "2.21.1"
for future compatibility
Interpreting music...
Preprocessing graphical objects...
programming error: Object is not a markup.
continuing, cross fingers
programming error: Object is not a markup.
continuing, cross fingers
programming error: Object is not a markup.
continuing, cross fingers
programming error: Object is not a markup.
continuing, cross fingers
Finding the ideal number of pages...
Fitting music on 1 page...
Drawing systems...
Layout output to `./tmp-lilypond-UX8ggy'...
Converting to `2.pdf'...
Deleting `./tmp-lilypond-UX8ggy'...
This object should be a markup: #f
This object should be a markup: #f
This object should be a markup: #f
This object should be a markup: #f
Success: compilation successfully completed


Cheers,
Robin





Re: Fw: I wrote a MIDI to Lily front end; also questions about video

2023-12-07 Thread Robin Bannister

Karlin High wrote:


FluidSynth can do it. I use VLC Player which I think contains it.

Prior post explains:





My contribution to that thread is outdated:
  midi returned to VLC with version 3.0.8


Cheers,
Robin



Re: Stand indents on the left and right.

2023-11-26 Thread Robin Bannister

Виноградов Юрий wrote:

Please specify exactly what part of the code I need. 


The attached file is suitable for this.

You can copy it to beside your current code file,
or keep it in a different folder for future use.
See 
https://lilypond.org/doc/v2.24/Documentation/notation/including-lilypond-files


Then near the beginning of your current code, write:
\include "pseudoIndent.ily"


Cheers,
Robin
 PSEUDOINDENT FUNCTIONS 

% these two functions are for indenting individual systems
% - to left-indent a system, apply \pseudoIndent before the music continues
% - \pseudoIndents is similar, but lets you also indent on the right
% - both provide an option for changing that system's instrument names

% N.B. these functions 
% - assume application to non-ragged lines (generally the default)
% - include a manual \break to ensure application at line start 
% - misbehave if called more than once at the same line start

% the parameters of the (full) pseudoIndents function are:
% 1: name-tweaks
%  usually omitted; accepts replacement \markup for instrument names 
%  as an ordered list; starred elements leave their i-names unchanged.
% 2: left-indent 
%  additional left-indentation, in staff-space units; can be negative, 
%  but avoid a total indentation which implies (unsupported) stretching. 
% 3: right-indent 
%  amount of right-indentation, in staff-space units; can be negative. 
%  - not offered by the (reduced) pseudoIndent function


pseudoIndents = % inline alternative to a new \score, also with right-indent
#(define-music-function (name-tweaks left-indent right-indent) 
  ((markup-list? '()) number? number?)
  (define (warn-stretched p1 p2) (ly:input-warning (*location*) (G_
" pseudoIndents ~s ~s is stretching staff; expect distorted layout") p1 p2))
  (let* ( 
(narrowing (+ left-indent right-indent)) ; of staff implied by args

(set-staffsymbol! (lambda (staffsymbol-grob) ; change staff to new width 
  (let* (
(left-bound (ly:spanner-bound staffsymbol-grob LEFT))
(left-moment (ly:grob-property left-bound 'when))
(capo? (moment<=? left-moment ZERO-MOMENT)) ; in first system of score
(layout (ly:grob-layout staffsymbol-grob))
(lw (ly:output-def-lookup layout 'line-width)) ; debugging info
(indent (ly:output-def-lookup layout (if capo? 'indent 'short-indent)))
(old-stil (ly:staff-symbol::print staffsymbol-grob))
(staffsymbol-x-ext (ly:stencil-extent old-stil X))
;; >=2.19.16's first system has old-stil already narrowed [2]
;; compensate for this (ie being not pristine) when calculating 
;; - old leftmost-x (its value is needed when setting so-called 'width) 
;; - the new width and position (via local variable narrowing_) 
(ss-t (ly:staff-symbol-line-thickness staffsymbol-grob))
(pristine? (<= 0 (car staffsymbol-x-ext) ss-t)) ; would expect half
(leftmost-x (+ indent (if pristine? 0 narrowing))) 
(narrowing_ (if pristine? narrowing 0)) ; uses 0 if already narrowed
(old-width (+ (interval-length staffsymbol-x-ext) ss-t))
(new-width (- old-width narrowing_))
(new-rightmost-x (+ leftmost-x new-width)) ; and set! this immediately
(junk (ly:grob-set-property! staffsymbol-grob 'width new-rightmost-x))
(in-situ-stil (ly:staff-symbol::print staffsymbol-grob))
(new-stil (ly:stencil-translate-axis in-situ-stil narrowing_ X))
   ;(new-stil (stencil-with-color new-stil red)) ; for when debugging
(new-x-ext (ly:stencil-extent new-stil X)))
  (ly:grob-set-property! staffsymbol-grob 'stencil new-stil)
  (ly:grob-set-property! staffsymbol-grob 'X-extent new-x-ext)
  )))

(set-X-offset! (lambda (margin-grob) ; move grob across to line start 
  (let* (
(old (ly:grob-property-data margin-grob 'X-offset)) 
(new (lambda (grob) (+ (if (procedure? old) (old grob) old) narrowing
  (ly:grob-set-property! margin-grob 'X-offset new

(tweak-text! (lambda (i-name-grob mkup) ; tweak both instrumentname texts   
  (if (and (markup? mkup) (not (string=? (markup->string mkup) "*")))
  (begin 
(ly:grob-set-property! i-name-grob 'long-text mkup)
(ly:grob-set-property! i-name-grob 'text mkup)
 ; else retain existing text 

(install-narrowing (lambda (leftedge-grob) ; on staves, + adapt left margin
  (define (grob-name x) (assq-ref (ly:grob-property x 'meta) 'name))
  (let* (
(sys (ly:grob-system leftedge-grob))
(all-grobs (ly:grob-array->list (ly:grob-object sys 'all-elements)))
(grobs-named (lambda (name)
  (filter (lambda (x) (eq? name (grob-name x))) all-grobs)))
(first-leftedge-grob (list-ref (grobs-named 'LeftEdge) 0))
(relsys-x-of (lambda (g) (ly:grob-relative-coordinate g sys X)))
(leftedge-x (relsys-x-

Re: Stand indents on the left and right.

2023-11-25 Thread Robin Bannister

Виноградов Юрий wrote:

Hello. There is one snippet that allows any stan to minimize left and right.
Here is the link: https://lsr.di.unimi.it/LSR/Item?id=1098
There is a very large block of code written there to be able to use these 
settings.
My question. Is it possible to make this code shrink? Or maybe there is a
possibility to do it with other settings?



There are two debugging code lines that you can omit.  That's all.

Note that you need only the two code blocks starting with
pseudoIndents =   andpseudoIndent =.

If that is still too large, put that code in an include file
e.g. pseudoIndent.ily.



Or do it like LSR966.
Start each line as a newly indented Score.
Shift it left using NonMusicalPaperColumn.line-break-system-details.

Or maybe retry the original hack:
https://lists.gnu.org/archive/html/lilypond-user/2019-07/msg00135.html
It could be less fragile wrt. Y positioning since 2.23.0.


Cheers,
Robin






Re: LilyPond 2.25.10 with Guile 3.0

2023-11-12 Thread Robin Bannister

Jonas Hahnfeld wrote:

On Sat, 2023-11-11 at 19:37 +0100, Jonas Hahnfeld wrote:

We are happy to announce the release of LilyPond 2.25.10.


And here are the binaries with Guile 3.0, built using
https://gitlab.com/lilypond/lilypond/-/merge_requests/2163 and
https://gitlab.com/lilypond/lilypond/-/merge_requests/2170 :
https://gitlab.com/lilypond/lilypond/-/packages/20197593

If you have some time, please test them in your setups and report back
in case of problems!



If I take the code of LSR1098 [1] , without the demo part,
Guile3 errors the input-warning call:

GNU LilyPond 2.25.10 (running Guile 3.0)
Processing `1.ly'
Parsing...
1.ly:38:2: error: Guile signaled an error for the expression beginning here
#
 (define-music-function (name-tweaks left-indent right-indent)

Syntax error:
1.ly:40:64: _: bad use of '_' syntactic keyword in subform (_ " 
pseudoIndents ~s ~s is stretching staff; expect distorted layout") of (_ 
" pseudoIndents ~s ~s is stretching staff; expect distorted layout")

1.ly:1: warning: no \version statement found, please add

\version "2.25.10"

for future compatibility
fatal error: failed files: "1.ly"


If I include the rest of the file, I get a lot more errors.


[1] https://lsr.di.unimi.it/LSR/Item?id=1098


Cheers,
Robin



Re: LilyPond 2.25.10 with Guile 3.0

2023-11-12 Thread Robin Bannister

Jonas Hahnfeld wrote:

On Sat, 2023-11-11 at 19:37 +0100, Jonas Hahnfeld wrote:

We are happy to announce the release of LilyPond 2.25.10.


And here are the binaries with Guile 3.0, built using
https://gitlab.com/lilypond/lilypond/-/merge_requests/2163 and
https://gitlab.com/lilypond/lilypond/-/merge_requests/2170 :
https://gitlab.com/lilypond/lilypond/-/packages/20197593

If you have some time, please test them in your setups and report back
in case of problems!



If I take the code of LSR1098 [1] , without the demo part,
Guile3 errors the input-warning call:

GNU LilyPond 2.25.10 (running Guile 3.0)
Processing `1.ly'
Parsing...
1.ly:38:2: error: Guile signaled an error for the expression beginning here
#
 (define-music-function (name-tweaks left-indent right-indent)

Syntax error:
1.ly:40:64: _: bad use of '_' syntactic keyword in subform (_ " 
pseudoIndents ~s ~s is stretching staff; expect distorted layout") of (_ 
" pseudoIndents ~s ~s is stretching staff; expect distorted layout")

1.ly:1: warning: no \version statement found, please add

\version "2.25.10"

for future compatibility
fatal error: failed files: "1.ly"


If I include the rest of the file, I get a lot more errors.


[1] https://lsr.di.unimi.it/LSR/Item?id=1098


Cheers,
Robin



Re: Is there a simple way to append markup to a chordname in chordmode?

2023-11-12 Thread Robin Bannister

Kevin Cole wrote:



I would like to use F. Bb and Am as the "real" chords and append "(C)",
"(F)" and "(Em)" as text. 


This may help:
https://lists.gnu.org/archive/html/lilypond-user/2022-11/msg00416.html


Cheers,
Robin



Re: Cent rit between staves

2023-11-09 Thread Robin Bannister

Will Turner wrote:
Thank you. I've been using Lilypond for only a couple weeks. 


This automatic conversion will give you the wrong impression about how 
readable Lilypond code can be.




I thi[nk] this is

the text I should insert:
\new Dynamics{
s93-"rit." |
}


But this code will start the rit when the s93 starts.
To start the rit when the s93 has finished, insert an empty chord
   { s93 <>-"rit." }




The rit. needs to go in the piano staves on measure 94, but I don't know
where to place the code.


Insert it in the PianoStaff code after Staff1 and before Staff2.
This gets it placed vertically between Staff1 and Staff2.
For readabilty, give it its own code line.


Cheers,
Robin







Re: left alignment of text lines and musical notes

2023-11-05 Thread Robin Bannister

Ad Rommel wrote:

Is it possible to left align both musical notes and text?


Well, both of your examples _are_ left-aligned.


If you don't like the way the short line is stretched,
look up ragged-right in Notation Reference 4.1.5.


Your code example
 - errors (mysize undefined)
 - does not correspond to your images (global-staff-size?)


Cheers,
Robin





Re: Two small issues

2023-11-02 Thread Robin Bannister

Peter Mayes wrote:


I have since learned about silent notes, and I get almost what I want if
I add a silent note after the advisory key change. But then the bar
lengths are altered. To put the two result together:

Ideally what I want is the first version, but with the stave extending
just enough to go through the key signature.



I take it that your silent note moved things around too much.

The shortest thing you can add is a grace note.  This will also move 
things, but not nearly as much.  Try adding just


%%
\grace s1
%%

Lilypond accepts this, but leaves a complaint in the log.
You probably have to ignore that complaint for now.

See https://gitlab.com/lilypond/lilypond/-/issues/3851
which refers to grace-end-2.ly
which 64bit versions no longer have.


Cheers,
Robin



Re: 2.22.2 and 2.24.2

2023-09-09 Thread Robin Bannister

Jean Abou Samra wrote:


In short, the folder is "created" by unpacking the zip archive that you
downloaded.



On my win7:
 - I download the zip for 2.23.80 and put it in folder test_
 - Looking in this folder, I can then see test_a.png
 - When I double-click on the .zip file, I then see test_b.png

The config qualifier is dropped from the folder name.


Cheers,
Robin


Re: Need help displaying note names in 2.22

2023-08-06 Thread Robin Bannister

David Kastrup wrote:


Note names have changed to use ♯ and ♭ characters, so you need to look
up "c♯" instead of "cis".


I got no hits that way.

An alternative is to add
   printAccidentalNames = #'lily
to the NoteNames \with.



And if I change the "es" lookup key to the more canonical "ees" it finds 
the corresponding markup instead of returning the errored #f.




Cheers,
Robin



Re: Adjusting length of final line

2023-06-20 Thread Robin Bannister

Dave Shield wrote:


 How can I get the general
spacing of the last line to be similar to the other lines in the
following example?  (i.e. roughly half the width of the page).



Previously I would have, after \halfscale, added
\stopStaff s16*20
where you adjust the 20 to taste.
But this adjustment factor is nonlinear making it difficult to readjust.


Nowadays I would probably use LSR1098 and, before \halfscale, add
\pseudoIndents 0 53
Its adjustment factor (here 53) is very stable and precise.

Instead of scraping pseudoIndent.ily off the LSR, you can find one at
https://lists.gnu.org/archive/html/lilypond-user/2022-03/msg00224.html


Cheers,
Robin





Re: Custom text in repeats

2023-05-30 Thread Robin Bannister

Jakob Pedersen wrote:


Is there any way to force lilypond to assume that it's simply text


voltatekst = \markup \text { Efter sidste vers. }


Cheers,
Robin



Re: Changing accidental size and alignment in chord symbols

2023-05-27 Thread Robin Bannister

Lib Lists wrote:


Replying to myself, as it might help someone else to give me some hints.
I made some progresses following the LSR example here:
https://lsr.di.unimi.it/LSR/Item?id=1057.

.
.
.



Here a MWE:

\version "2.25.5"
\chords {
  aes2 cis
}

Specifically, I'd like to have all the flats smaller, and the sharps
smaller and horizontally center-aligned with the root note name.



You got no hints from me because your MWE uses chordmode entry.

Now with LSR1057 you are abandoning chordmode entry.
Your chords will not be transposable.


Ten years ago I tried to squash up chordmode output horizontally.
The attached shows what I had to do using version 2.16.
I abandoned that attempt, but kept the example.
You can convert the code to 2.24, but the spacing isn't conserved.


I'm not the only one who has tried this sort of customisation.


Cheers,
Robin




\version "2.16.0"

% \include "cin.ily" inlined
% out of chord-Ignatzek-names.scm, chord-name.scm and other stuff as needed
%  - toplevel ;; comment removed 
%  - prefixed toplevel (defines with #
%  - renamed all define-safe-public to define-public

% modified renamed i-c-n for nestling: base-stuff aligned after: -super +root
% modified alteration->text-accidental-markup for accidentals smaller and higher
% 
% N.B. redefine slashChordSeparator, chordNoteNamer etc. for nestling below root and super
%schemeIndentOn

%%
% from markup.scm

#(define (markup-join markups sep)
  "Return line-markup of MARKUPS, joining them with markup SEP"
  (if (pair? markups)
(make-line-markup (list-insert-separator markups sep))
empty-markup))


%%
% from lily-library.scm 
#(define (split-at-predicate pred lst)
"Split LST into two lists at the first element that returns #f for
(PRED previous_element element).  Return the two parts as a pair.
Example: (split-at-predicate < '(1 2 3 2 1)) ==> ((1 2 3) . (2 1))"
(if (null? lst)
  (list lst)
  (let ((i (list-index (lambda (x y) (not (pred x y)))
lst
(cdr lst
(if i
  (cons (take lst (1+ i)) (drop lst (1+ i)))
  (list lst)


%%
% from chord-generic-names.scm 

#(define (conditional-kern-before markup bool amount)
  "Add AMOUNT of space before MARKUP if BOOL is true."
  (if bool
(make-line-markup
  (list (make-hspace-markup amount)
markup))
markup))


%%
% from chord-name.scm 


#(define (natural-chord-alteration p)
  "Return the natural alteration for step P."
  (if (= (ly:pitch-steps p) 6)
FLAT
0))

#(define (conditional-string-downcase str condition)
  (if condition
(string-downcase str)
str))

#(define-public (alteration->text-accidental-markup alteration)
  
  (make-fontsize-markup (if (= alteration SHARP) -3 -1.5)
(make-raise-markup
  (if (= alteration FLAT)
0.9
1.5)
  (make-musicglyph-markup
(assoc-get alteration standard-alteration-glyph-name-alist "")

#(define (accidental->markup alteration)
  "Return accidental markup for ALTERATION."
  (if (= alteration 0)
(make-line-markup (list empty-markup))
(conditional-kern-before
  (alteration->text-accidental-markup alteration)
  (= alteration FLAT) 0.2)))

#(define (accidental->markup-italian alteration)
  "Return accidental markup for ALTERATION, for use after an italian chord root name."
  (if (= alteration 0)
(make-hspace-markup 0.2)
(make-line-markup
  (list
(make-hspace-markup (if (= alteration FLAT) 0.7 0.5))
(make-raise-markup 0.7 (alteration->text-accidental-markup alteration))
(make-hspace-markup (if (= alteration SHARP) 0.2 0.1))


#(define-public (note-name->markup pitch lowercase?)
  "Return pitch markup for @var{pitch}."
  (make-line-markup
(list
  (make-simple-markup
(conditional-string-downcase
  (vector-ref #("C" "D" "E" "F" "G" "A" "B") (ly:pitch-notename pitch))
  lowercase?))
  (accidental->markup (ly:pitch-alteration pitch)

#(define (pitch-alteration-semitones pitch)
  (inexact->exact (round (* (ly:pitch-alteration pitch) 2

#(define-public ((chord-name->german-markup B-instead-of-Bb)
  pitch lowercase?)
  "Return pitch markup for PITCH, using german note names.
  If B-instead-of-Bb is set to #t real german names are returned.
  Otherwise semi-german names (with Bb and below keeping the british names)
  "
  (let* ((name (ly:pitch-notename pitch))
(alt-semitones  (pitch-alteration-semitones pitch))
(n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -2)))
  (cons 7 (+ (if B-instead-of-Bb 1 0) alt-semitones))
  (cons name alt-semitones
(make-line-markup
  (list
(make-simple-markup
  (conditional-string-downcase
(vector-ref #("C" "D" "E" "F" "G" "A" "H" "B") (car n-a))
   

Re: Adjusting layout to bigger notes

2023-05-23 Thread Robin Bannister

Jakob Pedersen  wrote:


I'm getting a warning: set-global-staff-size: not in toplevel scope
error when compiling. That's with the size set in the top-level doc
layout block. 


Move it out of the layout block.

It shouldn't be inside anything else like that; just by itself.


Cheers,
Robin



Re: Separate dynamics from notes

2023-04-28 Thread Robin Bannister

Gianmaria Lari wrote:


Your code works well but it doesn't solve the problem because it returns
the "absolute" location of the notes while on the other hand in the
variable where you write the dynamic you use a relative location. 



That's why I said primitive.

One way to extend it, would be:
 - set it up to act like point+click does
 - but with its own protocol, going to a logger
 - which logs the differences

You would start a new trace by multiple-clicking (for zeros)
at e.g. a preceding rehearsal mark.

And you may need to keep tuplet accounting separate.



Cheers,
Robin



Re: Separate dynamics from notes

2023-04-27 Thread Robin Bannister

Gianmaria Lari wrote:


This thing always seemed so inconvenient to me that I thought it was
practically unusable. Or that there was some trick to maybe have
Frescobaldi tell me the "position" of the note (meant as numbers of quarter
or eight notes from the beginning). 


Here is a primitive include file for you to play around with.

When hovering with the mouse
 - over a notehead
 - over a barline (inside a staff)
it shows such a position as (an inconvenient) fraction.


Cheers,
Robin
% 2020-11-11 mouseover shows moments of noteheads/barlines (not span; not startbar) 
% updated to \version "2.24.0"

%schemeIndentOn

#(define (url-when fmt) ; cf LSR865
  (lambda (grob)
(let* (
  (url-strg (format #f fmt (grob::when grob) (grob::rhythmic-location grob)))
  (stil (ly:grob-property grob 'stencil)))
  (if (ly:stencil? stil)
(let* ((x-ext (ly:stencil-extent stil X))
  (y-ext (ly:stencil-extent stil Y))
  ;; For < 2.22.0 use:
  ;; (url-expr `(url-link ,url-strg ',x-ext ',y-ext))
  (url-expr `(url-link ,url-strg ,x-ext ,y-ext))
  (new-stil 
(ly:stencil-add
  (ly:make-stencil url-expr x-ext y-ext) 
  stil)))
  (ly:grob-set-property! grob 'stencil new-stil))
%   
%schemeIndentOff

\pointAndClickOff

\layout {
  \override Staff.BarLine.before-line-breaking = #(url-when "BL: ~a ~a") 
  \override  NoteHead.before-line-breaking = #(url-when "NH: ~a") 
}



Re: movement in markups like TeX's `em` and `ex` units

2023-04-07 Thread Robin Bannister

Werner LEMBERG wrote:

```
Emaj = \markup { E \raise #1 maj }

\markup \Emaj

\markup \fontsize #10 \Emaj
```

As can be seen, `\raise #1` is not the right value in the second case. 



We have  \translate-scaled #'(0 . 1)  for doing that.
A simple-minded mouthful.


Cheers,
Robin



Re: -dgui option dropped in 2.24 - how to stop the black box on Windows now?

2023-04-02 Thread Robin Bannister

Richard Shann wrote:

There was an option -dgui which allowed Denemo to run LilyPond in the
background on Windows, but this has vanished without, as far as I can
see, any entry in the Changes to account for it



See 
https://gitlab.com/lilypond/lilypond/-/commit/0a7d54646be5566de53e2f7dd0c19a2c1df92156?merge_request_iid=1373



Cheers,
Robin



Re: Message size limit

2023-03-04 Thread Robin Bannister

Jean Abou Samra wrote:

Le samedi 04 mars 2023 à 16:45 +0100, Robin Bannister a écrit :



Is there any specific advice for users taking screenshots?


Not sure I understand the question. Why would they differ from other kinds of 
attachments?


If you are attaching a code file, you probably have some idea of its 
size, without checking.  Maybe it involved your time and effort.


But screenshots are easy to create and their huge size may not be 
immediately obvious.  A lot of LilyPond people might be thankful for 
friendly tips on coping with their oversize cases.





Especially inline ones: those get copied when quoted, cf 2021-09.


What are you referring to precisely? There are lots of messages in the list 
archives for September 2021.



The average mbox size is around 10MB; that one is 75MB.

https://lists.gnu.org/archive/html/lilypond-user/2021-09/msg00013.html
This thread has .png of around 100KB, 8 instances original and 8 quoted.

https://lists.gnu.org/archive/html/lilypond-user/2021-09/msg00147.html
This thread has one original .jpg instance of nearly 6MB (+ apology).
The 6 quoted instances bring this short thread up to ca. 40MB.


Cheers,
Robin







Re: Message size limit

2023-03-04 Thread Robin Bannister

Jean Abou Samra wrote:

Hi,

We've been informed that the size of messages to this list containing large 
attachments is occasionally clogging up the GNU list server's mail delivery 
queue, causing distribution delays (not just for this list, but for everyone on 
the hundreds of other gnu.org lists).

To avoid this, your friendly list admins have configured a max message size of 512KB. 


Is there any specific advice for users taking screenshots?

Especially inline ones: those get copied when quoted, cf 2021-09.


Cheers,
Robin



Re: chord placement in Scores

2023-02-07 Thread Robin Bannister

Jeff Kopmanis wrote:

I've found that when I put chords in my score, it's printing them *below* the
staff rather than above, as usual.  Things are normal if I'm not building a
score, but I'm wondering why this is happening. 


Well, I'm not sure.
But, to be clear, I see this happening only on the "Bass" line.

If you swap "Guitar" and "Bass", it happens only with "Guitar".
So it is happening when "Bass" is at the bottom.

Well it isn't really at the bottom, because "Drum Set" is declared last.
If you make the drum line last as long as everything else
(by appending  s2. s1*85  to drumSetMusic)
then "Drum Set" is always at the bottom.
With that configuration, the "Bass" chords drop down onto the drum line.


To keep the chords and the music together, try the following:
  - introduce the Bass line with\new StaffGroup
  - introduce \bassGuitarMusic with\new Staff


That you got strange layout rather than an error message was probably 
thanks to automagic trying to cope.



Cheers,
Robin




Re: left space in front of the score

2022-12-26 Thread Robin Bannister

   bernhard kleine wrote:

Hello,

I am working on the space frescobaldi plus Lilypond put infront of the
score for long instrument names. There is only a small space after the
first score when names are repeated, too small to match the instrument
names which aligned to the right reach the physical border and go over it.

How is it possible to have more space to the left of the score?



The general answer to that is to increase the left margin.
https://lilypond.org/doc/v2.24/Documentation/notation/horizontal-spacing-paper-variables#paper-variables-for-widths-and-margins

But there are two standard ways specific to instrument naming:


One way is to use abbreviated names further down.
What you call 'long instrument names', LilyPond calls 'instrumentName'.
LilyPond also provides 'shortInstrumentName', for further down.
https://lilypond.org/doc/v2.24/Documentation/notation/writing-parts#instrument-names

You can also use the second way, which provides more room on the left.
https://lilypond.org/doc/v2.24/Documentation/notation/horizontal-spacing-paper-variables#paper-variables-for-shifts-and-indents


Cheers,
Robin



Re: Error when compiling snippet "Parenthesize a group of notes using a Scheme function"

2022-12-16 Thread Robin Bannister

Kieren MacMillan wrote:

Hi Joseph,

If you use convert-ly on your files, it will update ParenthesesItem to 
Parentheses, which will eliminate the error.



Yes, but:

The LSR snippets don't have a \version statement.
If convert-ly doesn't help, insert the line
\version "2.22.0"
and try again.


Cheers,
Robin





Re: Adding text to chord names or note names

2022-11-26 Thread Robin Bannister

On 26.11.2022 00:06, Koen van Walstijn wrote:
Ideally, I would love to be able to do something like this: 

>
> \new ChordNames {    \relative { c1^\markup { \super "6-9" } }}
>
> The text added to the note would get printed above the staff in a
> Staff context but gets ignored by the ChordNames context.



ChordNames ignores BarLines too.
But you probably didn't realize the implications of the snippet
'Adding bar lines to ChordNames context' at
https://lilypond.org/doc/v2.22/Documentation/notation/displaying-chords#customizing-chord-names
It uses \consists to add the appropriate engraver.


You can do that for your case too, like this:

\new ChordNames \with { \consists Text_engraver }
  \relative { c1^\markup { \super "6-9" } }
}

And then read
https://lilypond.org/doc/v2.22/Documentation/notation/modifying-context-plug_002dins
and maybe
https://lsr.di.unimi.it/LSR/Item?id=280


Cheers,
Robin



Re: -dcompile-scheme-code on Windows

2022-11-20 Thread Robin Bannister

On 20.11.2022 13:56, Jean Abou Samra wrote:


Ah, sorry, the snippet was silly. Please use this one instead:


\version "2.23.81"

#(debug-enable 'backtrace)
#(ly:set-option 'compile-scheme-code)

#(display (+ 2 2))
#(use-modules (ice-9 match)
    (ice-9 hash-table)
    (oop goops))



Says successful, but doesn't look it.


Cheers,
Robin
GNU LilyPond 2.23.81 (running Guile 2.2)
Processing `1.ly'
Parsing...
1.ly:6:2: error: Guile signaled an error for the expression beginning here
#
 (display (+ 2 2))

  16 (apply-smob/1 #)
In 
/home/lily/lilypond-2.23.81/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
   876:16 15 (lilypond-main _)
905:4 14 (lilypond-all _)
In srfi/srfi-1.scm:
640:9 13 (for-each # …)
In 
/home/lily/lilypond-2.23.81/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
915:9 12 (_ "1.ly")
In ice-9/boot-9.scm:
829:9 11 (catch ly-file-failed # …)
In unknown file:
  10 (ly:parse-file "1.ly")
   9 (apply-smob/1 #)
In system/base/compile.scm:
255:6  8 (compile _ #:from _ #:to _ #:env _ #:opts _)
   183:32  7 (compile-fold _ (display (+ 2 2)) # …)
In language/cps/compile-bytecode.scm:
   591:12  6 (emit-bytecode _ # _)
In system/vm/assembler.scm:
  2614:12  5 (link-assembly #< buf: #u32(2097437 573 0 577 513…> …)
  2587:22  4 (link-objects #< buf: #u32(2097437 573 0 577 513 2…>)
   1857:9  3 (link-dynamic-section #< buf: #u32(2097437 573 0 …> …)
In unknown file:
   2 (bytevector-u64-set! #vu8(0 0 0 0 0 0 0 0 0 0 0 0 0 0 …) …)
In ice-9/boot-9.scm:
   751:25  1 (dispatch-exception 0 out-of-range ("bytevector-u64-…" …))
In unknown file:
   0 (apply-smob/1 # out-of-range "b…" …)
In procedure bytevector-u64-set!: Value out of range: -149659645
1.ly:7:2: error: Guile signaled an error for the expression beginning here
#
 (use-modules (ice-9 match)

  16 (apply-smob/1 #)
In 
/home/lily/lilypond-2.23.81/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
   876:16 15 (lilypond-main _)
905:4 14 (lilypond-all _)
In srfi/srfi-1.scm:
640:9 13 (for-each # …)
In 
/home/lily/lilypond-2.23.81/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
915:9 12 (_ "1.ly")
In ice-9/boot-9.scm:
829:9 11 (catch ly-file-failed # …)
In unknown file:
  10 (ly:parse-file "1.ly")
   9 (apply-smob/1 #)
In system/base/compile.scm:
255:6  8 (compile _ #:from _ #:to _ #:env _ #:opts _)
   183:32  7 (compile-fold _ (use-modules (ice-9 match) (ice-9 #) #) …)
In language/cps/compile-bytecode.scm:
   591:12  6 (emit-bytecode _ # _)
In system/vm/assembler.scm:
  2614:12  5 (link-assembly #< buf: #u32(3146013 836 0 0 0 1 3…> …)
  2587:22  4 (link-objects #< buf: #u32(3146013 836 0 0 0 1 314…>)
   1857:9  3 (link-dynamic-section #< buf: #u32(3146013 836 0 …> …)
In unknown file:
   2 (bytevector-u64-set! #vu8(0 0 0 0 0 0 0 0 0 0 0 0 0 0 …) …)
In ice-9/boot-9.scm:
   751:25  1 (dispatch-exception 0 out-of-range ("bytevector-u64-…" …))
In unknown file:
   0 (apply-smob/1 # out-of-range "b…" …)
In procedure bytevector-u64-set!: Value out of range: -149659645
Success: compilation successfully completed


Re: -dcompile-scheme-code on Windows

2022-11-20 Thread Robin Bannister

On 20.11.2022 13:37, Jean Abou Samra wrote:

I wonder if -dcompile-scheme-code is broken for everyone on Windows
or just for some. (If it's broken for everyone, I'm surprised that
this is only noticed now ...)

Can a few people on Windows please try compiling this and report back:




See attached log.

Cheers,
Robin
GNU LilyPond 2.23.81 (running Guile 2.2)
Processing `1.ly'
Parsing...
1.ly:5:2: error: Guile signaled an error for the expression beginning here
#
 (debug-enable 'backtrace)

In procedure bytevector-u64-set!: Value out of range: -149659645
1.ly:7:2: error: Guile signaled an error for the expression beginning here
#
 (display (+ 2 2))

In procedure bytevector-u64-set!: Value out of range: -149659645
1.ly:8:2: error: Guile signaled an error for the expression beginning here
#
 (use-modules (ice-9 match)

In procedure bytevector-u64-set!: Value out of range: -149659645
Success: compilation successfully completed


Re: debug scheme part working with Frescobaldi

2022-07-20 Thread Robin Bannister

Eef Weenink wrote:


I have several lines of scheme, somewhere is probably an syntax error.
The only message I get is form lilypond log:  there is an error in the line # 
begin etcetera.
(that is the first line of the scheme segment).
I want to zoom in, and see what specific problem there is, 


I think it is telling you that it doesn't like the  # begin

It is relying on you to realize that it should be  # (begin


Cheers,
Robin




Re: [Help] How to type the symbol for indicating left/right hand

2022-06-15 Thread Robin Bannister

On 15.06.2022 09:37, xurc wrote:

Hi all,

Is it possible to type this right-angled symbol as seen in the attached image in LilyPond? 




Here is a recent answer to this question:
https://lists.gnu.org/archive/html/lilypond-user/2022-05/msg00449.html


Cheers,
Robin






Re: vertical half-brackets

2022-05-31 Thread Robin Bannister

Werner LEMBERG wrote:


For piano music it is common to indicate the use of the right hand in
the lower staff with a 'half-bracket' (and vice versa for the upper
staff), see image.

Two questions.

* What's the right term for this 'half-bracket'?

* Has someone coded this already?  I couldn't find code in the LSR.



I coded this to learn Scheme, and then neglected it.
It provides tweaks for direction/size/etc via a single cryptic string.


Some relevant links:

first mailing:
https://lists.gnu.org/archive/html/lilypond-user/2009-07/msg00536.html

update to 2.18:
https://lists.gnu.org/archive/html/lilypond-user/2015-11/msg00830.html

Harm's kind german effort at partial doc [inside code window]:
https://archiv.lilypondforum.de/index.php?topic=1781.0#msg_9874

issue:
https://gitlab.com/lilypond/lilypond/-/issues/1319


Cheers,
Robin




Re: How to code a bend-up into a note

2022-05-01 Thread Robin Bannister

David Johnson wrote:

bend-up

How should I code the bends into the c8. and c16~?



My answer is at
https://lists.gnu.org/archive/html/lilypond-user/2019-10/msg00306.html


Searching for 'scoop' in the user archives will give further hits:
https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=scoop&submit=Search%21&idxname=lilypond-user&max=20&result=normal&sort=date%3Alate


Cheers,
Robin




Re: Is there a way to set negative spacing to objects?

2022-05-01 Thread Robin Bannister

  RCJacH Han wrote:


I’m working on some animated score videos, and I wish to have multiple staffs 
contracting and expanding vertically and horizontally.
For that I wish to set the distance between staves to be 0 so multiple staves 
are stacked on top of each other.
Is there a way to do this?



Would one of Aaron's suggestions work for you?
https://lists.gnu.org/archive/html/lilypond-user/2021-08/msg00115.html


Cheers,
Robin



Re: CG 3.6 book link needs updating

2022-04-10 Thread Robin Bannister

Jean Abou Samra wrote:



Thanks for the report. Now that you are a Git expert, how about submitting a 
merge request to fix this? :-)



Thanks for the friendly invite, but you are way off the mark.
I wasn't reading CG 3, and I didn't even peek inside the book.

I was just wading through ten-year-old lilydev mails.


Cheers,
Robin


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


CG 3.6 book link needs updating

2022-04-10 Thread Robin Bannister

Hallo there


On [1] the 'Book about Git' link leads to a francophone news magazine.

The link originally pointed to the first edition of that book.  A few 
years later it started redirecting to [2], which nowadays redirects to 
[3], the second edition.


It looks like the progit.org domain changed hands last year.



[1] 
http://lilypond.org/doc/v2.23/Documentation/contributor/further-git-documentation-resources

[2]  http://git-scm.com/book
[3]  http://git-scm.com/book/en/v2



Cheers,
Robin


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


Re: line-break-system-details and the exact vertical position

2022-03-21 Thread Robin Bannister

On 21.03.2022 13:18, Jean Abou Samra wrote:


Allow me to disagree: "vertical position on the page at which each new
system will render" does not specify which refpoint in the system is
aligned to the given offset. I don't see that the documentation is
inaccurate.


In this reading it is incomplete.
So it is too early to judge accuracy.



Changing this will be painful ...


Which was why I didn't ask for that.
Your 'Better ...' would certainly be better!



Cheers,
Robin

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


line-break-system-details and the exact vertical position

2022-03-21 Thread Robin Bannister

Hallo there

In the Notation Reference for v2.12 through to (currently) v2.23, the 
section 'Explicit staff and system positioning' says:
Note that line-break-system-details takes an associative list 
of potentially many values, but that we set only one value here. 
Note, too, that the Y-offset property here determines the exact 
vertical position on the page at which each new system will render.


That bit about 'determines the exact vertical position' was written 
during v2.11 and described v2.12 behaviour.  But v2.13 started doing it 
differently, and that discrepancy between docs and code still exists.


I think the user thread
https://lists.gnu.org/archive/html/lilypond-user/2011-05/msg00332.html
can serve as a bug report for the current situation. It summarises the 
situation and provides MWEs and even includes a patch.


That patch wasn't applied, perhaps because Trevor Bača's particular 
problem was solved without resort to line-break-system-details.


I suppose it stayed that way because when moving a _single_ line you use 
trial and error to arrive at a suitable value.  Or when aligning _two_ 
lines there are more familiar methods to fall back on, so any temporary 
inaccuracy or confusion becomes irrelevant (cf mirrored.png).


In
https://lists.gnu.org/archive/html/lilypond-user/2022-03/msg00224.html
pseudoIndentsYdemo.ly's apply-Y-pos uses line-break-system-details with 
a crude workaround.  If you gradually reduce even-taller's value, the 
end of scoreA starts moving at 7 and scoreE bit later.  I ought to be 
able to align the 3 fragments of line 4 in a clean LilyPond way.



Cheers,
Robin

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


Re: No line break after score

2022-03-20 Thread Robin Bannister

On 14.03.2022 11:22, Robin Bannister wrote:

Patrick Martin wrote:

For example, in this picture, 22 follows directly on from the end of 21, 
and 23 from 22, etc. Or would this need to be implemented some other way?



Pseudoindent could help with the horizontal aspect.
https://lsr.di.unimi.it/LSR/Item?id=1098
You would choose an initial left-indent and a final right-indent for
each piece, and apply these manually.


Then get the appropriate vertical neighbours to overlap, without
involving enclosing StaffGroups and such.  I have no concrete
suggestions for that



Well, here is a way, using a NonMusicalPaperColumn override, such as
pseudoIndent already uses.  The whole thing is rather clunky and 
includes a crude workaround which may need refining.


You copy the first part of pseudoIndentsYdemo.ly.
Choose a global-staff-size, set it, and don't change it later.
Then you work down the page, filling each line with system fragments.
   Each pseudoIndentsY call produces and places one fragment.
   Keep these calls in a separate voice in the first staff.
   All the parameters are in staff-spaces.
   In this inlay usage, the right-indent parameter can trip you up.
   Measures squeezed out by lack of space may jump out of sight.
   But the pagewise lookups make the line positioning easy to adjust.
When you reach the page bottom insert a manual pageBreak.

The whole thing is extremely manual.
Don't want to change anything bulky when you're done!
It should work ok with tame systems like your chorales example.


Cheers,
Robin


\version "2.22.0"

\include "pseudoIndent.ily" %  cf LSR1098

pseudoIndentsY = % applies vertical positioning to pseudoIndents result 
#(define-music-function (parser location name-tweaks left-indent right-indent 
Y-pos) ; cf apply-Y-pos, which needs pseudoIndentsY in the _first_ staff
  ((markup-list? '()) number? number? number?)
  (let* ( 
(apply-Y-pos ; position our system  staff-spaces from top of page
  (let* ((even-taller 10)) ; than the top of the tallest grob, we hope! 
   #{ % misusing barline to swamp unknown first_staff_min_translation
 \override Staff.BarLine.Y-extent = #(cons -2 even-taller)
 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
  .Y-offset #(- Y-pos even-taller) % wonky if even-taller isn't taller
   #}))) % cf lilypond-user/2011-05/msg00366.html patch from Joe N.
  #{
\pseudoIndents $name-tweaks $left-indent $right-indent 
% try for explicit vertical positioning: 
#apply-Y-pos 
  #}))

\paper { % needed for apply-Y-pos
  system-system-spacing = #'(
(basic_distance . 0)
(minimum_distance . 0)
(padding . -10)
(stretchability . 0))
  score-system-spacing =  #'(
(basic_distance . 0)
(minimum_distance . 0)
(padding . -10)
(stretchability . 0))
}

\layout { \autoPageBreaksOff } % but manual \pageBreak still effective

%

#(set-global-staff-size 20) % choose a value and stick to it!
\paper { indent = 8 } % or = 0, adjusting initial left-indents individually 
\layout { \override Score.InstrumentName.padding = #2 }
\header { title = "pseudoIndentsY  demo" }


% convenience pagewise lookups for desired Y-pos staff-spaces via line-number: 
%   the first value is the distance of line 1 below the page top 
%   the second value is the distance of line 2 below line 1, and so on
#(define (Y-p1 line-num) (apply + (take '(15 22 23 22 21 21 21 21) line-num)))
#(define (Y-p2 line-num) (apply + (take '(10 00 00 00 00 00 00 00) line-num)))

  
\score { 
  \new StaffGroup \with { instrumentName = "A" }
   <<
 \new Staff
 <<
   \new Voice { \repeat unfold 47 a'4 a'''4 }
   \new Voice {
 \pseudoIndentsY 00 00 #(Y-p1 1) s1*8 
 \pseudoIndentsY 00 55 #(Y-p1 2) s1*4 \bar"|." 
   }
 >>
 \new Staff { \clef bass \repeat unfold 23 a2 a''2 }
   >>
}

\noPageBreak

\score { 
  \new StaffGroup \with { instrumentName = "B" }
  <<
\new Staff
<< 
  \new Voice { \repeat unfold 48 b'4 }
  \new Voice {
\pseudoIndentsY 60 00 #(Y-p1 2) s1*3
\pseudoIndentsY 00 00 #(Y-p1 3) s1*8 
\pseudoIndentsY 00 90 #(Y-p1 4) s1*1\bar"|." 
  }
>>
\new Staff { \clef bass \repeat unfold 24 b2 } 
  >>
}

\noPageBreak

\score { 
  \new Staff \with { instrumentName = "C" }
  << 
\new Voice { \repeat unfold 8 c''4 }
\new Voice {
  \pseudoIndentsY 25 50 #(Y-p1 4) s1*2 \bar"|." 
}
  >>
}

\noPageBreak

\score { 
  \new StaffGroup \with { instrumentName = "D" }
  <<
\new Staff
<< 
  \new Voice { \repeat unfold 12 d''4 }
  \new Voice {
\pseudoIndent

Re: No line break after score

2022-03-14 Thread Robin Bannister

Patrick Martin wrote:

For example, in this picture, 22 follows directly on from the end of 21, 
and 23 from 22, etc. Or would this need to be implemented some other way?


Are you a Tetris fan?


Pseudoindent could help with the horizontal aspect.
https://lsr.di.unimi.it/LSR/Item?id=1098
You would choose an initial left-indent and a final right-indent for 
each piece, and apply these manually.



Then get the appropriate vertical neighbours to overlap, without 
involving enclosing StaffGroups and such.  I have no concrete 
suggestions for that, but Aaron demonstrated \markup \overlay for a 
similar case here:

https://lists.gnu.org/archive/html/lilypond-user/2021-08/msg00115.html


Cheers,
Robin



Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Robin Bannister

Lukas-Fabian Moser wrote:



What do I have to do to make my custom engraver also see post-events
(here, a tie, but in my context it's a custom event type) used inside
chords?


I had a problem like that with tweaks, because the Tweak_engraver was 
called too late.  See issue 3296.


I had to consist it additionally in context ChordNames.


Cheers,
Robin



Re: Polychord support

2022-01-29 Thread Robin Bannister

skoop...@web.de wrote:

Hello,

is there meanwhile an easy way to write polychords as a chord name? I found a 
request on this topic, but no working solution.



The ChordNames context works like a vending machine:
  - your chosen coffee appears in a single paper cup.
The selection and dispensing mechanisms are very narrowminded in this 
respect.



The most practicable method at the moment is to use two contexts
as in
https://lists.gnu.org/archive/html/lilypond-user/2021-03/msg00297.html


Cheers,
Robin

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


Re: Ornament question

2022-01-14 Thread Robin Bannister

Jacques Menu wrote:


What is the name of the ‘up arc’ ornament on the first note in this 
score? Then I’ll look it up in the LPNR.




Some say scoop:

https://lists.gnu.org/archive/html/lilypond-user/2019-10/msg00274.html


Cheers,
Robin





Re: Feedback wanted: syntax highlighting in the LilyPond documentation

2022-01-05 Thread Robin Bannister

Jean Abou Samra wrote:


[Robin]
The stroke width I see is 1px (Firefox at 100%).  This makes the 
stroke dominated by edge effects; the surrounding white dilutes its 
colour.
Do the WCAG recommendations recognise this?  If not, please don't 
apply their levels to this case.



I don't know. I am not a great specialist of all
the (complicated) WCAG rules. All I have been
interested in so far was the ones for color;
their criteria were a handy way to know if
the scheme was OK 


It looks like the contrast tools offer comparison of two colors, without 
considering such context complications.  Very idealised.


But I found tentative recognition at the top of
https://www.w3.org/WAI/GL/WCAG3/2021/how-tos/visual-contrast-of-text/#design-button 


This shows me that they have no handy criteria to offer (yet).


Cheers,
Robin

P.S.
Their #design-button fragment doesn't work for me.
I have to click on the [Design] tab.
All very bleeding edge.





Re: Feedback wanted: syntax highlighting in the LilyPond documentation

2022-01-04 Thread Robin Bannister



'Hear hear' to these recent posts from Thomas, Paul and the two Davids!

I don't object to the fixed width, but the code font has always been 
spindly compared to the rest of the documentation text.  I find this 
makes it harder to read anyway.


The stroke width I see is 1px (Firefox at 100%).  This makes the stroke 
dominated by edge effects; the surrounding white dilutes its colour.
Do the WCAG recommendations recognise this?  If not, please don't apply 
their levels to this case.



The demo shows me text that is slightly discoloured.  The differences in 
colour are so vague that they require attention.  Attention to the 
differences detracts from attention to the colours.  I don't get as far 
as judging if attention to the colours aids attention to the text.



Cheers,
Robin



Re: Fwd: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-15 Thread Robin Bannister

A few hours ago I wrote (re 2.23.5fixed)


Well, initially I ran into irrelevancies because my .ly file (for 2.22)
has #on-the-fly, which is no longer acceptable.

I tried running convert-ly.py, but it was missing a .dll.
I will detail this later.



The attached file details this in its Case 1.

Case 2 is a workround using the 2.23.5 (1.8) system's python.


Cheers,
Robin

%%

Case 1: using 2.23.5fixed, installed at %programfiles(x86)%\LilyPond\usr

C:\Users\robin\Desktop\lilypond\etc>"%programfiles(x86)%\LilyPond\usr\bin\python.exe"
 "%programfiles(x86)%\LilyPond\usr\bin\convert-ly.py" "..\3.ly" "-e"

 - a message window 'python.exe - System Error' appears, saying:
   'The program can't start because api-ms-win-core-path-l1-1-0.dll is missing 
from your computer.  Try reinstalling the program to fix this problem.' 

%%

Case 2: like Case 1, but using the python.exe of 2.23.5 (1.8)

C:\Users\robin\Desktop\lilypond\etc>"%programfiles(x86)%\LilyPond 
2.23.5\usr\bin\python.exe" "%programfiles(x86)%\LilyPond\usr\bin\convert-ly.py" 
"..\3.ly" "-e"
convert-ly.py (GNU LilyPond) 2.23.5

convert-ly.py: Processing `..\3.ly'...
Applying conversion: 2.23.1, 2.23.2, 2.23.3, 2.23.4, 2.23.5

%%


Re: Fwd: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-15 Thread Robin Bannister

David Kastrup wrote:


Sounds like you might have mistakenly used % as a comment character in
Scheme mode (in Scheme, the comment character rather is ; ).


Yes.  I found it just before taking a break.


pah = #(define-music-function (chord) (ly:music?) % cf beguine
#{ s8 \hS < $@(music-pitches chord) >8 s4 #} )


1.8 isn't bothered by this error.
2.2 complains, but doesn't say where!
2.2 completes ok after the correction.


I have another file with a different complaint,
but that will have to wait until the weekend.


Cheers,
Robin



Re: Fwd: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-15 Thread Robin Bannister

Jonas Hahnfeld wrote:


I think I got it, can you give the newly built binaries in
https://cloud.hahnjo.de/index.php/s/3gpCEQnjZZAT8FJ a try? This uses
https://gitlab.com/lilypond/lilypond/-/merge_requests/1061 and works on
my system with a more common locale configuration, including properly
showing translated messages.


Well, initially I ran into irrelevancies because my .ly file (for 2.22) 
has #on-the-fly, which is no longer acceptable.


I tried running convert-ly.py, but it was missing a .dll.
I will detail this later.

So I commented out that \paper stuff, and then hit a lowlevel error.
To be quite sure, I installed 2.23.5 (1.8) for comparison; it ran 
successfully.


So this lowlevel error (Unbound variable: %) is the new nogo here.


Cheers,
Robin


C:\Users\robin\Desktop\lilypond>"%programfiles(x86)%\LilyPond\usr\bin\lilypond.exe"
 --loglevel=DEBUG -I /ily -I D:/ly_archive/ily 1.ly
Log level set to 287
GNU LilyPond 2.23.5 (running Guile 2.2)

Relocation
  LilyPond binary has absolute file name:
C:\Program Files (x86)\LilyPond\usr\bin\lilypond.exe
  Setting INSTALLER_PREFIX to 'C:/Program Files (x86)/LilyPond/usr'
  Using run-time value for datadir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/lilypond/2.23.5'
  Using compile-time value for libdir,
setting it to 
'/home/lily/lilypond.git/release/binaries/mingw/lilypond/install/lib/lilypond/2.23.5'
  Using run-time value for localedir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/locale'
  Using run-time value for relocdir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/etc/relocate'

  Using relocation config directory 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/fontconfig.reloc'
  Setting FONTCONFIG_FILE to 'C:/Program Files 
(x86)/LilyPond/usr/etc/fonts/fonts.conf'
  Setting FONTCONFIG_PATH to 'C:/Program Files (x86)/LilyPond/usr/etc/fonts'
  Relocation file 'C:/Program Files (x86)/LilyPond/usr/etc/relocate/guile.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/share/guile/2.2' to 
GUILE_LOAD_PATH
  Setting GUILE_LOAD_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/share/guile/2.2'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/lib/guile/2.2/ccache' to 
GUILE_LOAD_COMPILED_PATH
  Setting GUILE_LOAD_COMPILED_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/lib/guile/2.2/ccache'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/libexec.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/libexec' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/libexec;C:\Program Files 
(x86)\Common Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/bin' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/bin;C:/Program Files 
(x86)/LilyPond/usr/libexec;C:\Program Files (x86)\Common 
Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
Setting GUILE_AUTO_COMPILE to '0'
Setting GUILE_WARN_DEPRECATED to 'detailed'
Setting XDG_CACHE_HOME to 'C:/Program Files 
(x86)/LilyPond/usr/share/lilypond/2.23.5'
Setting GC_INITIAL_HEAP_SIZE to '40M'
Setting GC_NPROCS to '1'
Setting GC_FREE_SPACE_DIVISOR to '1'


Effective prefix: 'C:/Program Files (x86)/LilyPond/usr/share/lilypond/2.23.5'
FONTCONFIG_FILE="C:/Program Files (x86)/LilyPond/usr/etc/fonts/fonts.conf"
FONTCONFIG_PATH="C:/Program Files (x86)/LilyPond/usr/etc/fonts"
GUILE_LOAD_PATH="C:/Program Files (x86)/LilyPond/usr/share/guile/2.2"
PATH="C:/Program Files (x86)/LilyPond/usr/bin;C:/Program Files 
(x86)/LilyPond/usr/libexec;C:\Program Files (x86)\Common 
Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Pro

Re: Fwd: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-08 Thread Robin Bannister

Jonas Hahnfeld wrote:


Okay, now it's getting interesting. Can you give the following archive
a try? (also CC'ing the other people who reported problems on Windows)
https://cloud.hahnjo.de/index.php/s/yMx3nWMCPNLngAq


No change here.  DEBUG log exactly as before.  Version log ok.


Cheers,
Robin

Windows 7 Pro   6.1.7601 Service Pack 1
x64-based PC  i5-4670 CPU8GB RAM



C:\Users\robin\Desktop\lilypond>"%programfiles(x86)%\LilyPond\usr\bin\lilypond.exe"
 --loglevel=DEBUG -I /ily -I D:/ly_archive/ily 1.ly
Log level set to 287
GNU LilyPond 2.23.5 (running Guile 2.2)

Relocation
  LilyPond binary has absolute file name:
C:\Program Files (x86)\LilyPond\usr\bin\lilypond.exe
  Setting INSTALLER_PREFIX to 'C:/Program Files (x86)/LilyPond/usr'
  Using run-time value for datadir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/lilypond/2.23.5'
  Using compile-time value for libdir,
setting it to 
'/home/lily/lilypond-2.23.5/release/binaries/mingw/lilypond/install/lib/lilypond/2.23.5'
  Using run-time value for localedir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/locale'
  Using run-time value for relocdir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/etc/relocate'

  Using relocation config directory 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/fontconfig.reloc'
  Setting FONTCONFIG_FILE to 'C:/Program Files 
(x86)/LilyPond/usr/etc/fonts/fonts.conf'
  Setting FONTCONFIG_PATH to 'C:/Program Files (x86)/LilyPond/usr/etc/fonts'
  Relocation file 'C:/Program Files (x86)/LilyPond/usr/etc/relocate/guile.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/share/guile/2.2' to 
GUILE_LOAD_PATH
  Setting GUILE_LOAD_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/share/guile/2.2'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/lib/guile/2.2/ccache' to 
GUILE_LOAD_COMPILED_PATH
  Setting GUILE_LOAD_COMPILED_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/lib/guile/2.2/ccache'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/libexec.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/libexec' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/libexec;C:\Program Files 
(x86)\Common Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/bin' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/bin;C:/Program Files 
(x86)/LilyPond/usr/libexec;C:\Program Files (x86)\Common 
Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
Setting GUILE_AUTO_COMPILE to '0'
Setting GUILE_WARN_DEPRECATED to 'detailed'
Setting XDG_CACHE_HOME to 'C:/Program Files 
(x86)/LilyPond/usr/share/lilypond/2.23.5'
Setting GC_INITIAL_HEAP_SIZE to '40M'
Setting GC_NPROCS to '1'
Setting GC_FREE_SPACE_DIVISOR to '1'



Re: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-07 Thread Robin Bannister

Jonas Hahnfeld wrote:


Can't spot anything wrong here. All variables are set as they should,
Guile should be able to find its files...


My verbose log was similar.
Here is a list of the files as unzipped on my system.


Cheers,
Robin
bin\abc2ly.py
bin\convert-ly.py
bin\etf2ly.py
bin\gspawn-win64-helper-console.exe
bin\libgio-2.0-0.dll
bin\libglib-2.0-0.dll
bin\libgmodule-2.0-0.dll
bin\libgobject-2.0-0.dll
bin\libintl-8.dll
bin\lilymidi.py
bin\lilypond-book.py
bin\lilypond-invoke-editor.scm
bin\lilypond.exe
bin\lilysong.py
bin\midi2ly.py
bin\musicxml2ly.py
bin\pyexpat.pyd
bin\python.exe
bin\python39.dll
bin\python39.zip
etc\fonts\fonts.conf
etc\fonts\conf.d\10-hinting-slight.conf
etc\fonts\conf.d\10-scale-bitmap-fonts.conf
etc\fonts\conf.d\20-unhint-small-vera.conf
etc\fonts\conf.d\30-metric-aliases.conf
etc\fonts\conf.d\40-nonlatin.conf
etc\fonts\conf.d\45-generic.conf
etc\fonts\conf.d\45-latin.conf
etc\fonts\conf.d\49-sansserif.conf
etc\fonts\conf.d\50-user.conf
etc\fonts\conf.d\51-local.conf
etc\fonts\conf.d\60-generic.conf
etc\fonts\conf.d\60-latin.conf
etc\fonts\conf.d\65-fonts-persian.conf
etc\fonts\conf.d\65-nonlatin.conf
etc\fonts\conf.d\69-unifont.conf
etc\fonts\conf.d\80-delicious.conf
etc\fonts\conf.d\90-synthetic.conf
etc\fonts\conf.d\README
etc\relocate\fontconfig.reloc
etc\relocate\guile.reloc
etc\relocate\libexec.reloc
lib\guile\2.2\ccache\rnrs.go
lib\guile\2.2\ccache\statprof.go
lib\guile\2.2\ccache\texinfo.go
lib\guile\2.2\ccache\ice-9\and-let-star.go
lib\guile\2.2\ccache\ice-9\arrays.go
lib\guile\2.2\ccache\ice-9\atomic.go
lib\guile\2.2\ccache\ice-9\binary-ports.go
lib\guile\2.2\ccache\ice-9\boot-9.go
lib\guile\2.2\ccache\ice-9\buffered-input.go
lib\guile\2.2\ccache\ice-9\calling.go
lib\guile\2.2\ccache\ice-9\channel.go
lib\guile\2.2\ccache\ice-9\command-line.go
lib\guile\2.2\ccache\ice-9\common-list.go
lib\guile\2.2\ccache\ice-9\control.go
lib\guile\2.2\ccache\ice-9\curried-definitions.go
lib\guile\2.2\ccache\ice-9\debug.go
lib\guile\2.2\ccache\ice-9\deprecated.go
lib\guile\2.2\ccache\ice-9\documentation.go
lib\guile\2.2\ccache\ice-9\eval-string.go
lib\guile\2.2\ccache\ice-9\eval.go
lib\guile\2.2\ccache\ice-9\expect.go
lib\guile\2.2\ccache\ice-9\fdes-finalizers.go
lib\guile\2.2\ccache\ice-9\format.go
lib\guile\2.2\ccache\ice-9\ftw.go
lib\guile\2.2\ccache\ice-9\futures.go
lib\guile\2.2\ccache\ice-9\gap-buffer.go
lib\guile\2.2\ccache\ice-9\getopt-long.go
lib\guile\2.2\ccache\ice-9\hash-table.go
lib\guile\2.2\ccache\ice-9\hcons.go
lib\guile\2.2\ccache\ice-9\history.go
lib\guile\2.2\ccache\ice-9\i18n.go
lib\guile\2.2\ccache\ice-9\iconv.go
lib\guile\2.2\ccache\ice-9\lineio.go
lib\guile\2.2\ccache\ice-9\list.go
lib\guile\2.2\ccache\ice-9\local-eval.go
lib\guile\2.2\ccache\ice-9\ls.go
lib\guile\2.2\ccache\ice-9\mapping.go
lib\guile\2.2\ccache\ice-9\match.go
lib\guile\2.2\ccache\ice-9\networking.go
lib\guile\2.2\ccache\ice-9\null.go
lib\guile\2.2\ccache\ice-9\occam-channel.go
lib\guile\2.2\ccache\ice-9\optargs.go
lib\guile\2.2\ccache\ice-9\peg.go
lib\guile\2.2\ccache\ice-9\poe.go
lib\guile\2.2\ccache\ice-9\poll.go
lib\guile\2.2\ccache\ice-9\popen.go
lib\guile\2.2\ccache\ice-9\ports.go
lib\guile\2.2\ccache\ice-9\posix.go
lib\guile\2.2\ccache\ice-9\pretty-print.go
lib\guile\2.2\ccache\ice-9\psyntax-pp.go
lib\guile\2.2\ccache\ice-9\q.go
lib\guile\2.2\ccache\ice-9\r5rs.go
lib\guile\2.2\ccache\ice-9\rdelim.go
lib\guile\2.2\ccache\ice-9\receive.go
lib\guile\2.2\ccache\ice-9\regex.go
lib\guile\2.2\ccache\ice-9\runq.go
lib\guile\2.2\ccache\ice-9\rw.go
lib\guile\2.2\ccache\ice-9\safe-r5rs.go
lib\guile\2.2\ccache\ice-9\safe.go
lib\guile\2.2\ccache\ice-9\sandbox.go
lib\guile\2.2\ccache\ice-9\save-stack.go
lib\guile\2.2\ccache\ice-9\scm-style-repl.go
lib\guile\2.2\ccache\ice-9\serialize.go
lib\guile\2.2\ccache\ice-9\session.go
lib\guile\2.2\ccache\ice-9\slib.go
lib\guile\2.2\ccache\ice-9\stack-catch.go
lib\guile\2.2\ccache\ice-9\streams.go
lib\guile\2.2\ccache\ice-9\string-fun.go
lib\guile\2.2\ccache\ice-9\suspendable-ports.go
lib\guile\2.2\ccache\ice-9\syncase.go
lib\guile\2.2\ccache\ice-9\textual-ports.go
lib\guile\2.2\ccache\ice-9\threads.go
lib\guile\2.2\ccache\ice-9\time.go
lib\guile\2.2\ccache\ice-9\top-repl.go
lib\guile\2.2\ccache\ice-9\unicode.go
lib\guile\2.2\ccache\ice-9\vlist.go
lib\guile\2.2\ccache\ice-9\weak-vector.go
lib\guile\2.2\ccache\ice-9\peg\cache.go
lib\guile\2.2\ccache\ice-9\peg\codegen.go
lib\guile\2.2\ccache\ice-9\peg\simplify-tree.go
lib\guile\2.2\ccache\ice-9\peg\string-peg.go
lib\guile\2.2\ccache\ice-9\peg\using-parsers.go
lib\guile\2.2\ccache\language\bytecode.go
lib\guile\2.2\ccache\language\cps.go
lib\guile\2.2\ccache\language\tree-il.go
lib\guile\2.2\ccache\language\brainfuck\compile-scheme.go
lib\guile\2.2\ccache\language\brainfuck\compile-tree-il.go
lib\guile\2.2\ccache\language\brainfuck\parse.go
lib\guile\2.2\ccache\language\brainfuck\spec.go
lib\guile\2.2\ccache\language\bytecode\spec.go
lib\guile\2.2\ccache\language\cps\closure-conversion.go
lib\guile\2.2\ccache\langua

Re: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-05 Thread Robin Bannister

Jonas Hahnfeld wrote:


Oh no, please don't install this over another version of LilyPond! The
official installers are built against Guile 1.8, having both version of
this very fundamental library in the same directory will go very wrong.


I moved my current version out before I moved this one in.


Cheers,
Robin


Re: Binaries of LilyPond 2.23.5 with Guile 2.2

2021-12-05 Thread Robin Bannister

Jonas wrote:

"Which step does it get stuck

on, parsing, output of Postscript, or conversion to PDF?"


Attached is a DEBUG log of what happens here with a smallish .ly file.

I do get a successful version log though.


And take what I provide with a pinch of salt:
 - I have always used the installers.
   - it took me a lot of time and effort to get this running
 - unzip + move produced duplicate files
 - apparent permission no-ops were due to zip having been stripped
 - how do I run Win7 unzip as administrator?
   - success with 7Zip run as admin and AV temporarily disabled
 - so my final setup could well be wonky
   - it is placed where the installers put new versions; LilyPond/usr/


Cheers,
Robin

Windows 7 Pro   6.1.7601 Service Pack 1 Build 7601
x64-based PC  i5-4670 CPU @ 3.40GHz   8GB RAM

C:\Users\robin\Desktop\lilypond>"%programfiles(x86)%\LilyPond\usr\bin\lilypond.exe"
  --loglevel=DEBUG -I /ily -I D:/ly_archive/ily 1.ly
Log level set to 287
GNU LilyPond 2.23.5 (running Guile 2.2)

Relocation
  LilyPond binary has absolute file name:
C:\Program Files (x86)\LilyPond\usr\bin\lilypond.exe
  Setting INSTALLER_PREFIX to 'C:/Program Files (x86)/LilyPond/usr'
  Using run-time value for datadir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/lilypond/2.23.5'
  Using compile-time value for libdir,
setting it to 
'/home/lily/lilypond-2.23.5/release/binaries/mingw/lilypond/install/lib/lilypond/2.23.5'
  Using run-time value for localedir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/share/locale'
  Using run-time value for relocdir,
setting it to 'C:/Program Files (x86)/LilyPond/usr/etc/relocate'

  Using relocation config directory 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/fontconfig.reloc'
  Setting FONTCONFIG_FILE to 'C:/Program Files 
(x86)/LilyPond/usr/etc/fonts/fonts.conf'
  Setting FONTCONFIG_PATH to 'C:/Program Files (x86)/LilyPond/usr/etc/fonts'
  Relocation file 'C:/Program Files (x86)/LilyPond/usr/etc/relocate/guile.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/share/guile/2.2' to 
GUILE_LOAD_PATH
  Setting GUILE_LOAD_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/share/guile/2.2'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/lib/guile/2.2/ccache' to 
GUILE_LOAD_COMPILED_PATH
  Setting GUILE_LOAD_COMPILED_PATH to 'C:/Program Files 
(x86)/LilyPond/usr/lib/guile/2.2/ccache'
  Relocation file 'C:/Program Files 
(x86)/LilyPond/usr/etc/relocate/libexec.reloc'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/libexec' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/libexec;C:\Program Files 
(x86)\Common Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
  Prepending 'C:/Program Files (x86)/LilyPond/usr/bin' to PATH
  Setting PATH to 'C:/Program Files (x86)/LilyPond/usr/bin;C:/Program Files 
(x86)/LilyPond/usr/libexec;C:\Program Files (x86)\Common 
Files\Oracle\Java\javapath;C:\Users\robin\_onPATH;C:\Program 
Files\ImageMagick;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
 Files (x86)\LilyPond\usr\bin;C:\Program Files\Microsoft SQL 
Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft 
SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL 
Server\120\Tools\Binn\;C:\Program Files\Microsoft Windows Performance 
Toolkit\;C:\Program 
Files\ffmpeg\bin\;C:\Users\robin\AppData\Local\Programs\Python\Python37;C:\Program
 Files (x86)\Denemo\usr\bin'
Setting GUILE_AUTO_COMPILE to '0'
Setting GUILE_WARN_DEPRECATED to 'detailed'
Setting XDG_CACHE_HOME to 'C:/Program Files 
(x86)/LilyPond/usr/share/lilypond/2.23.5'
Setting GC_INITIAL_HEAP_SIZE to '40M'
Setting GC_NPROCS to '1'
Setting GC_FREE_SPACE_DIVISOR to '1'
GNU LilyPond 2.23.5 (running Guile 2.2)

Copyright (c) 1996--2021 by
  Han-Wen Nienhuys 
  Jan Nieuwenhuizen 
  and others.

This program is free software.  It is covered by the GNU General Public
License and you are welcome to change it and/or distribute copies of it
under certain conditions.  Invoke as `lilypond --warranty' for more
information.



Re: How to display adjacent segno and coda symbols?

2021-10-19 Thread Robin Bannister

David Wright wrote:



I've used the attached, which is from the last, and defunct,
reference in:

https://lists.gnu.org/archive/html/lilypond-user/2017-02/msg00133.html

I haven't checked whether it's been made available elsewhere,
like a snippet.


That defunct reference was a message on this list.
It is archived at
https://lists.gnu.org/archive/html/lilypond-user/2011-08/msg00157.html


Cheers,
Robin



Re: [Fwd: Changed behavior 2.18.0 to 2.22.1]

2021-10-05 Thread Robin Bannister

On 04.10.2021 19:42, Jean Abou Samra wrote:


This is just something I noticed, not of any direct importance to me,
but thought you might like to know. I checked convert-ly does not alter
the file.



This is registered as issue #4826,

https://gitlab.com/lilypond/lilypond/-/issues/4826



As an aside:
in LSR1098 https://lsr.di.unimi.it/LSR/Item?id=1098
I had to include a workaround for a 2.19.16 change,
probably related.


HTH,
Robin




Re: [Fwd: Changed behavior 2.18.0 to 2.22.1]

2021-10-05 Thread Robin Bannister

On 04.10.2021 19:42, Jean Abou Samra wrote:


This is just something I noticed, not of any direct importance to me,
but thought you might like to know. I checked convert-ly does not alter
the file.



This is registered as issue #4826,

https://gitlab.com/lilypond/lilypond/-/issues/4826



As an aside:
in LSR1098 https://lsr.di.unimi.it/LSR/Item?id=1098
I had to include a workaround for a 2.19.16 change,
probably related.


HTH,
Robin


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


Re: Arpeggios across notes in different voices

2021-08-30 Thread Robin Bannister

  Dirck Nagy wrote:



I am trying to extend an arpeggio line to cover the entire chord in the 
example below.




You could try out my easyChArp, originally written for guitarists,
and updated here for 2.20.

Include (or paste in) its code

and replace:   1 \arpeggio
with   :   \easyChArp #+2 1


Cheers,
Robin

% updated for 2.20
easyChArp = #(define-music-function (grow) (number?)
  ;% easy chord arpeggio; extendable in one staff without connectArpeggios
  #{ % apply in one voice, supplying growth parameter: + = up, - = down
\once \override Arpeggio #'positions  = #(lambda (grob)
  (let ((iv (ly:arpeggio::calc-positions grob))
(grow-hi (max 0 (/ grow 2)))
(grow-lo (min 0 (/ grow 2
(cons (+ (car iv) grow-lo) (+ (cdr iv) grow-hi
$(make-music 'EventChord 'elements (list (make-music 'ArpeggioEvent)))
  #})
%



Re: Extra padding between ChordNames and custom headers

2021-07-17 Thread Robin Bannister

Robin Bannister wrote:


And the put-mm [1] version of this would be



Forget that!

Sorry for the noise.  Missing Nabble's Classic overview.


Cheers,
Robin



Re: Extra padding between ChordNames and custom headers

2021-07-17 Thread Robin Bannister

Aaron Hill wrote:


\score { \header { piece = "Curabitur condimentum"
 extra = \markup \vspace #0.5 } \song }




And the put-mm [1] version of this would be


\version "2.22.0"

#(define-markup-command (mm-feed layout props amount) (number?)
 (let ((o-s (ly:output-def-lookup layout 'output-scale)))
   (ly:make-stencil "" '(0 . 0) (cons 0 (abs (/ amount o-s))

#(define-markup-command (put-mm layout props dir amount arg)
 (ly:dir? number? markup?) (interpret-markup layout props
   (markup #:put-adjacent Y dir arg #:mm-feed amount)))


song =
<< \new ChordNames \chordmode { c2 d:7 | g1 }
\new Voice \fixed c' { g2 a4 fis | g1 } >>

\paper { indent = 0 line-width = 2\in ragged-right = ##f }

\score { \header { piece = "Duis blandit lorem" } \song }
\score { \header { piece =  \markup \put-mm #DOWN #4
 "Curabitur condimentum"  } \song }
\score { \header { piece = "Integer sit amet" } \song }


[1]
https://lists.gnu.org/archive/html/lilypond-user/2010-04/msg00035.html


Cheers,
Robin



Re: Centering staves on the page

2021-07-15 Thread Robin Bannister

Mark Harris wrote:


I want to be able to centre staves, which have varying lengths, on the page, as 
if they were centre-justified. Can anyone help me with the code for this?


Have a look at http://lsr.di.unimi.it/LSR/Item?id=1098
keeping ragged-right and ragged-last false

(and be sure to read all the small print)



Cheers,
Robin





Re: Appending minor chords with "sus2/sus4"

2021-07-12 Thread Robin Bannister

Brent Annable wrote:

Hi all,

I'm currently adding chords to some music, and I can't seem to find 
anywhere how to create a "Gmsus2" chord name.  


[..]

I feel like I'm just missing something, is there an easy way to display 
this chord type?


See the discussion here:
https://lists.gnu.org/archive/html/lilypond-user/2015-11/msg00864.html


Cheers,
Robin



Re: occasional ragged-right lines in the interior of mostly non-ragged-right score

2021-07-01 Thread Robin Bannister

Robert Gaebler wrote:

I understand to set ragged-right = ##f to get an even (all aligned) 
right hand edge, and set ragged-right=##t to get a ragged right edge.  
However this setting affects the entire score.  I would like to make 
occasional exceptions here and there in the score.


Have a look at http://lsr.di.unimi.it/LSR/Item?id=1098
(and be sure to read all the small print)


Cheers,
Robin





Re: Nabble broken?

2021-06-27 Thread Robin Bannister

Jean Abou Samra wrote:


That might push us to move to another
web interface for the list, who knows. Nabble has already been
causing quite a few problems in the past, like mangling code
samples. I haven't investigated options yet, though.



When you were posting to Nabble Support [1] did you see the threads 
which seem to imply that Nabble is being discontinued in various ways

  - server, support, etc.  e.g. [2] [3] [4] ?

Cheers,
Robin


[1] http://support.nabble.com/CONTENTS-DELETED-tp7609604p7609639.html

[2] http://support.nabble.com/The-Future-of-Nabble-tp7605923.html

[3] 
http://support.nabble.com/Mailing-Lists-will-be-updated-to-regular-forums-next-week-tp7609458.html


[4] 
http://support.nabble.com/Possible-Alternate-Hosting-For-Nabble-Apps-tp7609590.html




Re: Adjusting colors and such... A snapshot of the work so far.

2021-06-16 Thread Robin Bannister

darkijah wrote:


> Anyway guys, we need a English forum for this,
> I am way to confused with
> the email thing and finding things again.


Perhaps nabble would suit you better?
http://lilypond.1069038.n5.nabble.com/


Cheers,
Robin




Re: Notesheet Flute varibles defined and ready for call...

2021-05-17 Thread Robin Bannister

darki...@jesusgod-pope666.info wrote:

 I learned from the video on Varibles on
youtube that the varible call should be put into a { }
https://www.youtube.com/watch?v=mmfXHVrkG3g&list=PLHi8BvxILUV6x9FqEmZiYrEj6VMGmTKjt&index=11
But I guess that was wrong.



Have you read the Learning Manual?
You have enough experience now to profit from reading it again.


That video is using variables to hold sequential music.
It doesn't mention any of the other things a variable can hold.
So I think it is already too simple for you.


varA =  {c e g}  % sequential music
varB =% a chord
varC = <> % simultaneous music
varD =  "c e g"  % a string
varE = ^"c e g"  % a string as a TextScript


Cheers,
Robin



Re: Notesheet Flute varibles defined and ready for call...

2021-05-17 Thread Robin Bannister

darki...@jesusgod-pope666.info wrote:

Although am getting these warnings when compiling - it does not seem to
like what I have done very much - but it does work.



You have two cases of the 'Unattached TextScriptEvent' warning.
This sort of thing happens when LilyPond can't find the corresponding 
note.  It may discard the TextScriptEvent, but it usually lets it drift 
along and settle onto the following note.




   > warning: Unattached TextScriptEvent
   > orange = {
   >  ^
In the first cases your outer curly brackets are isolating the 
TextScriptEvent from the surroundings.  Get rid of them.



   > warning: Unattached TextScriptEvent
   > \yellow e2
In the second cases your TextScriptEvent commands are preceding the
corresponding notes, instead of following them.
So at the start of the first measure \yellow has no note to attach to 
and is assigned to the following e2.  The subsequent TextScriptEvent 
commands in that measure don't complain because they follow (the wrong) 
notes.



The attached .ly produces no warnings.


Cheers,
Robin






\version "2.22.1" \language "english" %\include "S-Color.ly"
\paper {
#(set-paper-size "a4")
top-margin = 3 %default 5
left-margin = 20 %default 10
right-margin = 10 %default 10
bottom-margin = 7 %default 6
}

\header{
title = \markup { \fontsize #0.005 "Behold os Herre(Fader) ved dit Ord
(ucensureret text med opdateringer)" }
subtitle = \markup { \fontsize #0.005 "En Børnesang imod de to
ærkefjender imod den Kristne menighed - Romersk
Katolicisme/Mohammadanisme og andet." }
meter = "Tempo 130" arranger = "Martin Luther~1542 raffineret af
Darkijah 2021 - https://JesusGod-Pope666.Info";
copyright = "Truth like Salvation is not sold for greedy mammon but
giving freely through Christ blood!"
tagline = "Copyright is of the Devil - Sharing is Caring - This
information is always in public domain" 
%Music engraving by LilyPond 2.22.1--www.lilypond.org - - for clean: ##f
}


\layout { indent = 0 #(layout-set-staff-size 28) \override
NoteHead.font-size = #2
\context {%cadenzaOn
\Staff \consists "Custos_engraver"
\override Custos.style = #'mensural \override Custos.color = #(x11-color
'black) \override Custos #'neutral-position = #20
\remove "Time_signature_engraver"
%\override TimeSignature #'stencil = #point-stencil
%\remove "Bar_engraver"
%\override BarLine.X-extent = #'(-2 . 0)
}}


%  (one oneT oneRT oneTR oneR oneRT1q one1qTR oneRT1h one1hTR
%oneRT3q one3qTR oneRTF oneFTR one1qT oneT1q one1q one1qT1h one1hT1q
%one1qT3q one3qT1q one1qTF oneFT1q one1hT oneT1h one1h one1hT3q one3qT1h
%one1hTF oneFT1h one3qT oneT3q one3q one3qTF oneFT3q oneFT oneF)


orange = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two three four five six))(lh
. ())(rh . ()))}

orangeS = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two three four five
sixT1h))(lh . ())(rh . ()))}

yellow = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two three four five))(lh .
())(rh . ()))
} 

greenS = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two three four))(lh . ())(rh
. ()))
} 

teal = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two three))(lh . ())(rh .
()))
} 

blue = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one two))(lh . ())(rh . ()))
} 

violet = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (one))(lh . ())(rh . ()))
} 

redS = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (oneT1h))(lh . ())(rh . ()))
} 

redN = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . (oneT1h))(lh . ())(rh . ()))
} 

orangeT = ^
 \markup
 \center-column {
 \override #'(size . 0.5) % 1 standard
 \override #'(thickness . 0.3) % 0.1 standard
 \woodwind-diagram #'flute #'((cc . ( two three four five six))(lh .
())(rh . ()))
} 


<<
\relative d' { %\tempo "Tempo indication" 8=120 %\textLengthOn
\time10/4 \key g \major \easyHeadsOn

%\override NoteHead.color = 

Re: ChordNames: differentiating between 7sus4 and m7sus4

2021-04-27 Thread Robin Bannister

Kieren MacMillan wrote:


 Is there a better way of doing what I want?


That, and mum's the word (it might be a bug).


Cheers,
Robin



Re: centralising markups above notes

2021-04-09 Thread Robin Bannister

Gilberto Agostinho wrote:


The solution I found [...] seems very hacky to me as it's
mixing two things (\center-align and parent-alignment-x) for the alignment.


My take on this: it is not 'mixing' but rather 'combining' two things.
You get more useful combinations with less headaches.

See the last 2 paragraphs of
https://sourceforge.net/p/testlilyissues/issues/4036/#2bde


Cheers,
Robin



Re: Jazz chords above slash notation

2021-03-25 Thread Robin Bannister

Calvin Ransom wrote:


I ran across a chord that I am not
able to write the following chord, If anyone has any ideas on how I can
write this I would greatly appreciate it.


If you need to do a lot of these polychords, you may be better off using 
two ChordNames contexts.



Cheers,
Robin


\version "2.22.0"

coharmonies = \chordmode { d1:m s d:dim s fis}
harmonies = \chordmode { c1 c:m c:7 cis c:m7 }

\score {
   <<
 \new ChordNames \with
 {
   \override ChordName.before-line-breaking = #(lambda (grob)
 (let ((orig (ly:grob-property grob 'text)))
   (ly:grob-set-property! grob 'text
 #{ \markup \combine $orig \lower #1 "__" #})))
 }
 { \coharmonies }
 \new ChordNames { \harmonies   }
   >>
   \layout{ }
}


Re: script stack order regression

2021-03-24 Thread Robin Bannister

Kevin Barry wrote:

I don't think LilyPond guarantees a particular
order of events occuring at the same moment, but I agree that wrapping
them should not change the order.

An issue has been created to track this 



Thanks.

But the regression test script-stack-order.ly is quite explicit about 
the order being guaranteed.



Cheers,
Robin

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


Re: Cowell clusters

2021-03-19 Thread Robin Bannister

Dimitris Marinakis wrote:


I get some errors: version 2.23.0
a lot of Unsupported SCM value for format (various values that look like 
0.287106 -0.72778135 )


These error messages are probably due to the internal changes that were 
made to LilyPond stencils between v2.20.4 and v2.20.5.



The file cowell-clusters.ly uses ly:make-stencil in two places.
You will find comments inserted there, telling you how to cope.


Cheers,
Robin



script stack order regression

2021-03-13 Thread Robin Bannister

Hallo there

I noticed this while trying to make an MWE for a different problem.

Maybe it counts as a limitation rather than a bug?


Cheers,
Robin
% MWE for post-event ordering via event-function and wrapper

\markup #(lilypond-version)

ts-first-second = 
#(define-event-function () () 
#{ -"1st" -"2nd" #} ) % 

{
  \displayScheme 
  {
s1 r1 -"1st" -"2nd"
s1 r1 \ts-first-second  % v2.20 1st 2nd ; v2.22 2nd 1st
  } % cf  2.19.21 script-stack-order.ly
}

% related tests:
% 2.21.0  post-events-from-scheme.ly
% 2.21.1  post-events-wrapper-direction.ly___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond


Re: Stacked tensions for chord names

2021-03-02 Thread Robin Bannister

Aaron Hill wrote:


[...]
no-bs = #'(baseline-skip . 0)
[...]


Was there intention behind that variable name?  ;-)


The official reason: very short, to avoid any wrapping of code.

It just happened - while culling hyphens - and then seemed fun.


Cheers,
Robin




Re: Stacked tensions for chord names

2021-03-01 Thread Robin Bannister

Valentin Petzel wrote:


My problem is that at
Position where the markup is defined the fontsize is in fact not known. I’ve
solved the issue for the time being by using a on-the-fly call to modify the
baseline-skip. 


You can fetch the font-size with#:properties ((font-size 0))
as done in \translate-scaled for example.


And if you are fed up with baseline-skip you can set it to 0,
and it then stays 0 whatever the font-size.

In your case it would suffice to insert vertical gaps because
your column doesn't need to skip exactly like nearby columns do.


\version "2.20.0"

vshim = \markup \combine \null \translate-scaled #'(0 . -0.2) \null
no-bs = #'(baseline-skip . 0)

\markup \line {
\column { A B C 6 }
\override #no-bs \column { A \vshim B \vshim C \vshim 7 }
\fontsize #-6 "..."
\fontsize #-6 \override #no-bs \column { A \vshim B \vshim C \vshim 8 }
\override #no-bs \fontsize #-6 \column { A \vshim B \vshim C \vshim 9 }
}


Cheers,
Robin



Re: Stacked tensions for chord names

2021-03-01 Thread Robin Bannister

Valentin Petzel wrote:


Does anyone of you have an idea how one can set baseline-skip to be
proportional to the font-size?


Well, when the markup command \fontsize changes the font size, it 
changes the baseline-skip too, to keep it proportional.


But this means that if you are overriding the baseline-skip, you need to 
take care where you place the override wrt \fontsize.  See example 4.



\version "2.20.0"

\markup \line {
\column { A B C 1 }
\override #(cons 'baseline-skip 1.2) \column { A B C 2 }
\fontsize #-6 "..."
\fontsize #-6 \column { A B C 3 }
\fontsize #-6 \override #(cons 'baseline-skip 1.2) \column { A B C 4 }
\override #(cons 'baseline-skip 1.2) \fontsize #-6 \column { A B C 5 }
}



Cheers,
Robin


Re: Changing music font for one notehead

2021-02-18 Thread Robin Bannister

Calvin Ransom wrote:


What did you type into the mailing list as I could not find that particular
thread earlier?


I searched in http://lilypond.1069038.n5.nabble.com/ for
  NoteHead font-name


Cheers,
Robin



Re: Changing music font for one notehead

2021-02-18 Thread Robin Bannister

On 18.02.2021 07:26, Calvin Ransom wrote:


I am copying a percussion score for my school's Jazz band as a previous
musician lost their part. I was able to use the alternate font "lilyjazz"
However, on the final note of the score it does not support a whole-note
with a cross style notehead.
I am hoping to change the notehead font to  emmentaler but keep the
lilyjazz font on the fermata.


I think your  #:music "lilyjazz"   banished the emmentaler.

So the following thread should help:
https://lists.gnu.org/archive/html/lilypond-user/2020-04/msg00272.html


Cheers,
Robin



Re: Injecting Blank Space into Score with Edition-Engraver

2021-02-12 Thread Robin Bannister

Jesse Wiener wrote:


I'm engraving a large orchestral score and it's working very well with 4
bars per page. For structural reasons, I'd like to have a page with 2 bars
but I don't want them to stretch across - the bars are just too wide.




Have a look at http://lsr.di.unimi.it/LSR/Item?id=1098
(and be sure to read all the small print)


Cheers,
Robin




Re: our quadratic triangle

2021-01-27 Thread Robin Bannister

Hallo again


In the meantime it has occurred to me that moving the gratuitous magstep 
scaling from baseline-skip over to thickness is perhaps not the answer.


Since the triangle is applied mainly as a glyph it should not respond to
overrides on those two properties.  Consider squashing a vertical column 
by reducing its baseline-skip; a triangle somewhere in the column would 
be resized, unlike any of its font neighbors.



So what about a markup that ignores all properties except the font size?
It could offer some flexibilty via parameters, eg:

%%%

#(define-markup-command (delta-bhr layout props b-cents h-cents r-cents)
 (number? number? number?)
#:properties ((font-size 0))
  (let* (
  (cent (/ (magstep font-size) 100))
  (base (* b-cents cent))
  (height (* h-cents cent))
  (radius (* r-cents cent)) ; of dot
  (thickness (* 2 radius))) ; of line
   (ly:make-stencil  `(polygon
; '(0.0 ,radius ,base ,radius ,(* 0.5 base) ,(+ height radius)) ;old
   (0.0 ,radius ,base ,radius ,(* 0.5 base) ,(+ height radius)) ;new
 ,thickness  #f)
   (interval-widen (cons 0 base) radius)
   (cons 0 base) )))

delta = \markup \delta-bhr #120 #130 #10 % customised for "sans-serif"

%%%


Just my two cents.   Or three in this case.


Cheers,
Robin
___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond


our quadratic triangle

2021-01-25 Thread Robin Bannister

Hallo there


The markup command \triangle has been around since 2005.
The ChordName code guarantees its regular use as a major-seventh option.


This command has a severe bug, as demonstrated by the following code:



% same behaviour from 2.8.8 to 2.22.0
\markup  {
   \fontsize #-6  { "-6" \triangle ##f }
   \fontsize #-4  { "-4" \triangle ##f }
   \fontsize #-2  { "-2" \triangle ##f }
   \fontsize # 0  { " 0" \triangle ##f }
   \fontsize #+2  { "+2" \triangle ##f }
   \fontsize #+4  { "+4" \triangle ##f }
   \fontsize #+6  { "+6" \triangle ##f }
}



quadratic.pdf shows that the triangle is ok at fontsize 0 but
  - at smaller fontsizes it is too small
  - at larger fontsizes it is too large.


I suppose most people use a ChordName font size close to its default.
The triangle may occasionally appear a bit odd to some. But who is to 
say it is actually wrong when there are so many ChordName opinions around?


Looking inside, the triangle size is derived from baseline-skip to which 
a magstep scaling is applied.  But since the baseline-skip distance is 
already scaled to the fontsize, the resulting scaling is quadratic.

On the other hand the line thickness stays unaffected by fontsize.
So it looks like the magstep scaling was applied to the wrong property.


Commit 136bdc3c4835942f396d57ac78df71d97c43d3e8 indicates what we should 
expect:

 >  new command, as robust replacement for unicode Delta/Triangle.



Cheers,
Robin




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


Re: I hope this is on topic, pdf indications

2020-12-21 Thread Robin Bannister

  jh wrote:

Hello-
I'm still using 2.18.2
And my PDF 'reader' is Sumatra.  Until I did an upgrade of Sumatra when
my cursor was hovering over a note there was information about where in
the .ly file this note was.
After the upgrade this no longer happens.  What could be the disconnect
between the two?



Your problem seems to be that LilyPond has stopped generating the 
point-and-clicks entries in the pdf. Check out

http://lilypond.org/doc/v2.21/Documentation/usage/configuring-the-system-for-point-and-click#enabling-point-and-click


The upgrade might have overwritten your sumatrapdfrestrict.ini file.
Its white list for link protocols may no longer have a 'textedit' entry.
But that wouldn't stop you being able to read the indications.


Caveat:  I am not running the latest Sumatra version.


Cheers,
Robin



Re: Polychord

2020-11-27 Thread Robin Bannister




My advice:  Don't try.  Write markup for overriding the 'text property.



And if you don't feel up to doing that sort of markup,
you could get most of the way with an additional context:



\version "2.20.0"

coharmonies = \chordmode { d1:m s d:dim s fis}
harmonies = \chordmode { c1 c:m c:7 cis c:m7 }

\score {
  <<
\new ChordNames { \coharmonies }
\new ChordNames { \harmonies   }
  >>
  \layout{ }
  \midi { }
}



Cheers,
Robin


Re: Polychord

2020-11-27 Thread Robin Bannister

 achard wrote:


This is what a user wrote to get polychords.

But I would like the bottom chord to appear as C7 or Cm7 or C maj7.




"If I were you, I wouldn't start from here."


The approach of the Scheme snippet you have selected is extremely 
blinkered, catering only for combinations of root pitches.

It bypasses the Lilypond code for mode and modifiers.
And a warning: polychordExceptionMusic will explode combinatorially.

So to go the Lilypond/Scheme way, you should keep the two chords 
separate for as long as possible, and 'just' combine the resulting 
stencils.



My advice:  Don't try.  Write markup for overriding the 'text property.


Cheers,
Robin








Re: Like \bendAfter but before a note

2020-11-06 Thread Robin Bannister

John Burt wrote:


 How can I handle the swooping up part?



Look here for one way:

https://lists.gnu.org/archive/html/lilypond-user/2019-10/msg00274.html


Cheers,
Robin



Re: Sprechgesang

2020-10-31 Thread Robin Bannister

Massimiliano Viel wrote:

I receive the following message of error:

Wrong number of arguments to ly:stencil-combine-at-edge


Why is that? As far as I can understand the number of arguments is fine! 



The last parameter was dropped quite some time ago.
You should have run it through convert-ly.

But deleting the zero after the -3 will do it.


Cheers,
Robin



Re: Forzando in Lilypond 2.20

2020-10-03 Thread Robin Bannister

Mike Dean wrote:

Now to hide the warning 3/4 before the start of the Trio (I can take the  \time
3/4
out, but that also takes out the time sig at the start of the
Trio)looking at the LSR did not give me anything to get a handle on


Check out
https://lists.gnu.org/archive/html/lilypond-user/2016-06/msg00073.html

You may not need to bother with '\once'


Cheers,
Robin



Re: Making a click track on midi output

2020-09-13 Thread Robin Bannister

John Burt wrote:


I know how to make the midi file. But I don't know how
to include a click track. Can anyone help me with this?


Have a look at this recent thread:
https://lists.gnu.org/archive/html/lilypond-user/2020-06/msg00065.html


Cheers,
Robin





Re: How to write chords of different durations?

2020-08-15 Thread Robin Bannister

Kenneth Wolcott wrote:


the right hand of one particular measure has "bf2." and "d2 f8 bf"
(this is 3/4 time).

How to engrave this? Do I need distinct voices for this?


Yes.
These voices must be made to run simultaneously. Use << >> brackets.
That way, the durations in one voice don't interfere with the durations 
in the other voice.


This is shown in the Notation Reference
http://lilypond.org/doc/v2.20/Documentation/notation/multiple-voices#-Explicitly-instantiating-voices
but that example doesn't have any chords.


I've attached a snippet which combines single notes and chords in 
different situations.



Cheers,
Robin

\version "2.20.0"

global = {
  \key c \major
  \time 3/4
  \mergeDifferentlyHeadedOn
  \mergeDifferentlyDottedOn
}

sopMusic =  \transpose c c' { \voiceOne  
  g,4 c8.[ c16] e8.[ e16] |
  4 4. e8 |
  4 4. e8 |
  8.[ 16] 2 |
  g,4 b,8.[ b,16] d8.[ d16] |
  f4 f4. e8 _~ |
  4 f4. e8 |
  d4 c2 |
}

altoMusic =  \transpose c c' { \voiceTwo
  s2. |
  c2 s4 |
  c2 s4 |
  s2. |
  g,2. |
  b,4 ^~ 4. s8 |
  b,2 4 |
  g,2 s4 |
}

tenorMusic = { \voiceOne 
  e4 e4 g4 |   
  s2. |
  s2 g4 |
  s2. |
  f2. |
  s2. |
  s4 a4. s8 |
  f4 e2 |
}

bassMusic = { \voiceTwo
  c2. |
  c2 g4 |
  c2. |
  g2 d4 ~ |
  d4 g,4 b,4 |
  d2 g4 |
  g,2. |
  c2 g,4 |
}

\score {
  \new PianoStaff <<
\new Staff { \global  
  << 
\new Voice \sopMusic 
\new Voice \altoMusic  
  >>
}
\new Staff{ \clef bass \global 
  << 
\new Voice \tenorMusic 
\new Voice \bassMusic 
  >>
}
  >>
  \layout {}
}


Re: Indent within a score

2020-08-10 Thread Robin Bannister

Павел wrote:

How to make indent in the middle of a score (not first system)? In some
cases, it would be very convenient. Because additional score blocks
"break" the logic of input and lead to other problems: additional spaces
between systems, resetting bar numeration, rehearsal marks, etc...



Have a look at http://lsr.di.unimi.it/LSR/Item?id=1098
(and be sure to read all the small print)


Cheers,
Robin



Re: Syntax for ligature brackets

2020-07-23 Thread Robin Bannister

Laura Conrad wrote:


I'm not saying this is wrong, and I'm certainly not saying it should be
changed.  But it would help me remember when I haven't transcribed a
ligature for a few months if someone explained why it was done  this
way.



It seems it's ok to think it's wrong and should be changed.


https://lists.gnu.org/archive/html/lilypond-user/2018-04/msg00813.html

https://gitlab.com/lilypond/lilypond/-/issues/4764


Cheers,
Robin



Re: Making markup functions parametric

2020-07-03 Thread Robin Bannister

Urs Liska wrote:



Unfortunately I don't really have an idea what "#:circle" actually
*is*, so I have no clue about getting where I need to.



I think it's a sort of macro thingy, trying to be easy to be used.

Look at 'Known issues and warnings' at the bottom of
https://lilypond.org/doc/v2.20/Documentation/extending/markup-construction-in-scheme

So make-circle-markup would be equivalent.


Cheers,
Robin



Re: Problems with Internals manual

2020-06-16 Thread Robin Bannister

Peter Toye wrote:

I'm trying to work out what the properties of a LyricHyphen are, but the 
Internals manual for that object keeps referring to rests, notes. beams. stems, 
See, for example, the minimum-distance property. None of these, to my mind, 
have much to do with lyrics or hyphens. Has some text from another object 
wandered in here by mistake?


Yes and no.
I am afraid you are expecting too much of the Internals comments.
These comments are not handcrafted for each object's page.

https://lilypond.org/doc/v2.20/Documentation/notation/layout-properties
lists all of these properties, and the comments there (have to) serve 
for all the different situations in which these property names are used.


And there can be so many different situations, that no attempt is made 
to mention and describe all of them.  Keeps maintenance costs down.


Workarounds:
  - try guessing
  - search for usage examples
  - experiment
  - ask on this list
  - read the relevant source


Sorry.  At least we get these nice lists for each object/interface.


Cheers,
Robin



Re: Acciaccatura giving errors

2020-06-16 Thread Robin Bannister

Peter Toye wrote:

An acciaccatura is giving 14 "programming error: mis-predicted force" errors 
and corrupt layout. The former I can live with the latter I can't.


.
.

I've tried to produce an MWE, and one is appended, but it doesn't show the 
layout errors which for me are a complete show-stopper. It's a slightly out of 
date version of LilyPond


I see "mis-predicted force" with 2.19.80 and 2.19.83
but not with 2.19.84 or 2.20.0


Cheers,
Robin



Re: cello extended position fingering

2020-06-14 Thread Robin Bannister

Gleb Rogozinsky wrote:


I am the Lilypond beginner, switched from commercial software.


Are you familiar with the LilyPond Snippet Repository?
http://lsr.di.unimi.it/LSR/

Have a look at LSR 999
http://lsr.di.unimi.it/LSR/Item?id=999


Cheers,
Robin



  1   2   3   4   5   6   >