Re: harmonyli.ly beta 0.91 released
On 11/11, David Wright wrote: > On Mon 11 Nov 2019 at 00:11:53 (-0800), ma...@masonhock.com wrote: > > Assuming that your architecture is amd64: > > > > $ wget > > http://ftp.us.debian.org/debian/pool/main/l/lilypond/lilypond_2.19.83-1~exp1_amd64.deb > > > > $ sudo dpkg -i lilypond_2.19.83-1~exp1_amd64.deb > > Add > http://ftp.us.debian.org/debian/pool/main/l/lilypond/lilypond-data_2.19.83-1~exp1_all.deb > to that. Good catch, thanks. > But the disadvantage of installing that way is that the distribution > only supports one version of LilyPond, and there are advantages to > being able to run more than one. > > If you download the program from lilypond.org, install with > $ bash …path-to/lilypond-2.19.83-1.linux-64.sh --prefix > lilypond-2.19.83-1.linux-64 > and run with lilypond-2.19.83-1.linux-64/bin/lilypond …, > you can have several versions available. Yes, this is probably the easiest way to install 2.19 without going through the package manager. Mason signature.asc Description: PGP signature
Re: harmonyli.ly beta 0.91 released
On Mon 11 Nov 2019 at 00:11:53 (-0800), ma...@masonhock.com wrote: > On 11/10, Karsten Reincke wrote: > > I've just tried to test your version. But it does not work, because my > > LilyPond version 2.18.2, offered by Ubuntu 19.10, does not contain a > > function \overlay. I have the hope, that the coming LTS Ubuntu version > > 20.04 will contain the newer 2.19.x - LilyPond. > > Ubuntu is based on snapshots of Debian's unstable branch. Lilypond > 2.19.83 is currently in Debian's experimental branch, but the unstable > branch has 2.18.2, and this will presumably remain the case until > Lilypond 2.20 is released. If Lilypond 2.20 is released in time to make > it into Debian unstable before Ubuntu freezes its package versions for > 20.04, then Lilypond 2.20 might be available in the next Ubuntu LTS, but > otherwise it will still have 2.18.2. The easiest way to install > Lilypond 2.19.83 on a Debian-based distro like Ubuntu is probably to > grab the deb from Debian experimental. > > Assuming that your architecture is amd64: > > $ wget > http://ftp.us.debian.org/debian/pool/main/l/lilypond/lilypond_2.19.83-1~exp1_amd64.deb > > $ sudo dpkg -i lilypond_2.19.83-1~exp1_amd64.deb Add http://ftp.us.debian.org/debian/pool/main/l/lilypond/lilypond-data_2.19.83-1~exp1_all.deb to that. But the disadvantage of installing that way is that the distribution only supports one version of LilyPond, and there are advantages to being able to run more than one. If you download the program from lilypond.org, install with $ bash …path-to/lilypond-2.19.83-1.linux-64.sh --prefix lilypond-2.19.83-1.linux-64 and run with lilypond-2.19.83-1.linux-64/bin/lilypond …, you can have several versions available. Cheers, David.
Re: harmonyli.ly beta 0.91 released
On 11/10, Karsten Reincke wrote: > I've just tried to test your version. But it does not work, because my > LilyPond version 2.18.2, offered by Ubuntu 19.10, does not contain a > function \overlay. I have the hope, that the coming LTS Ubuntu version > 20.04 will contain the newer 2.19.x - LilyPond. Ubuntu is based on snapshots of Debian's unstable branch. Lilypond 2.19.83 is currently in Debian's experimental branch, but the unstable branch has 2.18.2, and this will presumably remain the case until Lilypond 2.20 is released. If Lilypond 2.20 is released in time to make it into Debian unstable before Ubuntu freezes its package versions for 20.04, then Lilypond 2.20 might be available in the next Ubuntu LTS, but otherwise it will still have 2.18.2. The easiest way to install Lilypond 2.19.83 on a Debian-based distro like Ubuntu is probably to grab the deb from Debian experimental. Assuming that your architecture is amd64: $ wget http://ftp.us.debian.org/debian/pool/main/l/lilypond/lilypond_2.19.83-1~exp1_amd64.deb $ sudo dpkg -i lilypond_2.19.83-1~exp1_amd64.deb signature.asc Description: PGP signature
Re: harmonyli.ly beta 0.91 released
On Sun, 2019-11-10 at 16:20 -0700, Klaus Blum wrote: > Now I found it: > http://lsr.di.unimi.it/LSR/Item?id=628 > > I knew there was a snippet on the LSR where the \overlay function was > presented before it was an official part of 2.19 - but the snippet has > another name... ;-) oh wow! Then I could rewrite the presenting functions on the lowest level of harmonyli.ly by using the overlay and the translate commands. That seems to be a good method to fulfill Werner's requirements more easily than by using the current implementation. After having written the tutorial, I will play around with \overlay. BTW: Does anyone know, when the next stable LilyPond version 2.20 will come? I am afraid that (at least) Ubuntu will only integrate the stable version and this \overlay case is the next case where I feel the difference between my version and the version which you - the Lilypond developers - use. (Yes I know, I can install LilyPond manually. But I prefer to use standard distributions) whole-heartedly Karsten
Re: harmonyli.ly beta 0.91 released
Now I found it: http://lsr.di.unimi.it/LSR/Item?id=628 I knew there was a snippet on the LSR where the \overlay function was presented before it was an official part of 2.19 - but the snippet has another name... ;-) -- Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html
Re: harmonyli.ly beta 0.91 released
Hi Karsten, Karsten Reincke-2 wrote > I've just tried to test your version. But it does not work, because my > LilyPond > version 2.18.2, offered by Ubuntu 19.10, does not contain a function > \overlay. I > have the hope, that the coming LTS Ubuntu version 20.04 will contain the > newer > 2.19.x - LilyPond. I just searched the list archive and found that (limited to 2 arguments) it also works with \combine: % #(define-markup-command (double layout props letter) (markup?) (interpret-markup layout props #{ \markup{ \combine $letter \translate-scaled #'(0.4 . -0.4) $letter } #})) % Does that work in 2.18 as well? Cheers, Klaus -- Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html
Re: harmonyli.ly beta 0.91 released
On Sun, 2019-11-10 at 14:37 -0700, Klaus Blum wrote: > Hi Karsten, > > > Karsten Reincke-2 wrote > > 'crossout' and 'double' should increase the margin/paddding > > values of the crossed out / doubled letter. But I do not have any idea, > > how to do > > that on the 'Lilyond' - Level. So, any hint is appreciated. > > when I was writing the "double" function, I was heavily improvising because > I didn't yet know the \overlay command (or it was not available in older > LilyPond versions). > > A more reliable way would now be: > > % > #(define-markup-command (double layout props letter) >(markup?) >(interpret-markup layout props > #{ >\markup{ > \overlay { >$letter >\translate-scaled #'(0.4 . -0.4) >$letter > } >} > #})) > % > > The pair of numbers after \translate-scaled exactly defines the shift of the > additional letter. > If you don't want additional parameters for the "\double" function, maybe > the use of properties might be an option: > http://lilypond.org/doc/v2.18/Documentation/extending-big-page#on-properties > > I never tried that, but it looks interesting. > Does that help? > > Cheers, > Klaus > > > > -- > Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html > Dear Klaus; Many thanks for this proposal. It is ever better to use 'official' functions. I've just tried to test your version. But it does not work, because my LilyPond version 2.18.2, offered by Ubuntu 19.10, does not contain a function \overlay. I have the hope, that the coming LTS Ubuntu version 20.04 will contain the newer 2.19.x - LilyPond. But I have copied your new version into the source code as an out commented snippet and will publish it together with the next harmonyli.ly version. So, you should be able to test it easily. wbole-heartedly Karsten -- Karsten Reincke/\/\ (+49|0) 170 / 927 78 57 Im Braungeröll 31 >oo< mailto:k.rein...@fodina.de 60431 Frankfurt a.M. \/http://www.fodina.de/kr/
Re: harmonyli.ly beta 0.91 released
Hi Karsten, Karsten Reincke-2 wrote > 'crossout' and 'double' should increase the margin/paddding > values of the crossed out / doubled letter. But I do not have any idea, > how to do > that on the 'Lilyond' - Level. So, any hint is appreciated. when I was writing the "double" function, I was heavily improvising because I didn't yet know the \overlay command (or it was not available in older LilyPond versions). A more reliable way would now be: % #(define-markup-command (double layout props letter) (markup?) (interpret-markup layout props #{ \markup{ \overlay { $letter \translate-scaled #'(0.4 . -0.4) $letter } } #})) % The pair of numbers after \translate-scaled exactly defines the shift of the additional letter. If you don't want additional parameters for the "\double" function, maybe the use of properties might be an option: http://lilypond.org/doc/v2.18/Documentation/extending-big-page#on-properties I never tried that, but it looks interesting. Does that help? Cheers, Klaus -- Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html
Re: harmonyli.ly beta 0.91 released
On Sun, 2019-11-10 at 15:35 +0100, Werner LEMBERG wrote: > > I fixed the bug [that] Werner found. > > Thanks for that! Much better IMHO, but there is still room for > improvement :-) If the `D' has a diagonal slash through it, I suggest > that you move the left parenthesis a bit to the left. > > > Werner Yes, I think also that one (afterwards) can and should improve the apperances of the (composed) functional analysis symbols on the level of spacing, padding and margin. For the moment, I am happy to have a tool which can express what I need for my musicology work. As next step, I am going to write a tutorial concerning the expressivity of that tool. This probably will increase the number of users. And the more users one has the more feedback and requirements one gets. I know, you are not only a composer and pianist, but also a font-, LilyPond- and LaTeX-expert. Unfortunately, I am only a programmer, license expert and musicologist. So, it could be helpful if you take a look at the functions 'fhas', 'crossout' and 'double' and point to the modifications you would propose. For fulfilling your wish, 'crossout' and 'double' should increase the margin/paddding values of the crossed out / doubled letter. But I do not have any idea, how to do that on the 'Lilyond' - Level. So, any hint is appreciated. with best regards Karsten -- Karsten Reincke/\/\ (+49|0) 170 / 927 78 57 Im Braungeröll 31 >oo< mailto:k.rein...@fodina.de 60431 Frankfurt a.M. \/http://www.fodina.de/kr/
Re: harmonyli.ly beta 0.91 released
Am So., 10. Nov. 2019 um 14:32 Uhr schrieb Karsten Reincke : > I expanded the traditional System by two elements Ok, I wasn't sure whether it's your extension or I missed some newer developments. (The latter may have been true, I don't follow this topic closely.) Thanks, Harm
Re: harmonyli.ly beta 0.91 released
> I fixed the bug [that] Werner found. Thanks for that! Much better IMHO, but there is still room for improvement :-) If the `D' has a diagonal slash through it, I suggest that you move the left parenthesis a bit to the left. Werner
Re: harmonyli.ly beta 0.91 released
> > Hi, > > nice work. > Haven't tried to use it so far, but regarding the example-images, I > stumbled across things like: > "DD̸[A]->D̸[S(As)]" > Ofcourse decades passed since I learned functional analysis... But I > was told to write something like: > A: DD̸ > As: D̸[S] > I.e in a column. > Is the graphic you show how it's done nowadays or is due to coding-complexity? > > Cheers, > Harm Dear Harm; If one looks at the Functional Harmony Analysis Symbols (as they were invented by Riemann and De la Motte) as a modern computer linguist, then one has to state, that its expressivity is not as exact as it is necessary. One very simple example: Traditionally, intermediary symbols have to be embraced by brackets. The semantic of these tokens shall be, that the denoted function refers to the next coming chord / function instead to the tonal center: C-Dur: T (D) D (D7) D7 T = C D G D7 G7 T Very simple. But with this semantic one cannot express the often used deceptive cadence: If you see ae chord row C D e G D7 G7 C, then the sub row 'D e' is a traditional deceptive cadence. But the correspoding Function Analysis Subrow '(D) Dp' is by defintion wrong. For musical adequate analysis we must be able to speficy the context: C-Major: T (D[D]) Dp (D7) D7 T = C D e G D7 G7 C Another weakness of the existing 'analysis tradition' is, that modulations (= change of a tonal focus) can not be expressed. I expanded the traditional System by two elements to solve such musical requirements: (a) A Functional Analysis Symbol can be sub specified by the Focus to which it refers. Such focus are indicated by square brackets [ ]. The Focus can either be a keynote or a functional system. (B) Each modulation is constructed by a chord which dunction is reinterpreted with respect the next context. Such a link chord is indicated by an arrow and a box C-Major: T S [Sp=>t] s D D7 t = C F d g A A7 d I need this kind of expressivity for my own coming work. But if you do not need such elements, you are not enforced to use them. With best regards Karsten -- Karsten Reincke/\/\ (+49|0) 170 / 927 78 57 Im Braungeröll 31 >oo< mailto:k.rein...@fodina.de 60431 Frankfurt a.M. \/http://www.fodina.de/kr/
Re: harmonyli.ly beta 0.91 released
Am So., 10. Nov. 2019 um 13:14 Uhr schrieb Karsten Reincke : > > Dear friends; > > I've just published the release no 0.91 ( > https://github.com/kreincke/harmonyli.ly > ) of the library for integrating > Functional Harmony Analyse Symbols into a music score as it is used by > musicologists. > > A fixed the bug, Werner found. And I made the string between the Symbols and > the > opening reps. closing bracket condigurable which indicate an Intermediary > Function > / Chord . > > Any other test results and bug reports are welcome. > > with best regards Karsten > > -- > Karsten Reincke/\/\ (+49|0) 170 / 927 78 57 > Im Braungeröll 31 >oo< mailto:k.rein...@fodina.de > 60431 Frankfurt a.M. \/http://www.fodina.de/kr/ > > > Hi, nice work. Haven't tried to use it so far, but regarding the example-images, I stumbled across things like: "DD̸[A]->D̸[S(As)]" Ofcourse decades passed since I learned functional analysis... But I was told to write something like: A: DD̸ As: D̸[S] I.e in a column. Is the graphic you show how it's done nowadays or is due to coding-complexity? Cheers, Harm