A contribution (was Re: snippet to properly align dynamics with expressive text)

2017-07-08 Thread Richard Shann
On Sat, 2017-07-08 at 08:42 +0200, Urs Liska wrote:
> 
[...]
> > I would be pleased to contribute this to openlilylib, but I have no idea
> > how! I've never contributed to a collaborative project like that before. How
> > would I go about this?
> [...] you can also take the file from
> Github (the files in this repository are mostly self-contained) and make
> updates to it locally.
> Then you can go to Github to "edit" the file, which you can do by simply
> overwriting the online version with your local one. Github will then
> automatically create a fork for you and open a pull request.

I was intrigued by this, as I have a patch to the figured bass formatter
that has been hanging around because the route to making contributions
that I knew about involved a virtual machine which I can't get working
on my current system. I discovered I had an account on GitHub so I
followed your instructions to create a new version of
scm/translation-functions.scm
which is here:

https://github.com/vec-perm/lilypond/blob/3fd3d89b9db0dbf4e99bdfbaca49634df7a167df/scm/translation-functions.scm


but it's not clear to me what if anything I have to do next...

Richard




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


Re: A contribution (was Re: snippet to properly align dynamics with expressive text)

2017-07-08 Thread Simon Albrecht

On 08.07.2017 15:49, Richard Shann wrote:

I was intrigued by this, as I have a patch to the figured bass formatter
that has been hanging around because the route to making contributions
that I knew about involved a virtual machine which I can't get working
on my current system.


The method Urs named is possible with openLilyLib, but not with the 
LilyPond source.  That
means you would have to get a VM to work, or install a Unix system in 
parallel – both a lot of
effort for one small patch obviously.  Or you just e-mail your patch to 
the devel list and ask for
someone to shepherd it through the review process and into the code base 
for you, which is done

from time to time.

Best, Simon

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


Re: Broken (?) snippets in openlilylib/snippets

2017-07-08 Thread Paul

On 07/06/2017 12:17 PM, Urs Liska wrote:


* notation-snippets.scale-vertical-spacing


This one is mine.
https://github.com/openlilylib/snippets/tree/master/notation-snippets/scale-vertical-spacing

Here is the problematic line 90 in definitions.ily:

  (paper (if (lilypond-less-than? "2.19.22")

It can be fixed by replacing it with:

  (paper (if (ly:version? < '(2 19 22))

and adding these two shims at the top of the file:

% borrowed from scm/lily-library.scm (added in LilyPond 2.19.57)
% can be removed when support for 2.18 is dropped

#(if (not (defined? 'lexicographic-list-compare?))
 (define (lexicographic-list-compare? op a b)
   "Lexicographically compare two lists @var{a} and @var{b} using
the operator @var{op}. The types of the list elements have to
be comparable with @var{op}. If the lists are of different length
the trailing elements of the longer list are ignored."
   (let* ((ca (car a))
  (iseql (op ca ca)))
 (let loop ((ca ca) (cb (car b)) (a (cdr a)) (b (cdr b)))
   (let ((axb (op ca cb)))
 (if (and (pair? a) (pair? b)
  (eq? axb iseql (op cb ca)))
 (loop (car a) (car b) (cdr a) (cdr b))
 axb))

#(if (not (defined? 'ly:version?))
 (define (ly:version? op ver)
   "Using the operator @var{op} compare the currently executed LilyPond
version with a given version @var{ver} which is passed as a list of
numbers."
   (lexicographic-list-compare? op (ly:version) ver)))


This fixes the snippet on LilyPond 2.19.41 (The most recent I have 
installed.)


Should I make a new branch and do a pull request for these changes, or...?

Cheers,
-Paul

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


Re: Broken (?) snippets in openlilylib/snippets

2017-07-08 Thread Paul

On 07/08/2017 02:03 PM, Paul wrote:

This fixes the snippet on LilyPond 2.19.41 (The most recent I have 
installed.)


Just installed LilyPond 2.19.63 and my fixed vertical spacing snippet 
works fine with it.


I realized that you (Urs) may have another approach in mind for 
detecting lilypond versions...  I don't really use OLL as a whole... so 
my previous email just had a fix for the standalone file for this snippet...


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