Re: Fix for issue 1706. (issue4662047)

2011-06-24 Thread mtsolo

On 2011/06/23 17:48:23, hanwenn wrote:

* Test missing.
* Should print programming_error if dir == CENTER.
* I'd use linear_combination on dir instead, so it is symmetric in

up/down.


Done, done, and done.

Cheers,
MS

http://codereview.appspot.com/4662047/

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


Re: Implements multiple-line non-cross-staff glissandi (issue4527086)

2011-06-24 Thread m...@apollinemike.com
On Jun 13, 2011, at 1:03 PM, m...@apollinemike.com wrote:

 On Jun 12, 2011, at 5:49 PM, n.putt...@gmail.com wrote:
 
 On 2011/06/05 10:18:18, mike_apollinemike.com wrote:
 On Jun 2, 2011, at 9:00 PM, mailto:n.putt...@gmail.com wrote:
 
 
 http://codereview.appspot.com/4527086/diff/7002/scm/output-lib.scm
 File scm/output-lib.scm (right):
 
 
 http://codereview.appspot.com/4527086/diff/7002/scm/output-lib.scm#newcode795
 scm/output-lib.scm:795: (define-public
 (glissando::before-line-breaking
 grob)
 Possibly silly question: can't you fold this into callbacks for
 left-bound-info/right-bound-info instead?
 
 Sorry - I don't get what you mean :(  Could you please elaborate?
 
 You're calculating a value for 'Y which you add back into bound-details.
 This bypasses the default calculation in calc_bound_info ().  Why not
 caculate 'Y when left-bound-info/right-bound-info is requested, either
 directly in C++ or as glissando-specific scheme versions?
 
 
 My goal is to bypass the default calculation and replace it with this one, 
 and it is easier to harvest the information about Y placement relative to the 
 staff before line breaking happens.  Currently, there is no mechanism in 
 Line_spanner::calc_bound_info that can outsource the Y calculation to another 
 function, and I wouldn't want to code dup all of the parts of 
 Line_spanner::calc_bound_info that are worth keeping into a glissando 
 specific function.  Taking that into account, does that seem like the right 
 approach?
 

Just touching base on this thread to see if the explanation above makes sense 
and, if so, if it is push-ready.

Cheers,
MS


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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread pkx166h

Thanks Keith and Carl.

Pushed as

20596e17d6f8026f7199c9ae0e5f03517631a66c

Closing this issue

http://codereview.appspot.com/4627062/

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


Re: New breve rest with ledger lines (issue4650052)

2011-06-24 Thread bordage . bertrand

Yes, sorry for that.
Just for information, ancient fonts are stored in the parmesan-* files.
For the ancient fonts, we really need to think about a less hard-coded
solution.

http://codereview.appspot.com/4650052/

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


Re: question about mod dates in my git tree for resetted files

2011-06-24 Thread Graham Percival
On Fri, Jun 24, 2011 at 01:57:13AM +, James Lowe wrote:
 Usually when I make some patches and post on Rietveld, I make a
 .patch file, save it somewhere safe and then 'reset' my tree
 (abort in Lilygit.tcl). This means I can work on other stuff
 without having to do complicated stuff (for me) in gitk or git
 cli.

Incidently, this is exactly what branches are used for in git.
Since you're already proficient in lily-git.tcl, and since you
seem to do a lot of this stuff, and since you enjoy playing with
open-source technology, it might be time to start doing some
serious reading about git and leave lily-git.tcl behind.

I'd allocate 10 hours of tutorial reading until things click,
but I know that you have a fair amount of down time during your
day job.

Cheers,
- Graham

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


Adds ly:engraver-property to engraver-scheme (issue1878048)

2011-06-24 Thread mtsolo

Reviewers: ,

Message:
I found this 10-month old patch of mine laying around.  It still seems
relevant, so I'm sending it to the list.  Lemme know what y'all think.

Description:
Adds ly:engraver-property to engraver-scheme



Adds ly:engraver-property to engraver-scheme

Get rid of whitespace error...

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

Affected files:
  M lily/engraver-scheme.cc


Index: lily/engraver-scheme.cc
diff --git a/lily/engraver-scheme.cc b/lily/engraver-scheme.cc
index  
409831e8804e55a92770742d4a2c26379f63fd05..ea8f3dec2b9044bcf89ea7c2a3e357f09f0b9be0  
100644

--- a/lily/engraver-scheme.cc
+++ b/lily/engraver-scheme.cc
@@ -54,3 +54,23 @@ LY_DEFINE  
(ly_engraver_announce_end_grob, ly:engraver-announce-end-grob,


   return SCM_UNSPECIFIED;
 }
+
+LY_DEFINE (ly_engraver_property, ly:engraver-property,
+  2, 1, 0, (SCM engraver, SCM sym, SCM val),
+  Return the value for property @var{sym} of @var{engraver}.
+If no value is found, return @var{val} or @code{'()}
+   if @var{val} is not specified.)
+{
+  Engraver *e = unsmob_engraver (engraver);
+
+  LY_ASSERT_TYPE (unsmob_engraver, engraver, 1);
+  LY_ASSERT_TYPE (ly_is_symbol, sym, 2);
+  if (val == SCM_UNDEFINED)
+val = SCM_EOL;
+
+  SCM retval = e-internal_get_property (sym);
+  if (retval == SCM_EOL)
+retval = val;
+
+  return retval;
+}



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


Re: Allows glissandi to span multiple lines. (issue4564042)

2011-06-24 Thread percival . music . ca

On 2011/05/30 07:38:19, mike_apollinemike.com wrote:

I'm flying to Ireland today  will attempt to crunch this during the

flight.

This was almost a month ago.  Are you sailing to Ireland instead of
flying?  ;)

What's the status of this patch?  If you think that draft 2 is correct,
then I'll add it to the next patch countdown.


http://codereview.appspot.com/4564042/

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


Re: Allows glissandi to span multiple lines. (issue4564042)

2011-06-24 Thread m...@apollinemike.com
Sorry - this patch is obsolete.  The new one is at:

http://codereview.appspot.com/4527086

Sorry for not having removed the old one, and yes, please add the new one to 
the countdown (it has gone through a round of commentary).

Cheers,
MS

On Jun 24, 2011, at 4:28 PM, percival.music...@gmail.com wrote:

 On 2011/05/30 07:38:19, mike_apollinemike.com wrote:
 I'm flying to Ireland today  will attempt to crunch this during the
 flight.
 
 This was almost a month ago.  Are you sailing to Ireland instead of
 flying?  ;)
 
 What's the status of this patch?  If you think that draft 2 is correct,
 then I'll add it to the next patch countdown.
 
 
 http://codereview.appspot.com/4564042/

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


