Re: instrumentSwitch and addInstrumentDefinition use

2015-01-20 Thread Keith OHara

On Sun, 18 Jan 2015 19:34:24 -0800, Kieren MacMillan 
kieren_macmil...@sympatico.ca wrote:


This does have the variable reedPlayer storing written pitches, where we 
recommend storing concert pitches


I would much rather code in concert pitches.


What I was suggesting, and what I put into the example, had all the typed input 
in concert pitch.

By saying reedPlayer stores written pitches, I meant only that the 
\transpose{...} operations, to tell LilyPond which notes should be printed at which 
transposition, were included in the variable reedPlayer.



Still, I think I must be missing something fundamental… It really seems to me 
that \addInstrumentDefinition already has [almost?] everything we need: the 
shortInstrumentName is there, the clef is there (in case a change is needed), 
the cue name is there, the transposition is there, etc.

So what is stopping us from making something very similar to the OP’s original 
code Do The Right Thing™?



LilyPond has the information, but it takes some work to teach her to 
consistently use it differently than she does now, and differently than the 
original poster still wants her to.

You could try the attached modification (to avoid transposition of cues) of 
Jan-Peter's method.
LilyPond transposes your input by 'instrumentTransposition when generating cue 
notes, so leave instrumentTransposition at its default.

Instead, the attached engraver uses a new property 'printTransposition to shift 
your concert-pitch input to printed pitches.   Key-signature changes are not 
always appropriate, but you can type \key\default to reprint the current 
key-signature and have it transposed for the instrument.

