Re: Help with Scheme engraver please

2016-09-02 Thread Trevor Daniels

Thomas Morley wrote Friday, September 02, 2016 8:22 PM


> 2016-09-02 13:05 GMT+02:00 Trevor Daniels :
>>
>> There already is a helpful working example in the code base.  See
>>
>> input/regression/scheme-engraver.ly
>>
>> This doesn't go as far as creating new grobs, so I've attached a
>> simple example that does.  This is a bit of a hack, used as part of
>> a learning process, and a bit messy as it evolved from an earlier
>> attempt, but it illustrates one way.
>>
>> Actually, comments from the experts on this would be very helpful.
>
> I stumbled across you're printing a rest-glyph for a quarter-note.
> 
> Eventually I might have some ideas, but there are a plethora of
> variants for historic tablaures. Which glyphs do you want to be
> printed above the TabStaff for the code below. Only flags, flags with
> stems, stems only for quarters, what to do for notes longer than a
> quarter?
> 
> m = { \compressFullBarRests c'\maxima \longa \breve 1 2 4 8 16 32 }
> 
> <<
>  \new MensuralVoice \m
>  \new TabStaff \with { \revert TextScript.stencil }
>  \new TabVoice
>\with {
>  \consists \Lute_tab_duration_engraver
>} \m

I really know very little about lute tablature, but I believe there are many
different styles.  Should this ever get close to operational we'd need
to discuss which styles to support and what glyphs would be needed.
But I fear that's some way in the future.  The mensural (and rest) glyphs
I used in this little example are just markers really, while I explore how to
deal with other aspects - fingering, bass courses, articulations, etc.

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


Re: Help with Scheme engraver please

2016-09-02 Thread Thomas Morley
2016-09-02 13:05 GMT+02:00 Trevor Daniels :
>
> Simon, you wrote Friday, September 02, 2016 1:34 AM
>> I just caught up with all the mailing lists, being back from holiday,
>> and I’d be interested in a working example for this solution. Would you
>> mind sharing it?
>
> There already is a helpful working example in the code base.  See
>
> input/regression/scheme-engraver.ly
>
> This doesn't go as far as creating new grobs, so I've attached a
> simple example that does.  This is a bit of a hack, used as part of
> a learning process, and a bit messy as it evolved from an earlier
> attempt, but it illustrates one way.
>
> Actually, comments from the experts on this would be very helpful.

Hi Trevor,

I stumbled across you're printing a rest-glyph for a quarter-note.

Eventually I might have some ideas, but there are a plethora of
variants for historic tablaures. Which glyphs do you want to be
printed above the TabStaff for the code below. Only flags, flags with
stems, stems only for quarters, what to do for notes longer than a
quarter?

m = { \compressFullBarRests c'\maxima \longa \breve 1 2 4 8 16 32 }

<<
  \new MensuralVoice \m
  \new TabStaff \with { \revert TextScript.stencil }
  \new TabVoice
\with {
  \consists \Lute_tab_duration_engraver
} \m
>>

Cheers,
  Harm

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


Re: Mail to tranlati...@lilynet.net failing

2016-09-02 Thread Walter Garcia-Fontes
* Jean-Charles Malahieude, lily...@orange.fr [02/09/16 17:38]:
> Le 27/08/2016 à 10:05, Walter Garcia-Fontes a écrit :
> > In any case, my message said that I've prepared a new set of Catalan
> > translations:
> > 
> > http://puna.upf.edu/catalan_august_26_2016.zip
> 
> Back from vacation, I applied your patches on my local copy, but there are
> so many errors…

Thanks a lot Jean-Charles.

I must have messed up before committing because it seems to me I build
my patches cleanly, and some of the errors you found I seem to
remember to have corrected.

In any case I will try again and send a new set of patches,
Walter

--
Walter Garcia-Fontes
L'Hospitalet de Llobregat

-- 
Walter Garcia-Fontes
mailto: walter.gar...@upf.edu - http://puna.upf.edu
Departament d'Economia i Empresa - http://www.econ.upf.edu
Universitat Pompeu Fabra
Ramon Trias Fargas 25-27, 08005 Barcelona, Spain
Tel. +34 93 542 2722 - Fax. +34 93 542 1746


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


Re: Mail to tranlati...@lilynet.net failing

2016-09-02 Thread Jean-Charles Malahieude

Le 27/08/2016 à 10:05, Walter Garcia-Fontes a écrit :

Mail to lilynet.net is failing with the following error:

Delivery to the following recipient failed permanently:

 translati...@lilynet.net

Technical details of permanent failure:
DNS Error: 21251920 DNS type 'mx' lookup of lilynet.net responded with code 
NXDOMAIN
Domain name not found: lilynet.net

In any case, my message said that I've prepared a new set of Catalan
translations:

http://puna.upf.edu/catalan_august_26_2016.zip


Back from vacation, I applied your patches on my local copy, but there 
are so many errors…

Please keep in mind that, notwithstanding the spelling,

1- what is in the @menu MUST be equal to what comes after @node:

  @menu
  *hotdog::  For snacking
  @end menu

  @node hotdog
  @section Bred and sausage and mustard

2- what is in @ref{…} MUST be equal to what comes after @node:

  …foo @ref{hotdog}
or
 …foo @rXXnamed{hotdog, Hotdogs}

Another help  is to check the MANUAL.log file: except for those 
cross-references dealing with manuals that are not translated (mainly 
snippets and internals), you should not get any line like


WARNING: Unable to find node 'Escriptura de les notes' in book notation.

I had first to amend ca/notation/rhythms.itely (see 
ca-notation-rhythms-TODO) before being able to fully build the docs.


What I usually do is
 - translate or upgrade
 - check the docs fully build
 - check the log-files for potential bad cross-references
 - make doc-clean
 - make doc
and then only commit.


Cheers,
Jean-Charles
WARNING: Unable to find node 'Escriptura de les notes' in book notation.
WARNING: Unable to find node 'Lligadures d'unió' in book notation.
WARNING: Unable to find node 'Lligadures d'expressió' in book notation.
WARNING: Unable to find node 'Lligadures de fraseig' in book notation.
WARNING: Unable to find node 'Matisos dinàmics' in book notation.
WARNING: Unable to find node 'Explicació dels contextos' in book notation.
WARNING: Unable to find node 'LilyPond Scheme-Syntax' in book extending.
WARNING: Unable to find node 'L'ordre tweak' in book notation.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Costum tablatures' in book notation.
WARNING: Unable to find node 'Costum tablatures' in book notation.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Clau' in book internals.
WARNING: Unable to find node 'Altures y armadures' in book learning.
WARNING: Unable to find node 'Altures i armadures' in book learning.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Tessitura' in book internals.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'slurs' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Groupig staves' in book notation.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Duracions' in book snippets.
WARNING: Unable to find node 'Altures' in book snippets.
@@ 

PATCHES: Countdown for September 2nd

2016-09-02 Thread James

Hello,

Here is the current patch countdown list. The next countdown will be on
September 5th

A quick synopsis of all patches currently in the review process can be
found here:

http://philholmes.net/lilypond/allura/

__


Push:


4960 Fix micro-tones assigned to strings in TabStaff - Thomas Morley
https://sourceforge.net/p/testlilyissues/issues/4960
http://codereview.appspot.com/308230043


4958 Expand description of the engraver hooks - Trevor Daniels
https://sourceforge.net/p/testlilyissues/issues/4958
http://codereview.appspot.com/310070043


Countdown:


4961 Convert a bunch of C++ internals to degrees rather than radians - 
David Kastrup

https://sourceforge.net/p/testlilyissues/issues/4961
http://codereview.appspot.com/305380043


Review:


4937 [GSoC] Implement cross-voice dynamic spanners - starrynte
https://sourceforge.net/p/testlilyissues/issues/4937
http://codereview.appspot.com/304160043


New: No new Patches at this time.


Waiting


4600 Let notes/rests suppress multi-measure rest grobs - Dan Eble
https://sourceforge.net/p/testlilyissues/issues/4600
http://codereview.appspot.com/265160043



Regards

James

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



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


Re: Minor website typo

2016-09-02 Thread Phil Holmes
I know.  I first tried to release it on 13 August, but problems meant it 
didn't actually get released until quite a bit later.  I manually changed 
the entries in the web manuals, but missed the front page.  Don't think it's 
a big enough problem to worry about.


--
Phil Holmes


- Original Message - 
From: "Jon Ciesla" 

To: 
Sent: Friday, September 02, 2016 2:58 PM
Subject: Minor website typo


Hey, just so someone knows, the website says 2.9.47 came out 8/13.  It 
came

out 8/31.

-j

--
http://cecinestpasunefromage.wordpress.com/

in your fear, seek only peace
in your fear, seek only love

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




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


Minor website typo

2016-09-02 Thread Jon Ciesla
Hey, just so someone knows, the website says 2.9.47 came out 8/13.  It came
out 8/31.

-j

-- 
http://cecinestpasunefromage.wordpress.com/

in your fear, seek only peace
in your fear, seek only love

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


Re: Help with Scheme engraver please

2016-09-02 Thread Trevor Daniels

Simon, you wrote Friday, September 02, 2016 1:34 AM

Hi Simon,

>On 24.08.2016 11:51, Trevor Daniels wrote:
>> David Kastrup wrote Wednesday, August 24, 2016 7:48 AM
>>> "Trevor Daniels"  writes:
 Prompted by the recent discussion on lute tablature, I tried coding a
 Scheme engraver to create the duration grobs but quickly ran into a
 problem.  I need to collect information from both a Listener and an
 Acknowledger so the obvious place to build the grob is in
 stop-translator-timestep,
>>> No, no, no.  stop-translator-timestep really is only for cleanup work.
>>> Stuff is no longer in working order then.  You want process-acknowledged
>>> here I think.
>>>
>>> There will always be a call to process-acknowledged whenever grobs have
>>> been created, and_reading_  stuff from grobs should be delayed until
>>> then since other acknowledgers might_write_  stuff into a grob even
>>> after your personal acknowledger has been called.  So the basic workflow
>>> is to use the various acknowledgers to_record_  the grobs you are
>>> interested in and_write_  stuff into them (or do read/write stuff that
>>> more or less is accumulative and/or really unrelated to other
>>> engravers), and then use the process-acknowledged hook for processing
>>> (including_reading_) the grobs you had recorded.
>>>
>>> You can create new grobs in process-acknowledged.  That will lead to a
>>> new cycle of acknowledger calls followed by process-acknowledged.  Only
>>> when all those cycles are over is stop-translator-timestep called, and
>>> then creating grobs is no longer an option.
>>
>> Thanks David.  That's beautifully clear.
>
> I just caught up with all the mailing lists, being back from holiday, 
> and I’d be interested in a working example for this solution. Would you 
> mind sharing it?

There already is a helpful working example in the code base.  See

input/regression/scheme-engraver.ly

This doesn't go as far as creating new grobs, so I've attached a
simple example that does.  This is a bit of a hack, used as part of
a learning process, and a bit messy as it evolved from an earlier
attempt, but it illustrates one way.

Actually, comments from the experts on this would be very helpful.

Trevor
\version "2.19.40"

% Example of using Scheme engraver to add markup based on note duration

% Avoids repeated durations on both chords and consecutive notes

%{
TODO
  Handle notes with different durations at one musical moment better
  Add dots
  Add bass courses
%}

#(define (t->m t)
   "Return the current moment of translator object @var{t}."
   (ly:context-current-moment (ly:translator-context t)))

% persistent variables for Lute_tab_duration_engraver
#(define previous-duration-log #f)	% to supress repeated durations
#(define ev #f)		% event
#(define en #f)		% engraver

Lute_tab_duration_engraver =
#(make-engraver
   ((initialize translator)
(format 1 "\n\n~16a: (initialize)\n" (t->m translator)))
   ((start-translation-timestep translator)
(set! ev #f)
(set! en #f)
(format 1 "~16a: (start-translation-timestep)\n" (t->m translator)))
   (listeners
 ((note-event engraver event)
  ; Save just the last event at each timestep
  ;TODO save shortest duration event?
  (set! ev event)
  (set! en engraver)
  (format 1 "~16a: detected this note event: ~a\n "
(t->m engraver) event)))
   (acknowledgers
 ((note-head-interface engraver grob source-engraver)
  (format 1 "~16a: saw ~a coming from ~a\n"
  (t->m engraver) grob source-engraver)))
   (end-acknowledgers
 ((beam-interface engraver grob source-engraver)
  (format 1 "~16a: saw end of ~a coming from ~a\n"
  (t->m engraver) grob source-engraver)))
   ((process-music translator)
(format 1 "~16a: (process-music)\n" (t->m translator))
(if ev
  (let ((duration-log
 (ly:duration-log (ly:event-property ev 'duration
(display duration-log)
(if (not (equal? duration-log previous-duration-log))
(let ((grob (ly:engraver-make-grob en 'TextScript ev)))
  (set! previous-duration-log duration-log)
  (ly:grob-set-property! grob 'direction UP)
  (ly:grob-set-property! grob 'text
(case duration-log
  ((2) (markup (#:musicglyph "rests.M2mensural")))
  ((3) (markup (#:musicglyph "flags.mensuralu03")))
  ((4) (markup (#:musicglyph "flags.mensuralu04")))
  ((5) (markup (#:musicglyph "flags.mensuralu05")))
  ((6) (markup (#:musicglyph "flags.mensuralu06")))
  (else (markup " ")
   ((process-acknowledged translator)
(format 1 "~16a: (process-acknowledged)\n" (t->m translator)))
   ((stop-translation-timestep translator)
(format 1 "~16a: (stop-translation-timestep)\n" (t->m translator)))
   ((finalize translator)
(format 1 "~16a: (finalize)\n" (t->m