Re: Patch meister

2011-06-24 Thread Graham Percival
On Thu, Jun 23, 2011 at 09:31:45PM -0600, Colin Campbell wrote:
 I could take it on, Graham.  In some ways it's just a bit further
 and more formal than the screening I've been trying to do.

ok, great!  I was just discussing the needs work aspect with
James because he has an incredibly powerful new computer, so could
you get started with the patch countdown?

In 24 hours or more (after Sat 13:00 UK time), please send a
PATCHES: 48-hour countdown for... email.


if you notice any needs_work patch that should/could be
review, then by all means change it -- but sending out the patch
countdowns takes priority.

 I'd suggest a minor edit on your blog though: after the list of
 steps in You can help, you might s/need/mind ;

heh, yeah.  Thanks, fixed.

 A related question, though: how do we go about tying issues and
 patches closer together?

At the moment, I don't want to cause any disruption to the current
development.

 It would be extremely valuable either to
 *require* that anything on reitveld have a formal issue number, even
 if it's a dev contributing a hey, look what I wrote enhancement,
 or to look for a different platform which combines issue tracking
 with patch management.

We certainly want to look for a different platform; that's on the
GOP list.

 As it sits, reitveld doesn't manage
 projects, only developers, and the issues on code.google.com don't
 reflect all the issues/patched needing attention. Should we start a
 GOP discussion, at least to get the views of the developer community
 on record?

At the moment, let's blunder forward as usual.  Yes, this means
more work for you, me, and James... but it's only about 15-30
minutes of extra admin overhead each week, and there's bigger fish
to fry in GOP.  I think we'll get around to a GOP discussion about
this stuff in August?

