automatic fingering annotation

2014-10-12 Thread erik flister
hi-

i'm writing some software that generates .ly files and want to offer
the option to automatically add (woodwind) fingering chart annotations
to the engraving.  the project is in haskell and i'd rather not learn
scheme or lilypond internals.  the problem is determining the octave
-- i want to support relative octave entry
(http://lilypond.org/doc/v2.18/Documentation/notation/writing-pitches#relative-octave-entry),
but i don't want to reimplement relative octave detection (not because
it's hard, but i in principle don't want to duplicate logic).

i would think automatic fingering annotation would be a desirable
feature in lilypond itself -- perhaps a markup flag where i request
the standard fingering for the note, maybe some way of selecting a
predefined alternate fingering (nice to have would be rules for
determining prefered fingerings from the previous note, a way to
define fingering libraries to choose from, etc).

i assume that wouldn't be anyone's priority to implement, so either i
could try to myself from within lilypond, or (my preference) i need
some way to ask lilypond for the octave -- either an API or
command-line program or something where i give an .ly snippet and
lilypond gives me back the absolute pitches.

what do you think would be the best way?

thanks!
-erik

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


Re: recorder diagram and some woodwind-diagram bugs

2014-10-12 Thread James
Erik,

On 12/10/14 04:05, erik flister wrote:
> hi there-
> sorry for cross posting to all the lists, i'd rather not subscribe and
> this post seems to apply to all three.
> 
> attached is a recorder diagram patch, would love for feedback and for
> it to be incorporated.  hopefully it's ok it's not actually in patch
> format, it just drops into display-woodwind-diagrams.scm (of course a
> corresponding entry needs to be added to
> woodwind-data-assembly-instructions in that file as well).

Can you make it patch format?

Then I can help push this through the proper review process. Although if
you do want to wait for people to comment (and I am not qualified to ...
sorry) then that is fine, but it will still need to be in patch format
in the end, it's up to you.

It's more likely to get more constructive reviews if it is a proper
patch though.

regards

James





> 
> my biggest problems:
> 
> - 1h (half-covered) works for eg 'flute two', but on my recorder thumb
> (T) it doesn't work -- it just shows fully covered.
> 
> - why are partial covers shown as shaded, then there is no distinction
> w/trills (ie 1h and 1hT are identical)?
> 
> i don't know scheme, so i was mainly pattern-matching from existing
> diagrams.  some issues i had while trying to figure this out:
> 
> - what is the purpose of the baked-in cc/lh/rh grouping?
> 
> - i can't find doc for draw-instructions rules -- seems to determine
> whether keys are hidden unless specified -- i didn't want that
> behavior, but was stuck unexpectedly getting it for a while.
> 
> - difference between identity and return-1 -- they sound identical to
> me (when xy-scaling), but gave different results.
> 
> - the style used encourages a lot of duplicated code -- it needs to be
> refactored so that keys are defined as simple declarative structures
> (with properties like name, group, position, complexity, stencil,
> textual-representation) and graphical/textual-commands derived
> therefrom.
> 
> - similarly, key positions should be described in relative terms --
> most stuff is absolute w/brittle hardcoding.
> 
> - explicit support for when there is no text-override (key name
> instead of graphical stencil) available.  i tripped across a
> previously reported bug that doesn't seem to have made it to the issue
> list even though it's a crash:
> (http://lists.gnu.org/archive/html/lilypond-user/2014-09/msg00405.html):
> 
>   c^
>   \markup \override #'(graphical . #f) {
>   \woodwind-diagram
> #'tin-whistle
> #'()
>   }
> 
> C:/Program Files 
> (x86)/LilyPond/usr/share/lilypond/current/scm/display-woodwind-
> diagrams.scm:1977:20: In procedure = in expression (= 0 (assoc-get node 
> draw-ins
> tructions)):
> C:/Program Files 
> (x86)/LilyPond/usr/share/lilypond/current/scm/display-woodwind-
> diagrams.scm:1977:20: Wrong type: #f
> 
> also broken for saxophone (a different error tho), but works for piccolo.
> for tin-whistle, seems to be from use of CENTRAL-COLUMN-HOLE-H-LIST
> instead of CENTRAL-COLUMN-HOLE-LIST.
> 
> - when using \override #'(graphical . #f) (is there a way to call this
> "textual"?) with an empty keylist, should show all possible text
> stencils (as it currently does for graphical).  also, how are partial
> coverings/trills handled in this case?
> 
> - would be nice if i didn't have to edit display-woodwind-diagrams.scm
> and instead could just \include my raw .scm file from a .ly file.
> 
> thanks!
> -erik
> 
> 
> 
> ___
> bug-lilypond mailing list
> bug-lilyp...@gnu.org
> https://lists.gnu.org/mailman/listinfo/bug-lilypond
> 


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


How to get the total length of Sequential Music

2014-10-12 Thread Hans Sommer
Hello,

I am relatively new to Lilypond. 
I try to check the total length of a SequentialMusic part, i.e. 


my_score_part = { c'4 d e f }

I want to get the result 4 quarters (or any other numerical representation)

and for 

my_score_part2 = { c'4 d e f g8}

should deliver 4 quarter and 1 eighth.

I found in the documentation the property:

 length-callback (procedure):

ly:music-sequence::cumulative-length-callback 


but I don't know how to use it.

I would be very thankful, if anybody could provide an example.

Best regards


Hans



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


Re: relative music inside music functions explodes when used twice

2014-10-12 Thread Janek Warchoł
Thanks David and Paul - that's helpful.  However, while the situation
improved the output is still not what i want:
\version "2.19.13"

voiceDivisi =
#(define-music-function (parser location m1 m2) (ly:music? ly:music?)
   #{
 \tag divI { $m1 }
 \tag divII { $m2 }
 \tag together << { \dynamicUp $m1 } \\ { \dynamicDown $m2 } >>
   #})

music = \relative c' {
  \voiceDivisi {
c4 d e f
  }{
a,1
  }
}
musicII = \relative c' {
  \voiceDivisi {
f4 e d c
  } {
a1
  }
}

\new Staff \with { instrumentName = "part I" }
\removeWithTag divII.together { \music \musicII }

\new Staff \with { instrumentName = "part II" }
\removeWithTag divI.together { \music \musicII }

\new Staff \with { instrumentName = "combined" }
\removeWithTag divI.divII { \music \musicII }

if i understand correctly, "relativization" happens too late, i.e. after
the music is processed by the voiceDivisi function.
How should i work around this?  Maybe instead of using tags i should write
a function with a switch statement inside?  I know that i can put \relative
command inside \voiceDivisi, but i'd like to avoid this as it would add a
lot of typing.

best,
Janek

2014-10-11 21:01 GMT+02:00 David Kastrup :

> Janek Warchoł  writes:
>
> > Hi,
> >
> > i have a function that takes music as an argument and uses it twice -
> each
> > time with a different tag appended, so that later on i can decide what to
> > output:
> >
> > voiceDivisi =
> > #(define-music-function (parser location m1 m2) (ly:music? ly:music?)
> >#{
> >  \tag divI \context Voice = "divI" { #m1 }
> >  \tag divII \context Voice = "divII" { #m2 }
> >  \tag together \context Voice = "both" << #m1 #m2 >>
> >#})
> >
> > The problem is that when used with relative mode, the output gets crazy:
> >
> > music = \relative c' {
> >   \voiceDivisi {
> > c4 d e f
> >   }
> >   {
> > e4 f g a
> >   }
> > }
> >
> > \new Staff \keepWithTag divI \music
> > \new Staff \keepWithTag divII \music
> > \new Staff \keepWithTag together \music
> >
> > (see attachment)
> >
> > I have checked that the problem disappears when the function uses the
> > arguments (m1 and m2) only once.  Is this a bug?
>
> No.
>
>  http://www.lilypond.org/doc/v2.19/Documentation/extending/adding-articulation-to-notes-_0028example_0029
> >
>
> In an earlier example, we constructed music by repeating a given
> music argument. In that case, at least one repetition had to be a
> copy of its own. If it weren’t, strange things may happen. For
> example, if you use \relative or \transpose on the resulting music
> containing the same elements multiple times, those will be subjected
> to relativation or transposition multiple times. If you assign them
> to a music variable, the curse is broken since referencing ‘\name’
> will again create a copy which does not retain the identity of the
> repeated elements.
>
> > Can i work around it, or maybe i should be doing this in an altogether
> > different way?
>
> Use ly:music-deep-copy on one of the copies.  Better both.  Or write $x
> instead of #x in order to get such a copy.
>
> --
> David Kastrup
>
>
> ___
> 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: Double clef (canon)

2014-10-12 Thread Jayaratna
Hi Pierre,

I guess your suggestion should better the note spacing. I have to experiment
on it though.

Thank you,
Andrea



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Double-clef-canon-tp167389p167447.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: relative music inside music functions explodes when used twice

2014-10-12 Thread David Kastrup
Janek Warchoł  writes:

> Thanks David and Paul - that's helpful.  However, while the situation
> improved the output is still not what i want:
> \version "2.19.13"
>
> voiceDivisi =
> #(define-music-function (parser location m1 m2) (ly:music? ly:music?)
>#{
>  \tag divI { $m1 }
>  \tag divII { $m2 }
>  \tag together << { \dynamicUp $m1 } \\ { \dynamicDown $m2 } >>
>#})
>
> music = \relative c' {
>   \voiceDivisi {
> c4 d e f
>   }{
> a,1
>   }
> }
> musicII = \relative c' {
>   \voiceDivisi {
> f4 e d c
>   } {
> a1
>   }
> }
>
> \new Staff \with { instrumentName = "part I" }
> \removeWithTag divII.together { \music \musicII }
>
> \new Staff \with { instrumentName = "part II" }
> \removeWithTag divI.together { \music \musicII }
>
> \new Staff \with { instrumentName = "combined" }
> \removeWithTag divI.divII { \music \musicII }
>
> if i understand correctly, "relativization" happens too late, i.e. after
> the music is processed by the voiceDivisi function.

