Hi Karl,

> My guess this is mainly for new lilypond users and users mostly
> used to Microsofts and/or Apples operating systems environment.

Correct.

More specifically (as I alluded to in our off-list conversation), there are two 
large groups of potential converts:

1. Composers who currently use one of the industry-standard apps (Finale, 
Sibelius, Dorico) but want more [control, extensibility, features, etc.] and 
have seen some Lilypond demos/output.

2. Students who want to learn an engraving app for the first time.

As you suggest, they are all computer-savvy, but 99% will have only used 
Windows or macOS (not Linux or other), and rarely if ever use any app that 
doesn’t have a GUI. Text entry of note-code will already be a “hurdle” for 
them; text entry for everything else (making and tweaking and styling the 
output, etc.) is an additional hurdle I’m hoping to help them avoid.

> Is this only for vocal music or should non-vocal instrument also
> be included ?

All music should eventually be included. It would be fabulous to be able to say

    \makeScore #’stringquartet #’(vlnI, vlnII, vla, vc)

and have a beautiful string quartet score pop out the other end.

> Somehow they have to be able to edit lilypond files and run
> lilypond, I cannot help with that.

Frescobaldi is fine as an app — that’s “GUI” enough for most of the people I’m 
thinking of. Given MIDI input and point-and-click navigation between score and 
code, building the note-code variables is pretty good. It’s the final score 
collation and formatting that this framework would “black box” for them.

> song.ly:
> \version "2.25.1"
> \header {
>  title = ""
>  composer = ""
>  poet = ""
>  arranger = ""
> }

Yes, this would be necessary.

> \paper {
>  #(set-paper-size "a4")
>  %#(set-paper-size "letter")
> }
> #(set-global-staff-size 16)

To my mind, this should all be set in the stylesheet file.

> chdSong = \chordmode {
> % edit below to change chords
> c1 c1 c1
> }
> musSong = {
> % edit below to change the melody
> \key c \major
> \time 4/4
> c'1 |
> c'1 |
> c'1 |
> }
> lyrSong = \lyricmode {
> % edit below to change the lyrics
> song lyr -- ics
> }

Yes.

> \include "lead_sheet_layout.ily"

Yes.

> lead_sheet_layout.ily:
> \version "2.25.1"
> 
> \score {
>  <<
>    \new ChordNames \chdSong
>    \new Staff \musSong
>    \new Lyrics \lyrSong
>>> 
> }
> 
> And the user edits the song.ly file and run lilypond to check the 
> result. In this case the user should not change the layout.ily file.

Yes, ultimately that’s the simplest v1 of what I’m talking about.  :)

But I don’t want users to be forced into predetermined variable names (e.g., 
chdSong); they should be able to name variables whatever they want, and the 
framework should handle it transparently. That’s why I suggested a [pseudocode] 
UI like

   \leadSheet #’(myMelody, myWords, myChords)

Thanks for your input so far!
I’ll work on mocking up an MWE this weekend so we can poke at something 
concrete.

Best,
Kieren.

__________________________________________________

My work day may look different than your work day. Please do not feel obligated 
to read or respond to this email outside of your normal working hours.


Reply via email to