Cheers,
- Graham

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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Benjamin Peterson
 k-ohara5a5a at oco.net writes:

 
 The bad news is, you replaced tabs by 4 columns when we needed 8 column.
 The good news is, so far as I can see, there were no un-wanted changes
 (no cases were we needed a literal tab).

But the GOP says use 4 spaces per indentation level!

 
 http://codereview.appspot.com/4627062/
 





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


Re: Adds ly:engraver-property to engraver-scheme (issue1878048)

2011-06-24 Thread Han-Wen Nienhuys
On Fri, Jun 24, 2011 at 11:40 AM,  mts...@gmail.com wrote:
 Reviewers: ,

 Message:
 I found this 10-month old patch of mine laying around.  It still seems
 relevant, so I'm sending it to the list.  Lemme know what y'all think.

What would this be used for?  Normally in Scheme you'd have a context
with already exports its properties.  Engraver::get_property is just a
convenience for the C++ side.

-- 
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen

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


Re: Fix for issue 1706. (issue4662047)

2011-06-24 Thread pkx166h

On 2011/06/24 06:22:48, MikeSol wrote:

On 2011/06/23 17:48:23, hanwenn wrote:
 * Test missing.
 * Should print programming_error if dir == CENTER.
 * I'd use linear_combination on dir instead, so it is symmetric in

up/down.





Done, done, and done.



Cheers,
MS


Mike I ran a reg test against this new beam code and I get significant
differences on

test-output-distance.ly



http://codereview.appspot.com/4662047/

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


Re: Fix for issue 1706. (issue4662047)

2011-06-24 Thread percival . music . ca

On 2011/06/24 15:51:14, J_lowe wrote:

Mike I ran a reg test against this new beam code and I get significant
differences on



test-output-distance.ly


Umm...
http://lilypond.org/doc/v2.15/Documentation/contributor/regtest-comparison
... maybe we should change the background of @warning{} boxes to be #F00
?


That said, this patch apparently removes 5
  warning: MIDI channel wrapped around
  warning: remapping modulo 16
which seems weird to me.  But hey, it's removing a misleading-looking
warning, so that's a good thing, right?  :)

Cheers,
- Graham

http://codereview.appspot.com/4662047/

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


Re: Adds ly:engraver-property to engraver-scheme (issue1878048)

2011-06-24 Thread percival . music . ca

thanks, added as
http://code.google.com/p/lilypond/issues/detail?id=1708

http://codereview.appspot.com/1878048/

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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Reinhold Kainhofer
Am Freitag, 24. Juni 2011, 15:38:21 schrieb Benjamin Peterson:
  k-ohara5a5a at oco.net writes:
  The bad news is, you replaced tabs by 4 columns when we needed 8 column.
  The good news is, so far as I can see, there were no un-wanted changes
  (no cases were we needed a literal tab).
 
 But the GOP says use 4 spaces per indentation level!

Exactly. But tab != indentation level.

In particular, some editors simply replace all sequences of eight spaces by 
one tab (that's one coding style that we want to get rid of). So, whenever you 
see a tab in the code, it does not mean indent one level, but it rather 
means exactly eight spaces.

Cheers,
Reinhold

-- 
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * LilyPond, Music typesetting, http://www.lilypond.org

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


RE: Fix for issue 1706. (issue4662047)

2011-06-24 Thread James Lowe
Oops

From: lilypond-devel-bounces+james.lowe=datacore@gnu.org 
[lilypond-devel-bounces+james.lowe=datacore@gnu.org] on behalf of 
pkx1...@gmail.com [pkx1...@gmail.com]
Sent: 24 June 2011 16:51
To: mts...@gmail.com; carl.d.soren...@gmail.com; hanw...@gmail.com
Cc: re...@codereview.appspotmail.com; lilypond-devel@gnu.org
Subject: Re: Fix for issue 1706. (issue4662047)

On 2011/06/24 06:22:48, MikeSol wrote:
 On 2011/06/23 17:48:23, hanwenn wrote:
  * Test missing.
  * Should print programming_error if dir == CENTER.
  * I'd use linear_combination on dir instead, so it is symmetric in
up/down.
 

 Done, done, and done.

 Cheers,
 MS

Mike I ran a reg test against this new beam code and I get significant
differences on

test-output-distance.ly



Sorry Mike (and everyone)

I misread the CG. That one always changes :)

