Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-05-05 Thread Shane Brandes
That is indeed a clever way of manipulating the absolute mode good for
some things, but not terribly handy once you get into active keyboard
music as you would end up thinking like a drifting organ tuner.

Shane

On Mon, May 4, 2015 at 10:57 PM, Keith OHara k-ohara5...@oco.net wrote:
 Federico Bruni fedelogy at gmail.com writes:

 2015-04-23 9:21 GMT+02:00 Martin Tarenskeen m.tarenskeen at zonnet.nl:

 I often use LilyPond to quickly enter a very simple tune or small
 pianosheet needing just a simple texteditor (Vim). I use \relative all the
 time. c g c e g is soo much faster and easier than c''' g'' c''' e''' g'''
 g'''.
 And personally I find lilypond code in \relative mode easier to read.
 I agree that for complex scores with much music in variables \relative mode
 can have annoying side-effects.

 I agree: relative mode is much easier to enter.

 What if we compare relative mode to absolute mode with repeated 's removed?

 Is
   \relative c''' { c g c e g }
 easier than
   \transpose c c''' { c g, c e g}
 ?

 I find it easier to remember that a note is below the middle octave in
 the range of an instrument, than to remember whether the previous note was
 more than three scale-steps away.

 We can easily define a shorter way to express the transposition by octaves
   \absolute c''' { c g, c e g }
 and it is not too hard to change the 460 examples in the manual that have
 an implicit \relative c' {} or relative c'' {} to copy/paste-able music.


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

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-05-05 Thread Steve Lacy
+1 to Keith's idea.

In fact, I remember first learning about \relative and being *amazed* that
it didn't work as described.

I'm mostly transcribing/re-engraving for solo violin, and most pieces stay
within a small 2-octave range.  The \relative c'''{ ...} syntax was exactly
what I wanted.

Steve

On Mon, May 4, 2015 at 7:57 PM, Keith OHara k-ohara5...@oco.net wrote:

 Federico Bruni fedelogy at gmail.com writes:

  2015-04-23 9:21 GMT+02:00 Martin Tarenskeen m.tarenskeen at zonnet.nl
 :
 
  I often use LilyPond to quickly enter a very simple tune or small
 pianosheet needing just a simple texteditor (Vim). I use \relative all the
 time. c g c e g is soo much faster and easier than c''' g'' c''' e''' g'''
 g'''.
  And personally I find lilypond code in \relative mode easier to read.
  I agree that for complex scores with much music in variables \relative
 mode
 can have annoying side-effects.
 
  I agree: relative mode is much easier to enter.

 What if we compare relative mode to absolute mode with repeated 's removed?

 Is
   \relative c''' { c g c e g }
 easier than
   \transpose c c''' { c g, c e g}
 ?

 I find it easier to remember that a note is below the middle octave in
 the range of an instrument, than to remember whether the previous note was
 more than three scale-steps away.

 We can easily define a shorter way to express the transposition by octaves
   \absolute c''' { c g, c e g }
 and it is not too hard to change the 460 examples in the manual that have
 an implicit \relative c' {} or relative c'' {} to copy/paste-able music.


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

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-05-04 Thread Keith OHara
Federico Bruni fedelogy at gmail.com writes:

 2015-04-23 9:21 GMT+02:00 Martin Tarenskeen m.tarenskeen at zonnet.nl:
 
 I often use LilyPond to quickly enter a very simple tune or small 
pianosheet needing just a simple texteditor (Vim). I use \relative all the 
time. c g c e g is soo much faster and easier than c''' g'' c''' e''' g''' 
g'''.
 And personally I find lilypond code in \relative mode easier to read.
 I agree that for complex scores with much music in variables \relative mode 
can have annoying side-effects.
 
 I agree: relative mode is much easier to enter.

What if we compare relative mode to absolute mode with repeated 's removed?

Is  
  \relative c''' { c g c e g }
easier than
  \transpose c c''' { c g, c e g}
?

I find it easier to remember that a note is below the middle octave in 
the range of an instrument, than to remember whether the previous note was
more than three scale-steps away.

