Re: Creates pure conversion for Flag::calc_y_offset (issue 5934050)

2012-03-29 Thread mtsolo

Reviewers: Keith,

Message:
There is a nasty bug in LilyPond that this patch only exacerbates - as a
rule of thumb, X positioning functions should not set Y positioning
variables and vice versa.  note-collision.cc, which works from an X_AXIS
callback, sets the stem attachment, which is a both X and Y axis value.
This is a recipe for trouble - there even if it means logic / code dup,
these should be separated out into two functions: one that sets the X
value and one that sets the Y value.  As a result, I have to trigger the
X extent in Stem::internal_stem_begin_position to get the Y position set
correctly.  It may be worth it to fix this now: it'd delay 2.16 further,
but it seems like a sound architecture decision that'd prevent this
sorta problem from happening in the future.

Description:
Creates pure conversion for Flag::calc_y_offset

Please review this at http://codereview.appspot.com/5934050/

Affected files:
  A input/regression/stem-begin-position.ly
  M lily/stem.cc


Index: input/regression/stem-begin-position.ly
diff --git a/input/regression/stem-begin-position.ly  
b/input/regression/stem-begin-position.ly

new file mode 100644
index  
..30bd3ff1e3865c53f50a3ab7e03630b62fff5e1f

--- /dev/null
+++ b/input/regression/stem-begin-position.ly
@@ -0,0 +1,10 @@
+\version 2.15.36
+
+\header {
+  texidoc = Stems reach correct begin points of merged noteheads.
+
+}
+
+ { \aikenHeads f'8 }  \\ { \aikenHeads f'8 } 
+ { \aikenHeads f'4:32 }  \\ { \aikenHeads f' } 
+ { \aikenHeads e'8 f' s4 }  \\ { \aikenHeads e'8 f' s4 } 
Index: lily/stem.cc
diff --git a/lily/stem.cc b/lily/stem.cc
index  
f662f3cf1dec75637680e3c85f9bcd9fd31a158c..0e8c13cdaa1ff7edc67ffe930c4496fbd841b243  
100644

--- a/lily/stem.cc
+++ b/lily/stem.cc
@@ -787,6 +787,14 @@ Stem::internal_calc_stem_begin_position (Grob *me,  
bool calc_beam)

   if (Grob *head = support_head (me))
 {
   Interval head_height = head-extent (head, Y_AXIS);
+  // trigger positioning of stems in note column in case of merge
+  if (me-get_parent (X_AXIS)
+   me-get_parent (X_AXIS)-get_parent (X_AXIS))
+(void) me-get_parent (X_AXIS)
+ -extent (me-get_parent (X_AXIS)
+ -get_parent (X_AXIS), X_AXIS);
+  else
+me-programming_error (Stem doesn't belong to NoteColumn or  
PaperColumn.);

   Real y_attach = Note_head::stem_attachment_coordinate (head, Y_AXIS);

   y_attach = head_height.linear_combination (y_attach);



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


Re: casual contributors

2012-03-29 Thread James
Hello,

2012/3/23 Janek Warchoł janek.lilyp...@gmail.com:
 On Fri, Mar 23, 2012 at 8:06 PM, David Kastrup d...@gnu.org wrote:
 What impressed you most about the LilyPond code base?  No comment.
 But I really want to know! I just told you.

 LOL!!  That's a quote-of-the-month!
 Janek :D


Having just read his thread I was hoping more for ..

jetzt Runter von meinem Rasen!

;)

James

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


Point and Click also into the MIDI file

2012-03-29 Thread Silvio Ardito
Dear Sirs,
I am developing a Midi music player, using the .mid and .pdf generated by
lilypond with the \pointAndClickOn, for educational purpose.

Others players invent the music score from the .mid, not a true music score.

If the same informations, line and column, are in the midi file, it is possible,
 playing the midi, to link .mid and .pdf .

The suggested format is using the meta-text message like:

FF 01 LL # POINTANDCLICK

where:
 LLlength 
 # identifies the point and click
 POINTANDCLICK the same informations on .pdf

Best regards.

Silvio Ardito


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


Re: Creates pure conversion for Flag::calc_y_offset (issue 5934050)

2012-03-29 Thread tdanielsmusic

Mike, I don't understand how the commit message and title relate to this
change, probably due to some misunderstanding on my part.  How does this
create a pure conversion for Flag::calc_y_offset?
Trevor

http://codereview.appspot.com/5934050/

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