Otherwise ok.

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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Graham Percival
On Fri, Jun 24, 2011 at 01:38:21PM +, Benjamin Peterson wrote:
  k-ohara5a5a at oco.net writes:
 
  The bad news is, you replaced tabs by 4 columns when we needed 8 column.
  The good news is, so far as I can see, there were no un-wanted changes
  (no cases were we needed a literal tab).
 
 But the GOP says use 4 spaces per indentation level!

In the old/bad style that emacs produced, one tab was used to
represent 8 spaces.  Yes, it was doubly confusing.

Cheers,
- Graham

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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Matthias Kilian
[slightly offtopic tab size rant ;-)]

On Fri, Jun 24, 2011 at 04:44:21PM +0100, Graham Percival wrote:
 In the old/bad style that emacs produced, one tab was used to
 represent 8 spaces.  Yes, it was doubly confusing.

Well, no. People and/or editors who used one tab per indentation
level (and probably fiddling with the displayed *tab* width other
than 8 spaces) where confused.

Whenever I see any file that needs a tab width other than 8 spaces
to display correctly (be it programs, be it configuration files),
I get *very* upset.

That said, as people today don't know the difference between tab
width and indentation, it's still good to forbid tabs at all in
lilypond ;-)

Ciao,
Kili

ps: when I started working on unix (in the late 80ths), I abused
tabs for indentation, too. But it took me only a few months to
recognize that error.

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


Re: Adds ly:engraver-property to engraver-scheme (issue1878048)

2011-06-24 Thread pkx166h

Passes reg tests

http://codereview.appspot.com/1878048/

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


Tuning fixes

2011-06-24 Thread Graham Breed
I've found and patched two problems with the pitch bend
tuning code:

1) The pitch isn't always rounded to the nearest equally
tempered value, so the result looks strange in a sequencer,
and artifacts caused by the pitch bends are more severe.

2) The tuning is rounded to cents before the pitch bends
are calculated.  It may not be a big deal, but there's no
need for it, and the code's simpler calculating the bends
directly.

I don't think either of these are registered issues.  As
I'm new with Git, the two issues are mixed in the two
patches.  Problem (1) is fixed in get_semitone_pitch().
It's just a question of rounding off the result.
Everything else is for problem (2).


  Graham
From d402cd356203205f4863ad35f67ae23ff3422a03 Mon Sep 17 00:00:00 2001
From: Graham Breed gbr...@gmail.com
Date: Fri, 24 Jun 2011 00:12:52 +0100
Subject: [PATCH 1/2] Pitch bends of full precision centered on zero.

---
 configure.in  |2 +-
 lily/midi-item.cc |   13 -
 2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/configure.in b/configure.in
index cf0178f..1ea0428 100644
--- a/configure.in
+++ b/configure.in
@@ -140,7 +140,7 @@ STEPMAKE_PYTHON_DEVEL(REQUIRED)
 
 STEPMAKE_PATH_PROG(GHOSTSCRIPT, gs, OPTIONAL, 8.60)
 
-STEPMAKE_PATH_PROG(FONTFORGE, fontforge, REQUIRED, 20100501)
+STEPMAKE_PATH_PROG(FONTFORGE, fontforge, REQUIRED, 20090923)
 STEPMAKE_PATH_PROG(FONTFORGE, fontforge, OPTIONAL, 20110222)
 
 STEPMAKE_PATH_PROG(T1ASM, t1asm, REQUIRED)
diff --git a/lily/midi-item.cc b/lily/midi-item.cc
index 1fcb259..bbc4691 100644
--- a/lily/midi-item.cc
+++ b/lily/midi-item.cc
@@ -28,10 +28,8 @@
 #include string-convert.hh
 #include warn.hh
 
-#define PITCH_WHEEL_TOP 0x3FFF
 #define PITCH_WHEEL_CENTER 0x2000
-#define PITCH_WHEEL_BOTTOM 0x
-#define PITCH_WHEEL_RANGE (PITCH_WHEEL_TOP - PITCH_WHEEL_BOTTOM)
+#define PITCH_WHEEL_SEMITONE 0X1000
 
 Midi_item *
 Midi_item::get_midi (Audio_item *a)