I'm not even sure I understand _how_ you want the relativization to
happen.  One after the other?  In that case, you can use

voiceDivisi =
#(define-music-function (parser location m1 m2) (ly:music? ly:music?)
  (make-relative (m1 m2) #{ #m1 #m2 #}
  #{
  \tag divI { $m1 }
  \tag divII { $m2 }
  \tag together << { \dynamicUp $m1 } \\ { \dynamicDown $m2 } >>
  #}))

> How should i work around this?  Maybe instead of using tags i should
> write a function with a switch statement inside?  I know that i can
> put \relative command inside \voiceDivisi, but i'd like to avoid this
> as it would add a lot of typing.

It seems like the ingenuity of my make-relative macro never really
caught on...

By the way: I'm not sure it will be transparent enough to have << \\ >>
be recognized at the proper point of time.  If not, you'll need to use
explicit voices instead.

-- 
David Kastrup

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


Re: Double clef (canon)

2014-10-12 Thread Jayaratna
Hi Harm,

I don't really have a personal setup for mensural music. Recently I begun a
project that involves a lot of mensural notation, therefore I am still
learning and noticing . Usually I adjust flaws when they occur, just within
the notation rather than on the layout level, but I guess this is a flaw
inherent on my way of working with Lilypond, as I have never learnt it in a
theoretical and comprehensive way, adjusting my learning to specific needs
as per occurrence.

So far I think mensural and neomensural notation fonts to be a little
unbalanced. The diamond shaped noteheads are too small, in my opinion, while
the square shaped noteheads are generally good. I usually increase noteheads
size, but not as much as I would, as the risk is getting breves and longae
noteheads too big. I think there should be a way to selectively increase
noteheads sizes, but I still have to sort out the problem. Actually, before
consolidating my opinion I should try see more of it in print: so far I am
just in the phase of making drafts. I also usually increase stems thickness,
but, again, I should evaluate this on paper rather than on screen. Longae
stems are too short, generally speaking (why are they built in the glyph???
Not that I dislike it, actually it solved so many issues I had!). The real
pain comes with ligatures: I have to revert the noteheads size to default
whenever I want to type ligatures, with the unnerving result that ligatures
look smallish, especially compared to squared noteshapes. On the other side,
if I don't revert noteheads to their normal sizes, spacing within ligatures
is completely scattered. Obtaining black or half coloured ligatures is also
quite painful, but I still have to study the problem a little bit closer, as
I guess changing the font to black mensural should partly overcome the
issue. 

Again, as for the font balance, I have sometimes to mix mensural and
neomensural or petrucci shapes, especially for clefs and time signature
symbols. Probably this is due to the fact that it is impossible to have a
consistent classification of these glyphs, because I think printers of
various times and locations used a variety of mixed shapes. But, again, a
bass mensural clef is really too small, compared, say, to a petrucci C clef.
Overall, I feel the mensural part of our feta font works better in giving
the idea of a handwritten score rather than of a printed one. You also
noticed dots are generally too big, and some of the alteration symbols are
too small. 

Finally, the available repertoire of time signature symbols is not complete.
I had to type a piece with many proportional changes and I finally decided
to include in my scores a separate file with 20 custom time signature
commands, some of them being already implemented, others being made by
adding fractions to existing glyphs. Thankfully I haven't yet found a score
with a double crossed time signature symbol (like a O with an X above it),
but I feel this kind of symbol could be easily added to the font. In typing
proportional music I prefer to use a standard 2/1 time, my custom time
signature symbols and \scaleDurations accordingly. So far it has been the
easiest way: still I remind myself that I have never planned one of these
projects globally from scratch, but I am guilty of always working on problem
by problem occurrence solutions.

These are some of the features I am introducing so far in my mensural
typewriting, warning that they still have to be fine tuned when proofed on
paper (and printed at different sizes too):

\override Stem.neutral-direction = #up
\override NoteHead #'font-size = #2 
\override Dots #'font-size = #-2  
\override Stem.thickness = #2.0

I'd also like to hear from yours and others opinion on the topic.

Andrea



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Double-clef-canon-tp167389p167449.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: recorder diagram and some woodwind-diagram bugs

2014-10-12 Thread erik flister
ok here you go

On Sun, Oct 12, 2014 at 2:31 AM, James  wrote:
> Erik,
>
> On 12/10/14 04:05, erik flister wrote:
>> hi there-
>> sorry for cross posting to all the lists, i'd rather not subscribe and
>> this post seems to apply to all three.
>>
>> attached is a recorder diagram patch, would love for feedback and for
>> it to be incorporated.  hopefully it's ok it's not actually in patch
>> format, it just drops into display-woodwind-diagrams.scm (of course a
>> corresponding entry needs to be added to
>> woodwind-data-assembly-instructions in that file as well).
>
> Can you make it patch format?
>
> Then I can help push this through the proper review process. Although if
> you do want to wait for people to comment (and I am not qualified to ...
> sorry) then that is fine, but it will still need to be in patch format
> in the end, it's up to you.
>
> It's more likely to get more constructive reviews if it is a proper
> patch though.
>
> regards
>
> James
>
>
>
>
>
>>
>> my biggest problems:
>>
>> - 1h (half-covered) works for eg 'flute two', but on my recorder thumb
>> (T) it doesn't work -- it just shows fully covered.
>>
>> - why are partial covers shown as shaded, then there is no distinction
>> w/trills (ie 1h and 1hT are identical)?
>>
>> i don't know scheme, so i was mainly pattern-matching from existing
>> diagrams.  some issues i had while trying to figure this out:
>>
>> - what is the purpose of the baked-in cc/lh/rh grouping?
>>
>> - i can't find doc for draw-instructions rules -- seems to determine
>> whether keys are hidden unless specified -- i didn't want that
>> behavior, but was stuck unexpectedly getting it for a while.
>>
>> - difference between identity and return-1 -- they sound identical to
>> me (when xy-scaling), but gave different results.
>>
>> - the style used encourages a lot of duplicated code -- it needs to be
>> refactored so that keys are defined as simple declarative structures
>> (with properties like name, group, position, complexity, stencil,
>> textual-representation) and graphical/textual-commands derived
>> therefrom.
>>
>> - similarly, key positions should be described in relative terms --
>> most stuff is absolute w/brittle hardcoding.
>>
>> - explicit support for when there is no text-override (key name
>> instead of graphical stencil) available.  i tripped across a
>> previously reported bug that doesn't seem to have made it to the issue
>> list even though it's a crash:
>> (http://lists.gnu.org/archive/html/lilypond-user/2014-09/msg00405.html):
>>
>>   c^
>>   \markup \override #'(graphical . #f) {
>>   \woodwind-diagram
>> #'tin-whistle
>> #'()
>>   }
>>
>> C:/Program Files 
>> (x86)/LilyPond/usr/share/lilypond/current/scm/display-woodwind-
>> diagrams.scm:1977:20: In procedure = in expression (= 0 (assoc-get node 
>> draw-ins
>> tructions)):
>> C:/Program Files 
>> (x86)/LilyPond/usr/share/lilypond/current/scm/display-woodwind-
>> diagrams.scm:1977:20: Wrong type: #f
>>
>> also broken for saxophone (a different error tho), but works for piccolo.
>> for tin-whistle, seems to be from use of CENTRAL-COLUMN-HOLE-H-LIST
>> instead of CENTRAL-COLUMN-HOLE-LIST.
>>
>> - when using \override #'(graphical . #f) (is there a way to call this
>> "textual"?) with an empty keylist, should show all possible text
>> stencils (as it currently does for graphical).  also, how are partial
>> coverings/trills handled in this case?
>>
>> - would be nice if i didn't have to edit display-woodwind-diagrams.scm
>> and instead could just \include my raw .scm file from a .ly file.
>>
>> thanks!
>> -erik
>>
>>
>>
>> ___
>> bug-lilypond mailing list
>> bug-lilyp...@gnu.org
>> https://lists.gnu.org/mailman/listinfo/bug-lilypond
>>
>


0001-added-recorder-diagram.patch
Description: Binary data
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Contemporary Music Notation

2014-10-12 Thread Piaras Hoban
Hi all,