Re: Creates pure conversion for Flag::calc_y_offset (issue 5934050)

2012-03-29 Thread m...@apollinemike.com
On Mar 29, 2012, at 11:25 AM, tdanielsmu...@googlemail.com wrote:

 Mike, I don't understand how the commit message and title relate to this
 change, probably due to some misunderstanding on my part.  How does this
 create a pure conversion for Flag::calc_y_offset?
 Trevor
 

Sorry...forgot to change the title.  That was what the first patch set did.
Will fix.

Cheers,
MS


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


Re: Point and Click also into the MIDI file

2012-03-29 Thread Wilbert Berendsen
Op Thu, 29 Mar 2012 08:41:18 + (UTC)
Silvio Ardito silvioard...@gmail.com schreef:

 Dear Sirs,
 I am developing a Midi music player, using the .mid and .pdf
 generated by lilypond with the \pointAndClickOn, for educational
 purpose.
 
 Others players invent the music score from the .mid, not a true
 music score.
 
 If the same informations, line and column, are in the midi file, it
 is possible, playing the midi, to link .mid and .pdf .
 
 The suggested format is using the meta-text message like:
 
 FF 01 LL # POINTANDCLICK
 
 where:
  LLlength 
  # identifies the point and click
  POINTANDCLICK the same informations on .pdf


This would also be extremely nice for Frescobaldi.

-- 
Wilbert Berendsen
(http://www.wilbertberendsen.nl)


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


Re: Point and Click also into the MIDI file

2012-03-29 Thread David Kastrup
Wilbert Berendsen wbs...@xs4all.nl writes:

 Op Thu, 29 Mar 2012 08:41:18 + (UTC)
 Silvio Ardito silvioard...@gmail.com schreef:

 Dear Sirs,
 I am developing a Midi music player, using the .mid and .pdf
 generated by lilypond with the \pointAndClickOn, for educational
 purpose.
 
 Others players invent the music score from the .mid, not a true
 music score.
 
 If the same informations, line and column, are in the midi file, it
 is possible, playing the midi, to link .mid and .pdf .
 
 The suggested format is using the meta-text message like:
 
 FF 01 LL # POINTANDCLICK
 
 where:
  LLlength 
  # identifies the point and click
  POINTANDCLICK the same informations on .pdf


 This would also be extremely nice for Frescobaldi.

Probably one should talk to the Rosegarden people.  They would likely
have
a) a good idea what kind of Midi messages to hide this best in
b) the wish to support that kind of message as well

-- 
David Kastrup


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


Attic: Announce for 2.14, descriptive changes for 1.6 - 2.14 (issue 5956046)

2012-03-29 Thread graham

LGTM, please push directly to staging.

(patchy staging-merge is good enough; no need to wait for test-patches)

http://codereview.appspot.com/5956046/

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


Lilypond-auto - newsgroup?

2012-03-29 Thread Phil Holmes
I'm subscribed to -auto as a mailing list, but for stuff like this, it fits 
my workflow better as a newsgroup.  Bugs and devel are also newsgroups on 
the gmane server, but I can't find auto.  Should it be there?


--
Phil Holmes



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


LSR is now on 2.14

2012-03-29 Thread Thomas Morley
Hi,

the LSR is now using 2.14 !
For testing I added a new file: test for the new version (2.14.2) Of
course this should be not approved. :)
Worked fine.

I noticed some problems:
Sebastiano or better his LSR-set-up-code was puzzled by the files from
`Documentation/snippets/new' which I had integrated according to CG
7.7 point 2 and of some other missing files.

In his last mail he wrote:

Am 30. März 2012 00:12 schrieb Sebastiano Vigna vi...@dsi.unimi.it:
 On Mar 29, 2012, at 1:53 PM, Thomas Morley wrote:

 The following 3 Snippets are unapproved, so they were not in the
 LSR-tarball I had downloaded. And I didn't work on them:

 time-signature-in-parentheses---method-3-[needs-lsr-upgrade].ly
 printing-figured-bass-extender-lines-without-a-starting-figure-[needs-lsr-upgrade--=-2.14].ly
 nokia-ringtone.ly


 OK.

 _All_ Unknown files are from `Documentation/snippets/new' as
 requested by the Contributors Guide.
 see: 
 http://lilypond.org/doc/v2.15/Documentation/contributor/updating-lsr-to-a-new-version

 Well, I didn't know there was a contributor guide :).

 The problem is that while this is fine, there is no procedure for inserting 
 *new* snippet from the .ly files. My code just look at the snippets in the 
 tarballs, matches titles, and replaces the code. I mean, I don't even *look* 
 at the text. So these snippets will have to be inserted by means of the web 
 interface...

 Do you expect further problems?


 I'd say no.

 Ciao,