@@ -193,14 +191,14 @@ Midi_note::get_fine_tuning () const
 		   + audio_-transposing_.tone_pitch ()) * Rational (2);
   tune -= Rational (get_semitone_pitch ());
 
-  tune *= 100;
+  tune *= PITCH_WHEEL_SEMITONE;
   return (int) double (tune);
 }
 
 int
 Midi_note::get_semitone_pitch () const
 {
-  return int (double ((audio_-pitch_.tone_pitch ()
+  return int (0.5 + double ((audio_-pitch_.tone_pitch ()
 		   + audio_-transposing_.tone_pitch ()) * Rational (2)));
 }
 
@@ -214,10 +212,7 @@ Midi_note::to_string () const
   // print warning if fine tuning was needed, HJJ
   if (get_fine_tuning () != 0)
 {
-  finetune = PITCH_WHEEL_CENTER;
-  // Move pitch wheel to a shifted position.
-  // The pitch wheel range (of 4 semitones) is multiplied by the cents.
-  finetune += (PITCH_WHEEL_RANGE *get_fine_tuning ()) / (4 * 100);
+  finetune = PITCH_WHEEL_CENTER + get_fine_tuning();
 
   str += ::to_string ((char) (0xE0 + channel_));
   str += ::to_string ((char) (finetune  0x7F));
-- 
1.7.0.4

From 888b2f2ab042e0cd966f53a21e027a1d385ac818 Mon Sep 17 00:00:00 2001
From: Graham Breed gbr...@gmail.com
Date: Fri, 24 Jun 2011 18:05:38 +0100
Subject: [PATCH 2/2] Small pitch bends correct and tested.

Pitch bends are not rounded to cents.
---
 lily/midi-item.cc |5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/lily/midi-item.cc b/lily/midi-item.cc
index bbc4691..02bdd7a 100644
--- a/lily/midi-item.cc
+++ b/lily/midi-item.cc
@@ -198,8 +198,9 @@ Midi_note::get_fine_tuning () const
 int
 Midi_note::get_semitone_pitch () const
 {
-  return int (0.5 + double ((audio_-pitch_.tone_pitch ()
-		   + audio_-transposing_.tone_pitch ()) * Rational (2)));
+  double tune = double ((audio_-pitch_.tone_pitch ()
+		   + audio_-transposing_.tone_pitch ()) * Rational (2));
+  return (tune  0)? int (tune + 0.5): int(tune - 0.5);
 }
 
 string
-- 
1.7.0.4

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


Re: Implements multiple-line non-cross-staff glissandi (issue4527086)

2011-06-24 Thread pkx166h

no problems in reg tests.

http://codereview.appspot.com/4527086/

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


Re: Tuning fixes

2011-06-24 Thread Graham Percival
On Fri, Jun 24, 2011 at 06:17:07PM +0100, Graham Breed wrote:
 I've found and patched two problems with the pitch bend
 tuning code:

Thanks, Janek will upload these to rietveld.

However, for patch 1 he will first remove the change to
configure.in; we now require at least fontforge 20100501.

Cheers,
- Graham

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


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Graham Percival
On Fri, Jun 24, 2011 at 07:49:02PM +0200, Matthias Kilian wrote:
 [slightly offtopic tab size rant ;-)]
 
 On Fri, Jun 24, 2011 at 04:44:21PM +0100, Graham Percival wrote:
  In the old/bad style that emacs produced, one tab was used to
  represent 8 spaces.  Yes, it was doubly confusing.
 
 Well, no. People and/or editors who used one tab per indentation
 level (and probably fiddling with the displayed *tab* width other
 than 8 spaces) where confused.

No, it's worse than that.  We had .py files which used:
  1 indent level  = 4 spaces
  2 indent levels = 1 tab
  3 indent levels = 1 tab + 4 spaces

That is, IMNSHO, at least doubly confusing.

 Whenever I see any file that needs a tab width other than 8 spaces
 to display correctly (be it programs, be it configuration files),
 I get *very* upset.

I get very upset when I see any file that needs a tab width to be
X spaces at all.  If somebody wants to use tabs to indicate
indentation, great!  X tabs = X levels of indentation.  If
somebody wants to use spaces to indicated indentation, that's
fine!  X spaces = K*X levels of indentation, where K is a
constant.  That's cool, I can swing with that.  But don't mix the
systems.  And using a tab to represent 8 spaces is not a saving
grace.

In my personal code, I sometimes do this:
def foo(x, y):
\tbar_baz(x,
\ty
\t)

but I'd never try to pass that off in a shared source project.
(and I'm finally in the process of repenting from tab ways and
switching all my .py files to 4-spaces.  Yes, it took me 4 years
to get around to reading those how to set up vim for python blog
posts)

Cheers,
- Graham

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


Re: \breakDynamicSpan breaks with \break (bounds of spanner are invalid)

2011-06-24 Thread Reinhold Kainhofer
I'm currently trying to understand what exactly is the cause of bugs #1259 and 
#1433:
http://code.google.com/p/lilypond/issues/detail?id=1259
http://code.google.com/p/lilypond/issues/detail?id=1433

Actually, both are symptoms of the same problem: Both set early_end_ in the 
dynamic-align-engraver.cc, so that the DynamicLineSpanner is bounded after the 
current/next moment. This works fine as long as the whole spanner is in one 
line. As soon as there is a line break during the spanner's (pre-truncating) 
lifetime, the error message appears.

It actually indicates that the DynamicTextSpanner (or the Hairpin) is longer 
than its parent DynamicLineSpanner. 
These error checks are in Spanner::do_break_processing, which is only called 
for breaks, so the error is printed only at line breaks.

What do you think would be the correct solution?

I notice that when I simply comment out in lily/spanner.cc the lines:
  -) continue; (line 120)
  -) span-suicide(); (line 133)
then the output looks just as expected (of course, I get the warnings/errors). 
However, I suppose these checks are there for a reason, so simply removing 
them would probably cause other problems...


Or would the correct solution be to set the bound not only for the line 
spanner when truncating it in 
Dynamic_align_engraver::stop_translation_timestep, but also to set the same 
bound for all child spanners?

I have tried this code instead of line_set_bound(d,bound), but that does not 
change a thing:
  line_-set_bound (d, bound);
  setSpanner *::iterator it;
  for ( it=running_.begin() ; it != running_.end(); it++ )
{
  (*it)-set_bound (d, bound);
}
  line_-set_bound (d, bound);

Is this the completely wrong approach or why are the child spanners still not 
contained in the parent DynamicLineSpanner?

Any idea how to properly fix the problem? 

Thanks,
Reinhold


Am Donnerstag, 2. Dezember 2010, 19:17:10 schrieb Reinhold Kainhofer:
 The regtest input/regression/dynamics-alignment-breaker.ly for
 \breakDynamicSpan works fine, but as soon as there are line breaks during a
 dynamic spanner, it breaks with error messages:
 
 Programmierfehler: Spanner `Hairpin' is not fully contained in parent
 spanner. Ignoring orphaned part
 Programmierfehler: bounds of spanner are invalid



-- 
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * LilyPond, Music typesetting, http://www.lilypond.org

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


Re: \breakDynamicSpan breaks with \break (bounds of spanner are invalid)

2011-06-24 Thread Reinhold Kainhofer
Am Freitag, 24. Juni 2011, 22:06:04 schrieb Reinhold Kainhofer:
 I'm currently trying to understand what exactly is the cause of bugs #1259
 and #1433:
 http://code.google.com/p/lilypond/issues/detail?id=1259
 http://code.google.com/p/lilypond/issues/detail?id=1433
[...]
 It actually indicates that the DynamicTextSpanner (or the Hairpin) is
 longer than its parent DynamicLineSpanner.
 These error checks are in Spanner::do_break_processing, which is only
 called for breaks, so the error is printed only at line breaks.

Of course, I realized that the final bounds for the hairpins and dynamic text 
spans are set when they are really ended, so setting the bound when the line 
spanner is shortened will be overwritten later on and does not have an effect.

So, shortening the dynamic spanners is not possible as a solution and it is 
perfectly legal that the spanners are longer than the parent line spanner. I 
realized that the only possible way is to mark the line spanner as shortened. 
As this is the only legal case when the parent might be shorter than the 
children, I tried to include an additional check for that case in 
Spanner::do_break_processing.
Unfortunately, the offending hairpin/dynamictext spanners do not have any X-
parent set in Spanner::do_break_processing, so setting a flag on shortened 
dynamic line spanners is also not possible...

Any ideas?

Thanks,
Reinhold

-- 
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * LilyPond, Music typesetting, http://www.lilypond.org

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


Re: Dynamic + text aligned: BEST solution?

2011-06-24 Thread Valentin Villenave
On Thu, Jun 23, 2011 at 1:53 PM, Graham Percival
gra...@percival-music.ca wrote:
 Please stop capitalizing patch.  If you're referring to issue
 1264, the patch broke the build, and in any case it's postponed
 until GLISS.

Er, no it didn't. (TBH, I do remember Neil noticing a very minor,
unrelated error though.)
The only reason why I didn't push forward is because you said it was a
GLISS thing... And since it's now integrated in my own framework as a
hackish superset on top of LilyPond, I've been happily and selfishly
using it for months without feeling the need to unearth it upstream
:-)

 It might be a good idea to learn some scheme, or at the very least
 do some more experimentation.  I mean, ultimately what matters is
 the quality of the output.  Try a few different commands in your
 scores, look at the output, and pick the one you like the best.

Xavier, this code is actually quite easy to understand; we have two
arguments dynamic and string, both of which are actually text
strings. The 'tweaks part is only there to add extra horizontal space,
based on the string-length of the string argument., and the 'text
property of the AbsoluteDynamicEvent we create is, well, the text that
will be printed (in this particular case, a markup that include the
dynamic argument, and the additional string as italic text).

If you have some time, please do read
http://lilypond.org/doc/v2.15/Documentation/extending/scheme-in-lilypond
and
http://www.gnu.org/software/guile/manual/
it makes for a fascinating reading reading experience, at least if
you're anything like me.

Feel free to ask me directly if you need more explanations about this
code or what I'm using now:
http://git.savannah.gnu.org/cgit/opus-libre.git/tree/bin/text.scm#n26

Cheers,
Valentin.

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


Re: Dynamic + text aligned: BEST solution?

2011-06-24 Thread Graham Percival
On Sat, Jun 25, 2011 at 12:44:30AM +0200, Valentin Villenave wrote:
 On Thu, Jun 23, 2011 at 1:53 PM, Graham Percival
 gra...@percival-music.ca wrote:
  Please stop capitalizing patch.  If you're referring to issue
  1264, the patch broke the build, and in any case it's postponed
  until GLISS.
 
 Er, no it didn't. (TBH, I do remember Neil noticing a very minor,
 unrelated error though.)

oops, I didn't click through enough old messages
comment 1, on draft 1:
http://codereview.appspot.com/2220041/
patch set 2 fixed it

Cheers,
- Graham

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


Add feta-flags to build system (issue4662055)

2011-06-24 Thread Carl . D . Sorensen

Reviewers: Janek Warchol,

Message:
Here is a revision of Janek's patch to separate feta-flags from
feta-noteheads.

I believe that it works properly; I rebuilt the fonts and the flags look
fine.

To test, you will need to do

rm mf/out/*  make

before testing a lilypond file.

Description:
Add feta-flags to build system

Put noteheads and flags in different fonts, but have them both
built at the same time, so black_notehead_width can be common
across both files.

If either font changes, both will be rebuilt, but only one rebuild
should happen.

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

Affected files:
  M mf/GNUmakefile
  M mf/bigcheese.pe.in
  A mf/feta-flags-generic.mf
  A mf/feta-flags11.mf
  A mf/feta-flags13.mf
  A mf/feta-flags14.mf
  A mf/feta-flags16.mf
  A mf/feta-flags18.mf
  A mf/feta-flags20.mf
  A mf/feta-flags23.mf
  A mf/feta-flags26.mf
  M mf/feta-noteheads-generic.mf
  M mf/feta-noteheads-test-generic.mf
  M mf/feta-noteheads.mf
  M scripts/build/gen-emmentaler-scripts.py
  M scripts/build/mf-to-table.py



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