I'm a bit late to the party here but hope I can contribute something.

About two years ago I made the switch to using Lilypond exclusively as I
was getting tired of exporting pdfs with basic music notation and
overlaying graphics in Illustrator or some such. This was a real pain when
doing parts or making even the smallest of changes. Since then I've used
lilypond for a lot of pieces, all of which have some idiosyncratic
notational devices. There's very little I haven't been able to implement
successfully in lilypond (really just 1 thing that still evades me...
customised barlines aligning with first beat of a measure...).

I thought it might be interesting for those wondering what's possible in
lilypond to see some examples from the field. I've put together a page
collating those things I've done in the past year or so. Many of these
notational devices seem to be fairly standardized nowadays; or at least the
symbols appear consistently, even if the interpretation of their meaning
can vary a lot.

It would be great to develop a contemporary notation library for lilypond
making these notations readily available to any user, I'm not sure what
that would involve but I know it could be a major selling point for
lilypond in the contemporary music world.

For completeness sake here's index of what you see in the linked PDF
(naturally eveything you see here is generated using lilypond alone):

1) Split-stem chords/clusters
2) Stemmed glissando
3) Bezier glissando w/arrowhead
4) Variable width bezier glissando
5) Vibrato with variable/random period and slope
6) Interruptive polyphony
7) Lachenmann pressed bow
8) Billone beat notation
9) Pencil line emulation (after Charlie Sdraulig)
10) Sciarrino style jet-whistle
11) Woodwind fingering staff
12) Carin Levine style flute multiphonics
13) Klavierstuck X proof-of-concept
14) Sciarrino tremolo (with bezier hairpins)
15) Stockhausen cluster-glissando
16) Notation from a work of my own for violin

Hope this might be illuminating for others; lilypond is great for this kind
of stuff.

best wishes,

piaras hoban

​
 notation_sampler.pdf

​

On 12 October 2014 06:22, SoundsFromSound  wrote:

> Urs Liska wrote
> > Am 09.10.2014 06:31, schrieb Marco Bagolin:
> >> The notation contemporary music is so diverse, I know.
> >> I wonder if actually Lilypond has commands for drawing graphic
> >> symbols, as line circle, curve, square, circle, etc...
> >
> > A nice thing about LilyPond's approach is that once you have invented
> > something you can make it available as a command so it can easily be
> > reused. You can also make such commands process arguments so they can be
> > versatile and context-dependent.
> > As an example have a look at the attached image. This is what someone on
> > the list (Piaras Hoban) came up with when I asked for a function to
> > write a stemmed glissando notation. The underlying function is quite
> > complicated but you can use it by simply writing
> >
> > \stemmedGlissando #'(15 . #f) c'4
> >
> > to tell LilyPond that the next glissando will have 15 stems and no (the
> > #f) trailing grace note to indicate the target note.
> >
> > Stemmed-glissando.png (34K)
> > <
> http://lilypond.1069038.n5.nabble.com/attachment/167377/0/Stemmed-glissando.png>
> ;
>
> Urs,
>
> Is there more information on that stemmed gliss function? I'd be interested
> to read more on that for LilyPond. Thanks!
>
> Ben
>
>
>
>
> -
> composer | sound designer
> LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond
> --
> View this message in context:
> http://lilypond.1069038.n5.nabble.com/Contemporary-Music-Notation-tp167324p167437.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
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: automatic fingering annotation

2014-10-12 Thread David Nalesnik
Hi Erik,

On Sun, Oct 12, 2014 at 2:35 AM, erik flister 
wrote:

> hi-
>
> i'm writing some software that generates .ly files and want to offer
> the option to automatically add (woodwind) fingering chart annotations
> to the engraving.  the project is in haskell and i'd rather not learn
> scheme or lilypond internals.  the problem is determining the octave
> -- i want to support relative octave entry
> (
> http://lilypond.org/doc/v2.18/Documentation/notation/writing-pitches#relative-octave-entry
> ),
> but i don't want to reimplement relative octave detection (not because
> it's hard, but i in principle don't want to duplicate logic).
>
> i would think automatic fingering annotation would be a desirable
> feature in lilypond itself -- perhaps a markup flag where i request
> the standard fingering for the note, maybe some way of selecting a
> predefined alternate fingering (nice to have would be rules for
> determining prefered fingerings from the previous note, a way to
> define fingering libraries to choose from, etc).
>
> i assume that wouldn't be anyone's priority to implement, so either i
> could try to myself from within lilypond, or (my preference) i need
> some way to ask lilypond for the octave -- either an API or
> command-line program or something where i give an .ly snippet and
> lilypond gives me back the absolute pitches.
>

I can't offer any suggestions about manipulating the text file, but I hope
the following will be useful to you.

It is possible to create markups in the score through a Scheme engraver.
The one I've attached looks for a NoteHead that has had its
'display-property property set to #t.

(Aside 1:This is an invented property, and there is currently no good way
to add a property except by adding it to the codebase.  This method will
probably cause problems if you try to process a batch of files--though
removing the "symbol redefined" error will likely "fix" that.)

(Aside 2: I've thought for a long time that adding a generic marker
property to grobs would be very useful: store whatever you want in it to
act as an ID.)

This engraver prints the octave of notes in the score by way of a markup
command \placeholder, where you could substitute whatever logic goes into
making woodwind diagrams.   You'll want other info about the pitch, of
course, and there are Scheme functions for that.  See
http://lilypond.org/doc/v2.18/Documentation/internals/scheme-functions.

Best,

David
\version "2.19.10"