seba

Seems CG 7.7 should be rewritten in this point.


Regards,
  Harm

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


Re: Lilypond-auto - newsgroup?

2012-03-29 Thread Graham Percival
On Thu, Mar 29, 2012 at 04:31:11PM +0100, Phil Holmes wrote:
 I'm subscribed to -auto as a mailing list, but for stuff like this,
 it fits my workflow better as a newsgroup.  Bugs and devel are also
 newsgroups on the gmane server, but I can't find auto.  Should it be
 there?

I have no objection; please consult the gmane admins.  I'm not
quite certain how it would fit your workflow better as a newsgroup
-- I mean, I can't imagine wanting to search through data in
-auto; if you want search issues, just use the google code issue
search -- but OTOH everybody has their own way of working so by
all means get it added to gmane.

- Graham

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


Re: LSR is now on 2.14

2012-03-29 Thread Graham Percival
On Fri, Mar 30, 2012 at 01:02:50AM +0200, Thomas Morley wrote:
 Am 30. März 2012 00:12 schrieb Sebastiano Vigna vi...@dsi.unimi.it:
  _All_ Unknown files are from `Documentation/snippets/new' as
  requested by the Contributors Guide.
  see: 
  http://lilypond.org/doc/v2.15/Documentation/contributor/updating-lsr-to-a-new-version
 
  The problem is that while this is fine, there is no procedure for inserting 
  *new* snippet from the .ly files. My code just look at the snippets in the 
  tarballs, matches titles, and replaces the code. I mean, I don't even 
  *look* at the text. So these snippets will have to be inserted by means of 
  the web interface..

That's what I expected.

Also note that (complete guess) only 30% of files in
Documentation/snippets/new can be added to LSR version 2.14.2  The
bulk of those files require version 2.15.0 or higher, so they must
be left in Documentation/snippets/new/.

Once you've added a snippet to LSR manually and checked that it's
covered by the next LSR import (I think this is only Phil at the
moment, but if you want to try doing an import and put the patch
on rietveld, that would be great), that file should be deleted
from Documentation/snippets/new/.

- Graham

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


Re: LSR is now on 2.14

2012-03-29 Thread Thomas Morley
Am 30. März 2012 01:51 schrieb Graham Percival gra...@percival-music.ca:
 On Fri, Mar 30, 2012 at 01:02:50AM +0200, Thomas Morley wrote:
 Am 30. März 2012 00:12 schrieb Sebastiano Vigna vi...@dsi.unimi.it:
  _All_ Unknown files are from `Documentation/snippets/new' as
  requested by the Contributors Guide.
  see: 
  http://lilypond.org/doc/v2.15/Documentation/contributor/updating-lsr-to-a-new-version
 
  The problem is that while this is fine, there is no procedure for 
  inserting *new* snippet from the .ly files. My code just look at the 
  snippets in the tarballs, matches titles, and replaces the code. I mean, I 
  don't even *look* at the text. So these snippets will have to be inserted 
  by means of the web interface..

 That's what I expected.

 Also note that (complete guess) only 30% of files in
 Documentation/snippets/new can be added to LSR version 2.14.2  The
 bulk of those files require version 2.15.0 or higher, so they must
 be left in Documentation/snippets/new/.