We can easily define a shorter way to express the transposition by octaves
  \absolute c''' { c g, c e g }
and it is not too hard to change the 460 examples in the manual that have
an implicit \relative c' {} or relative c'' {} to copy/paste-able music.


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-27 Thread ArnoldTheresius
Hello Urs

Urs Liska wrote
 ...

 Another important topic for commercial users may be the management
 of the source code for all PDFs (and other output).
 
 What do you mean here?
 
 And finally multiple people may have to working parallel on the same
 score.
 
 This is something that is already working absolutely great with LilyPond 
 scores.
 
 Urs
 
 ...

I just think on my 'huge score'. 24 pieces (movements) originally published
with
'Piano Direction' istead of a score, I put the 17 parts (including the
'piano direction'
and 'piano solo' together to a score. Per instrument each piece a single
soucre file,
one compilable LY per each combination (piece and instrument, as well as
'score
of a single piece') for the 'editing workflow', and one compilable LY per
each
instrument part, transposed alternative instrument part and score (all 24
pieces)
for the 'publishing workflow', some common includes (e.g. Title of the
pieces) did
result in more than 900 LY files.
I can imagine, if ten persons are working parallel to make such an edition
avalible
in a short time, it's not a good idea to just save the file on a comon
shared folder,
with the danger to overwrite a file a colleague had modified and saved just
a short
time before.
Well, I admit, in CAD usage the reuse of existing objects is much more
complex.


Urs Liska wrote
 Compared to the CAD software, Lilypond is missing (around it's kernel):
 - a graphical user interface (GUI) to enter/edit the source (with a
 simplified graphical representation of the music notes)
 
 I'm not clear what you mean here, but in any case this too is an issue 
 for the IDE.
 Frescobaldi provides the Quick Insert panel. You can select multiple 
 notes in the input file or the music view and then apply e.g. staccato 
 to all notes at once.
 
 On my way-too-long wish/todo list is an object inspector/editor for 
 Frescobaldi, which should basically be rather straightforward to 
 implement. This panel would be aware of the grob the cursor is currently 
 in (or the grob that has been selected in the Music View) and then show 
 all available properties that can be tweaked for that element (actually 
 Frescobaldi already knows about these properties which it uses for 
 autocompletion). Then there should be convenient ways to edit values in 
 that dialog.
 
 - automatic source code update to new versions (from open file to
 file loaded into the RAM of the editor)
 
 Is this really important? I'd be scared when my editor does that 
 automatically.
 
 - point-and-click positions have idenpendent IDs, which are stable during
 editing the source (e.g. if you edit the LY files and insert a line)
 
 Frescobaldi does that.
 
 ...

My observation on CAD usage is, approx. 3 % of the users are going to
use features which are similar to programmng.
The remaining 97 % use the GUI only and avoid using such features,
they have to think as a programmer.
I hope, for music notation users this ratio is better, but I don't believe
it'll reach 20 %.
So, a good GUI editor for LY files could increase the acceptance of the
users a lot.
And it's an important question for such a GUI, how versions updates
will be handled - but this also depends on your file managment (will you
save the history in the editing process?)
What's to expect if you restart editing a 20 years old publication? Can only
the guru process all required updated, or is the work of the guru
limited
to fix the remaining problems (by using an utf8 text file editor) only?

IMHO, the publishing companies would prefer a complete suite of
lilypond (the kernel), 
an editing GUI (for user acceptance)
and file management (recommended at least for cooperation of multiple users)


ArnoldTheresius



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Do-we-really-offer-the-future-tp174675p175458.html
Sent from the User mailing list archive at Nabble.com.

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-27 Thread Urs Liska



Am 27.04.2015 um 10:35 schrieb ArnoldTheresius:

Hello Urs

Urs Liska wrote

...

Another important topic for commercial users may be the management
of the source code for all PDFs (and other output).

What do you mean here?


And finally multiple people may have to working parallel on the same
score.

This is something that is already working absolutely great with LilyPond
scores.

Urs

...

I just think on my 'huge score'. 24 pieces (movements) originally published
with
'Piano Direction' istead of a score, I put the 17 parts (including the
'piano direction'
and 'piano solo' together to a score. Per instrument each piece a single
soucre file,
one compilable LY per each combination (piece and instrument, as well as
'score
of a single piece') for the 'editing workflow', and one compilable LY per
each
instrument part, transposed alternative instrument part and score (all 24
pieces)
for the 'publishing workflow', some common includes (e.g. Title of the
pieces) did
result in more than 900 LY files.
I can imagine, if ten persons are working parallel to make such an edition
avalible
in a short time, it's not a good idea to just save the file on a comon
shared folder,
with the danger to overwrite a file a colleague had modified and saved just
a short
time before.


This is true. So I would *never* suggest working on a substantial 
project on a shared drive. But your situation is already *fr* betten 
than if you'd have binary/graphical documents.
If you are going to collaborate you should definitely use a version 
control system such as Git (or any other). And then you can benefit to 
100% from the text based file format, and this is where my comment about 
working absolutely great is targeting at.
Maybe you didn't see 
http://lilypondblog.org/category/productions/das-trunkne-lied/ and 
particularly http://lilypondblog.org/2014/10/segmented-workflows/, where 
I describe exactly such a project. I have just asked my terminal to 
count the .ly/.ily files in the project directory, and the answer was 2917.

We have used the collaborative approach with huge success so far.


Well, I admit, in CAD usage the reuse of existing objects is much more
complex.


Urs Liska wrote

Compared to the CAD software, Lilypond is missing (around it's kernel):
- a graphical user interface (GUI) to enter/edit the source (with a
simplified graphical representation of the music notes)

I'm not clear what you mean here, but in any case this too is an issue
for the IDE.
Frescobaldi provides the Quick Insert panel. You can select multiple
notes in the input file or the music view and then apply e.g. staccato
to all notes at once.

On my way-too-long wish/todo list is an object inspector/editor for
Frescobaldi, which should basically be rather straightforward to
implement. This panel would be aware of the grob the cursor is currently
in (or the grob that has been selected in the Music View) and then show
all available properties that can be tweaked for that element (actually
Frescobaldi already knows about these properties which it uses for
autocompletion). Then there should be convenient ways to edit values in
that dialog.


- automatic source code update to new versions (from open file to
file loaded into the RAM of the editor)

Is this really important? I'd be scared when my editor does that
automatically.


- point-and-click positions have idenpendent IDs, which are stable during
editing the source (e.g. if you edit the LY files and insert a line)

Frescobaldi does that.

...

My observation on CAD usage is, approx. 3 % of the users are going to
use features which are similar to programmng.
The remaining 97 % use the GUI only and avoid using such features,
they have to think as a programmer.
I hope, for music notation users this ratio is better, but I don't believe
it'll reach 20 %.
So, a good GUI editor for LY files could increase the acceptance of the
users a lot.
And it's an important question for such a GUI, how versions updates
will be handled - but this also depends on your file managment (will you
save the history in the editing process?)
What's to expect if you restart editing a 20 years old publication? Can only
the guru process all required updated, or is the work of the guru
limited
to fix the remaining problems (by using an utf8 text file editor) only?


Well, I have the impression you should have a look at
http://lilypondblog.org/tag/version-control/
;-)


IMHO, the publishing companies would prefer a complete suite of
lilypond (the kernel),
an editing GUI (for user acceptance)
and file management (recommended at least for cooperation of multiple users)


Actually that's what I have in mind: LilyPond, Frescobaldi, Git (with 
either GitHub or a self-installed GitLab).
As it's a suite it requires to set up a few things in line, which could 
still be simplified by either creating a setup program that installs 
the necessary things and guides the user through the setup of personal 
things like accounts.
But OTOH I'm not 

Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-27 Thread Federico Bruni
2015-04-25 19:17 GMT+02:00 Martin Tarenskeen m.tarensk...@zonnet.nl:

 It should be mentioned that Frescobaldi creates converts

 {c'' d'' e'' f'' g''}

 to old style \relative syntax like:

 \relative c'' {c d e f g}

 instead of the new syntax I like to use these days:

 \relative {c'' d e f g}


I've added a request here:
https://github.com/wbsoft/frescobaldi/issues/682
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Johan Vromans
On Sun, 26 Apr 2015 05:52:04 + (UTC)
Keith OHara k-ohara5...@oco.net wrote:

 I wish the manual did not use the implicit \relative c'' {} 
 (sometimes \relative c' {} ) enclosing the examples.  As soon as
 the input gets complicated, \relative becomes difficult to figure out.

I've always considered \relative as an operation that should be applied as
close to the actual notes as possible. This gives the least suprises, if
any.

  \relative c'' {
\new PianoStaff 
  \new Staff { \time 2/4 c4 e | g g, | }
  \new Staff { \clef bass c,,4 c' | e c | }

  }

This is, indeed, asking for problems...

  \new PianoStaff 
\new Staff { \time 2/4\relative c'' { c4 e | g g, } | }
\new Staff { \clef bass \relative c,, { c4 c' | e c } | }
  

-- Johan

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Peter Bjuhr



On 2015-04-26 15:13, Simon Albrecht wrote:

If this is so easy for frescobaldi to have this converter
relative2absolute, and so usefull to have input files in absolute, why
not implant

(implement)

  a commandline option to lily that would convert the
relative blocks founds to absolute?

Lilypond is intended for evaluating code, not for altering it.
It’s perfectly fine to leave this tool for user interface software 
like Frescobaldi or Denemo. 


The relative2absolute tool used by Frescobaldi and other useful stuff 
actually is available from the commandline (but not as a part of 
LilyPond of course) since a while back.


https://pypi.python.org/pypi/python-ly

Best
Peter

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Noeck
 Il 26/04/15 09.58, Johan Vromans ha scritto:
 I've always considered \relative as an operation that should be
 applied as
 close to the actual notes as possible. This gives the least suprises, if
 any.

\relative c'' {
  \new PianoStaff 
\new Staff { \time 2/4 c4 e | g g, | }
\new Staff { \clef bass c,,4 c' | e c | }
  
}

 This is, indeed, asking for problems...

\new PianoStaff 
  \new Staff { \time 2/4\relative c'' { c4 e | g g, } | }
  \new Staff { \clef bass \relative c,, { c4 c' | e c } | }

 
 Did you invert your examples?

I think the comment This is, indeed, asking for problems... was
related to the example above (the first one), meaning this first example
is asking for problems and the second one is better (however not
commented explicitly).

Joram

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Gilles

On Sun, 26 Apr 2015 09:58:33 +0200, Johan Vromans wrote:

On Sun, 26 Apr 2015 05:52:04 + (UTC)
Keith OHara k-ohara5...@oco.net wrote:


I wish the manual did not use the implicit \relative c'' {}
(sometimes \relative c' {} ) enclosing the examples.  As soon as
the input gets complicated, \relative becomes difficult to figure 
out.


I've always considered \relative as an operation that should be 
applied as
close to the actual notes as possible. This gives the least suprises, 
if

any.

  \relative c'' {
\new PianoStaff 
  \new Staff { \time 2/4 c4 e | g g, | }
  \new Staff { \clef bass c,,4 c' | e c | }

  }

This is, indeed, asking for problems...


I totally agree.
This kind of forgiveness from the LilyPond parser allows for
the ultimate bad practice of inextricably mixing typographical
information with musical information.

I fully understand and admit that the learning and notation
manual want to present self-contained examples (so that the
linked LilyPond code can readily compile), but I'm advocating
that readers should be made aware that it is only intended for
illustrating specific aspects of notation and that it should
not be done for any project for which maintainance is a concern.
[Some of the templates are complete counter-examples for this
aspect of best practices. The templates sections should probably
show an image of the intended output but link to zip file
containing the skeleton of a real project (possibly with a
README file).]

One should strive to separate editorial and musical information
to the utmost that LilyPond permits, not take advantage that
LilyPond allows for obfuscated code!


Best regards,
Gilles


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Simon Albrecht

Am 26.04.2015 um 14:37 schrieb Ali Cuota:

Hello,

If this is so easy for frescobaldi to have this converter
relative2absolute, and so usefull to have input files in absolute, why
not implant

(implement)

  a commandline option to lily that would convert the
relative blocks founds to absolute?

Lilypond is intended for evaluating code, not for altering it.
It’s perfectly fine to leave this tool for user interface software like 
Frescobaldi or Denemo.


Yours, Simon

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Ali Cuota
Hello,

If this is so easy for frescobaldi to have this converter
relative2absolute, and so usefull to have input files in absolute, why
not implant a commandline option to lily that would convert the
relatibe blocks founds to absolute?

Francois

2015-04-26 5:12 GMT-05:00, Gilles gil...@harfang.homelinux.org:
 On Sun, 26 Apr 2015 09:58:33 +0200, Johan Vromans wrote:
 On Sun, 26 Apr 2015 05:52:04 + (UTC)
 Keith OHara k-ohara5...@oco.net wrote:

 I wish the manual did not use the implicit \relative c'' {}
 (sometimes \relative c' {} ) enclosing the examples.  As soon as
 the input gets complicated, \relative becomes difficult to figure
 out.

 I've always considered \relative as an operation that should be
 applied as
 close to the actual notes as possible. This gives the least suprises,
 if
 any.

   \relative c'' {
 \new PianoStaff 
   \new Staff { \time 2/4 c4 e | g g, | }
   \new Staff { \clef bass c,,4 c' | e c | }
 
   }

 This is, indeed, asking for problems...

 I totally agree.
 This kind of forgiveness from the LilyPond parser allows for
 the ultimate bad practice of inextricably mixing typographical
 information with musical information.

 I fully understand and admit that the learning and notation
 manual want to present self-contained examples (so that the
 linked LilyPond code can readily compile), but I'm advocating
 that readers should be made aware that it is only intended for
 illustrating specific aspects of notation and that it should
 not be done for any project for which maintainance is a concern.
 [Some of the templates are complete counter-examples for this
 aspect of best practices. The templates sections should probably
 show an image of the intended output but link to zip file
 containing the skeleton of a real project (possibly with a
 README file).]

 One should strive to separate editorial and musical information
 to the utmost that LilyPond permits, not take advantage that
 LilyPond allows for obfuscated code!


 Best regards,
 Gilles


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


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Davide Liessi

Dear Johan,

Il 26/04/15 09.58, Johan Vromans ha scritto:

I've always considered \relative as an operation that should be applied as
close to the actual notes as possible. This gives the least suprises, if
any.

   \relative c'' {
 \new PianoStaff 
   \new Staff { \time 2/4 c4 e | g g, | }
   \new Staff { \clef bass c,,4 c' | e c | }
 
   }

This is, indeed, asking for problems...

   \new PianoStaff 
 \new Staff { \time 2/4\relative c'' { c4 e | g g, } | }
 \new Staff { \clef bass \relative c,, { c4 c' | e c } | }
   


Did you invert your examples?
Actually \relative is applied closer to the notes in your second 
example, which I think is clearer.
Indeed in my files I use \relative like in your second example and I 
always advise people to do the same.


Best wishes.
Davide

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-26 Thread Stephen MacNeil
it looks like you shortened \transpose not \relative but i like it I may
use it thanks

Stephen


octave =

#(define-music-function

(parser location octaves music)

(integer? ly:music?)

(_i Raise or lower @var{music} by a nubmer of @var{octaves}.)

(make-music 'TransposedMusic

'element (ly:music-transpose music (ly:make-pitch octaves 0 0


%{\relative c'' {

\new PianoStaff 

\new Staff { \time 2/4 c4 e | g g, | }

\new Staff { \clef bass c,,4 c' | e c | }  }


%where it could have


 \new PianoStaff 

\new Staff \octave 2 { \time 2/4 c4 e | g g, | }

\new Staff \octave 1 { \clef bass c,4 c | e c | } 

%}


%%

%% as transpose

\new PianoStaff 

\new Staff \transpose c c''{ \time 2/4 c4^as transpose e | g g, | }

\new Staff \transpose c c' { \clef bass c,4 c | e c | } 


%% \relative extended

top = \relative c'' {\time 2/4 c4^\relative extended e | g g, | c4 e | g
g, | }

bottom = \relative c {c,4 c' | e c | c,4 c' | e c | }

\new PianoStaff



\new Staff {\top}

\new Staff {\clef bass\transpose c c'\bottom}




%% absolute vesion

top = {\time 2/4 c4^absolute vesion e | g g, | c4 e | g g, |}

bottom = {\clef bass c,4 c | e c | c,4 c | e c |}

\new PianoStaff



\new Staff {\transpose c c''\top}

\new Staff {\clef bass\transpose c c'\bottom}




%% \relative doesn't realy work for relative

top = \octave 2 {\time 2/4 c4^doesn't realy work for octave as relative e
| g g, | c4 e | g g, | }

bottom = \octave 1 {c,4 c' | e c | c,4 c' | e c | }

\new PianoStaff



\new Staff {\top}

\new Staff {\clef bass \bottom}




% \relative -- for \transpose it does in \relative and
absolute

top = \relative c {\time 2/4 c4^\relative -- for transpose it works e | g
g, | c4 e | g g, |}

bottom = \relative c {c,4 c' | e c | c,4 c' | e c | }

\new PianoStaff



\new Staff {\octave 2 \top}

\new Staff {\clef bass\octave 1 \bottom}




%% absolute as \transpose

top = {\time 2/4 c4^absolute version - works e | g g, | c4 e | g g, |}

bottom = {\clef bass c,4 c | e c | c,4 c | e c |}

\new PianoStaff



\new Staff {\octave 2 \top}

\new Staff {\clef bass \octave 1 \bottom}


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Noeck
Hi,

I didn't want to enter the absolute/relative discussion, but
now I have to add one advantage when entering notes in the relative mode:
In case of a wrong , or ' (or missing) all following notes are in the
wrong octave and I am more likely to spot the error.

Cheers,
Joram

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Martin Tarenskeen


On Sat, 25 Apr 2015, Ali Cuota wrote:


 Hello,

 solution is in the editors functionalities. If, let say Frescobaldi,
 would offer a preprocessor to translate a block from relative to
 absolute, this would be done. Relative is easy to write, absolute easy
 to read, so why choose? Both is better...


Frescobaldi already offers a tool to convert relative to absolute, and absolute 
to relative :-)


It should be mentioned that Frescobaldi creates converts

{c'' d'' e'' f'' g''}

to old style \relative syntax like:

\relative c'' {c d e f g}

instead of the new syntax I like to use these days:

\relative {c'' d e f g}

For relative to absolute conversion Frescobaldi can handle both.

--

MT

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread bobr...@centrum.is
Ali,

Frescobaldi does, in fact, offer the capability of changing LilyPond input code 
between absolute and relative in EITHER direction.

-David

- Original Message -
 From: Ali Cuota alicuota...@gmail.com
 To: Simon Albrecht simon.albre...@mail.de
 Cc: lilypond-user@gnu.org
 Sent: Saturday, April 25, 2015 4:12:20 PM
 Subject: Re: What is the problem with \relative? (Was: Do we really offer   
 the future?)
 
 Hello,
 
 I am only a user and very thankfull, both for ly and for relative. I
 would have had really thought much longer about ly if relative had not
 be available. Now, I understand the pro of absolute, and I think the
 solution is in the editors functionalities. If, let say Frescobaldi,
 would offer a preprocessor to translate a block from relative to
 absolute, this would be done. Relative is easy to write, absolute easy
 to read, so why choose? Both is better...
 
 Cheers,
 
 Francois
 
 2015-04-25 5:34 GMT-05:00, Simon Albrecht simon.albre...@mail.de:
  Am 25.04.2015 um 00:38 schrieb Thomas Morley:
  Hi all,
 
  I'm a little late to the party...
 
  One very annoying thing about \relative is when you want to use
  music-functions catching some music doing something with it.
 
  Here the less complex function I could think of, returning different
  results for absolute and relative.
  (It's only a show-case, the functionality could be achieved easily
  with other predefined commands, but I hope you'll get the point.)
 
  repeat-note =
  #(define-music-function (parser location music)(ly:music?)
 (make-sequential-music (list music (ly:music-deep-copy music
 
  \absolute { c'1 \repeat-note c'' }
  \relative c' { c \repeat-note c'1 }
  Well, either we require doing
 
  \version 2.19.17
 
  repeat-abs-note =
  #(define-music-function (parser location music)(ly:music?)
  (let ((music #{ \absolute $music #}))
(make-sequential-music (list music (ly:music-deep-copy music)
 
  \absolute { c'1 \repeat-abs-note c'' }
  \relative c' { c \repeat-abs-note c''1 }
 
  or we consider this a bug in (or enhancement request to)
  (ly:music-deep-copy), towards which I’m inclined.
 
  Yours, Simon
 
  ___
  lilypond-user mailing list
  lilypond-user@gnu.org
  https://lists.gnu.org/mailman/listinfo/lilypond-user
 
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Ali Cuota
Thanks, just found it. I will consider it for my future works.

Francois

2015-04-25 13:08 GMT-05:00, Noeck noeck.marb...@gmx.de:
 Hi,

 I didn't want to enter the absolute/relative discussion, but
 now I have to add one advantage when entering notes in the relative mode:
 In case of a wrong , or ' (or missing) all following notes are in the
 wrong octave and I am more likely to spot the error.

 Cheers,
 Joram

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


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Keith OHara
Martin Tarenskeen m.tarenskeen at zonnet.nl writes:

 I often use LilyPond to quickly enter a very simple tune or 
 small pianosheet needing just a simple texteditor (Vim). I use \relative 
 all the time. c g c e g is soo much faster and easier than c''' g'' 
 c''' e''' g''' g'''.