#(define (define-grob-custom-property symbol type? description)
   (if (not (equal? (object-property symbol 'backend-doc) #f))
   (ly:error (_ "symbol ~S redefined") symbol))

   (set-object-property! symbol 'backend-type? type?)
   (set-object-property! symbol 'backend-doc description)
   symbol)

#(define all-user-grob-custom-properties
   (map
(lambda (x)
  (apply define-grob-custom-property x))

`((display-fingering ,boolean? "Display woodwind fingering"

#(define-markup-command (placeholder layout props arg) (number?)
  (interpret-markup layout props (number->string arg)))

textToMarkedEngraver=
#(lambda (context)
   (make-engraver
(acknowledgers
 ((note-head-interface trans grob source)
  (let* ((cause (event-cause grob))
 (p (ly:event-property cause 'pitch))
 (marked? (ly:grob-property grob 'display-fingering))
 (marked? (and (boolean? marked?) marked?)))
(if marked?
(let* ((t (ly:engraver-make-grob trans 'TextScript cause)))
  (ly:grob-set-property! t 'text
#{ \markup \placeholder #(ly:pitch-octave p) #}

markAll = \override NoteHead.display-fingering = ##t
markOne = \once \markAll

%%% EXAMPLE

\relative c {
  \clef bass 
  c, \markOne c' c'
  \clef treble
  c' \markAll c' c'
}

\layout {
  \context {
\Staff
\consists #textToMarkedEngraver
  }
}___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: automatic fingering annotation

2014-10-12 Thread David Nalesnik
On Sun, Oct 12, 2014 at 9:34 AM, David Nalesnik 
wrote:
>
>
> It is possible to create markups in the score through a Scheme engraver.
> The one I've attached looks for a NoteHead that has had its
> 'display-property property set to #t.
>
>
I mean 'display-fingering...
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Contemporary Music Notation

2014-10-12 Thread David Nalesnik
On Sun, Oct 12, 2014 at 7:06 AM, Piaras Hoban 
wrote:

>
>
> I thought it might be interesting for those wondering what's possible in
> lilypond to see some examples from the field. I've put together a page
> collating those things I've done in the past year or so.
>

I'm speechless!

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


Re: How to get the total length of Sequential Music

2014-10-12 Thread David Nalesnik
Hi Hans,

On Sun, Oct 12, 2014 at 4:38 AM, Hans Sommer  wrote:

> Hello,
>
> I am relatively new to Lilypond.
> I try to check the total length of a SequentialMusic part, i.e.
>
>
> my_score_part = { c'4 d e f }
>
> I want to get the result 4 quarters (or any other numerical representation)
>
> and for
>
> my_score_part2 = { c'4 d e f g8}
>

(This isn't a valid name for a variable, so I changed it below.)


>
> should deliver 4 quarter and 1 eighth.
>
> I found in the documentation the property:
>
>  length-callback (procedure):
>
> ly:music-sequence::cumulative-length-callback
>
>
> but I don't know how to use it.
>
> I would be very thankful, if anybody could provide an example.
>
>
I'm not familiar with this property, but it's relatively easy to determine
the length of a music expression.  Try this:

 \version "2.19.10"

my_score_part = { c'4 d e f }

my_score_part_two = { c'4 d e f g8 }

#(display (ly:music-length my_score_part))

#(display (ly:music-length my_score_part_two))

Hope this is helpful,
David
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: automatic fingering annotation

2014-10-12 Thread Simon Albrecht

Hello David,

Am 12.10.2014 um 16:34 schrieb David Nalesnik:

Hi Erik,

On Sun, Oct 12, 2014 at 2:35 AM, erik flister > wrote:


hi-

i'm writing some software that generates .ly files and want to offer
the option to automatically add (woodwind) fingering chart annotations
to the engraving.  the project is in haskell and i'd rather not learn
scheme or lilypond internals.  the problem is determining the octave
-- i want to support relative octave entry

(http://lilypond.org/doc/v2.18/Documentation/notation/writing-pitches#relative-octave-entry),
but i don't want to reimplement relative octave detection (not because
it's hard, but i in principle don't want to duplicate logic).

i would think automatic fingering annotation would be a desirable
feature in lilypond itself -- perhaps a markup flag where i request
the standard fingering for the note, maybe some way of selecting a
predefined alternate fingering (nice to have would be rules for
determining prefered fingerings from the previous note, a way to
define fingering libraries to choose from, etc).

i assume that wouldn't be anyone's priority to implement, so either i
could try to myself from within lilypond, or (my preference) i need
some way to ask lilypond for the octave -- either an API or
command-line program or something where i give an .ly snippet and
lilypond gives me back the absolute pitches.


I can't offer any suggestions about manipulating the text file, but I 
hope the following will be useful to you.


It is possible to create markups in the score through a Scheme 
engraver.  The one I've attached looks for a NoteHead that has had its 
'display-property property set to #t.


(Aside 1:This is an invented property, and there is currently no good 
way to add a property except by adding it to the codebase.  This 
method will probably cause problems if you try to process a batch of 
files--though removing the "symbol redefined" error will likely "fix" 
that.)


(Aside 2: I've thought for a long time that adding a generic marker 
property to grobs would be very useful: store whatever you want in it 
to act as an ID.)
Perhaps the "id" property in 
? 
That came to my mind.


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


Re: Contemporary Music Notation

2014-10-12 Thread Urs Liska
That's terrific!

We should get in touch privately about the library stuff.

Urs

Am 12. Oktober 2014 14:06:17 MESZ, schrieb Piaras Hoban 
:
>Hi all,
>
>I'm a bit late to the party here but hope I can contribute something.
>
>About two years ago I made the switch to using Lilypond exclusively as
>I
>was getting tired of exporting pdfs with basic music notation and
>overlaying graphics in Illustrator or some such. This was a real pain
>when
>doing parts or making even the smallest of changes. Since then I've
>used
>lilypond for a lot of pieces, all of which have some idiosyncratic
>notational devices. There's very little I haven't been able to
>implement
>successfully in lilypond (really just 1 thing that still evades me...
>customised barlines aligning with first beat of a measure...).
>
>I thought it might be interesting for those wondering what's possible
>in
>lilypond to see some examples from the field. I've put together a page
>collating those things I've done in the past year or so. Many of these
>notational devices seem to be fairly standardized nowadays; or at least
>the
>symbols appear consistently, even if the interpretation of their
>meaning
>can vary a lot.
>
>It would be great to develop a contemporary notation library for
>lilypond
>making these notations readily available to any user, I'm not sure what
>that would involve but I know it could be a major selling point for
>lilypond in the contemporary music world.
>
>For completeness sake here's index of what you see in the linked PDF
>(naturally eveything you see here is generated using lilypond alone):
>
>1) Split-stem chords/clusters
>2) Stemmed glissando
>3) Bezier glissando w/arrowhead
>4) Variable width bezier glissando
>5) Vibrato with variable/random period and slope
>6) Interruptive polyphony
>7) Lachenmann pressed bow
>8) Billone beat notation
>9) Pencil line emulation (after Charlie Sdraulig)
>10) Sciarrino style jet-whistle
>11) Woodwind fingering staff
>12) Carin Levine style flute multiphonics
>13) Klavierstuck X proof-of-concept
>14) Sciarrino tremolo (with bezier hairpins)
>15) Stockhausen cluster-glissando
>16) Notation from a work of my own for violin
>
>Hope this might be illuminating for others; lilypond is great for this
>kind
>of stuff.
>
>best wishes,
>
>piaras hoban
>
>​
> notation_sampler.pdf
>
>​
>
>On 12 October 2014 06:22, SoundsFromSound 
>wrote:
>
>> Urs Liska wrote
>> > Am 09.10.2014 06:31, schrieb Marco Bagolin:
>> >> The notation contemporary music is so diverse, I know.
>> >> I wonder if actually Lilypond has commands for drawing graphic
>> >> symbols, as line circle, curve, square, circle, etc...
>> >
>> > A nice thing about LilyPond's approach is that once you have
>invented
>> > something you can make it available as a command so it can easily
>be
>> > reused. You can also make such commands process arguments so they
>can be
>> > versatile and context-dependent.
>> > As an example have a look at the attached image. This is what
>someone on
>> > the list (Piaras Hoban) came up with when I asked for a function to
>> > write a stemmed glissando notation. The underlying function is
>quite
>> > complicated but you can use it by simply writing
>> >
>> > \stemmedGlissando #'(15 . #f) c'4
>> >
>> > to tell LilyPond that the next glissando will have 15 stems and no
>(the
>> > #f) trailing grace note to indicate the target note.
>> >
>> > Stemmed-glissando.png (34K)
>> > <
>>
>http://lilypond.1069038.n5.nabble.com/attachment/167377/0/Stemmed-glissando.png>
>> ;
>>
>> Urs,
>>
>> Is there more information on that stemmed gliss function? I'd be
>interested
>> to read more on that for LilyPond. Thanks!
>>
>> Ben
>>
>>
>>
>>
>> -
>> composer | sound designer
>> LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond
>> --
>> View this message in context:
>>
>http://lilypond.1069038.n5.nabble.com/Contemporary-Music-Notation-tp167324p167437.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
>>
>
>
>
>
>___
>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: Feedback Request for Music Fonts

2014-10-12 Thread Noeck
Hi Abraham,

thanks for your reply.

>> Does your machinery allow to take these numbers
>> from Bravura for example and put it in a normal text font?
> 
> By default, the tuplet numbers come from whatever is set to be the
> \roman font.

\version "2.19.14"

\transpose c c'
{
  % default (Century Schoolbook)
  \tuplet 3/2 { a8 a a }
  % bold (Century Schoolbook) - closer to Bravura
  \override TupletNumber.font-series = #'bold
  \tuplet 3/2 { a a a }
  % from Emmentaler (bold numbers) - your suggestion
  \override TupletNumber.font-encoding = #'fetaText
  \override TupletNumber.font-size = #-4
  \tuplet 3/2 { a a a }
  % tuplet number from Bravura (U+E883) - what I wanted!
  \override TupletNumber.font-name = "Bravura"
  \override TupletNumber.font-size = #3.5
  \override TupletNumber #'text = ""
  \tuplet 3/2 { a a a }
}

This example shows four different tuplet numbers. The last one is what I
wanted: the dedicated Bravura tuplet number on code point U+E883.
To achieve that I had to put Bravura in /usr/share/fonts. I was
wondering why installing it under Ubuntu does not work and copying into
/usr/share/fonts of the LP directory structure does not work, neither.

A real solution would be if this number would be calculated
automatically. But I couldn't get it to work:
\override TupletNumber #'text = #(integer->char
  (+ 59520 (tuplet-number::calc-denominator-text)))

I am trying that out, because it would help to get a consistent style
for the new fonts including the text font part.

>> 2) Do you or does anyone know text fonts similar to the ones used in
>> many old scores, like here:
>> http://javanese.imslp.info/files/imglnks/usimg/7/7f/IMSLP00115-Chopin_-_Ballade_No1.pdf
> I've often looked for some nice fonts like those. A nice one I've found
> is called "OldStandardTT". It's free and supports an extensive character
> set including Latin, Greek, and Cyrillic:
> 
> http://www.fontsquirrel.com/fonts/old-standard-TT

Just to share what I found yesterday:
http://www.fontsquirrel.com/fonts/DubielPlain

But I am not really convinced (there are some irregularities e.g. in the
letter a).

> I'm actually working on a few right now that have a similar feel as
> those found in the Chopin score, but I can't say when they'll be done
> and ready for prime-time.

I will be interested whenever it gets ready.

Joram

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


Re:Contemporary Music Notation

2014-10-12 Thread Dave Phillips


On 10/12/2014 11:35 AM, lilypond-user-requ...@gnu.org wrote:

Message: 2
Date: Sun, 12 Oct 2014 09:52:50 -0500
From: David Nalesnik 
To: Piaras Hoban 
Cc: lilypond-user 
Subject: Re: Contemporary Music Notation
Message-ID:

Content-Type: text/plain; charset="utf-8"

On Sun, Oct 12, 2014 at 7:06 AM, Piaras Hoban 
wrote:



I thought it might be interesting for those wondering what's possible in
lilypond to see some examples from the field. I've put together a page
collating those things I've done in the past year or so.


I'm speechless!

--David



Very impressive !

Best,

dp


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


Can I make a TextScript occupy no space, potentially colliding?

2014-10-12 Thread Richard Shann
In this code I put a large letter A above the music.
If I uncomment the tweak the letter A is moved elsewhere, but it still
takes up space at the top of the score.
If I uncomment the override, I don't get the space back.

\version "2.18.0"
\score { 
 {
  %\override  TextScript.Y-extent = #'(0 . 0) 
  a1 
  %-\tweak #'extra-offset #'(7 . -12) 
  ^\markup {\fontsize #12 A }
  }
} 

Is there a way to stop LilyPond trying to prevent my TextScript
colliding - to say that it occupies, say, no space?

Richard



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


Re: Can I make a TextScript occupy no space, potentially colliding?

2014-10-12 Thread Simon Albrecht

Am 12.10.2014 um 18:21 schrieb Richard Shann:

In this code I put a large letter A above the music.
If I uncomment the tweak the letter A is moved elsewhere, but it still
takes up space at the top of the score.
If I uncomment the override, I don't get the space back.

\version "2.18.0"
\score {
  {
   %\override  TextScript.Y-extent = #'(0 . 0)
   a1
   %-\tweak #'extra-offset #'(7 . -12)
   ^\markup {\fontsize #12 A }
   }
}

Is there a way to stop LilyPond trying to prevent my TextScript
colliding - to say that it occupies, say, no space?

Richard

Hello Richard,

try:


\version "2.18.0"

\score {

{

a1

%-\tweak #'extra-offset #'(7 . -12)

^\markup { \with-dimensions #'(0 . 0) #'(0 . 0) \fontsize #12 A }

}

}



HTH, Simon

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


Re: ly:pitch and string

2014-10-12 Thread Simon Albrecht

Hello Paul,

Thanks for your help in improving the helper functions; however, 
‘inverting’ string-append and cond seems to be based on a 
misunderstanding. It needs to be


%%
\version "2.19.12"
\language "deutsch"

pitch-to-key-string-german =
#(define-scheme-function
   (parser location p mode)
   (ly:pitch? string?)
   (let*
((major? (equal? mode "major"))
 (nn (ly:pitch-notename p))
 (nn-string (if major?
(list-ref '("C" "D" "E" "F" "G" "A" "H") nn)
(list-ref '("c" "d" "e" "f" "g" "a" "h") nn)))
 (alt (ly:pitch-alteration p))
 (alt-num (+ 2 (* 2 (ly:pitch-alteration p
 (alt-string (list-ref '("eses" "es" "" "is" "isis") alt-num))
 ;pitch without octave
 (na (cons nn alt))
 ;helper functions for exceptions in german note naming
 (test (lambda (n a) (equal? na (cons n a
 (exc (lambda (ma mi) (if major? ma mi

(string-append nn-string
  (cond
   ((test 2 -1) (exc "Eses" "eses"))
   ((test 2 -1/2) (exc "Es" "es"))
   ((test 5 -1) (exc "Asas" "asas"))
   ((test 5 -1/2) (exc "As" "as"))
   ((test 6 -1/2) (exc "B" "b"))
   (else alt-string)


(cond

((test 2 -1) (exc "Eses" "eses"))

((test 2 -1/2) (exc "Es" "es"))

((test 5 -1) (exc "Asas" "asas"))

((test 5 -1/2) (exc "As" "as"))

((test 6 -1/2) (exc "B" "b"))

(else (string-append nn-string alt-string)



newTonic = disis'

newTonicString = \pitch-to-key-string-german \newTonic "major"

% for testing:
#(display (string-append "in-" newTonicString))

\bookOutputSuffix #(string-append "in-" newTonicString)

\score { \transpose c \newTonic { c' } }

%%

and then it works very well.

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


Re: Can I make a TextScript occupy no space, potentially colliding?

2014-10-12 Thread Richard Shann
Perfect! I've found that in the documentation as well...
Thank you very much,
Richard
On Sun, 2014-10-12 at 18:40 +0200, Simon Albrecht wrote:
> Am 12.10.2014 um 18:21 schrieb Richard Shann:
> > In this code I put a large letter A above the music.
> > If I uncomment the tweak the letter A is moved elsewhere, but it still
> > takes up space at the top of the score.
> > If I uncomment the override, I don't get the space back.
> >
> > \version "2.18.0"
> > \score {
> >   {
> >%\override  TextScript.Y-extent = #'(0 . 0)
> >a1
> >%-\tweak #'extra-offset #'(7 . -12)
> >^\markup {\fontsize #12 A }
> >}
> > }
> >
> > Is there a way to stop LilyPond trying to prevent my TextScript
> > colliding - to say that it occupies, say, no space?
> >
> > Richard
> Hello Richard,
> 
> try:
> 
> 
> \version "2.18.0"
> 
> \score {
> 
> {
> 
> a1
> 
> %-\tweak #'extra-offset #'(7 . -12)
> 
> ^\markup { \with-dimensions #'(0 . 0) #'(0 . 0) \fontsize #12 A }
> 
> }
> 
> }
> 
> 
> 
> HTH, Simon



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


Re: practice/volunteer opportunities

2014-10-12 Thread SoundsFromSound
truthling wrote
> Greetings, all!
> 
> This is my first post and I would firstly like to express my gratitude and
> enthusiasm for Lilypond.  I have recently discovered it and it has been
> immensely helpful and fun!
> 
> My name is Andrew and I am a music theory/classical guitar student.  
> 
> I am looking for opportunities to develop my Lilypond knowledge and,
> skills and would love to take any opportunities to assist with your
> engraving projects, as a way to hone my skills.  So if you have any
> projects underway that you could use some help, let me know and I would be
> glad to offer my time and effort.
> 
> Cheers!
> Andrew

Hello Andrew!

Welcome to the LilyPond community/mailing list! :)

-Ben



-
composer | sound designer 
LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond
--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/practice-volunteer-opportunities-tp167462p167469.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


Text alignment

2014-10-12 Thread Marco Bagolin
Hi all,
I can not reproduce the attached Sample1.png.
The best result I obtained is the  attached MySample1.png  with the
following code:

e,1 \trill \p \< |
 b'1 \trill|
 1
  \trill
  ^\markup {\tiny \italic \halign #2 \raise #1.5 div.}
  ^\markup {\tiny "(both trill)"}
   <<
 {b1 \trill}
 \\
 {\set Staff.ottavation = #"Half 8va (opt.)"
  \hideNotes
b4 b b b
  \unset Staff.ottavation
 }
   >>

but text "(both trill)" is not aligned with the trill symbol and "Half
8va(opt.)" font is bigger than the others. I tried some ways, but I don't
understand where is my mistake.

Please, can anyone help me?

Thank you in advance at all

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


Re: Can I make a TextScript occupy no space, potentially colliding?

2014-10-12 Thread Richard Shann
On Sun, 2014-10-12 at 17:49 +0100, Richard Shann wrote:
> Perfect!

hmm, I spoke a little too soon. It seems that \with-dimensions kills
point-and-click. Understandable with 0 as the dimension, but actually
this doesn't seem to be the issue:

\version "2.18.0"

\score { 
 {
  a1 
  ^\markup \with-dimensions #'(10 . -10) #'(10 . -10) 
  %\with-url #'"some link" 
  {\fontsize #12 A }
 }
} 

with good-sized dimension here there is no point and click. If I
uncomment the \with-url in this code then the A *is* clickable - and the
clickable area is the area of the letter not the 200x200 square.

So, if there is no easy way to get point-and-click back, can I
re-construct the link that point and click would have given using
\with-url? 

(Point-and-click is essential my application...)

Richard





>  I've found that in the documentation as well...
> Thank you very much,
> Richard
> On Sun, 2014-10-12 at 18:40 +0200, Simon Albrecht wrote:
> > Am 12.10.2014 um 18:21 schrieb Richard Shann:
> > > In this code I put a large letter A above the music.
> > > If I uncomment the tweak the letter A is moved elsewhere, but it still
> > > takes up space at the top of the score.
> > > If I uncomment the override, I don't get the space back.
> > >
> > > \version "2.18.0"
> > > \score {
> > >   {
> > >%\override  TextScript.Y-extent = #'(0 . 0)
> > >a1
> > >%-\tweak #'extra-offset #'(7 . -12)
> > >^\markup {\fontsize #12 A }
> > >}
> > > }
> > >
> > > Is there a way to stop LilyPond trying to prevent my TextScript
> > > colliding - to say that it occupies, say, no space?
> > >
> > > Richard
> > Hello Richard,
> > 
> > try:
> > 
> > 
> > \version "2.18.0"
> > 
> > \score {
> > 
> > {
> > 
> > a1
> > 
> > %-\tweak #'extra-offset #'(7 . -12)
> > 
> > ^\markup { \with-dimensions #'(0 . 0) #'(0 . 0) \fontsize #12 A }
> > 
> > }
> > 
> > }
> > 
> > 
> > 
> > HTH, 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: Text alignment

2014-10-12 Thread Thomas Morley
2014-10-12 19:26 GMT+02:00 Marco Bagolin :
> Hi all,
> I can not reproduce the attached Sample1.png.
> The best result I obtained is the  attached MySample1.png  with the
> following code:

Hi Marco,

please always post a _compilable_ code, showing your problem and
matching with images you post.

-Harm

>
> e,1 \trill \p \< |
>  b'1 \trill|
>  1
>   \trill
>   ^\markup {\tiny \italic \halign #2 \raise #1.5 div.}
>   ^\markup {\tiny "(both trill)"}
><<
>  {b1 \trill}
>  \\
>  {\set Staff.ottavation = #"Half 8va (opt.)"
>   \hideNotes
> b4 b b b
>   \unset Staff.ottavation
>  }
>>>
>
> but text "(both trill)" is not aligned with the trill symbol and "Half
> 8va(opt.)" font is bigger than the others. I tried some ways, but I don't
> understand where is my mistake.
>
> Please, can anyone help me?
>
> Thank you in advance at all
>
> Regards
> Marco B.
>
> ___
> 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: Automatic ottava handling

2014-10-12 Thread David Nalesnik
Hi,

On Sat, Oct 11, 2014 at 9:05 PM, David Nalesnik
>
>
> I'll look into fixing up build-new-elts so there won't be so much
> duplication of code.  Then it will be a lot cleaner to deals with bassas,
>

OK, now it will provide automatic bassas as well.

The function \ottavate now takes two numbers, one for the upper threshold
and another for the lower.  I decided to specify the lower threshold in
negative numbers, but that could be changed.

If you want to turn off one or the other, you can just pick a number out of
range.  (So, for example, you can ensure no bassas with treble clef.)

Let me know how this works for you!

Enjoy,
David
\version "2.19.10"

#(define (ledger-line-no middle-C-pos p)
   "Returns the number of ledger-lines a pitch @var{p} will have with
middle C position @var{middle-C-pos} expressed as staff-steps from the
middle staff line."
   (let* ((ps (ly:pitch-steps p))
  (mid-staff-steps (- middle-C-pos))
  (top-line (+ mid-staff-steps 4))
  (bottom-line (- mid-staff-steps 4))
  (above? (> ps top-line))
  (below? (< ps bottom-line))
  (steps-outside-staff
   (cond
(below? (- ps bottom-line))
(above? (- ps top-line))
(else 0
 (truncate (/ steps-outside-staff 2

#(define (find-clefMiddleCPosition mus)
   (let ((clef-pos -6)) ; treble is default
 (for-some-music
  (lambda (x)
(let ((n (ly:music-property x 'symbol)))
  (and (eq? n 'middleCClefPosition)
   (set! clef-pos (ly:music-property x 'value)
  mus)
 clef-pos))

#(define (make-ottava-music arg)
   (list (make-music 'OttavaMusic 'ottava-number arg)))

ottavate =
#(define-music-function (parser location upper lower mus)
   (integer? number? ly:music?)
   "Create an ottava for notes based on number of ledger lines.  Ledger lines above the staff
are specified in @var{upper} as positive integers; an 8va will be created for notes with at least
this many lines.  Ledger lines below the staff are specified in @var{lower} as negative numbers;
an 8va bassa will be created for notes with at least the absolute value of this number.  Choose
an number of ledger lines which does not appear in the music expression to prevent either
from appearing.

All notes in a chord must pass the threshold to receive an ottava."
   (let ((up-an-octave (make-ottava-music 1))
 (down-an-octave (make-ottava-music -1))
 (loco (make-ottava-music 0)))
 
 (define (up-or-down-an-octave clef-pos mus-expr)
   ; select from variables up-an-octave and down-an-octave
   ; return #f if no displacement
   (cond
((music-is-of-type? mus-expr 'event-chord)
 (cond
  ((every (lambda (p)
(>= (ledger-line-no clef-pos (ly:music-property p 'pitch)) upper))
 (ly:music-property mus-expr 'elements))
   up-an-octave)
  ((every (lambda (p)
(<= (ledger-line-no clef-pos (ly:music-property p 'pitch)) lower))
 (ly:music-property mus-expr 'elements))
   down-an-octave)
  (else #f)))
((music-is-of-type? mus-expr 'note-event)
 (cond
  ((>= (ledger-line-no clef-pos
 (ly:music-property mus-expr 'pitch))
   upper)
   up-an-octave)
  ((<= (ledger-line-no clef-pos
 (ly:music-property mus-expr 'pitch))
   lower)
   down-an-octave)
  (else #f)
 
 (define (no-ottava clef-pos mus-expr)
   (not (up-or-down-an-octave clef-pos mus-expr)))
 
 (define (build-new-elts mus-expr new-expr start-loco? start-ottava? clef-pos)
   (if (null? mus-expr)
   ;; ensure that ottava does not extend past a localized
   ;; use of \ottavate
   (append new-expr loco)
   
   (begin
;; find value for 'clefMiddleCPosition
(if (eq? (ly:music-property (car mus-expr) 'name) 'ContextSpeccedMusic)
(set! clef-pos (find-clefMiddleCPosition (car mus-expr

(cond
 ((or (music-is-of-type? (car mus-expr) 'event-chord)
  (music-is-of-type? (car mus-expr) 'note-event))
  (cond
   ((and
 start-ottava?
 (up-or-down-an-octave clef-pos (car mus-expr)))
(build-new-elts
 (cdr mus-expr)
 (append
  new-expr
  (up-or-down-an-octave clef-pos (car mus-expr))
  (list (car mus-expr)))
 #t #f clef-pos))
   ((and 
 start-loco?
 (no-ottava clef-pos (car mus-expr)))
(build-new-elts
 (cdr mus-expr)
 (append
  new-expr
  loco
  (list (car mus-expr)))
 #f #t clef-pos))

Re: Automatic ottava handling

2014-10-12 Thread David Bellows
That is amazing work! I don't have the time to experiment with it right now
but I will do so tonight and let you know tomorrow the results. But based
on your example this looks like it will be perfect. I think the negative
numbers for the bassa is a good choice as that was what I was imagining in
the first place.

Thanks for all your work on this!

On Sun, Oct 12, 2014 at 12:07 PM, David Nalesnik 
wrote:

> Hi,
>
> On Sat, Oct 11, 2014 at 9:05 PM, David Nalesnik
>>
>>
>> I'll look into fixing up build-new-elts so there won't be so much
>> duplication of code.  Then it will be a lot cleaner to deals with bassas,
>>
>
> OK, now it will provide automatic bassas as well.
>
> The function \ottavate now takes two numbers, one for the upper threshold
> and another for the lower.  I decided to specify the lower threshold in
> negative numbers, but that could be changed.
>
> If you want to turn off one or the other, you can just pick a number out
> of range.  (So, for example, you can ensure no bassas with treble clef.)
>
> Let me know how this works for you!
>
> Enjoy,
> David
>
>
>
>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Contemporary Music Notation

2014-10-12 Thread Janek Warchoł
2014-10-12 14:06 GMT+02:00 Piaras Hoban :

> I thought it might be interesting for those wondering what's possible in
> lilypond to see some examples from the field. I've put together a page
> collating those things I've done in the past year or so.
>

!!
and then:
!
And i thought that after seeing Mike Solomon's stuff i wouldn't have my
mind blown away anymore
Extremely impressive!


> It would be great to develop a contemporary notation library for lilypond
> making these notations readily available to any user, I'm not sure what
> that would involve but I know it could be a major selling point for
> lilypond in the contemporary music world.
>

Absolutely!
And if you'd like to write a short (or long) blog post about this, just to
showcase what you can do with LilyPond (doesn't have to be elaborated), i
would be delighted - i don't have enough time for writing myself, and
anyway anything i could write wouldn't be even half as impressive as what
you did.

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


Re: relative music inside music functions explodes when used twice

2014-10-12 Thread Janek Warchoł
2014-10-12 12:45 GMT+02:00 David Kastrup :
> I'm not even sure I understand _how_ you want the relativization to
> happen.  One after the other?

If you mean \musicII should be relativized after \music, that's
roughly what i want.

> In that case, you can use
>
> voiceDivisi =
> #(define-music-function (parser location m1 m2) (ly:music? ly:music?)
>   (make-relative (m1 m2) #{ #m1 #m2 #}
>   #{
>   \tag divI { $m1 }
>   \tag divII { $m2 }
>   \tag together << { \dynamicUp $m1 } \\ { \dynamicDown $m2 } >>
>   #}))

Seems to work! :)

> > How should i work around this?  Maybe instead of using tags i should
> > write a function with a switch statement inside?  I know that i can
> > put \relative command inside \voiceDivisi, but i'd like to avoid this
> > as it would add a lot of typing.
>
> It seems like the ingenuity of my make-relative macro never really
> caught on...

I've found https://code.google.com/p/lilypond/issues/detail?id=3118
and looked at input/regression/make-relative.ly but i don't think i
really understand what it does (and how).  I'll try digging deeper,
but any additional explanations you could provide would be very
welcome (as i have very limited time available for tinkering...) - i'd
very much like to be able to understand your ingenuity :)

> By the way: I'm not sure it will be transparent enough to have << \\ >>
> be recognized at the proper point of time.  If not, you'll need to use
> explicit voices instead.

Absolutely.  My code is just a proof of concept, and I've used << \\
>> to minimize the example.

best,
Janek

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


practice/volunteer opportunities

2014-10-12 Thread truthling
Greetings, all!

This is my first post and I would firstly like to express my gratitude and
enthusiasm for Lilypond.  I have recently discovered it and it has been
immensely helpful and fun!

My name is Andrew and I am a music theory/classical guitar student.  

I am looking for opportunities to develop my Lilypond knowledge and, skills
and would love to take any opportunities to assist with your engraving
projects, as a way to hone my skills.  So if you have any projects underway
that you could use some help, let me know and I would be glad to offer my
time and effort.

Cheers!
Andrew



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/practice-volunteer-opportunities-tp167462.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: Contemporary Music Notation

2014-10-12 Thread Mike Solomon
On Oct 12, 2014, at 3:06 PM, Piaras Hoban  wrote:

> Hi all,
> 
> I'm a bit late to the party here but hope I can contribute something.
> 
> About two years ago I made the switch to using Lilypond exclusively as I was 
> getting tired of exporting pdfs with basic music notation and overlaying 
> graphics in Illustrator or some such. This was a real pain when doing parts 
> or making even the smallest of changes. Since then I've used lilypond for a 
> lot of pieces, all of which have some idiosyncratic notational devices. 
> There's very little I haven't been able to implement successfully in lilypond 
> (really just 1 thing that still evades me... customised barlines aligning 
> with first beat of a measure...).
> 
> I thought it might be interesting for those wondering what's possible in 
> lilypond to see some examples from the field. I've put together a page 
> collating those things I've done in the past year or so. Many of these 
> notational devices seem to be fairly standardized nowadays; or at least the 
> symbols appear consistently, even if the interpretation of their meaning can 
> vary a lot. 
> 
> It would be great to develop a contemporary notation library for lilypond 
> making these notations readily available to any user, I'm not sure what that 
> would involve but I know it could be a major selling point for lilypond in 
> the contemporary music world.
> 
> For completeness sake here's index of what you see in the linked PDF 
> (naturally eveything you see here is generated using lilypond alone):
> 
> 1) Split-stem chords/clusters
> 2) Stemmed glissando
> 3) Bezier glissando w/arrowhead
> 4) Variable width bezier glissando
> 5) Vibrato with variable/random period and slope
> 6) Interruptive polyphony
> 7) Lachenmann pressed bow
> 8) Billone beat notation
> 9) Pencil line emulation (after Charlie Sdraulig)
> 10) Sciarrino style jet-whistle
> 11) Woodwind fingering staff
> 12) Carin Levine style flute multiphonics
> 13) Klavierstuck X proof-of-concept
> 14) Sciarrino tremolo (with bezier hairpins)
> 15) Stockhausen cluster-glissando
> 16) Notation from a work of my own for violin
> 
> Hope this might be illuminating for others; lilypond is great for this kind 
> of stuff.
> 
> best wishes,
> 
> piaras hoban
> 
> ​
>  notation_sampler.pdf
> ​
> 
> On 12 October 2014 06:22, SoundsFromSound  wrote:
> Urs Liska wrote
> > Am 09.10.2014 06:31, schrieb Marco Bagolin:
> >> The notation contemporary music is so diverse, I know.
> >> I wonder if actually Lilypond has commands for drawing graphic
> >> symbols, as line circle, curve, square, circle, etc...
> >
> > A nice thing about LilyPond's approach is that once you have invented
> > something you can make it available as a command so it can easily be
> > reused. You can also make such commands process arguments so they can be
> > versatile and context-dependent.
> > As an example have a look at the attached image. This is what someone on
> > the list (Piaras Hoban) came up with when I asked for a function to
> > write a stemmed glissando notation. The underlying function is quite
> > complicated but you can use it by simply writing
> >
> > \stemmedGlissando #'(15 . #f) c'4
> >
> > to tell LilyPond that the next glissando will have 15 stems and no (the
> > #f) trailing grace note to indicate the target note.
> >
> > Stemmed-glissando.png (34K)
> > ;
> 
> Urs,
> 
> Is there more information on that stemmed gliss function? I'd be interested
> to read more on that for LilyPond. Thanks!
> 
> Ben
> 
> 

Incredible!!
If you can, please post the sources on openlilylib.org.  This is remarkable 
work that will be undoubtedly be of use to many people.

All the best,
~Mike

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


Re: practice/volunteer opportunities

2014-10-12 Thread Federico Bruni
2014-10-12 18:03 GMT+02:00 truthling :

> My name is Andrew and I am a music theory/classical guitar student.
>
> I am looking for opportunities to develop my Lilypond knowledge and, skills
> and would love to take any opportunities to assist with your engraving
> projects, as a way to hone my skills.  So if you have any projects underway
> that you could use some help, let me know and I would be glad to offer my
> time and effort.
>

Hi Andrew, welcome!
Do you know Mutopia?
http://www.mutopiaproject.org/contribute.html
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Fwd: Re: practice/volunteer opportunities

2014-10-12 Thread Urs Liska




 Original-Nachricht 
Betreff:Re: practice/volunteer opportunities
Datum:  Sun, 12 Oct 2014 21:49:58 +0200
Von:Urs Liska 
An: SoundsFromSound 



Hello Andrew,

I can propose you a project that would be happy about your
collaboration. It is already under way but I don't think it's too late.
We are doing a quite huge orchestral score in a collaborative edition
effort.

You may look at the following pages to get an impression of the project:

http://lilypondblog.org/2014/10/crowd-engraving-picking-up-speed/
http://lilypondblog.org/2014/10/approaching-a-big-score/
https://git.ursliska.de/beautifulscores/das-trunkne-lied/wikis/Table-of-Contents.md
http://das-trunkne-lied.beautifulscores.net/status/

Best wishes
Urs


Am 12.10.2014 18:54, schrieb SoundsFromSound:

truthling wrote

Greetings, all!

This is my first post and I would firstly like to express my gratitude and
enthusiasm for Lilypond.  I have recently discovered it and it has been
immensely helpful and fun!

My name is Andrew and I am a music theory/classical guitar student.

I am looking for opportunities to develop my Lilypond knowledge and,
skills and would love to take any opportunities to assist with your
engraving projects, as a way to hone my skills.  So if you have any
projects underway that you could use some help, let me know and I would be
glad to offer my time and effort.

Cheers!
Andrew

Hello Andrew!

Welcome to the LilyPond community/mailing list! :)

-Ben



-
composer | sound designer
LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond
--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/practice-volunteer-opportunities-tp167462p167469.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




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


Re: How to get the total length of Sequential Music

2014-10-12 Thread Hans Sommer

David Nalesnik  gmail.com> writes:

> 
> Hi Hans,
> On Sun, Oct 12, 2014 at 4:38 AM, Hans Sommer  gmx.de>
wrote:Hello,
> I am relatively new to Lilypond.
> I try to check the total length of a SequentialMusic part, i.e.
> my_score_part = { c'4 d e f }
> I want to get the result 4 quarters (or any other numerical representation)
> and for
> my_score_part2 = { c'4 d e f g8}
> 
> 
> (This isn't a valid name for a variable, so I changed it below.)
>  
> 
> 
> should deliver 4 quarter and 1 eighth.
> I found in the documentation the property:
>  length-callback (procedure):
>     ly:music-sequence::cumulative-length-callback
> but I don't know how to use it.
> I would be very thankful, if anybody could provide an example.
> 
> 
> I'm not familiar with this property, but it's relatively easy to determine
the length of a music expression.  Try this:
> 
>  \version "2.19.10"
> 
> my_score_part = { c'4 d e f }
> 
> my_score_part_two = { c'4 d e f g8 }
> 
> #(display (ly:music-length my_score_part))
> 
> #(display (ly:music-length my_score_part_two))
> 
> Hope this is helpful,
> David
> 
> 
> 
> 
> 
> ___
> lilypond-user mailing list
> lilypond-user  gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
> 

Thank you David,

that was what I was looking for.

When I use
 #(display (ly:music-length my_score_part))
I get in the lilypond log file (depending on the score length) someting like
that:

#

Is there a possibility to write the result in an extra text file  (I want to
process the result by a program, that is actually starting the lilypond
compilation. It should check the score length and eventually throw an error).
I guess some scheme routines will be necessary, but I did not work with
scheme in the past, so maybe somebody has a small example code.


Regards 

Hans



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


Re: How to get the total length of Sequential Music

2014-10-12 Thread David Nalesnik
On Sun, Oct 12, 2014 at 5:59 PM, Hans Sommer  wrote:

>
> David Nalesnik  gmail.com> writes:
>
> >
> > Hi Hans,
> > On Sun, Oct 12, 2014 at 4:38 AM, Hans Sommer  gmx.de>
> wrote:Hello,
> > I am relatively new to Lilypond.
> > I try to check the total length of a SequentialMusic part, i.e.
> > my_score_part = { c'4 d e f }
> > I want to get the result 4 quarters (or any other numerical
> representation)
> > and for
> > my_score_part2 = { c'4 d e f g8}
> >
> >
> > (This isn't a valid name for a variable, so I changed it below.)
> >
> >
> >
> > should deliver 4 quarter and 1 eighth.
> > I found in the documentation the property:
> >  length-callback (procedure):
> > ly:music-sequence::cumulative-length-callback
> > but I don't know how to use it.
> > I would be very thankful, if anybody could provide an example.
> >
> >
> > I'm not familiar with this property, but it's relatively easy to
> determine
> the length of a music expression.  Try this:
> >
> >  \version "2.19.10"
> >
> > my_score_part = { c'4 d e f }
> >
> > my_score_part_two = { c'4 d e f g8 }
> >
> > #(display (ly:music-length my_score_part))
> >
> > #(display (ly:music-length my_score_part_two))
> >
> > Hope this is helpful,
> > David
> >
> >
> >
> >
> >
> > ___
> > lilypond-user mailing list
> > lilypond-user  gnu.org
> > https://lists.gnu.org/mailman/listinfo/lilypond-user
> >
>
> Thank you David,
>
> that was what I was looking for.
>
> When I use
>  #(display (ly:music-length my_score_part))
> I get in the lilypond log file (depending on the score length) someting
> like
> that:
>
> #
>
> Is there a possibility to write the result in an extra text file  (I want
> to
> process the result by a program, that is actually starting the lilypond
> compilation. It should check the score length and eventually throw an
> error).
>

Yes, you can specify a port for display:

 \version "2.19.10"

my_score_part = { c'4 d e f }

my_score_part_two = { c'4 d e f g8 }

#(define out (open-output-file "music-length.txt"))

#(display (ly:music-length my_score_part) out)

#(display (ly:music-length my_score_part_two) out)

%%%

You could also use format for nicer output:

#(format out "Length of my_score_part: ~a~%Length of my_score_part_two:
~a~%"
   (ly:music-length my_score_part)
   (ly:music-length my_score_part_two))

%%%

I don't think you need to close the port, but you could add this:

#(close-output-port out)

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


Tilde causes error message: "unrecognized string, not in text script or \lyricmode"

2014-10-12 Thread Eyolf Østrem

If I try to run the following (either directly or as part of a score):

\relative c' {
\key e \minor
\time 4/4

r4 r8 e8 e fis g4 fis fis8 fis fis e dis e ~ e4 r8
e8 e fis g4 a a8 a a g a b~ b4 r8
b b b b4 c c8 c c b a b~ b4 r8
b8 b a g4  fis fis8 fis fis e dis e ~ e4 r8
}

I get the error message: "unrecognized string, not in text script or 
\lyricmode" at the tildes in the first and last line. The "e"s after the 
tildes do not get written out. The two "b~" work as expected, though, 
even though everything but the pitches is the same as in the first line.

If I remove the tildes, everything works - except that I don't get the ties.

I'm running v. 2.18.2 under Arch Linux.

Eyolf

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


RE: Tilde causes error message: "unrecognized string, not in text script or \lyricmode"

2014-10-12 Thread Mark Stephen Mrotek
Eyolf,

Your snippet compiles without error message for me. I am using Lilypond
under Windows.
I notice that a space separates the two "e" from their "~." The space is not
between the two "b" and theirs.
Perhaps this is the source of the error message for you.

Mark

-Original Message-
From: lilypond-user-bounces+carsonmark=ca.rr@gnu.org
[mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf Of
Eyolf Østrem
Sent: Sunday, October 12, 2014 4:57 PM
To: lilypond-user@gnu.org
Subject: Tilde causes error message: "unrecognized string, not in text
script or \lyricmode"

If I try to run the following (either directly or as part of a score):

\relative c' {
\key e \minor
\time 4/4

r4 r8 e8 e fis g4 fis fis8 fis fis e dis e ~ e4 r8
e8 e fis g4 a a8 a a g a b~ b4 r8
b b b b4 c c8 c c b a b~ b4 r8
b8 b a g4  fis fis8 fis fis e dis e ~ e4 r8 }

I get the error message: "unrecognized string, not in text script or
\lyricmode" at the tildes in the first and last line. The "e"s after the
tildes do not get written out. The two "b~" work as expected, though, even
though everything but the pitches is the same as in the first line.
If I remove the tildes, everything works - except that I don't get the ties.

I'm running v. 2.18.2 under Arch Linux.

Eyolf

___
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: Tilde causes error message: "unrecognized string, not in text script or \lyricmode"

2014-10-12 Thread Eyolf Østrem

On 13-10-2014 02:02, Mark Stephen Mrotek wrote:

Eyolf,

Your snippet compiles without error message for me. I am using Lilypond
under Windows.

Which version do you use?

I notice that a space separates the two "e" from their "~." The space is not
between the two "b" and theirs.
I forgot to add that: no, there is no difference whether there is a 
space there or not.


I also tested the snippet on lilybin.com, both with the latest stable 
(which is the same as I am running) and the latest devel, with the same 
result.


e

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


Re: ly:pitch and string

2014-10-12 Thread Paul Morris
Simon Albrecht-2 wrote
> Thanks for your help in improving the helper functions; however, 
> ‘inverting’ string-append and cond seems to be based on a 
> misunderstanding. It needs to be

Ah, I see now... I was "missing the forest for the trees."  

Cheers,
-Paul



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/ly-pitch-and-string-tp167397p167491.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: Tilde causes error message: "unrecognized string, not in text script or \lyricmode"

2014-10-12 Thread Abraham Lee
Eyolf,

Your snippet compiles perfectly for me on Ubuntu using LilyPond 2.18.2, so it 
probably is something with your installation? Sorry I can't help more than 
that. 

Regards,
Abraham

Sent from my iPhone

> On Oct 12, 2014, at 6:23 PM, Eyolf Østrem  wrote:
> 
>> On 13-10-2014 02:02, Mark Stephen Mrotek wrote:
>> Eyolf,
>> 
>> Your snippet compiles without error message for me. I am using Lilypond
>> under Windows.
> Which version do you use?
>> I notice that a space separates the two "e" from their "~." The space is not
>> between the two "b" and theirs.
> I forgot to add that: no, there is no difference whether there is a space 
> there or not.
> 
> I also tested the snippet on lilybin.com, both with the latest stable (which 
> is the same as I am running) and the latest devel, with the same result.
> 
> e
> 
> ___
> 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: Feedback Request for Music Fonts

2014-10-12 Thread Abraham Lee

Joram,

On Sun, Oct 12, 2014 at 10:04 AM, Noeck  wrote:

Hi Abraham,

thanks for your reply.

\version "2.19.14"

\transpose c c'
{
  % default (Century Schoolbook)
  \tuplet 3/2 { a8 a a }
  % bold (Century Schoolbook) - closer to Bravura
  \override TupletNumber.font-series = #'bold
  \tuplet 3/2 { a a a }
  % from Emmentaler (bold numbers) - your suggestion
  \override TupletNumber.font-encoding = #'fetaText
  \override TupletNumber.font-size = #-4
  \tuplet 3/2 { a a a }
  % tuplet number from Bravura (U+E883) - what I wanted!
  \override TupletNumber.font-name = "Bravura"
  \override TupletNumber.font-size = #3.5
  \override TupletNumber #'text = ""
  \tuplet 3/2 { a a a }
}

This example shows four different tuplet numbers. The last one is 
what I

wanted: the dedicated Bravura tuplet number on code point U+E883.
To achieve that I had to put Bravura in /usr/share/fonts. I was
wondering why installing it under Ubuntu does not work and copying 
into

/usr/share/fonts of the LP directory structure does not work, neither.


From my experience, LP only looks for Century Schoolbook and the 
music/brace fonts in that folder. Any other text font should be 
installed in a regular system location. On Ubuntu, if you put Bravura 
in "/home/YOUR_USER_NAME/.local/share/fonts", then you should be able 
to do what you tried above (manually, of course).



A real solution would be if this number would be calculated
automatically. But I couldn't get it to work:
\override TupletNumber #'text = #(integer->char
  (+ 59520 (tuplet-number::calc-denominator-text)))

I am trying that out, because it would help to get a consistent style
for the new fonts including the text font part.


I agree. That is a great idea! I don't have enough Scheme experience to 
know how to modify the text property like that, but that would 
certainly be very nice. On the other hand, I could just create a simple 
tuplet numerals file for your needs :) It would probably be better to 
access the glyphs from the complete Bravura font file, but sometimes 
you've got to take measures into your own hands and try something 
simpler. I doubt Steinberg will ever be changing those glyphs, so it's 
probably a safe bet.




 2) Do you or does anyone know text fonts similar to the ones used 
in

 many old scores, like here:
 
http://javanese.imslp.info/files/imglnks/usimg/7/7f/IMSLP00115-Chopin_-_Ballade_No1.pdf
 I've often looked for some nice fonts like those. A nice one I've 
found
 is called "OldStandardTT". It's free and supports an extensive 
character

 set including Latin, Greek, and Cyrillic:
 
 http://www.fontsquirrel.com/fonts/old-standard-TT


Just to share what I found yesterday:
http://www.fontsquirrel.com/fonts/DubielPlain

But I am not really convinced (there are some irregularities e.g. in 
the

letter a).


Yeah, that one looks nice, but I agree that it's not as well 
constructed as we would like.


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