(This second *-Transposition setting would be confusing to new users of 
LilyPond, so any real patch would require re-writing some internals of LilyPond 
so we can select the desired behavior using just the old 
'instrumentTransposition to describe the instrument pitch.)

part = { g'4 b' d'' fis'' R1
 \instrumentSwitch cl Bflat \bar||\key\default
 g'4 b' d'' fis'' R1
 \instrumentSwitch flute \bar||\key\default
 g'4 b' d'' fis'' R1 }
global = { \key g\major s1*4  }

\new Staff \with { \printTransposition }
  \new Voice  \global \part \version 2.18.2
% vim: filetype=lilypond:

% Substitute for \key\default that works with midi{}
reprintKey = \applyContext #(lambda (c)
 (define (same-scale-step? a b) (= (car a) (car b)))
 (let* ((pitch-alist (delete-duplicates!
 (append (ly:context-property c 'keyAlterations)
  major)
  same-scale-step?))
(tonic (ly:context-property c 'tonic (ly:make-pitch 0 0 0)))
(sev (ly:make-stream-event `(key-change-event)
   `((pitch-alist . ,pitch-alist)
 (tonic . ,tonic)
   (ly:broadcast (ly:context-event-source c) sev)))

% from scm/define-context-properties.scm
#(define (translator-property-description symbol type? description)
   (if (not (and
 (symbol? symbol)
 (procedure? type?)
 (string? description)))
   (throw 'init-format-error))
   (if (not (equal? #f (object-property symbol 'translation-doc)))
   (ly:error (_ symbol ~S redefined symbol)))
   (set-object-property! symbol 'translation-type? type?)
   (set-object-property! symbol 'translation-doc description)
   (set! all-translation-properties (cons symbol all-translation-properties))
   symbol)
#(translator-property-description 'printTransposition ly:pitch? transposition for printing with autoTransposeEngraver)

% adapted from Jan-Peter Voigt's autoTransposeEngraver at openlilylib
printTranspositionEngraver = #(lambda (context)
  (let ((old-pitch-alist major)
(old-transp (ly:make-pitch 1 0 0)))
 (make-engraver
  (listeners
   ((melodic-event engraver ev)
  (let ((transp (ly:context-property context 'printTransposition))
(pitch (ly:event-property ev 'pitch)))
 (if (and (ly:pitch? pitch) (ly:pitch? transp))
   (ly:event-set-property! ev 'pitch 
   (ly:pitch-diff pitch transp)
   ((key-change-event engraver ev)
  (let ((transp (ly:context-property context 'printTransposition))
(tonic (ly:event-property ev 'tonic
 (ly:context-property context 'tonic ;for \key\default
   (ly:make-pitch 1 0 0
(pitch-alist (ly:event-property ev 'pitch-alist
old-pitch-alist)))
 (if (ly:pitch? transp)
   (begin
 (ly:event-set-property!  ev 'tonic
(ly:pitch-diff tonic transp))
 (set! pitch-alist
   (ly:transpose-key-alist pitch-alist 
  (ly:pitch-diff old-transp transp)))
 

Re: Staccato

2015-01-20 Thread Ted Lemon
On Jan 19, 2015, at 9:43 PM, Cynthia Karl pck...@mac.com wrote:
 You must have an intimate knowledge of LP source code to be able to say that. 
  In the Learning Manual, there is a single mention of dotsDown, in a 
 discussion of UP and DOWN.  In the Notation Manual, there are five mentions, 
 one saying simply that it is a predefined command, and four references to 
 that statement in the appendices.  I don't think there are any other mentions 
 of dotsDown in the other LP documentation.  How would anyone know what 
 \dotsDown does?

Not that I would be one to sing a paean to the wonders of the Lilypond manual, 
but when I had an issue with a dot clashing with another note, I was able to 
figure out \dotsDown and \dotsNeutral.   It may be because it's consistent with 
other similar constructs, but it definitely didn't come from reading the source 
code.


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


Re: Staccato

2015-01-20 Thread Mark Knoop
At 22:01 on 19 Jan 2015, Kieren MacMillan wrote:
Hi,

On Jan 19, 2015, at 9:43 PM, Cynthia Karl pck...@mac.com wrote:

 You must have an intimate knowledge of LP source code to be able to
 say that. […] How would anyone know what \dotsDown does?

1. Search the contents of the application for “dotsDown” — find 4
results.

Actually you don't even need to grep the code to discover this.
\dotsDown in the Notation Reference index links to the Durations
page and is introduced as a predefined command at the end of the
section discussing dotted note lengths.

Likewise in section 1.3.1 Expressive marks attached to notes:

The rules for the default placement of articulations are defined in
‘scm/script.scm’. Articulations and ornamentations may be manually
placed above or below the staff; see Direction and placement.

Articulations are Script objects. Their properties are described
more fully in Script.

Cynthia, perhaps you could suggest a way to make this easier to find?

--
Mark Knoop

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


Re: Staccato

2015-01-20 Thread Kevin Barry
Dear Cynthia,

The rules about articulation placement are solidly established and differ
depending on whether a staff has a single voice or two. The extract you
quoted from Read is the rule as it applies to a single voice. When two
voices share a staff the articulation placement is reversed (think about
what would happen when both voices have articulations - they would all end
up in the middle of the staff if placed on the notehead side, which would
be very difficult to read). I would be very surprised if Read neglected to
mention this exception to the rule, so maybe it's worth rereading to double
check. My library has this book in storage, so it will be a number of days
before I can check myself.

Kevin

On Tue, Jan 20, 2015 at 9:54 AM, Mark Knoop m...@opus11.net wrote:

 At 22:01 on 19 Jan 2015, Kieren MacMillan wrote:
 Hi,
 
 On Jan 19, 2015, at 9:43 PM, Cynthia Karl pck...@mac.com wrote:
 
  You must have an intimate knowledge of LP source code to be able to
  say that. […] How would anyone know what \dotsDown does?
 
 1. Search the contents of the application for “dotsDown” — find 4
 results.

 Actually you don't even need to grep the code to discover this.
 \dotsDown in the Notation Reference index links to the Durations
 page and is introduced as a predefined command at the end of the
 section discussing dotted note lengths.

 Likewise in section 1.3.1 Expressive marks attached to notes:

 The rules for the default placement of articulations are defined in
 ‘scm/script.scm’. Articulations and ornamentations may be manually
 placed above or below the staff; see Direction and placement.

 Articulations are Script objects. Their properties are described
 more fully in Script.

 Cynthia, perhaps you could suggest a way to make this easier to find?

 --
 Mark Knoop

 ___
 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: OT: Re: Grand Advanced Stylesheet Project (GASP)

2015-01-20 Thread Richard Shann
On Mon, 2015-01-19 at 19:08 -0500, Kieren MacMillan wrote:
 
 Hi all,
 
  Chord Chart”
 
 +1
 
  the compact chord symbols have yet to make it into LilyPond
 
 I don’t think those (or any other) chord symbols should “make it into
 Lilypond” 

I wrote too tersely, it is not the symbols bit rather the compact
bit I was referring to here. 
LilyPond only supports arranging the elements of a chord symbol (Root
Name, attributes, bass-inversion) in a fixed way, taking up an elegant
amount of space between these parts. For a compact chord symbol (for
display on a hand-held device) these need to be arranged to take up less
horizontal space. The patch currently waiting to make it into LilyPond
does that. You as a user still need to decide whether you want -7 or 7-
or whatever for the attributes by writing chord-exceptions.

Richard





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


Re: Double thin bar lines and repeats?

2015-01-20 Thread Lars-Johan Liman
thomasmorle...@gmail.com:
 Well, _every_ BarLine has some settings in the definition how to
 behave mid-line, line-begin, line-end and for the span-bar-type.

Ah. That does make sense. I'm discovering stuff by the minute. :-)

 \bar || doesn't print a bar-line at line-begin (see bar-line.scm)

Ack!

 The \repeat construct uses the value from 'startRepeatType' (see
 engraver-init.ly) as starting repeat-sign, default and fall-back is
 .|: (see repeat-acknowledge-engraver.cc and look up how .|: is
 defined in bar-line.scm)

Umm ... indeed. :-)

 While inputting
 \bar || \break \repeat volta ...
 you have two _conflicting_ settings at the _same_ musical moment.
 One will override the other.
 Clean sollution is to define a BarLine which has the settings you
 prefer. This is done already with the predefined .|:-|| (again, see
 bar-line-scm).
 
 Only thing I don't fully understand, why does || wins?
 I'd expect the .|: to be printed.

 To answer my own question:
 In repeat-acknowledge-engraver.cc is a comment and code:

   /*
 We only set the barline if we wouldn't overwrite a previously set
 barline.
   */
   SCM wb = get_property (whichBar);
   SCM db = get_property (defaultBarType);
   if (!scm_is_string (wb) || ly_is_equal (db, wb))
 {
   if (s !=  || (volta_found  !scm_is_string (wb)))
 context ()-set_property (whichBar, ly_string2scm (s));
 }
 }

 Although I don't know C++, it seems to be pretty clear what happens

A warm thanks for sharing your expertise! This is really appreciated,
even if I don't penetrate all the details ... yet. :-)

Now future googlers have something to chew on, and I have working code!
:-)

Cheers,
  /Liman

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


Re: How to pack notes very tightly?

2015-01-20 Thread Urs Liska


Am 20. Januar 2015 13:25:25 MEZ, schrieb James p...@gnu.org:
On 20/01/15 07:29, Urs Liska wrote:
 Forwarding to bug-lilypond.
 Could someone please verify this

Verify what precisely?

If what the NR states is wrong. Or if it needs enhancement by the other 
property.


James

and create a tracker entry?

 (It's not my code BTW)

 Am 20. Januar 2015 08:20:25 MEZ, schrieb Steve Lacy
sl...@slacy.com:
 Thanks, Urs.

 Reading your code, seems like it was just a convenience function for
 setting SpacingSpanner.common-shortest-duration

 Adding a simple:

   \override Score.SpacingSpanner #'common-shortest-duration =
 #(ly:make-moment 1 4)

 Got me to the density I was looking for. 
(http://lilybin.com/qukbs5/3)

 It's interesting (frustrating?) that the documentation on changing
 horizontal spacing mentions setting base-shortest-duration to adjust
 horizontal spacing (

http://www.lilypond.org/doc/v2.16/Documentation/notation/changing-horizontal-spacing),
 but in fact, it seems as though common-shortest-duration is the
 variable
 that really needs to be tweaked.

 Steve


 On Mon, Jan 19, 2015 at 11:07 PM, Urs Liska u...@openlilylib.org
wrote:



 Am 20. Januar 2015 07:47:20 MEZ, schrieb Steve Lacy
 sl...@slacy.com:
 I'm transcribing a Mendelssohn score, and am trying to get
Lilypond
 to
 pack
 notes about as densely as they are in the original score.  For
 example,
 trying to fit a snippet like this onto a single line:

 \version 2.16.2
 \language english
 \relative c''' {
   \key e \minor
   \mark \default
   \time 2/2
   b2-\f\(\times 2/3 { b8\!)[fs8-1(g8] a8[g8-3 fs8] } |
 \times 2/3 { g8-)[ds-1(e8]  fs8[e8 ds8] e8)[as,-1(b-2] c-3[b-2
 as-1] |
   b8-1-)[fs(g]  a[g fs] } g-) e\(g) b_- |
   e8---4 e---0 g-- b-- e4.---0\sf(e8-.) |
   e2(\sf\ \times 2/3 { e8\!)[b8-2(c8] d8[c8 b8] } |
 }

 (http://lilybin.com/qukbs5/2)

 I've tried adding:

 \override SpacingSpanner #'base-shortest-duration =
#(ly:make-moment
 1
 1)

 But this seems to have no or only very little effect on the
default
 spacing, even with make-moment up to 2/1 or higher.  For reference
 I'd
 like
 the formatting to match something like this:

 [image: Inline image 1]

 I can get the desired result by adding a \noBreak at the end of
 every
 bar
 but that's very laborious and makes the .ly file quite a bit
uglier.
 (even using an alias like nb = { \noBreak })

 Are there other tricks for very densely formatted scores?

 Steve

 Have a look at


https://github.com/openlilylib/openlilylib/tree/master/notation-snippets/adjust-horizontal-spacing
 and see if it helps.

 Urs






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


 ___
 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


Quartet Template with/without trills

2015-01-20 Thread Peter Gentry
I have been trying out the quartet template inserting music with \include. The 
individual instrument music files contain trills and
I have used the tags 'trills and 'expand to produce scores and midi. However 
although the tags work OK when the music files are
compiled individually when using the score file below any music identified by 
'trills or 'expand is skipped. Am I missing a point
here or is this not possible?

\version 2.18.2

\include piece.ly
#(set-global-staff-size 14)
\score {
  \new StaffGroup \keepWithTag #'score 
   \removeWithTag #'expand \music
\layout { }
}
\score {
\new StaffGroup \keepWithTag #'score 
\removeWithTag #'trills  \music
   \midi{  }
}  

For the test only one music file conatined the 'trills 'expand tags. Do I need 
to separate the keepWith and removeWith actions with
{} or   ?

regards
Peter Gentry 



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


Re: Double thin bar lines and repeats?

2015-01-20 Thread Lars-Johan Liman
On Mon, Jan 19, 2015 at 06:26:38PM -0800, Jim Long wrote:
 That is, a closing volta barline which has no matching opening
 volta barline repeats either to the beginning of the piece, or to
 the nearest double barline, whichever is closer.

I did understand that part in your message, and I had arrived at that
conclusion as a theory by myself, but ...

lilyp...@umpquanet.com:
 My apologies for not describing that very definitively, but
 hopefully the point is clear enough.

 A contrived exceptional counter-example is attached.

This is ... a wonderfully broken example, agreed! Nightmare is a very
appropriate file name ... :-) :-)

Cheers,
  /Liman

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


Re: Changing Laissez Vibrer ties for chords

2015-01-20 Thread Knute Snortum
I forgot to thank you.  It works great.


Knute Snortum
(via Gmail)

On Mon, Jan 19, 2015 at 10:11 AM, David Nalesnik david.nales...@gmail.com
wrote:

 Hi Knute,

 On Mon, Jan 19, 2015 at 11:08 AM, Knute Snortum ksnor...@gmail.com
 wrote:

 I'm using a Laissez Vibrer tie on a chord.  It works fine, but I would
 like to change the shape.  \shape works fine but for only one tie.  How do
 I shape both ties?


 As with the ties in a TieColumn, \shape won't work for l.v. ties in a
 LaissezVibrerTieColumn.  One solution here is to adapt \shapeTieColumn (in
 openlilylib and on the -user list).

 Try this:

 \version 2.19.15

 shapeLVTieColumn =
 #(define-music-function (parser location all-offsets) (list?)
#{
  \override LaissezVibrerTieColumn.before-line-breaking =
  #(lambda (grob)
 (let ((ties (ly:grob-array-list (ly:grob-object grob 'ties
   (for-each
(lambda (tie offsets)
  (set! (ly:grob-property tie 'control-points)
(map
 (lambda (x y) (coord-translate x y))
 (ly:tie::calc-control-points tie)
 offsets)))
ties all-offsets)))
#})

 

 \language english

 \relative c, {
   \time 3/4
   \key a \major
   \clef bass
   \shapeLVTieColumn #' (
((1 . 0) (2 . 0) (3 . 0) (17 . 0))
((1 . 0) (2 . 0) (3 . 0) (4 . 0))
)
   a a'2. \laissezVibrer |
 }
 %%% -- End


 HTH,
 David


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


Re: Staccato

2015-01-20 Thread Cynthia Karl

 On Jan 20, 2015, at 7:14 AM, Noeck noeck.marb...@gmx.de wrote:
 
 
 4. To find the override for staccatos, I tried to find the property of
 Script that specifies the direction. I used the Frescobaldi autocomplete
 and typed \override Script. and Ctrl+Space which showed me
 that there is a property called direction, which sounds good.
 I could also have clicked on the word 'Script' in the pdf above, which
 would have brought me to:
 http://www.lilypond.org/doc/v2.18/Documentation/internals/script
 Where direction is also mentioned.
 = \override Scripts.direction = and then?

On a mac, it's apparently Cmnd+Space.  But when I tried that I got the 
Spotlight popup. There was a keyboard setting that apparently overrode 
Frescobaldi's use of the shortcut.  So I turned that off:  Apple-System 
Preferences-
Keyboard-Shortcuts-Spotlight-Show Spotlight search.  There was another usage 
of Cmnd+Space in Keyboard-Input Sources, which I also turned off (I wonder how 
that shortcut sharing thingy is supposed to work).

Now when I do what you described above, I get the Completion Popup.  Yay!  

Thanks.

Nobody seems very enthused about my suggestion to modify the definition of 
Staccato in Musical Glossary. An entry for Augmentation Dot might also be nice. 
 I might also suggest to add a little documentation for dotsDown in the 
Notation Manual.

Is Gould's Behind Bars the unofficial go-to reference for LilyPond notation 
questions?
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Quartet Template with/without trills

2015-01-20 Thread Phil Holmes
- Original Message - 
From: Peter Gentry peter.gen...@sunscales.co.uk

To: lilypond-user@gnu.org
Sent: Tuesday, January 20, 2015 10:50 AM
Subject: Quartet Template with/without trills


I have been trying out the quartet template inserting music with \include. 
The individual instrument music files contain trills and
I have used the tags 'trills and 'expand to produce scores and midi. 
However although the tags work OK when the music files are
compiled individually when using the score file below any music identified 
by 'trills or 'expand is skipped. Am I missing a point

here or is this not possible?

\version 2.18.2

\include piece.ly
#(set-global-staff-size 14)
\score {
 \new StaffGroup \keepWithTag #'score
  \removeWithTag #'expand \music
\layout { }
}
\score {
   \new StaffGroup \keepWithTag #'score
   \removeWithTag #'trills  \music
  \midi{  }
}

For the test only one music file conatined the 'trills 'expand tags. Do I 
need to separate the keepWith and removeWith actions with

{} or   ?

regards
Peter Gentry



I would suggest adding { } around the \music after the \removeWithTag and 
see if this works.


--
Phil Holmes 



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


Re: Staccato

2015-01-20 Thread Kieren MacMillan
Hi Cynthia,

 Is Gould's Behind Bars the unofficial go-to reference for LilyPond notation 
 questions?

Gould’s “Behind Bars” is now the de facto “bible” for composers, arrangers, and 
engravers with respect to most standard musical notation issues.

Cheers,
Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


Re: Staccato

2015-01-20 Thread Noeck
Hi Cynthia,

 You must have an intimate knowledge of LP source code to be able to
say that.

to be honest, it’s not intimate knowledge of LP source code. I write
my approach (what I did) here, perhaps it is helpful for you or someone
else:

1. Such things can almost always be changed via the right \override
command. So I need to know what to override.

2. From doing this: http://joramberger.de/files/lilypond_visualindex.pdf
I had in mind that all articulations are a »Script« and that there is a
category (graphical object) called »Dots« for augmentation dots (see the
Voice line in this pdf).

3. I tested if that is true with this small code:
{ b'4. b'8-. \dotsDown b'4. b'8-. }
This confirms that \dotsDown acts on augmentation dots.
= \override Scripts and then?

4. To find the override for staccatos, I tried to find the property of
Script that specifies the direction. I used the Frescobaldi autocomplete
and typed \override Script. and Ctrl+Space which showed me
that there is a property called direction, which sounds good.
I could also have clicked on the word 'Script' in the pdf above, which
would have brought me to:
http://www.lilypond.org/doc/v2.18/Documentation/internals/script
Where direction is also mentioned.
= \override Scripts.direction = and then?

5. Then I knew that there are the scheme entities #UP, #DOWN, #LEFT,
#RIGHT. This brought me to:
\override Script.direction = #DOWN

HTH,
Joram

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


Ubuntu Download

2015-01-20 Thread Luca Danieli
Hello,

I was interested in installing Lilypond on my Ubuntu, but whenever I go to 
the download page I got an error. Is maybe the server on linuxaudio.org down 
for some reason?

Thank you
Luca


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


Re: Are these triple-dots of augmentation possible?

2015-01-20 Thread Simon Albrecht
Of course this is possible with any number of dots:

\version 2.19

\relative {
 g'2.. 8
 2... 16
 % or even
 2 32
 2.. 128
}

%%% end snip %%%

I don't see why there should be any problem with shiftDurations there.
But if I'm right, three dots multiply the duration by 15/8...

HTH, Simon

 Am 19-Jan-2015 23:59:28 +0100 schrieb lilyp...@tremagi.org.uk: 
Here's a little thing that has got me stumped.

 Is it possible to add three dots to a note glyph, thus:

O:. to signify that the duration of the note is to be multiplied by 9/4 ?
 And can this be done in such a way 
 (i) that the dots avoid clashing with staff lines, and
 (ii) that the note glyph changes correctly under \shiftDurations ? i.e. so 
that, say:

c1\wierdDots % displays the note above, 

\shiftDurations #1 #0 { c1\wierdDots } % displays a 3-dotted minim, and

\shiftDurations #-1 #0 { c1\wierdDots } % displays a 3-dotted breve. (For 
simplicity it is safe to assume that the second argument to \shiftDurations 
will always be zero).

 Grateful, as always, for any insight, even if on this occasion it is just 
expert advice to give up!

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


Re: Ubuntu Download

2015-01-20 Thread Federico Bruni
2015-01-20 16:09 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:


 I was interested in installing Lilypond on my Ubuntu, but whenever I go to
 the download page I got an error. Is maybe the server on linuxaudio.org
 down
 for some reason?


It's working here:
http://www.downforeveryoneorjustme.com/linuxaudio.org

Which error are you getting?
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Are these triple-dots of augmentation possible?

2015-01-20 Thread Graham King
On Tue, 2015-01-20 at 16:29 +0100, Simon Albrecht wrote:

 Of course this is possible with any number of dots:
 
 \version 2.19
 
 \relative {
   g'2.. 8
   2... 16
   % or even
   2 32
   2.. 128
 }
 
 %%% end snip %%%
 
 I don't see why there should be any problem with shiftDurations there.
 But if I'm right, three dots multiply the duration by 15/8...
 
 HTH, Simon

Thanks Simon,
that's why the dots are weird (excuse the typo in my original
posting).  

O...  would indeed multiply the duration of O by 15/8, but
O:.  is intended to multiply the duration of O by 9/4 ( i.e. O. + ..)

I'm transcribing a piece without access to the original white mensural
notation, and I'm coming to the conclusion (for this and other reasons)
that the old edition I'm working from is seriously loopy.  Time to
reverse-engineer the original notation and take a different approach
methinks...



 
 
 
 Am 19-Jan-2015 23:59:28 +0100 schrieb lilyp...@tremagi.org.uk:
 
 
 Here's a little thing that has got me stumped.
 
 Is it possible to add three dots to a note glyph, thus:
 
 
 O:.
 
 to signify that the duration of the note is to be multiplied
 by 9/4 ?
 And can this be done in such a way 
 (i) that the dots avoid clashing with staff lines, and
 (ii) that the note glyph changes correctly under
 \shiftDurations ? i.e. so that, say:
 
 c1\wierdDots% displays the
 note above, 
 
 \shiftDurations #1  #0 { c1\wierdDots } % displays a
 3-dotted minim, and
 
 \shiftDurations #-1 #0 { c1\wierdDots } % displays a
 3-dotted breve.
 
 (For simplicity it is safe to assume that the second
 argument to \shiftDurations will always be zero).
 
 Grateful, as always, for any insight, even if on this occasion
 it is just expert advice to give up!
 
 -- Graham
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: instrumentSwitch and addInstrumentDefinition use

2015-01-20 Thread Kieren MacMillan
Hi Keith,

 By saying reedPlayer stores written pitches, I meant only that the 
 \transpose{...} operations, to tell LilyPond which notes should be printed at 
 which transposition, were included in the variable reedPlayer.

Thanks for the clarification.

 You could try the attached modification (to avoid transposition of cues) of 
 Jan-Peter's method.

 part = { g'4 b' d'' fis'' R1
\instrumentSwitch cl Bflat \bar||\key\default
g'4 b' d'' fis'' R1
\instrumentSwitch flute \bar||\key\default
g'4 b' d'' fis'' R1 }
 global = { \key g\major s1*4  }
 \new Staff \with { \printTransposition }
 \new Voice  \global \part 

This is really great, IMO!

So…

1. What do others think?

2. What would be required so that the \bar ||” \key \default stuff could be 
avoided (e.g., could be abstracted either in the global, or somewhere better)? 
Because right now, writing

   \new Staff \with { \printTransposition } \new Voice  \global \part 
   \new Staff \new Voice  \global \part 

one gets [as expected] the key signature(s) unnecessarily reprinted at each 
switch point in the second (concert) score.

3. In a perfect world, either \instrumentSwitch would take two music 
expressions (i.e., one for the “prep” period, one for the “playing” period), or 
there would be an \instrumentPrep macro — primarily to deal with the markup 
activities (e.g., “take clarinet”), but possibly for other things. Which do you 
think is ultimately a better solution?

Thanks!
Kieren.
_

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


Re: OT: Re: Grand Advanced Stylesheet Project (GASP)

2015-01-20 Thread Kieren MacMillan
Hi Johan,

 As I understand, the compact chord names require a (otherwise
 harmless) change in one of lily's scm files. I don't know if this can be
 dealt with by pure inclusion of an .ily file.

Yes… I misunderstood the original post.

 Just nitpicking: the names are Clinton H. Roemer and Carl Brandt.

Thanks for the correction!

Cheers,
Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


RE: Quartet template with/without trills

2015-01-20 Thread Peter Gentry

 I have used the tags 'trills and 'expand to produce scores 
and midi. 
 However although the tags work OK when the music files are compiled 
 individually when using the score file below any music 
identified by 
 'trills or 'expand is skipped. Am I missing a point here or is this 
 not possible?
 
 \version 2.18.2
 
 \include piece.ly
 #(set-global-staff-size 14)
 \score {
  \new StaffGroup \keepWithTag #'score
   \removeWithTag #'expand \music
 \layout { }
 }
 \score {
\new StaffGroup \keepWithTag #'score
\removeWithTag #'trills  \music
   \midi{  }
 }
 

keepWithTag #'score keeps untagged and score-tagged sections 
and removes all other tagged sections.  So you will loose 
#'trills and #'expand.

What about:

score {
 \new StaffGroup \keepWithTag #'(score trills expand)
   \removeWithTag #'expand \music
 layout { }
}

\score {
 \new StaffGroup \keepWithTag #'(score trills expand)
  \removeWithTag #'trills  \music
 \midi{  }
}

or even:

score {
 \new StaffGroup \keepWithTag #'(score trills)
   \music
 layout { }
}

\score {
 \new StaffGroup \keepWithTag #'(score expand)
   \music
 \midi{  }
}

Toine Schreurs


Thanks that worked a treat. I had not realised the way \keepWithTag worked or 
that you could put all the tags in parentheses.


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


Re: Double thin bar lines and repeats?

2015-01-20 Thread Brian Barker

At 22:10 19/01/2015 +0100, Lars-Johan Liman wrote:
I'm trying to end a section of piano music with thin double bar 
lines, break the line, and then start the next line with repeat marks.

[...]
(You may feel tempted to argue that what I want to do is wrong, 
which it may well be according to modern typesetting standards, ...


For what it's worth, Elaine Gould doesn't think this is wrong: Some 
editions place a thin double barline at the end of a previous system 
where a repeat barline starts the next system. (Behind Bars, p. 234).


Brian Barker 



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


Proposed changes to LSR Snippet 906

2015-01-20 Thread tisimst
LSR Maintainers,

I'd like to propose the following changes to make  LSR snippet 906
http://lsr.di.unimi.it/LSR/Item?id=906   Orchestral grouping with a
postscript brace

Current output (using postscript code):

http://lilypond.1069038.n5.nabble.com/file/n170797/Image.image 

Proposed code and output (using the built-in braces):

%  START SNIP

\version 2.18.2
%% http://lsr.di.unimi.it/LSR/Item?id=906

% by Kieren MacMillan and P.P.Schneider.
% = http://lists.gnu.org/archive/html/lilypond-user/2013-03/msg00260.html

%%
% LSR workaround:
#(set! paper-alist (cons '(snippet . (cons (* 90 mm) (* 120 mm)))
paper-alist))
\paper {
  #(set-paper-size snippet)
  tagline = ##f
}

\markup \vspace #1
%%

%here starts the snippet:

someMusic = { 
  \tempo Andante.
  \time 3/4
  \key c \minor
  c'2. r8 
}

\paper { 
  indent = 40 
}

\layout {
  \context {
\Staff
\override InstrumentName.font-size = #-1
\override InstrumentName.extra-offset = #'(6 . 0)
  }
  \context {
\StaffGroup
\name ViolinGroup
\alias StaffGroup
systemStartDelimiter = #'SystemStartBrace
  }
  \context {
\StaffGroup
\name WindGroup
\alias StaffGroup
systemStartDelimiter = #'SystemStartBracket
\override SystemStartBracket.collapse-height = #1
  }
  \context {
\StaffGroup
\name StringGroup
\alias StaffGroup
\accepts ViolinGroup
systemStartDelimiter = #'SystemStartBracket
  }
  \context {
\StaffGroup
\name OrchestraGroup
\accepts WindGroup
\accepts StringGroup
\remove System_start_delimiter_engraver
instrumentName = \markup { 
  \lower #0.75 \rotate #90 Orchestra \hspace #1
  \left-brace #175 \hspace #5
}
  }
  \context {
\GrandStaff
\remove System_start_delimiter_engraver
\accepts OrchestraGroup
\accepts StaffGroup
\accepts VocalGroup
  }
  \context {
\StaffGroup
\name VocalGroup
\alias StaffGroup
systemStartDelimiter = #'SystemStartBracket
  }
}

\score {
  \new GrandStaff 
\new OrchestraGroup 
  \new WindGroup 
\new Staff \with { 
  instrumentName = Oboe 
} \someMusic
  
  \new StringGroup 
\new ViolinGroup 
  \new Staff \with { 
instrumentName = Violino I 
  } \someMusic
  \new Staff \with { 
instrumentName = Violino II 
  } \someMusic

\new Staff \with { 
instrumentName = Viola 
  } { \clef C \someMusic }
  

\new VocalGroup 
  \new Staff \with { 
instrumentName = Soprano 
  } \someMusic
  \new Staff \with { 
instrumentName = Alto 
  } { \clef C \someMusic }

  
}

%  END SNIP

http://lilypond.1069038.n5.nabble.com/file/n170797/snippet906-updated.png 

What do you think? 

I guess it might also need a new name since it doesn't actually use
postscript anymore... There's probably more that could be done to make this
even more automagic, but I'm leaving it at this for now.

-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Proposed-changes-to-LSR-Snippet-906-tp170797.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: Ubuntu Download

2015-01-20 Thread Pierre Perol-Schneider
Hi Luca,
1. Works fine here.
2. You probably already have an old LilyPond (v2.14 or 2.16) in your
Ubuntu. So maybe the first thing to do is : uninstall-lilypond
HTH,
Pierre

2015-01-20 16:09 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:

 Hello,

 I was interested in installing Lilypond on my Ubuntu, but whenever I go to
 the download page I got an error. Is maybe the server on linuxaudio.org
 down
 for some reason?

 Thank you
 Luca


 ___
 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 pack notes very tightly?

2015-01-20 Thread James

On 20/01/15 07:29, Urs Liska wrote:

Forwarding to bug-lilypond.
Could someone please verify this


Verify what precisely?

James

and create a tracker entry?


(It's not my code BTW)

Am 20. Januar 2015 08:20:25 MEZ, schrieb Steve Lacy sl...@slacy.com:

Thanks, Urs.

Reading your code, seems like it was just a convenience function for
setting SpacingSpanner.common-shortest-duration

Adding a simple:

  \override Score.SpacingSpanner #'common-shortest-duration =
#(ly:make-moment 1 4)

Got me to the density I was looking for.  (http://lilybin.com/qukbs5/3)

It's interesting (frustrating?) that the documentation on changing
horizontal spacing mentions setting base-shortest-duration to adjust
horizontal spacing (
http://www.lilypond.org/doc/v2.16/Documentation/notation/changing-horizontal-spacing),
but in fact, it seems as though common-shortest-duration is the
variable
that really needs to be tweaked.

Steve


On Mon, Jan 19, 2015 at 11:07 PM, Urs Liska u...@openlilylib.org wrote:




Am 20. Januar 2015 07:47:20 MEZ, schrieb Steve Lacy

sl...@slacy.com:

I'm transcribing a Mendelssohn score, and am trying to get Lilypond

to

pack
notes about as densely as they are in the original score.  For

example,

trying to fit a snippet like this onto a single line:

\version 2.16.2
\language english
\relative c''' {
  \key e \minor
  \mark \default
  \time 2/2
  b2-\f\(\times 2/3 { b8\!)[fs8-1(g8] a8[g8-3 fs8] } |
\times 2/3 { g8-)[ds-1(e8]  fs8[e8 ds8] e8)[as,-1(b-2] c-3[b-2

as-1] |

  b8-1-)[fs(g]  a[g fs] } g-) e\(g) b_- |
  e8---4 e---0 g-- b-- e4.---0\sf(e8-.) |
  e2(\sf\ \times 2/3 { e8\!)[b8-2(c8] d8[c8 b8] } |
}

(http://lilybin.com/qukbs5/2)

I've tried adding:

\override SpacingSpanner #'base-shortest-duration = #(ly:make-moment

1

1)

But this seems to have no or only very little effect on the default
spacing, even with make-moment up to 2/1 or higher.  For reference

I'd

like
the formatting to match something like this:

[image: Inline image 1]

I can get the desired result by adding a \noBreak at the end of

every

bar
but that's very laborious and makes the .ly file quite a bit uglier.
(even using an alias like nb = { \noBreak })

Are there other tricks for very densely formatted scores?

Steve


Have a look at


https://github.com/openlilylib/openlilylib/tree/master/notation-snippets/adjust-horizontal-spacing

and see if it helps.

Urs








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




___
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


Re: Quartet Template with/without trills

2015-01-20 Thread Toine Schreurs
 I have used the tags 'trills and 'expand to produce scores and midi. 
 However although the tags work OK when the music files are
 compiled individually when using the score file below any music identified 
 by 'trills or 'expand is skipped. Am I missing a point
 here or is this not possible?
 
 \version 2.18.2
 
 \include piece.ly
 #(set-global-staff-size 14)
 \score {
  \new StaffGroup \keepWithTag #'score
   \removeWithTag #'expand \music
 \layout { }
 }
 \score {
\new StaffGroup \keepWithTag #'score
\removeWithTag #'trills  \music
   \midi{  }
 }
 

keepWithTag #'score keeps untagged and score-tagged sections and removes all
other tagged sections.  So you will loose #'trills and #'expand.

What about:

score {
 \new StaffGroup \keepWithTag #'(score trills expand)
   \removeWithTag #'expand \music
 layout { }
}

\score {
 \new StaffGroup \keepWithTag #'(score trills expand)
  \removeWithTag #'trills  \music
 \midi{  }
}

or even:

score {
 \new StaffGroup \keepWithTag #'(score trills)
   \music
 layout { }
}

\score {
 \new StaffGroup \keepWithTag #'(score expand)
   \music
 \midi{  }
}

Toine Schreurs

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


Re: Ubuntu Download

2015-01-20 Thread Federico Bruni
Ok, now it's clear.
The .sh file is a text file. You should save it in your hard disk instead
of viewing it in the browser.
You can either save it from File menu if you are on that page or choose
Save link as in the lilypond.org download page.

You can also configure your browser to always donwload .sh files.


2015-01-20 16:31 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:

 When I click on the download link


 http://download.linuxaudio.org/lilypond/binaries/linux-x86/lilypond-2.18.2-1.linux-x86.sh

 I get the following text-page. Is that expected?



 #! /bin/sh

 me=$0
 root=$HOME
 doc=no
 extract=no
 interactive=yes
 arch=$(uname -m)

 if test `id -u` = 0; then
 root=/usr/local
 fi

 while test -n $1;
 do
 case $1 in
   --help)
   cat EOF
 $me - install LilyPond tarball
 Options
   --batch no interaction
   --doc   [attempt to] download and install documentation
   --prefix PREFIX install into PREFIX/lilypond (default: ${root})
   --help  this help
   --tarball   extract tar file for archive
 EOF




 --
 Date: Tue, 20 Jan 2015 16:20:56 +0100
 Subject: Re: Ubuntu Download
 From: fedel...@gmail.com
 To: mr.luce...@hotmail.it
 CC: lilypond-user@gnu.org


 2015-01-20 16:09 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:


 I was interested in installing Lilypond on my Ubuntu, but whenever I go to
 the download page I got an error. Is maybe the server on linuxaudio.org
 down
 for some reason?


 It's working here:
 http://www.downforeveryoneorjustme.com/linuxaudio.org

 Which error are you getting?


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


Re: Ubuntu Download

2015-01-20 Thread Pierre Perol-Schneider
(please respond to the list)

See : Generic Packages or Distribution-Specific Packages?
here : http://lilypond.org/unix.html
Cheers,
Pierre

2015-01-20 16:32 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:

 This is true!!! How come?? :)

 Thanks!

 --
 Date: Tue, 20 Jan 2015 16:23:43 +0100
 Subject: Re: Ubuntu Download
 From: pierre.schneider.pa...@gmail.com
 To: mr.luce...@hotmail.it
 CC: lilypond-user@gnu.org


 Hi Luca,
 1. Works fine here.
 2. You probably already have an old LilyPond (v2.14 or 2.16) in your
 Ubuntu. So maybe the first thing to do is : uninstall-lilypond
 HTH,
 Pierre

 2015-01-20 16:09 GMT+01:00 Luca Danieli mr.luce...@hotmail.it:

 Hello,

 I was interested in installing Lilypond on my Ubuntu, but whenever I go to
 the download page I got an error. Is maybe the server on linuxaudio.org
 down
 for some reason?

 Thank you
 Luca


 ___
 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


shape in 2.16.2

2015-01-20 Thread Luca Danieli
I really like Lilypond, so congrats to everybody! But some errors are very 
frustrating.
Just a few questions:
1) does the function shape (for slurs) work in the version 2.16.2?2) the 
fantastic references on the website are constantly updated to the last version?
(I often get problems and errors by simply copying and pasting example codes 
from the website.)
Luca  ___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread tisimst
Kieren MacMillan wrote
 Well, as long as we’re doing that — which is quite nice, by the way! — we
 should make it fully automagic, yes? i.e., if you add additional contexts
 to the OrchestraGroup, the brace should expand accordingly.
 
 Not sure if this will require a callback function, or if it can somehow be
 done by using SystemStartDelimiter — i.e., the way it should have worked
 in the first place — but nested context names should Do The Right Thing™.

I couldn't agree more about wanting it to be automagic. I played around with
the contexts and some of the overrides for the SystemStartDelimiter, but I
couldn't get something that worked to my satisfaction. If anyone else has a
great idea for this, I'd love to hear it!

-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Proposed-changes-to-LSR-Snippet-906-tp170797p170802.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: Proposed changes to LSR Snippet 906

2015-01-20 Thread Kieren MacMillan
Hi Abraham (et al.),

 I'd like to propose the following changes to LSR snippet 906

Well, as long as we’re doing that — which is quite nice, by the way! — we 
should make it fully automagic, yes? i.e., if you add additional contexts to 
the OrchestraGroup, the brace should expand accordingly.

Not sure if this will require a callback function, or if it can somehow be done 
by using SystemStartDelimiter — i.e., the way it should have worked in the 
first place — but nested context names should Do The Right Thing™.

Cheers,
Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


Re: shape in 2.16.2

2015-01-20 Thread tisimst
Luca Danieli wrote
 I really like Lilypond, so congrats to everybody! But some errors are very
 frustrating.
 Just a few questions:
 1) does the function shape (for slurs) work in the version 2.16.2?
 2) the fantastic references on the website are constantly updated to the
 last version?
 (I often get problems and errors by simply copying and pasting example
 codes from the website.)

Luca,

You came to the right place if you are having errors. I have a few
questions/suggestions for you:

1. The documentation for previous versions is always available online ( here
http://lilypond.org/doc/v2.16/Documentation/web/manuals   is the link for
2.16.2).
2. What operating system are you using? If you are on linux, the version in
your repository may not be up-to-date. Unfortunately, this is quite common.
Any other OS, you should be able to get the latest  stable
http://lilypond.org/download.html  / unstable
http://lilypond.org/development.html   versions installed.
3. Can you give at least one specific examples of what isn't working for you
(i.e., a small, compileable snippet)?

Hope That Helps!
-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Ubuntu-Download-tp170786p170806.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: Proposed changes to LSR Snippet 906

2015-01-20 Thread tisimst
Kieren MacMillan wrote
 How about this?

+1!

Nice work, Kieren. I just wish I didn't have to also manually offset the
ViolinGroup brace as well. Otherwise, I think this is excellent.

-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Proposed-changes-to-LSR-Snippet-906-tp170797p170808.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: Vertical alignment of text added to notes.

2015-01-20 Thread MarcM

I find it easier to use lyrics.

http://lilybin.com/to3r9r/5

musicOne = \relative c' {
  d e f g a b c
}
verseOne = \lyricmode {
  d e f g a b c
}
\score {
  
\new Voice = one {
  \time 2/4
  \musicOne
}
\new Lyrics \lyricsto one {
  \verseOne
}
  
}



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Vertical-alignment-of-text-added-to-notes-tp170221p170815.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


Derive the correct print function of a grob

2015-01-20 Thread tisimst
Is it possible to derive the correct default print function for a grob? 

For example, if I want to get the stencil of a hairpin, I know the function
is called ly:hairpin::print, but for accidentals, it's
ly:accidental-interface:print. 

I'd like to be able to get the right one automatically (in scheme) without
needing to specify them all and use conditionals to figure out the right
one. Any suggestions? I'm not sure if this is even possible, and I can deal
with it if it's not, but I'd rather not if I can help it.

Thanks,
Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Derive-the-correct-print-function-of-a-grob-tp170809.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: Derive the correct print function of a grob

2015-01-20 Thread Thomas Morley
2015-01-20 22:49 GMT+01:00 Thomas Morley thomasmorle...@gmail.com:
 2015-01-20 22:30 GMT+01:00 tisimst tisimst.lilyp...@gmail.com:
 Is it possible to derive the correct default print function for a grob?

 For example, if I want to get the stencil of a hairpin, I know the function
 is called ly:hairpin::print, but for accidentals, it's
 ly:accidental-interface:print.

 I'd like to be able to get the right one automatically (in scheme) without
 needing to specify them all and use conditionals to figure out the right
 one. Any suggestions? I'm not sure if this is even possible, and I can deal
 with it if it's not, but I'd rather not if I can help it.

 Thanks,
 Abraham

 Hi Abraham,

 it's not that hard ;)
 Though, one Problem might be a previous applied stencil-override...

 The code below will return the name of the default and the actual
 print-procedure.

 \version 2.19.15

 #(define new-stil
   (lambda (grob)
 (grob-interpret-markup grob xy)))

 {
 \override NoteHead.stencil = #new-stil
 \override NoteHead.after-line-breaking =
 #(lambda (grob)
   (display \nactual-stencil:\t\t)
   (display
 (procedure-name
   (assoc-get 'stencil
 (ly:grob-basic-properties grob
   (display \ndefault-stencil:\t)
   (display
 (procedure-name
   (assoc-get 'stencil
 (reverse (ly:grob-basic-properties grob)
   )
 c''1
 }

 HTH,
   Harm

Maybe better to do some more afford, to return useful output, if it's
applied to a grob without 'stencil property

#(define new-stil
  (lambda (grob)
(grob-interpret-markup grob xy)))

{
\override NoteHead.stencil = #new-stil
\override NoteHead.after-line-breaking =
#(lambda (grob)
  (display \nactual-stencil:\t\t)
  (display
(let ((actual-stil-proc
(assoc-get 'stencil
  (ly:grob-basic-properties grob
  (if (procedure? actual-stil-proc)
  (procedure-name actual-stil-proc)
  (format #f no stencil found for ~a grob
  (display \ndefault-stencil:\t)
  (display
(let ((default-stil-proc
(assoc-get 'stencil
  (reverse (ly:grob-basic-properties grob)
  (if (procedure? default-stil-proc)
  (procedure-name default-stil-proc)
  (format #f no stencil found for ~a grob)

c''1
}

Cheers,
 Harm

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


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread tisimst
Thomas Morley-2 wrote
 Hi,
 
 I've currently not the time to have a deeper look into the proposed
 change.
 Please contribute it to the LSR following
 http://lsr.di.unimi.it/LSR/html/contributing.html
 Suggesting modifications or improvements to existing snippets
 
 Thanks,
   Harm

Thanks, Harm. I'll do that when I feel confident I'm done tweaking it.

-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Proposed-changes-to-LSR-Snippet-906-tp170797p170818.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: Proposed changes to LSR Snippet 906

2015-01-20 Thread Thomas Morley
2015-01-20 22:20 GMT+01:00 tisimst tisimst.lilyp...@gmail.com:
 Kieren MacMillan wrote
 How about this?

 +1!

 Nice work, Kieren. I just wish I didn't have to also manually offset the
 ViolinGroup brace as well. Otherwise, I think this is excellent.

 -Abraham

Hi,

I've currently not the time to have a deeper look into the proposed change.
Please contribute it to the LSR following
http://lsr.di.unimi.it/LSR/html/contributing.html
Suggesting modifications or improvements to existing snippets

Thanks,
  Harm

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


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread tisimst
tisimst wrote
 
 Kieren MacMillan wrote
 How about this?
 +1!
 
 Nice work, Kieren. I just wish I didn't have to also manually offset the
 ViolinGroup brace as well. Otherwise, I think this is excellent.
 
 -Abraham

Actually, I thought about and played with Kieren's suggestion a little more,
but one issue I discovered is that it continues to print the larger
Orchestra brace way out to the left, but we only need it the one time at
the beginning, so I'd have to say I'm more inclined to put it in the
instrument name and deal with manually adjusting the brace size.

Objections?

-Abraham



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Proposed-changes-to-LSR-Snippet-906-tp170797p170817.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: ANN: Frescobaldi 2.17.2

2015-01-20 Thread MarcM

on Mac, when I launch Frescobaldi it does not show the document. I always
have to go to  Window  New Window to see the lilypond code and the music.
Is there a workaround?



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/ANN-Frescobaldi-2-17-2-tp170737p170822.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: ANN: Frescobaldi 2.17.2

2015-01-20 Thread Philippe Massart

 Le 21 janv. 2015 à 05:12, MarcM m...@mouries.net a écrit :
 
 
 on Mac, when I launch Frescobaldi it does not show the document. I always
 have to go to  Window  New Window to see the lilypond code and the music.
 Is there a workaround?
 

Hello,

That bug is found since some time now (and is linked, I think, to the mac 
implementation of the QT4 framework). The only other way now is to click once 
more on the Frescobaldi icon in the Dock since Frescobaldi is running

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


Re: Derive the correct print function of a grob

2015-01-20 Thread Thomas Morley
2015-01-20 22:30 GMT+01:00 tisimst tisimst.lilyp...@gmail.com:
 Is it possible to derive the correct default print function for a grob?

 For example, if I want to get the stencil of a hairpin, I know the function
 is called ly:hairpin::print, but for accidentals, it's
 ly:accidental-interface:print.

 I'd like to be able to get the right one automatically (in scheme) without
 needing to specify them all and use conditionals to figure out the right
 one. Any suggestions? I'm not sure if this is even possible, and I can deal
 with it if it's not, but I'd rather not if I can help it.

 Thanks,
 Abraham

Hi Abraham,

it's not that hard ;)
Though, one Problem might be a previous applied stencil-override...

The code below will return the name of the default and the actual
print-procedure.

\version 2.19.15

#(define new-stil
  (lambda (grob)
(grob-interpret-markup grob xy)))

{
\override NoteHead.stencil = #new-stil
\override NoteHead.after-line-breaking =
#(lambda (grob)
  (display \nactual-stencil:\t\t)
  (display
(procedure-name
  (assoc-get 'stencil
(ly:grob-basic-properties grob
  (display \ndefault-stencil:\t)
  (display
(procedure-name
  (assoc-get 'stencil
(reverse (ly:grob-basic-properties grob)
  )
c''1
}

HTH,
  Harm

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


Re: How to pack notes very tightly?

2015-01-20 Thread MarcM
FYI, you get a more condensed layout using the latest unstable release:
http://lilybin.com/qukbs5/13



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/How-to-pack-notes-very-tightly-tp170760p170814.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


Matching backslash in Scheme string (escaping characters for LaTeX)

2015-01-20 Thread Urs Liska

Hi all,

I have a Scheme function that processes a string and writes the result 
to a LaTeX file. For this I have to escape a number of characters that 
are allowed in a LilyPond string but not in LaTeX input.


Consider this code:

\version 2.19.16
#(use-modules (ice-9 regex))

str = This should be \partcombine-d  match everything

ampString = \\
slashString = \\textbackslash 

#(set! str
   (regexp-substitute/global #f  str
 'pre ampString 'post))

#(set! str
   (regexp-substitute/global #f \\+ str
 'pre slashString 'post))

#(ly:message )
#(ly:message str)
#(ly:message )

The resulting output is This should be \partcombine-d \ match 
everything while I want to have This should be \textbackslash 
partcombine-d \ match everything.
The escaping of the ampersand works as expected (although I have to 
define the replacement string in a LilyPond string while entering it 
directly as a string in the Scheme function doesn't seem to work), but 
the backslash is not matched.
Using \ as regex obviously doesn't work because that would escape the 
quotation mark so the string isn't properly ended.

Using \\ give the error Trailing backslash
Using \\+ compiles but doesn't match the backslash.

So what's the way to match a backslash in a LilyPond string?

Additionally I'd be glad about comments to:

- Which other characters would I have to escape when writing LaTeX code
  (so far I've encountered the backslash and the ampersand. But I'd feel
  better if I'd not just wait for errors ...)?
- Is there a more efficient way to escape a number of characters
  than piping the string through a series of regex substitutions?

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


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread Kieren MacMillan
Hi Abraham,

 but one issue I discovered is that it continues to print the larger
 Orchestra brace way out to the left, but we only need it the one time at
 the beginning, so I'd have to say I'm more inclined to put it in the
 instrument name and deal with manually adjusting the brace size.

Ooh… good point!

 Objections?

Yes: Can we not have the size of the brace auto-calculated from the StaffGroup 
height?  =)
(David N.!?)

Thanks,
Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


Re: Matching backslash in Scheme string (escaping characters for LaTeX)

2015-01-20 Thread Johan Vromans
On Wed, 21 Jan 2015 08:31:53 +0100
Urs Liska u...@openlilylib.org wrote:

 So what's the way to match a backslash in a LilyPond string?

My guess is four backslashes. 

To match a backslash you need \\ in the pattern.
Each of these need to be escaped in the string, so it becomes  .

-- Johan

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


Re: Matching backslash in Scheme string (escaping characters for LaTeX)

2015-01-20 Thread Urs Liska


Am 21.01.2015 um 08:41 schrieb Johan Vromans:

On Wed, 21 Jan 2015 08:31:53 +0100
Urs Liska u...@openlilylib.org wrote:


So what's the way to match a backslash in a LilyPond string?

My guess is four backslashes.

To match a backslash you need \\ in the pattern.
Each of these need to be escaped in the string, so it becomes  .

-- Johan


Thank you very much. That works perfectly.

Urs

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


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread Kieren MacMillan
Hi Abraham,

How about this?

someMusic = { 
 \tempo Andante.
 \time 3/4
 \key c \minor
 c'2. r8 
}

\paper { 
 indent = 40 
}

\layout {
 \context {
   \Staff
   \override InstrumentName.font-size = #-1
   \override InstrumentName.padding = #-5
 }
 \context {
   \StaffGroup
   \name ViolinGroup
   \alias StaffGroup
   systemStartDelimiter = #'SystemStartBrace
   \override SystemStartBrace.X-offset = #-1
 }
 \context {
   \StaffGroup
   \name WindGroup
   \alias StaffGroup
   systemStartDelimiter = #'SystemStartBracket
   \override SystemStartBracket.collapse-height = #1
 }
 \context {
   \StaffGroup
   \name StringGroup
   \alias StaffGroup
   \accepts ViolinGroup
   systemStartDelimiter = #'SystemStartBracket
 }
 \context {
   \StaffGroup
   \name OrchestraGroup
   \accepts WindGroup
   \accepts StringGroup
   systemStartDelimiter = #'SystemStartBrace
   \override SystemStartBrace.X-extent = #empty-interval
   \override SystemStartBrace.X-offset = #-12
   instrumentName = \markup { \rotate #90 Orchestra \hspace #8 }
 }
 \context {
   \GrandStaff
   \remove System_start_delimiter_engraver
   \accepts OrchestraGroup
   \accepts StaffGroup
   \accepts VocalGroup
 }
 \context {
   \StaffGroup
   \name VocalGroup
   \alias StaffGroup
   systemStartDelimiter = #'SystemStartBracket
 }
}

\score {
 \new GrandStaff 
   \new OrchestraGroup 
 \new WindGroup 
   \new Staff \with { instrumentName = Oboe } \someMusic
 
 \new StringGroup 
   \new ViolinGroup 
 \new Staff \with { instrumentName = Violino I } \someMusic
 \new Staff \with { instrumentName = Violino II } \someMusic
   
   \new Staff \with { instrumentName = Viola } { \clef C \someMusic }
   \new Staff \with { instrumentName = Cello } { \clef bass \someMusic }
 
   
   \new VocalGroup 
 \new Staff \with { instrumentName = Soprano } \someMusic
 \new Staff \with { instrumentName = Alto } { \clef C \someMusic }

  
}

Comment and/or uncomment the cello staff (e.g.) to see the stretching.

Cheers,
Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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


Re: Proposed changes to LSR Snippet 906

2015-01-20 Thread Kieren MacMillan
Hi Abraham,

 I played around with the contexts and some of the overrides for the
 SystemStartDelimiter, but I couldn't get something that worked to my 
 satisfaction.

Yeah, I remember it failing when I tried it way back then… something about not 
being able to get the big brace on the outside of the InstrumentName stack 
without knocking everything else out of alignment.  =\

Kieren.
___

Kieren MacMillan, composer
www:  http://www.kierenmacmillan.info
email:  i...@kierenmacmillan.info


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