If there were a version of \transpose c c'' that was a short as \relative,

  \relative c'' { c g c e g }
  \octave 2 { c g, c e g }

then the \relative method is not any shorter.
The second line lets me see that the Gs are in different octaves.


 And personally I find lilypond code in \relative mode easier to read.
 
 I agree that for complex scores with much music in variables \relative 
 mode can have annoying side-effects.
 

I wish the manual did not use the implicit \relative c'' {} 
(sometimes \relative c' {} ) enclosing the examples.  As soon as
the input gets complicated, \relative becomes difficult to figure out.
Learning Manual 2.2.3 has

  \relative c'' {
\new PianoStaff 
  \new Staff { \time 2/4 c4 e | g g, | }
  \new Staff { \clef bass c,,4 c' | e c | } }

where it could have

  \new PianoStaff 
\new Staff \octave 2 { \time 2/4 c4 e | g g, | }
\new Staff \octave 1 { \clef bass c,4 c | e c | } 

if there was a function

octave = 
#(define-music-function
  (parser location octaves music)
  (integer? ly:music?)
  (_i Raise or lower @var{music} by a nubmer of @var{octaves}.)
(make-music 'TransposedMusic
  'element (ly:music-transpose music (ly:make-pitch octaves 0 0


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Simon Albrecht

Am 25.04.2015 um 00:38 schrieb Thomas Morley:

Hi all,

I'm a little late to the party...

One very annoying thing about \relative is when you want to use
music-functions catching some music doing something with it.

Here the less complex function I could think of, returning different
results for absolute and relative.
(It's only a show-case, the functionality could be achieved easily
with other predefined commands, but I hope you'll get the point.)

repeat-note =
#(define-music-function (parser location music)(ly:music?)
   (make-sequential-music (list music (ly:music-deep-copy music

\absolute { c'1 \repeat-note c'' }
\relative c' { c \repeat-note c'1 }

Well, either we require doing

\version 2.19.17

repeat-abs-note =
#(define-music-function (parser location music)(ly:music?)
   (let ((music #{ \absolute $music #}))
 (make-sequential-music (list music (ly:music-deep-copy music)

\absolute { c'1 \repeat-abs-note c'' }
\relative c' { c \repeat-abs-note c''1 }

or we consider this a bug in (or enhancement request to) 
(ly:music-deep-copy), towards which I’m inclined.


Yours, Simon

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Johan Vromans
On Sat, 25 Apr 2015 00:38:02 +0200
Thomas Morley thomasmorle...@gmail.com wrote:

 repeat-note =
 #(define-music-function (parser location music)(ly:music?)
   (make-sequential-music (list music (ly:music-deep-copy music
 
 \absolute { c'1 \repeat-note c'' }
 \relative c' { c \repeat-note c'1 }

So?

\repeat-note does macro expansion, so I'm inclined to say this is a feature.

-- Johan

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-25 Thread Ali Cuota
Hello,

I am only a user and very thankfull, both for ly and for relative. I
would have had really thought much longer about ly if relative had not
be available. Now, I understand the pro of absolute, and I think the
solution is in the editors functionalities. If, let say Frescobaldi,
would offer a preprocessor to translate a block from relative to
absolute, this would be done. Relative is easy to write, absolute easy
to read, so why choose? Both is better...

Cheers,

Francois

2015-04-25 5:34 GMT-05:00, Simon Albrecht simon.albre...@mail.de:
 Am 25.04.2015 um 00:38 schrieb Thomas Morley:
 Hi all,

 I'm a little late to the party...

 One very annoying thing about \relative is when you want to use
 music-functions catching some music doing something with it.

 Here the less complex function I could think of, returning different
 results for absolute and relative.
 (It's only a show-case, the functionality could be achieved easily
 with other predefined commands, but I hope you'll get the point.)

 repeat-note =
 #(define-music-function (parser location music)(ly:music?)
(make-sequential-music (list music (ly:music-deep-copy music

 \absolute { c'1 \repeat-note c'' }
 \relative c' { c \repeat-note c'1 }
 Well, either we require doing

 \version 2.19.17

 repeat-abs-note =
 #(define-music-function (parser location music)(ly:music?)
 (let ((music #{ \absolute $music #}))
   (make-sequential-music (list music (ly:music-deep-copy music)

 \absolute { c'1 \repeat-abs-note c'' }
 \relative c' { c \repeat-abs-note c''1 }

 or we consider this a bug in (or enhancement request to)
 (ly:music-deep-copy), towards which I’m inclined.

 Yours, Simon

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


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-24 Thread Simon Albrecht

Am 24.04.2015 um 00:58 schrieb Wols Lists:

And then in English we get thoroughly confused, because an American
whole note is an English semibreve or, literally, half note. And we
don't use numbers either, we have semibreve, minim, crotchet, quaver,
semiquaver, demisemiquaver, hemidemisemiquaver, dunno what the next one
is.

‘semihemidemisemiquaver’ and ‘demisemihemidemisemiquaver’ :-)
See 
http://lilypond.org/doc/v2.19/Documentation/music-glossary/duration-names-notes-and-rests.

And those last three are a half note, half a half note, and half a
half a half note! :-)

You mean half a quaver, etc.


At the end of the day, Vive La Difference!

Bien sûr!
Cheers, Simon

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-24 Thread Kieren MacMillan
Hi Harm,

 One very annoying thing about \relative is when you want to use
 music-functions catching some music doing something with it.
 Here the less complex function I could think of, returning different
 results for absolute and relative.

Yes — another good reason I avoid \relative mode.  =)

Thanks,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-24 Thread Thomas Morley
2015-04-23 3:41 GMT+02:00 Kieren MacMillan kieren_macmil...@sympatico.ca:
 Hi Gilles,

 deprecate \relative, which I now avoid like the plague.
 Why?

 1. It doesn’t play well with reuse: both trivial reuse (i.e., cut-and-paste) 
 and more advanced (i.e., referenced in variables) require extra care at the 
 very least, and outright extra work (e.g., octave checks, transposition, 
 etc.) in most cases. This means that sharing bits of music either within a 
 file/piece or between files/pieces (or even between users) requires extra 
 work and is error-prone.


 2. It makes what should be simple adjustments unnecessarily complicated, with 
 unnecessarily large impacts. Consider, as just one example, my paired 
 functions

 split =
 #(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  { \voiceOne $music1 }
  \context Voice = 2 { \voiceTwo $music2 }
\oneVoice
#})

 splitLU =
 #(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  { \voiceTwo $music1 }
  \context Voice = 2 { \voiceOne $music2 }
\oneVoice
#})

 These (and their 3- and 4-voice counterparts) are workhorses in my code, 
 saving me endless amounts of typing constructs like

  { \voiceOne foo } \new Voice { \voiceTwo bar }  \oneVoice

 every time I simply want a short polyphonic section. I could hardly begin to 
 do efficient engraving work without them. Now consider the effect of 
 switching, in relative mode, from

b4 \split { a4 } { c,4 }

 to

b4 \splitLU { c,4 } { a4 }

 Because relative mode “leaves from” whatever pitch comes immediately before 
 it, the first example would output the b followed by a sixth “chord 
 immediately below it (i.e., with the a on top, sitting a second below the b), 
 whereas the second example would output the b followed by a third [!!] 
 “chord (i.e., with the c, on top, sitting a seventh below the b). In 
 absolute mode, I am free to choose either function (and each is necessary!) 
 at will, without worrying that the choice may mess up the outputted pitches.

 This same sort of relative shifting happens when you want to switch the order 
 of notes as given in a chord, e.g. c g’ b outputs a different chord than c 
 b g’.


 3. Many single edits suddenly require two (or more) edits as a result solely 
 of relative mode. For example, let’s say you have

 \relative c’ { c d e a }

 and you want to change the e to d. Now you must also add an apostrophe to the 
 a, to compensate for the relative octave adjustment:

 \relative c’ { c d d a’ }

 wasting effort and brainpower (if you even remember to do it the first time, 
 rather than compiling before finding the error).


 These are only three of the problems. Worst of all, having it is a false 
 economy: it’s not actually intuitive for everyone (though it is for me, and 
 was right away), as a quick search of the archives will turn up many newbies 
 complaining about “how hard it is to remember when to use , and when to use ‘ 
 and when to use nothing”.

 Yes, it’s a little more work during initial entry of some music to add the 
 correct octavation to the pitches. But the majority of pitches I enter fall 
 between c, and b’’, so the difference (if any) is minimal. And of course 
 there are many patterns which require *more* octavation typing in relative 
 mode than absolute, so in those cases absolute mode saves keystrokes.

 Hope this helps explain why I don’t use \relative any more, and tell most 
 newbies I know to avoid it.

 Cheers,
 Kieren.

 

 Kieren MacMillan, composer
 ‣ website: www.kierenmacmillan.info
 ‣ email: i...@kierenmacmillan.info




Hi all,

I'm a little late to the party...

One very annoying thing about \relative is when you want to use
music-functions catching some music doing something with it.

Here the less complex function I could think of, returning different
results for absolute and relative.
(It's only a show-case, the functionality could be achieved easily
with other predefined commands, but I hope you'll get the point.)

repeat-note =
#(define-music-function (parser location music)(ly:music?)
  (make-sequential-music (list music (ly:music-deep-copy music

\absolute { c'1 \repeat-note c'' }
\relative c' { c \repeat-note c'1 }

Btw, it _can_ be made to work properly with both input modes, needs
some additional coding, though.

Cheers,
  Harm

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi Federico,

 I see the first as less cluttered than the second (and another example of 
 music can appear much more cluttered than above example).

I see the second as containing more information encoded directly in the input, 
and requiring less to be added by the user.

 I don't like trying to see the music in the lilypond input. I prefer using 
 point-and-click.

As far as I know, we are still trying to position Lilypond as useable without a 
GUI, and hence without “point-and-click”.
Hence we shouldn’t make decisions on fundamental structure, syntax, and so on 
based on hypothetical (or sometimes-real) GUI conveniences.

 Maybe, you, as a composer, want to see the input in a different way from me.

I, as an engraver, want to know immediately what note I’m working with, without 
having to spend the time (in a non-GUI editor) backtracking and calculating the 
aggregate octave displacement.

Luckily, I guess, there are both options.
You are free to use the one you find superior (i.e., relative), and I will 
continue to use the one I find superior (i.e., absolute).
=)

Regards,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Urs Liska



Am 23.04.2015 um 16:13 schrieb ArnoldTheresius:

Federico Bruni wrote

...

personally I find lilypond code in \relative mode easier to read.

Perhaps, it's only a problem because the editors we use are not able
to translate automatically between relative and absolute octave notation.

Well, back to the original question, what may professional users expect from
Lilypond, I would like to view Lilypond with the eyes of a mechanical
engineer
(using CAD programs) and a programmer (using compilers and IDEs):

I'm using one of these huge (and expensive) 3D CAD programs, where you
design your 3D parts, combine them into assemblies (multiple levels), and
create drawings from resp. for the parts and assemblies.
A modification in one part (or any 3D model) will be reflected in all it's
usage
(where ever it is referenced).
Such a software is not a one level WYSIWYG software, you have different
representations (and different tools for modification) when working on the
3D models or when working on drawings.
Even such a CAD software is not used by every company - many still use
2D software because due to their requirments they do not need so complex
tools which need much more training.

With this background Lilypond was a software I was looking for:
- the PDF output (MIDI output too) I did compare with the CAD drawings
(may contain multiple sheet) and their drawing views.
- the lowest level for variable I did compare with the 3D parts, the
sequential and simultaneous music using these variables I did compare
with the asseemblies.
- one modification (e.g. corrected pitch) in the lowest level of definition
will be reflected in all usages (single parts, additional parts for
transposing
instruments, partial scores, total score, midi output)

Lilypond is (for me) a compiler - a command line compiler without IDE
(integrated development environment) - and yes, I'm using it in the
command line.

Compared to the CAD software, Lilypond is missing (around it's kernel):
- a graphical user interface (GUI) to enter/edit the source (with a
simplified graphical representation of the music notes)


Well, LilyPond is a compiler as you said. A C++ compiler doesn't have a 
GUI for simplified object management. LilyPond suggests to have 
dedicated IDEs for that. I assume Denemo has what you are asking for 
here (simplified graphical representation while entering).



   -- menues for all 'out of the box' modificators (articulation, overrides,
  tweaks, ...)


I'm not clear what you mean here, but in any case this too is an issue 
for the IDE.
Frescobaldi provides the Quick Insert panel. You can select multiple 
notes in the input file or the music view and then apply e.g. staccato 
to all notes at once.


On my way-too-long wish/todo list is an object inspector/editor for 
Frescobaldi, which should basically be rather straightforward to 
implement. This panel would be aware of the grob the cursor is currently 
in (or the grob that has been selected in the Music View) and then show 
all available properties that can be tweaked for that element (actually 
Frescobaldi already knows about these properties which it uses for 
autocompletion). Then there should be convenient ways to edit values in 
that dialog.



- automatic source code update to new versions (from open file to
file loaded into the RAM of the editor)


Is this really important? I'd be scared when my editor does that 
automatically.



- point-and-click positions have idenpendent IDs, which are stable during
editing the source (e.g. if you edit the LY files and insert a line)


Frescobaldi does that.


- 'where used' handlig
   -- report of the structure
   -- with point-and-click (in the PDF) a menu e.g.: location of pitch
definition
(inside variable a) | locations of variable a reference (inside variable b)
| ...
   -- where used report while editing: this pitch definition is part of
variable a, which is used in variables b and c, ...


Seems like there could be good ideas in that.


- quick GUI driven 'extra offset' editing, valid for just one output (PDF)
target - without the need to guess a value, enter it (with tag) into the
source, and recompile it, and probably adjust the value again. (My
largest score now takes 25 minutes to compile and consumes
2.3 GB RAM - on Windows)


We have started implementing something like this in Frescobaldi's SVG 
viewer (but had to stop because we have to wait for some underlying 
library to be more finished. What we had achieved is to be able to drag 
text items around and calculate the corresponding 'extra-offset from it 
and displaying it in an object inspector stub. Once we have the 
library available to properly update the source file we will add other 
features:

- dragging of pitches
- shaping of curves
- reattaching items to other notes
- etc.

Of course this should play well together with the mentioned object 
editor, so you can see the values you are producing by dragging. And 
(hopefully) it should offer different approaches to 

Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Simon Albrecht

Two small thoughts also from me:

– I think the preference one will take also depends on musical style: a 
piece of renaissance vocal music uses so few leaps greater than a fourth 
that the advantage of relative in typing is huge and it’s 
‘error-pronity’ small. On the other extreme, a piano piece by George 
Crumb would probably a showcase for where absolute mode is at its best, 
if you get my point.


Am 23.04.2015 um 03:41 schrieb Kieren MacMillan:

Hi Gilles,


deprecate \relative, which I now avoid like the plague.

Why?

1. It doesn’t play well with reuse: both trivial reuse (i.e., cut-and-paste) 
and more advanced (i.e., referenced in variables) require extra care at the 
very least, and outright extra work (e.g., octave checks, transposition, etc.) 
in most cases. This means that sharing bits of music either within a file/piece 
or between files/pieces (or even between users) requires extra work and is 
error-prone.


2. It makes what should be simple adjustments unnecessarily complicated, with 
unnecessarily large impacts. Consider, as just one example, my paired functions

How about modifying these as

split =
#(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  \relative c' { \voiceOne $music1 }
  \context Voice = 2 \relative c' { \voiceTwo $music2 }
\oneVoice
#})

splitLU =
#(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  \relative c' { \voiceTwo $music1 }
  \context Voice = 2 \relative c' { \voiceOne $music2 }
\oneVoice
#})

This should reduce confusion here.
So, no reason for a crusade :-)

Yours, Simon

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Richard Shann
On Thu, 2015-04-23 at 19:36 +0200, Eyolf Østrem wrote:
 
 
 On 23.04.2015 (10:04), H. S. Teoh wrote:
 
  Besides, only powers of 2 are valid for durations, which wastes all the
  other numbers in between. Unfortunately I don't have a good idea on how
  to write durations without using digits either.
 
 I started on a vim script to remap the keyboard as follows: 
 
  -  
  |  s  |  g  |  a  |  b  |times| | |  '  |16/64|32/128 | |
  |  Q  |  W  |  E  |  R  |  T  |  Y  |  U  |  I  |  O  |  P  | | |
  --- 
  
|  c  |  d  |  e  |  f  | r/R |  1  |  2  |  4  |  8  | | | |
|  A  |  S  |  D  |  F  |  G  |  H  |  J  |  K  |  L  | | | |
- 
  |undo | del |flat |sharp|breve| dot |  ,  | | | | |
  |  Z  |  X  |  C  |  V  |  B  |  N  |  M  | | | | |
  ---
 
  So, the keyboard is completely remapped: the left hand enters the pitches, 
 in
  the sequence of a piano keyboard, and the right hand 'plays' the rhythms,
  which are laid out 'ergonomically' from the \breve (B) to the 32nd note (P):
  64th and 128th notes re-use the O and P keys in shifted position, and
  \longa and \maxima are placed on S-l and S-m. 
  Flats and sharps are added with 'c' and 'v', octaves are modified with
  'i' (up) and 'm' (down), and cautionary accidentals  are entered with '!'
  and '?'. A \fermata is added with '.'
 
  The script simplifies note entry for lilypond files. Three different
  kinds of tasks are performed with single or just-a-few key presses: 
  - entry of a new note; 
  - modification of an existing note (wrt duration, accidentals, octave,
dots, cautionary accidentals, and articulation signs); 
  - certain special signs, such as fermata, musica ficta, \times x/y {}, etc.
 
  The layout ensures that values that are likely to be close together
  (stepwise motion and leaps of fourths; 'f' + 'sharp', 'e' + 'flat';
  adjacent rhythm values, etc.) are close together also on the keyboard. 
 
  Any of the pitch keys (asdfwer, plus qgG for s, r, and R) enters a
  single note name. Accidental modifications are rememebered, so one
  doesn't have to change every 'f' to 'fis' in g major. Modifications of
  the simple note is done subsequently. E.g., to turn  
 
   f into  fisis!,\breve..
  
  one would type the keys 'vv!mbnn' in any order.
 
 With this scheme, note entry is faster than in any other note-entry system
 I've tried (and I've tried a lot), perhaps excepting midi input. Most
 notably in this context is that there is no jumping up and down to the
 number row, and, yes, no redundancy wrt which numbers are used. 
 
 Unfortunatly, I never managed to finish it - vimscript is an odd beast -
 but I've found that MuseScore can be configured to work more or less the
 same way,
Well, if you set up that mapping for Denemo you could get LilyPond's
beautiful typesetting too :)
But if you *can* play a MIDI keyboard then there is no competition -
they cost less that $100 and give you note-name, octave and accidental
*and* feedback that the note you entered was the one you meant. All
going in as fast as you can play. You can even add a second pc-keyboard
mounted on your MIDI keyboard so that you can control rhythm and pitch
in one integrated interface.

Richard



  so that's what I'm using now.
 
 Eyolf
 
 



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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Eyolf Østrem



On 23.04.2015 (10:04), H. S. Teoh wrote:

 Besides, only powers of 2 are valid for durations, which wastes all the
 other numbers in between. Unfortunately I don't have a good idea on how
 to write durations without using digits either.

I started on a vim script to remap the keyboard as follows: 

 -  
 |  s  |  g  |  a  |  b  |times| | |  '  |16/64|32/128 | |
 |  Q  |  W  |  E  |  R  |  T  |  Y  |  U  |  I  |  O  |  P  | | |
 ---  
   |  c  |  d  |  e  |  f  | r/R |  1  |  2  |  4  |  8  | | | |
   |  A  |  S  |  D  |  F  |  G  |  H  |  J  |  K  |  L  | | | |
   - 
 |undo | del |flat |sharp|breve| dot |  ,  | | | | |
 |  Z  |  X  |  C  |  V  |  B  |  N  |  M  | | | | |
 ---

 So, the keyboard is completely remapped: the left hand enters the pitches, in
 the sequence of a piano keyboard, and the right hand 'plays' the rhythms,
 which are laid out 'ergonomically' from the \breve (B) to the 32nd note (P):
 64th and 128th notes re-use the O and P keys in shifted position, and
 \longa and \maxima are placed on S-l and S-m. 
 Flats and sharps are added with 'c' and 'v', octaves are modified with
 'i' (up) and 'm' (down), and cautionary accidentals  are entered with '!'
 and '?'. A \fermata is added with '.'

 The script simplifies note entry for lilypond files. Three different
 kinds of tasks are performed with single or just-a-few key presses: 
 - entry of a new note; 
 - modification of an existing note (wrt duration, accidentals, octave,
   dots, cautionary accidentals, and articulation signs); 
 - certain special signs, such as fermata, musica ficta, \times x/y {}, etc.

 The layout ensures that values that are likely to be close together
 (stepwise motion and leaps of fourths; 'f' + 'sharp', 'e' + 'flat';
 adjacent rhythm values, etc.) are close together also on the keyboard. 

 Any of the pitch keys (asdfwer, plus qgG for s, r, and R) enters a
 single note name. Accidental modifications are rememebered, so one
 doesn't have to change every 'f' to 'fis' in g major. Modifications of
 the simple note is done subsequently. E.g., to turn  

  f into  fisis!,\breve..
 
 one would type the keys 'vv!mbnn' in any order.

With this scheme, note entry is faster than in any other note-entry system
I've tried (and I've tried a lot), perhaps excepting midi input. Most
notably in this context is that there is no jumping up and down to the
number row, and, yes, no redundancy wrt which numbers are used. 

Unfortunatly, I never managed to finish it - vimscript is an odd beast -
but I've found that MuseScore can be configured to work more or less the
same way, so that's what I'm using now.

Eyolf


-- 
A farmer with extremely prolific hens posted the following sign.  Free
Chickens.  Our Coop Runneth Over.

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread H. S. Teoh
On Thu, Apr 23, 2015 at 03:35:59PM +0200, Federico Bruni wrote:
 Hi Kieren
 
 2015-04-23 14:40 GMT+02:00 Kieren MacMillan kieren_macmil...@sympatico.ca:
 
   personally I find lilypond code in \relative mode easier to read.
 
  Really? I look at
 
  \relative c,, { c4 g' a b e f' g' a, b,, c’ }
 
  and I can’t immediately tell which octave the last c is in. Looking
  at
 
  c,,4 g,, a,, b,, e, f g' a b,, c
 
  it’s perfectly clear right away.
 
 
 I see the first as less cluttered than the second (and another example
 of music can appear much more cluttered than above example).
 
 I don't like trying to see the music in the lilypond input. I prefer
 using point-and-click.
 Maybe, you, as a composer, want to see the input in a different way
 from me.
[...]

I work directly with lilypond input with a text editor, and I originally
started out with absolute mode. But I quickly found it incredibly
tedious to type, because of all those repeated apostrophes and commas.

It makes me think that it was a wrong design decision in lilypond to use
' and , for octave indications and digits 1, 2, 4, 8, ... for durations.
If we had used digits for octave designations instead, absolute mode
would be much less painful to write, e.g.:

c5 d5 e5 f5 g5 f5 e5 d5 c5

instead of:

c''' d''' e''' f''' g''' f''' e''' d''' c'''

Besides, only powers of 2 are valid for durations, which wastes all the
other numbers in between. Unfortunately I don't have a good idea on how
to write durations without using digits either.

But as far as relative mode is concerned, I agree that it has its warts
(especially when temporary split voices have their current relative
octaves taken from the last note in the input file as opposed to the
last common voice, which is extremely annoying). However, it works
wonders when writing orchestral parts where you need to double at the
octave -- just a cut and paste with an adjustment / octave check at the
beginning and you're all set, whereas in absolute mode you have to
painstakingly edit every single note to change the octave after pasting.

In any case, regular octave checks are invaluable as a stop-gap measure
for the flaws of relative mode.

But overall, at least for me, I find the advantages of relative mode
outweigh its disadvantages compared to the tedium of writing in absolute
mode. So at least for now, I'm sticking with relative mode. Please don't
deprecate it!


T

-- 
Genius may have its limitations, but stupidity is not thus handicapped. -- 
Elbert Hubbard

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread bobr...@centrum.is


- Original Message -
 From: Calixte Faure calixte.fa...@gmail.com
 To: Noeck noeck.marb...@gmx.de
 Cc: LilyPond Users lilypond-user@gnu.org
 Sent: Thursday, April 23, 2015 7:35:18 PM
 Subject: Re: What is the problem with \relative? (Was: Do we really offer   
 the future?)
 
 I learned music in French (native French) and was at the beginning a little
 bit confused with 2 4 8 16 etc. because we say white, black, hooked,
 double-hooked, triple-, etc. but after all it is logical with the numbers.
 I understood the choice of 2 4 8 16 during an exchange semester in Germany
 where, as in American, you say half, quarter eighth, sixteenth… I proud
 being able to understand thanks Lilypond ! :)
 Apropos, why isn’t there an American language in Lilypond (do re mi fa sol la
 ti -e -a) ?

American note names are the same as English note names and there is an English 
option.

-David

 
 Cheers,
 Calixte.
 
 2015-04-23 20:57 GMT+02:00 Noeck  noeck.marb...@gmx.de  :
 
 
  c5 d5 e5 f5 g5 f5 e5 d5 c5
  
  All other things being equal, that *would* have been great.
 
 That would save typing in some cases and would follow American and other
 conventions. But c' etc. is just the natural way of calling the notes in
 Dutch, German and many northern and eastern European languages, pointing
 back to the Dutch origins of LilyPond.
 (Usually c, is written C though). So here in Germany it is an advantage
 when teaching LilyPond to newcomes: You write the notes just by their
 name: d' fis' a' d'' – as easy as that.
 
 Joram
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Noeck
  c5 d5 e5 f5 g5 f5 e5 d5 c5
 
 All other things being equal, that *would* have been great.

That would save typing in some cases and would follow American and other
conventions. But c' etc. is just the natural way of calling the notes in
Dutch, German and many northern and eastern European languages, pointing
back to the Dutch origins of LilyPond.
(Usually c, is written C though). So here in Germany it is an advantage
when teaching LilyPond to newcomes: You write the notes just by their
name: d' fis' a' d'' – as easy as that.

Joram

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Eyolf Østrem
On 23.04.2015 (19:40), Richard Shann wrote:

 Well, if you set up that mapping for Denemo you could get LilyPond's
 beautiful typesetting too :)

The last time I tried, it wasn't possible in denemo, I think because the
keyboard shortcuts were tied to specific octaves, or something like that.
I've also tried to get it to work in frescobaldi, but also with no luck.
MuseScore is the only frontend I've tried where it actually just works.
Maybe I have to do another round. But believe me - I HAVE tried!

Btw. I export from Musescore to xml and convert to ly, so the outcome is
always Lilypond.

Eyolf

-- 
Just when you thought you were winning the rat race, along comes a faster rat!!

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi Joram,

 c' etc. is just the natural way of calling the notes in
 Dutch, German and many northern and eastern European languages
 So here in Germany it is an advantage when teaching LilyPond to newcomes:
 You write the notes just by their name: d' fis' a' d'' – as easy as that.

Interesting. Relative mode must be even more confusing than normal in that case!

Thanks,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Calixte Faure
I learned music in French (native French) and was at the beginning a little
bit confused with 2 4 8 16 etc. because we say white, black, hooked,
double-hooked, triple-,  etc. but after all it is logical with the
numbers.
I understood the choice of 2 4 8 16 during an exchange semester in Germany
where, as in American, you say half, quarter eighth, sixteenth… I proud
being able to understand thanks Lilypond ! :)
Apropos, why isn’t there an American language in Lilypond (do re mi fa sol
la ti -e -a) ?

Cheers,
Calixte.

2015-04-23 20:57 GMT+02:00 Noeck noeck.marb...@gmx.de:

   c5 d5 e5 f5 g5 f5 e5 d5 c5
 
  All other things being equal, that *would* have been great.

 That would save typing in some cases and would follow American and other
 conventions. But c' etc. is just the natural way of calling the notes in
 Dutch, German and many northern and eastern European languages, pointing
 back to the Dutch origins of LilyPond.
 (Usually c, is written C though). So here in Germany it is an advantage
 when teaching LilyPond to newcomes: You write the notes just by their
 name: d' fis' a' d'' – as easy as that.

 Joram

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

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread PMA

Calixte Faure wrote:

I learned music in French (native French) and was at the beginning a little
bit confused with 2 4 8 16 etc. because we say white, black, hooked,
double-hooked, triple-,  etc. .


At least you weren't trapped in hemi-demi-semi-quavers!

- Pete


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi,

 It makes me think that it was a wrong design decision in lilypond to use
 ' and , for octave indications and digits 1, 2, 4, 8, ... for durations.
 If we had used digits for octave designations instead, absolute mode
 would be much less painful to write, e.g.:
 
   c5 d5 e5 f5 g5 f5 e5 d5 c5

All other things being equal, that *would* have been great.

 only powers of 2 are valid for durations

I wonder if that’s true fundamentally, or if that’s just a parser limitation… 
It’s certainly not true for defining time signatures, moments, or other such 
things (which all take rational n/m), so I would think it should be possible to 
make Lily accept (e.g.) c3 as a valid duration.

 But as far as relative mode is concerned, I agree that it has its warts
 (especially when temporary split voices have their current relative
 octaves taken from the last note in the input file as opposed to the
 last common voice, which is extremely annoying). However, it works
 wonders when writing orchestral parts where you need to double at the
 octave -- just a cut and paste with an adjustment / octave check at the
 beginning and you're all set, whereas in absolute mode you have to
 painstakingly edit every single note to change the octave after pasting.

Actually, I use \quoteDuring with \transpose; no cutting-and-pasting or editing 
of individual notes required. It works wonders! Best of all, if I change a note 
in the “original parts”, it automatically changes correctly in all the 
“mirrored parts”. (I did this with my last big orchestral Christmas carol 
arrangement: there were 9 wind parts that played only 2 patterns, so the time 
savings was significant.)

 Please don’t deprecate [relative mode]!

I’m sure it won’t be deprecated, despite its many flaws.

Cheers,
Kieren.



Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi Simon,

 – I think the preference one will take also depends on musical style: a piece 
 of renaissance vocal music uses so few leaps greater than a fourth that the 
 advantage of relative in typing is huge and it’s ‘error-pronity’ small. On 
 the other extreme, a piano piece by George Crumb would probably a showcase 
 for where absolute mode is at its best, if you get my point.

Agreed! And since most of the music I write is my own — and hence closer to 
Crumb than Compere — absolute mode almost always wins the day.

 How about modifying these as
 split =
[…]

There were, some time ago, enough problems with these functions interacting 
with relative mode and chords (cf. the archive thread between David K. and 
myself) that I’d rather not fix what isn’t currently broken.  ;)

 This should reduce confusion here.
 So, no reason for a crusade :-)

You’d think so… but it was that ridiculous problem with those functions + 
relative mode + chord notation that finally camel-strawed me.

Look, I’m glad others like \relative mode.
I just won’t use it — I’ve been burned far too often — and won’t recommend it 
to others.

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread ArnoldTheresius
Federico Bruni wrote
 ...
  personally I find lilypond code in \relative mode easier to read.

Perhaps, it's only a problem because the editors we use are not able
to translate automatically between relative and absolute octave notation.

Well, back to the original question, what may professional users expect from
Lilypond, I would like to view Lilypond with the eyes of a mechanical
engineer
(using CAD programs) and a programmer (using compilers and IDEs):

I'm using one of these huge (and expensive) 3D CAD programs, where you
design your 3D parts, combine them into assemblies (multiple levels), and
create drawings from resp. for the parts and assemblies.
A modification in one part (or any 3D model) will be reflected in all it's
usage
(where ever it is referenced).
Such a software is not a one level WYSIWYG software, you have different
representations (and different tools for modification) when working on the
3D models or when working on drawings.
Even such a CAD software is not used by every company - many still use
2D software because due to their requirments they do not need so complex
tools which need much more training.

With this background Lilypond was a software I was looking for:
- the PDF output (MIDI output too) I did compare with the CAD drawings
(may contain multiple sheet) and their drawing views.
- the lowest level for variable I did compare with the 3D parts, the
sequential and simultaneous music using these variables I did compare
with the asseemblies.
- one modification (e.g. corrected pitch) in the lowest level of definition
will be reflected in all usages (single parts, additional parts for
transposing
instruments, partial scores, total score, midi output)

Lilypond is (for me) a compiler - a command line compiler without IDE
(integrated development environment) - and yes, I'm using it in the
command line.

Compared to the CAD software, Lilypond is missing (around it's kernel):
- a graphical user interface (GUI) to enter/edit the source (with a
simplified graphical representation of the music notes)
  -- menues for all 'out of the box' modificators (articulation, overrides,
 tweaks, ...)
- automatic source code update to new versions (from open file to
file loaded into the RAM of the editor)
- point-and-click positions have idenpendent IDs, which are stable during
editing the source (e.g. if you edit the LY files and insert a line)
- 'where used' handlig
  -- report of the structure
  -- with point-and-click (in the PDF) a menu e.g.: location of pitch
definition
(inside variable a) | locations of variable a reference (inside variable b)
| ...
  -- where used report while editing: this pitch definition is part of
variable a, which is used in variables b and c, ...
- quick GUI driven 'extra offset' editing, valid for just one output (PDF) 
target - without the need to guess a value, enter it (with tag) into the
source, and recompile it, and probably adjust the value again. (My
largest score now takes 25 minutes to compile and consumes
2.3 GB RAM - on Windows)

Another important topic for commercial users may be the management
of the source code for all PDFs (and other output).
And finally multiple people may have to working parallel on the same score.


ArnoldTheresius



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Do-we-really-offer-the-future-tp174675p175158.html
Sent from the User mailing list archive at Nabble.com.

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Federico Bruni
2015-04-23 9:21 GMT+02:00 Martin Tarenskeen m.tarensk...@zonnet.nl:


 I often use LilyPond to quickly enter a very simple tune or small
 pianosheet needing just a simple texteditor (Vim). I use \relative all the
 time. c g c e g is soo much faster and easier than c''' g'' c''' e''' g'''
 g'''.

 And personally I find lilypond code in \relative mode easier to read.

 I agree that for complex scores with much music in variables \relative
 mode can have annoying side-effects.


I agree: relative mode is much easier to enter.
If you structure your files in a way that causes relative mode to produce
side-effects, you can still enter in relative mode and then convert in
absolute mode when you've finished (Frescobaldi can do it).
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Martin Tarenskeen



On Thu, 23 Apr 2015, Hwaen Ch'uqi wrote:


Greetings,

The reasons for one not using relative mode are clear, but it hardly
justifies calling for its deprecation. As a composer of primarily
piano music, it is an absolute lifesaver. And all to whom I have
introduced LilyPond, primarily pianists or harpists, immediately
gravitated to relative mode. Again, why deprecate it when you have the
option of simply not using it?

Hwaen Ch'uqi


+1

I often use LilyPond to quickly enter a very simple tune or 
small pianosheet needing just a simple texteditor (Vim). I use \relative 
all the time. c g c e g is soo much faster and easier than c''' g'' 
c''' e''' g''' g'''.


And personally I find lilypond code in \relative mode easier to read.

I agree that for complex scores with much music in variables \relative 
mode can have annoying side-effects.


--

MT

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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi Federico,

 If you structure your files in a way that causes relative mode to produce 
 side-effects, you can still enter in relative mode and then convert in 
 absolute mode when you've finished (Frescobaldi can do it).

I find it just as easy to enter code in absolute mode, so why should I go 
through extra work?  =)

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Kieren MacMillan
Hi Martin,

 personally I find lilypond code in \relative mode easier to read.

Really? I look at

\relative c,, { c4 g' a b e f' g' a, b,, c’ }

and I can’t immediately tell which octave the last c is in. Looking at

c,,4 g,, a,, b,, e, f g' a b,, c

it’s perfectly clear right away.

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Federico Bruni
Hi Kieren

2015-04-23 14:40 GMT+02:00 Kieren MacMillan kieren_macmil...@sympatico.ca:

  personally I find lilypond code in \relative mode easier to read.

 Really? I look at

 \relative c,, { c4 g' a b e f' g' a, b,, c’ }

 and I can’t immediately tell which octave the last c is in. Looking at

 c,,4 g,, a,, b,, e, f g' a b,, c

 it’s perfectly clear right away.


I see the first as less cluttered than the second (and another example of
music can appear much more cluttered than above example).

I don't like trying to see the music in the lilypond input. I prefer
using point-and-click.
Maybe, you, as a composer, want to see the input in a different way from me.
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-23 Thread Wols Lists
On 23/04/15 20:35, Calixte Faure wrote:
 I learned music in French (native French) and was at the beginning a
 little bit confused with 2 4 8 16 etc. because we say white, black,
 hooked, double-hooked, triple-,  etc. but after all it is logical
 with the numbers.
 I understood the choice of 2 4 8 16 during an exchange semester in
 Germany where, as in American, you say half, quarter eighth, sixteenth…
 I proud being able to understand thanks Lilypond ! :)
 Apropos, why isn’t there an American language in Lilypond (do re mi fa
 sol la ti -e -a) ?

And then in English we get thoroughly confused, because an American
whole note is an English semibreve or, literally, half note. And we
don't use numbers either, we have semibreve, minim, crotchet, quaver,
semiquaver, demisemiquaver, hemidemisemiquaver, dunno what the next one
is. And those last three are a half note, half a half note, and half a
half a half note! :-)

At the end of the day, Vive La Difference!

Cheers,
Wol

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


What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-22 Thread Gilles

Yet another subject ;-)


[...]
Yet another reason to deprecate \relative, which I now avoid like the
plague. (Unfortunately, I was suckered into using it when I started
using Lilypond over a decade ago, so all my legacy code is in
\relative mode. Using Frescobaldi, I’m slowly converting all my old
code to absolute mode.)


Why?

Thanks,
Gilles


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-22 Thread Kieren MacMillan
Hi Gilles,

 deprecate \relative, which I now avoid like the plague.
 Why?

1. It doesn’t play well with reuse: both trivial reuse (i.e., cut-and-paste) 
and more advanced (i.e., referenced in variables) require extra care at the 
very least, and outright extra work (e.g., octave checks, transposition, etc.) 
in most cases. This means that sharing bits of music either within a file/piece 
or between files/pieces (or even between users) requires extra work and is 
error-prone. 


2. It makes what should be simple adjustments unnecessarily complicated, with 
unnecessarily large impacts. Consider, as just one example, my paired functions

split =
#(define-music-function (parser location music1 music2)
   (ly:music? ly:music?)
   #{ 
 { \voiceOne $music1 }
 \context Voice = 2 { \voiceTwo $music2 }
   \oneVoice
   #})

splitLU =
#(define-music-function (parser location music1 music2)
   (ly:music? ly:music?)
   #{ 
 { \voiceTwo $music1 }
 \context Voice = 2 { \voiceOne $music2 }
   \oneVoice
   #})

These (and their 3- and 4-voice counterparts) are workhorses in my code, saving 
me endless amounts of typing constructs like

 { \voiceOne foo } \new Voice { \voiceTwo bar }  \oneVoice

every time I simply want a short polyphonic section. I could hardly begin to do 
efficient engraving work without them. Now consider the effect of switching, in 
relative mode, from

   b4 \split { a4 } { c,4 }

to

   b4 \splitLU { c,4 } { a4 }

Because relative mode “leaves from” whatever pitch comes immediately before it, 
the first example would output the b followed by a sixth “chord immediately 
below it (i.e., with the a on top, sitting a second below the b), whereas the 
second example would output the b followed by a third [!!] “chord (i.e., with 
the c, on top, sitting a seventh below the b). In absolute mode, I am free to 
choose either function (and each is necessary!) at will, without worrying that 
the choice may mess up the outputted pitches.

This same sort of relative shifting happens when you want to switch the order 
of notes as given in a chord, e.g. c g’ b outputs a different chord than c b 
g’.


3. Many single edits suddenly require two (or more) edits as a result solely of 
relative mode. For example, let’s say you have

\relative c’ { c d e a }

and you want to change the e to d. Now you must also add an apostrophe to the 
a, to compensate for the relative octave adjustment:

\relative c’ { c d d a’ }

wasting effort and brainpower (if you even remember to do it the first time, 
rather than compiling before finding the error).


These are only three of the problems. Worst of all, having it is a false 
economy: it’s not actually intuitive for everyone (though it is for me, and was 
right away), as a quick search of the archives will turn up many newbies 
complaining about “how hard it is to remember when to use , and when to use ‘ 
and when to use nothing”.

Yes, it’s a little more work during initial entry of some music to add the 
correct octavation to the pitches. But the majority of pitches I enter fall 
between c, and b’’, so the difference (if any) is minimal. And of course there 
are many patterns which require *more* octavation typing in relative mode than 
absolute, so in those cases absolute mode saves keystrokes.

Hope this helps explain why I don’t use \relative any more, and tell most 
newbies I know to avoid it.

Cheers,
Kieren.



Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: What is the problem with \relative? (Was: Do we really offer the future?)

2015-04-22 Thread Hwaen Ch'uqi
Greetings,

The reasons for one not using relative mode are clear, but it hardly
justifies calling for its deprecation. As a composer of primarily
piano music, it is an absolute lifesaver. And all to whom I have
introduced LilyPond, primarily pianists or harpists, immediately
gravitated to relative mode. Again, why deprecate it when you have the
option of simply not using it?

Hwaen Ch'uqi


On 4/22/15, Kieren MacMillan kieren_macmil...@sympatico.ca wrote:
 Hi Gilles,

 deprecate \relative, which I now avoid like the plague.
 Why?

 1. It doesn’t play well with reuse: both trivial reuse (i.e., cut-and-paste)
 and more advanced (i.e., referenced in variables) require extra care at the
 very least, and outright extra work (e.g., octave checks, transposition,
 etc.) in most cases. This means that sharing bits of music either within a
 file/piece or between files/pieces (or even between users) requires extra
 work and is error-prone.


 2. It makes what should be simple adjustments unnecessarily complicated,
 with unnecessarily large impacts. Consider, as just one example, my paired
 functions

 split =
 #(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  { \voiceOne $music1 }
  \context Voice = 2 { \voiceTwo $music2 }
\oneVoice
#})

 splitLU =
 #(define-music-function (parser location music1 music2)
(ly:music? ly:music?)
#{ 
  { \voiceTwo $music1 }
  \context Voice = 2 { \voiceOne $music2 }
\oneVoice
#})

 These (and their 3- and 4-voice counterparts) are workhorses in my code,
 saving me endless amounts of typing constructs like

  { \voiceOne foo } \new Voice { \voiceTwo bar }  \oneVoice

 every time I simply want a short polyphonic section. I could hardly begin to
 do efficient engraving work without them. Now consider the effect of
 switching, in relative mode, from

b4 \split { a4 } { c,4 }

 to

b4 \splitLU { c,4 } { a4 }

 Because relative mode “leaves from” whatever pitch comes immediately before
 it, the first example would output the b followed by a sixth “chord
 immediately below it (i.e., with the a on top, sitting a second below the
 b), whereas the second example would output the b followed by a third [!!]
 “chord (i.e., with the c, on top, sitting a seventh below the b). In
 absolute mode, I am free to choose either function (and each is necessary!)
 at will, without worrying that the choice may mess up the outputted pitches.

 This same sort of relative shifting happens when you want to switch the
 order of notes as given in a chord, e.g. c g’ b outputs a different chord
 than c b g’.


 3. Many single edits suddenly require two (or more) edits as a result solely
 of relative mode. For example, let’s say you have

 \relative c’ { c d e a }

 and you want to change the e to d. Now you must also add an apostrophe to
 the a, to compensate for the relative octave adjustment:

 \relative c’ { c d d a’ }

 wasting effort and brainpower (if you even remember to do it the first time,
 rather than compiling before finding the error).


 These are only three of the problems. Worst of all, having it is a false
 economy: it’s not actually intuitive for everyone (though it is for me, and
 was right away), as a quick search of the archives will turn up many newbies
 complaining about “how hard it is to remember when to use , and when to use
 ‘ and when to use nothing”.

 Yes, it’s a little more work during initial entry of some music to add the
 correct octavation to the pitches. But the majority of pitches I enter fall
 between c, and b’’, so the difference (if any) is minimal. And of course
 there are many patterns which require *more* octavation typing in relative
 mode than absolute, so in those cases absolute mode saves keystrokes.

 Hope this helps explain why I don’t use \relative any more, and tell most
 newbies I know to avoid it.

 Cheers,
 Kieren.

 

 Kieren MacMillan, composer
 ‣ website: www.kierenmacmillan.info
 ‣ email: i...@kierenmacmillan.info


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


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