I added 66 (!) files from `Documentation/snippets/new' running with 2.14.
It will be a lot of work to add them manually using the web-interface.


 Once you've added a snippet to LSR manually and checked that it's
 covered by the next LSR import (I think this is only Phil at the
 moment, but if you want to try doing an import and put the patch
 on rietveld, that would be great), that file should be deleted
 from Documentation/snippets/new/.

Well, currently I can't self-compile LilyPond or prepare a formal
patch or sth else in this direction.
Seems I have to learn a lot. ;)

Best,
  Harm

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


Re: LSR is now on 2.14

2012-03-29 Thread Thomas Morley
Am 30. März 2012 02:03 schrieb Thomas Morley thomasmorle...@googlemail.com:
 Am 30. März 2012 01:51 schrieb Graham Percival gra...@percival-music.ca:
 On Fri, Mar 30, 2012 at 01:02:50AM +0200, Thomas Morley wrote:
 Am 30. März 2012 00:12 schrieb Sebastiano Vigna vi...@dsi.unimi.it:
  _All_ Unknown files are from `Documentation/snippets/new' as
  requested by the Contributors Guide.
  see: 
  http://lilypond.org/doc/v2.15/Documentation/contributor/updating-lsr-to-a-new-version
 
  The problem is that while this is fine, there is no procedure for 
  inserting *new* snippet from the .ly files. My code just look at the 
  snippets in the tarballs, matches titles, and replaces the code. I mean, 
  I don't even *look* at the text. So these snippets will have to be 
  inserted by means of the web interface..

 That's what I expected.

 Also note that (complete guess) only 30% of files in
 Documentation/snippets/new can be added to LSR version 2.14.2  The
 bulk of those files require version 2.15.0 or higher, so they must
 be left in Documentation/snippets/new/.

 I added 66 (!) files from `Documentation/snippets/new' running with 2.14.
 It will be a lot of work to add them manually using the web-interface.

Ok, I checked it. Only the following 37 files have to be added
manually (the others are updates of existing LSR-files)

alternative-breve-note.ly
changing-the-ambitus-gap.ly
changing-the-number-of-augmentation-dots-per-note.ly
changing-the-size-of-woodwind-diagrams.ly
chordchanges-for-fretboards.ly
chord-glissando-in-tablature.ly
controlling-spanner-visibility-after-a-line-break.ly
defining-an-engraver-in-scheme-ambitus-engraver.ly
dynamics-custom-text-spanner-postfix.ly
dynamics-text-spanner-postfix.ly
expressive-headword.ly
figured-bass-headword.ly
fretboards-alternate-tables.ly
fretted-string-harmonics-in-tablature.ly
graphical-and-text-woodwind-diagrams.ly
hiding-accidentals-on-tied-notes-at-the-start-of-a-new-system.ly
keyboard-headword.ly
lyrics-old-spacing-settings.ly
making-slurs-with-complex-dash-structure.ly
non-default-tuplet-numbers.ly
numbers-as-easy-note-heads.ly
open-string-harmonics-in-tablature.ly
pitches-headword.ly
repeats-headword.ly
rhythms-headword.ly
screech-boink.ly
setting-the-double-repeat-default-for-volte.ly
simultaneous-headword.ly
slides-in-tablature.ly
snap-pizzicato-bartok-pizzicato.ly
staff-headword.ly
text-headword.ly
unfretted-headword.ly
using-the-whiteout-property.ly
vocal-headword.ly
wind-headword.ly
woodwind-diagrams-listing.ly

-Harm

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


Re: LSR is now on 2.14

2012-03-29 Thread Graham Percival
On Fri, Mar 30, 2012 at 02:03:40AM +0200, Thomas Morley wrote:
 Am 30. März 2012 01:51 schrieb Graham Percival gra...@percival-music.ca:
  On Fri, Mar 30, 2012 at 01:02:50AM +0200, Thomas Morley wrote:
  Am 30. März 2012 00:12 schrieb Sebastiano Vigna vi...@dsi.unimi.it:
   _All_ Unknown files are from `Documentation/snippets/new' as
   requested by the Contributors Guide.
   see: 
   http://lilypond.org/doc/v2.15/Documentation/contributor/updating-lsr-to-a-new-version
  
   The problem is that while this is fine, there is no procedure for 
   inserting *new* snippet from the .ly files. My code just look at the 
   snippets in the tarballs, matches titles, and replaces the code. I mean, 
   I don't even *look* at the text. So these snippets will have to be 
   inserted by means of the web interface..
 
  That's what I expected.
 
 I added 66 (!) files from `Documentation/snippets/new' running with 2.14.
 It will be a lot of work to add them manually using the web-interface.

Recruit somebody from -user to handle it?

Alternately, you could have a look at the java code that runs LSR
and prepare a patch which adds this capability to it.  I think
it'll be far less work just to recruit one or two people from
-user, teach them enough to do this task, then let them handle it.

  Once you've added a snippet to LSR manually and checked that it's
  covered by the next LSR import (I think this is only Phil at the
  moment, but if you want to try doing an import and put the patch
  on rietveld, that would be great), that file should be deleted
  from Documentation/snippets/new/.
 
 Well, currently I can't self-compile LilyPond or prepare a formal
 patch or sth else in this direction.
 Seems I have to learn a lot. ;)

Yep.  To warn you: at the moment the quick start section of the
CG is broken; following its instructions will give you neither a
quick nor painless start.

Your options are:
1) go through the painful process of figuring out which parts are
still valid and which are not.  Without a mentor, this will be
especially painful.
2) wait for lilydev to be updated (ETA: 6 weeks) and somebody to
fix up at least the short quick start section (ETA: 1 month
after lilydev is updated).
3) ask/wait for somebody else to handle the LSR import.

Unfortunately there is no magic wand that will let us offer you an
option other than those three.  (unless I've forgotten about
something, which is possible given my mental state these days.
James: I have not forgotten about your recent work on lilydev, but
I stand behind my pessimistic estimate)

- Graham

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


PATCH: Countdown to 20120331

2012-03-29 Thread Colin Campbell
For 20:00 MDT Saturday March 31 (Let's avoid the temptation of counting 
down to April first, shall we?)


Enhancement:
Issue 2448 
http://code.google.com/p/lilypond/issues/detail?id=2448: Patch: 
Provide better debugging messages of undead live objects. - R5955046 
http://codereview.appspot.com/5955046/
Issue 2443 
http://code.google.com/p/lilypond/issues/detail?id=2443: Patch: Avoid 
Parsed object should be dead warning for saved init data - R5919051 
http://codereview.appspot.com/5919051/
Issue 2427 
http://code.google.com/p/lilypond/issues/detail?id=2427: Patch: Add an 
example implementation of cross-staff stems - R5882053 
http://codereview.appspot.com/5882053/


Maintainability:
Issue 2423 
http://code.google.com/p/lilypond/issues/detail?id=2423: lilypond-book 
fails to include a file from a parent directory - R5846075 
http://codereview.appspot.com/5846075/


Other:
Issue 1690 
http://code.google.com/p/lilypond/issues/detail?id=1690: old 
announcements+changes on website - R5956046 
http://codereview.appspot.com/5956046/



Cheers,

Colin
--
More software projects have gone awry for lack of calendar time than for 
all other causes combined.

 - Fred Brooks, Jr., _The Mythical Man Month_

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


Re: lilypond-book: Set include path for --output option (issue 2423). (issue 5846075)

2012-03-29 Thread graham

LGTM

http://codereview.appspot.com/5846075/

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


Re: LSR is now on 2.14

2012-03-29 Thread James
Hello,

On 30 March 2012 02:24, Graham Percival gra...@percival-music.ca wrote:
...


 Well, currently I can't self-compile LilyPond or prepare a formal
 patch or sth else in this direction.
 Seems I have to learn a lot. ;)

 Yep.  To warn you: at the moment the quick start section of the
 CG is broken; following its instructions will give you neither a
 quick nor painless start.

 Your options are:
 1) go through the painful process of figuring out which parts are
 still valid and which are not.  Without a mentor, this will be
 especially painful.
 2) wait for lilydev to be updated (ETA: 6 weeks) and somebody to
 fix up at least the short quick start section (ETA: 1 month
 after lilydev is updated).
 3) ask/wait for somebody else to handle the LSR import.

 Unfortunately there is no magic wand that will let us offer you an
 option other than those three.  (unless I've forgotten about
 something, which is possible given my mental state these days.
 James: I have not forgotten about your recent work on lilydev, but
 I stand behind my pessimistic estimate)

I've updated LilyDev and been working with it this week testing the
basics - it makes the code and the doc. I've given Mike a copy of the
iso (as he was the only one I knew who used LilyDev in anger) and I
FTP'd the iso to Phil's website last night. As far as I know, this is
good to go.

Thomas the ISO is a 32 bit, 10.04 version of Ubuntu that can be
installed directly on hardware or, as I do, used in a Virtual Machine
on any x86 based hardware (i.e. Virtual Box for Windows/Mac/Linux).
I've compiled the binary using as little as 750mb of RAM with a single
CPU - you'll need about 10GB of disk space (give or take), but if you
ever wanted to make the whole doc you'd need more and 1 CPU with small
amounts of RAM would take a while to compile all the doc. For LSR you
don't need this, obviously.

It doesn't do GUB, but it has everything else asked for on the tracker.

I can take a look at the quick start over the weekend, but after the
iso is downloaded (and I am no programmer) I can be installed with
Virtual Box and have a compiled binary - of the latest dev version -
in less than an hour (assuming you have a relatively fast internet to
download the code) of which 80% of that is letting the computer just
run.

James

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