Re: Split percent repeats at line breaks

2020-03-01 Thread antlists

On 29/02/2020 13:10, Davide Liessi wrote:

Hi all.
I'd like to have percent repeats automatically split at line breaks,
i.e., in the following example I'd like the first score to look like
the second.

\version "2.19.84"
\score {
   \repeat percent 30 { c'1 }
}
\score {
   {
 \repeat percent 14 { c'1 }
 \repeat percent 16 { c'1 }
   }
}

I think that this should typically also reset the percent repeat
counter, effectively behaving as if they were distinct percent
repeats, but being able to choose whether to reset it or not would be
nice.

Is there a way to achieve this?

I think your first requirement is the norm for human engraving, 
certainly I've never come across any music outside of lilypond where a 
staff has a percent as its first bar. Equally, I've never seen it reset 
the count - that just carries on. What I have seen is where the count 
only starts at eg bar 5.


I don't know enough about lilypond internals, but I guess the big 
problem is that if the line-breaking calculation actually affects the 
size of the bar (changing the first bar of a line from a percent to a 
copy of bar 1 of the repeat), then the calculation itself could get into 
quite a tangle.


Cheers,

Wol




Re: Transposing instruments

2020-03-13 Thread antlists

On 13/03/2020 11:29, Francisco Vila wrote:
So my question for Kieren is, for large scores involving transposing 
wind instruments along with strings etc, how do you manage this by 
using only clefs and no transposition? 


This is a double question, seeing as wind instruments rarely transpose 
by an octave. For example, I play the trombone, which is either written 
in bass clef concert, or in treble transposed by a ninth. I just don't 
worry about the 8s on the clef, I transpose a second and use the 
treble_8 clef "as is". Nobody's commented on that extra little 8 so far 
... :-)


Cheers,

Wol




Re: Remote Ensemble Playing

2020-03-28 Thread antlists

On 28/03/2020 11:00, Peter Gentry wrote:
I appreciate this is off topic but in these times of social isolation 
does anyone have any tips. Clearly latency is the main issue – I wonder 
could this be reduced by say hosting a Zoom meeting on a private router 
– maybe only one video for a conductor. Experience suggests that a 
latency of 25ms is not low enough.


Regards Peter


https://www.youtube.com/watch?v=P0KiCXZ2IM0

Stuff I've picked up elsewhere - avoid Firefox. I hate to say that, but 
the evidence is that one user on that and everyone else suffers.


Cheers,
Wol



Re: Remote Ensemble Playing

2020-03-28 Thread antlists

On 28/03/2020 18:55, Ralf Mattes wrote:

To the OP: there is an immanent latency in all network connections - packets 
need to
pass through switches and routers, and let's not forget the speed of electrical 
signals.
While one can get pretty low latency on local networks (Dante et al.) trying 
live jamming
over the internet is pretty much impossible.


Well, I shall soon find out ... a band I play for has scheduled a 
practice for Easter Saturday ...


Cheers,
Wol



Re: Suggestion to make sharps and flats persistent

2020-05-13 Thread antlists

On 13/05/2020 16:38, David Kastrup wrote:

Given the number of English-speaking LilyPond users who all share the
somewhat strange habit of calling a b-flat "b" if there is a flat in the
key signature, it is sort of a safe bet that you are not the first to
make this kind of proposal.


Are these the same ones who call b an h?

Certainly for someone who's mother tongue is English (NOT American) I'd 
never call b-flat a b because how would I tell whether it's flat or not :-)


Cheers,
Wol



Re: Suggestion to make sharps and flats persistent

2020-05-14 Thread antlists

On 14/05/2020 19:46, David Wright wrote:

Wol gave these "b" people the benefit of the doubt as being "b/h"
people (but why was the American tongue mentioned?).


Because Americans like to think they speak English (but they are 
mistaken!). I play crotchets, not quarter-notes. I don't know what other 
weird language habits the Americans have ... :-)


Cheers,
Wol



Re: Suggestion to make sharps and flats persistent

2020-05-14 Thread antlists

On 14/05/2020 23:38, Karlin High wrote:

On 5/14/2020 5:32 PM, antlists wrote:
Because Americans like to think they speak English (but they are 
mistaken!). I play crotchets, not quarter-notes. I don't know what 
other weird language habits the Americans have ... :-)


You really don't know? I'm almost certain you'd have some good guesses, 
though. ;-)


I'm sure they'd love to table our eraser ... :-)

Cheers,
Wol



Re: Current octave in relative mode

2020-05-15 Thread antlists
There's a function Han Wen wrote for me years ago, that's made its way 
in to standard lilypond. It's probably mentioned in the docu about 
relative mode. Something along the lines of


  c1  \highlight { c8 d e f g f e d }
  \setAbsoluteOctave ...
  c1  \highlight { c8 d e f g a b c }

Don't quote me on the function name though ... (I needed it for 
Pennsylvania 6-5-0-0-0


Cheers,
Wol

On 15/05/2020 11:01, Klaus Blum wrote:

Hi,

I have a function that uses a music expression twice.
My problem is:
In relative mode, this expression can lead into a different octave. Then
the second application of the music expression starts from that new octave.
(See the last two invocations of "\highlight" in the example below)

Is there something I can do INSIDE my function to prevent this? E.g.
storing and re-applying the current octave? Thanks for any hint.  :)


% 
highlight =
#(define-music-function (mus)
    (ly:music?)
    #{
      <<
        $mus
        \makeClusters $mus
      >>
    #})

\new Staff {
   \highlight { c'8 d' e' f' g' a' b' c'' }
   \relative c' {
     c1  \highlight { c8 d e f g f e d }
     c1  \highlight { c8 d e f g a b c }
     c1  \highlight { f,4 e d c }
     c1
   }
}
% 

Cheers,
Klaus





Re: Current octave in relative mode

2020-05-16 Thread antlists

On 15/05/2020 12:28, antlists wrote:
There's a function Han Wen wrote for me years ago, that's made its way 
in to standard lilypond. It's probably mentioned in the docu about 
relative mode. Something along the lines of


   c1  \highlight { c8 d e f g f e d }
   \setAbsoluteOctave ...
   c1  \highlight { c8 d e f g a b c }

Don't quote me on the function name though ... (I needed it for 
Pennsylvania 6-5-0-0-0


Found it ...

\version "2.8.2"

resetOctave  =
#(define-music-function
(parser location reference-note)
(ly:music?)

   (let*
((notes (ly:music-property reference-note 'elements))
 (pitch (ly:music-property (car notes) 'pitch))

   )

(set! (ly:music-property reference-note 'elements) '())
(set! (ly:music-property reference-note
   'to-relative-callback)
   (lambda (music last-pitch)
pitch))

reference-note
))

pennsylvania = \context Voice = pennsylvania {
\override NoteHead #'style = #'cross
r2_\markup{ shout } f8. f16 f8. f16 f4 f f8. f16 r4
}

pennsylvaniaLyrics = \lyricmode { \small { Penn syl van ia six five thou 
sand } }


voiceTromboneI = \relative c' {

r2  ef4.-- ef8-> ~ ef1 r2 r4 bf8.->( ef16-.) r2 r4 ef,8. af,16-> ~ |
af2 c-- df-- d-- ef-- df-- c-- bf-- |
	\repeat "volta" 2 { R1*6 } \alternative { { \resetOctave f 
\pennsylvania } { \pennsylvania } }
	bf8-. cf4-> bf8-> ~ bf4 bf8.-- af16-. r8 af4.---. r2 bf8-. cf4-- bf8-> 
~ bf4 bf8.-- af16-> ~ |




Cheers,
Wol

Okay, this is just the start of the file so it won't compile as is :-) 
but you can see it defines the function resetOctave. I don't 
particularly remember how it works, but you also see how it's used 
further down. iirc it eats the first note after it - the f - and treats 
it as an absolute pitch of zero length so the subsequent phrase is at 
the right pitch regardless of what went in front of it.


As I say, I think this function or something similar has made its way 
into lilypond proper.


Cheers,
Wol


On 15/05/2020 11:01, Klaus Blum wrote:

Hi,

I have a function that uses a music expression twice.
My problem is:
In relative mode, this expression can lead into a different octave. Then
the second application of the music expression starts from that new 
octave.

(See the last two invocations of "\highlight" in the example below)

Is there something I can do INSIDE my function to prevent this? E.g.
storing and re-applying the current octave? Thanks for any hint.  :)

I think you can use this inside your function. I explicitly didn't want 
to because this phrase appears in at least two different octaves so I 
wanted to apply the pitch outside it instead.


Cheers,
Wol



Re: Current octave in relative mode

2020-05-16 Thread antlists

On 16/05/2020 23:19, David Kastrup wrote:

As I say, I think this function or something similar has made its way
into lilypond proper.



What advantage over the solution using make-relative that I posted do
you see here?


Because if I understand the OP correctly, what he wants is 
\resetRelativeOctave, which is already a standard part of lilypond?


I'm guessing Han Wen's resetOctave is its predecessor.

So I guess - at the third attempt - my solution is the best because it 
doesn't need a custom function at all :-)


Cheers,
Wol



Re: Current octave in relative mode

2020-05-16 Thread antlists

On 17/05/2020 00:04, David Kastrup wrote:

antlists  writes:


On 16/05/2020 23:19, David Kastrup wrote:

As I say, I think this function or something similar has made its way
into lilypond proper.



What advantage over the solution using make-relative that I posted do
you see here?


Because if I understand the OP correctly, what he wants is
\resetRelativeOctave, which is already a standard part of lilypond?


What he wants is music used twice within a function not to end up in
different octaves.


Isn't that what \resetRelativeOctave does? His description seems exactly 
to match my problem with Pennsylvania 6-5-0-0-0



I'm guessing Han Wen's resetOctave is its predecessor.

So I guess - at the third attempt - my solution is the best because it
doesn't need a custom function at all :-)


make-relative has been part of LilyPond in its current form since
2.18.0.  I am not sure what you call "custom function" in this context.
Particularly since your proposal contained a large amount of code.

It was an example which - obviously - predated both \resetRelativeOctave 
and \makeRelative (you did notice the "version 2.8.0" at the start?)


I couldn't remember what \resetRelativeOctave was, so I was trying to 
give him the clues he needed to find it. I did explicitly say "I think 
it's now a standard part of lilypond" (implying it wasn't when that code 
was written).


So let's give a very simple example of what I think he was trying to 
achieve ...


arpeggio = { c e g c }
\new Staff {
  \relative c' {
\arpeggio \resetRelativeOctave c'
\arpeggio \resetRelativeOctave c'
\arpeggio
  }
}

Despite being in relative mode, all the arpeggios will now start on 
middle C. The OP's eXample is more complicated but as far as I can tell 
this is what he's aiming at.


Oh - and I believe

arpeggio = { \resetRelativeOctave c' c e g c }

would also work. I don't know for certain because I haven't had this 
problem since Pennsylvania.


Cheers,
Wol



Re: Identify included files

2020-05-18 Thread antlists

On 15/05/2020 21:17, Fr. Samuel Springuel wrote:

Now I just need to turn this list into something that can be used to figure out 
if the target needs to be recompiled.


As Jacques said, "make".

At the top of your directory structure you can have a makefile, and it 
just contains a list of all your targets, and the files they depend on. 
Okay, every time you add a new include, you need to update it, but...


Then when you change something, you just go to your top directory, type 
"make", and watch everything affected by your recent changes recompile.


The really nice thing about it, is it will handle recursive includes by 
itself. Can't remember the syntax, but if an include file pulls in other 
includes, you can define that include file as a target, which then flags 
any other that targets that use it. So each target in your makefile only 
needs to include the includes that it depends *directly* upon.


Cheers,
Wol



Re: Identify included files

2020-05-18 Thread antlists

On 18/05/2020 13:44, David Kastrup wrote:

antlists  writes:


On 15/05/2020 21:17, Fr. Samuel Springuel wrote:

Now I just need to turn this list into something that can be used to
figure out if the target needs to be recompiled.


As Jacques said, "make".

At the top of your directory structure you can have a makefile, and it
just contains a list of all your targets, and the files they depend
on. Okay, every time you add a new include, you need to update it,
but...

Then when you change something, you just go to your top directory,
type "make", and watch everything affected by your recent changes
recompile.

The really nice thing about it, is it will handle recursive includes
by itself. Can't remember the syntax, but if an include file pulls in
other includes, you can define that include file as a target, which
then flags any other that targets that use it. So each target in your
makefile only needs to include the includes that it depends *directly*
upon.


That's not how Makefile dependencies work.  Dependencies track the
relation of _output_ files to their _input_.  They do not track the
hierarchy of different input files that only refer to each other by
name: for the purpose of Make, those are independent and equivalent.
But the _output_ file(s) generated from them are dependent on all of the
respective input files in use, and tracking those and generating the
dependencies was what Fr. Samuel was asking about in the first place.

Yup. But he wanted to know "which files do I need to recompile". Which 
is exactly what makefiles do.


so if trombone.pdf is compiled from trombone.ly, which includes 
trombone-notes.ly, which includes dynamics.ly, then I know there is some 
sort of syntax which will:


define trombone-notes.ly as a target, define it as changed if its 
dependencies change, and say "it doesn't exist as a file that can be 
created with a command".


So if dynamics.ly changes, it cascades up and causes trombone.pdf to be 
re-compiled, but this is the important bit - you don't need to 
*ex*plicitly define trombone.pdf as relying on dynamics.ly



Just had a slight rethink - which affects things - namely what exactly 
is Fr. Samuel trying to achieve. Does he want a list of dependencies as 
a thing in its own right, or does he want to know which targets need to 
be recompiled as a result of changing a file. Because "make" is all he 
needs if the latter is what he's aiming for. If he really wants the 
former, then yes he'll need all thse lily functions etc that people have 
pointed him to.



Cheers,
Wol



Re: Identify included files

2020-05-18 Thread antlists




On 18/05/2020 15:29, Fr. Samuel Springuel wrote:

On 18 May, 2020, at 9:37 AM, antlists  wrote:

define trombone-notes.ly as a target, define it as changed if its dependencies change, 
and say "it doesn't exist as a file that can be created with a command".


Right, that’s the step I’m trying to automate.  Make itself cannot determine 
the list of prerequisites.  You either need to do that manually (a real pain) 
or provide a tool that can examine a file, determine what its prerequisites are 
and then write them out in a way that make understands.

 From the manual for GNU Make: 
https://www.gnu.org/software/make/manual/html_node/Automatic-Prerequisites.html#Automatic-Prerequisites

The example there uses the -M flag for a C compiler.  I’m looking to come up 
with an equivalent for LilyPond.

Okay, does that mean you want a list of all the lilypond include files, 
or just your own?


If you're digging into the internals of lilypond, then it'll be a big 
job, and makes it dangerous to upgrade lilypond. Because I assume that 
means you're actually modifying lilypond's internal structure. What I 
do, anything of lilypond's that I modify, I split it out into my 
directory structure, and then over-ride lilypond's version from within 
my source. That way, what happens to lilypond during an upgrade is no 
concern of mine (other than changes to syntax which mess up my source :-)


If it's just your own files you're concerned about, then grep will 
probably do the trick. I don't know how to recurse directories, but 
making it search all the files in a directory for "include", and tell 
you which file it found that line in, is pretty basic.


You can then read up on make for how to create those virtual objects, 
and use an editor to put them in your makefile. Not totally automated, I 
admit, but fairly simple grunt-work. The sort of thing I could have 
written a BASIC program to do in 10 minutes, except I don't have access 
to a BASIC I understand how to use any more - ironic - as computers have 
got easier to use, so the programming languages have got harder...


Cheers,
Wol



Re: Suggestion to make sharps and flats persistent

2020-05-18 Thread antlists

On 18/05/2020 17:33, Kieren MacMillan wrote:

We (well… modulo me LOL) don’t get this worked up about how \relative makes 
cut-and-paste a nightmare. Why start now?;)


Those of us who only use \relative (just me?) don't have any problems 
with cut-n-paste. Or is it just that my workflow is more likely to use 
"\repeat unfold"?


I've got no problem with \keyed, but there is a fly in the ointment here 
... \keyed a \minor { a b c d e f g a g f e d c b a }


Now is that a g-natural or g-sharp? Likewise the f.

Cheers,
Wol



Re: Suggestion to make sharps and flats persistent

2020-05-18 Thread antlists

On 18/05/2020 22:15, Mark Stephen Mrotek wrote:

The natural a minor scale does not contain any sharps.


But is it a natural scale?


The harmonic a minor scale has the f sharp.


or a harmonic scale?


The melodic a minor scale has the g sharp and the f sharp.

But it also has g and f. So my point remains - ESPECIALLY if it's the 
melodic scale - how is lilypond supposed to know whether the g and f are 
supposed to be sharpened? :-)



Mark


Cheers,
Wol


-Original Message-
From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] 
On Behalf Of antlists
Sent: Monday, May 18, 2020 12:22 PM
To: lilypond-user@gnu.org
Subject: Re: Suggestion to make sharps and flats persistent

On 18/05/2020 17:33, Kieren MacMillan wrote:

We (well… modulo me LOL) don’t get this worked up about how \relative
makes cut-and-paste a nightmare. Why start now?;)


Those of us who only use \relative (just me?) don't have any problems with cut-n-paste. 
Or is it just that my workflow is more likely to use "\repeat unfold"?

I've got no problem with \keyed, but there is a fly in the ointment here ... 
\keyed a \minor { a b c d e f g a g f e d c b a }

Now is that a g-natural or g-sharp? Likewise the f.

Cheers,
Wol





Re: Suggestion to make sharps and flats persistent

2020-05-19 Thread antlists

On 19/05/2020 16:04, David Kastrup wrote:

All because people think "it's not difficult to figure out how to make
it work" when actually it is once you aim for more than a "mostly
working" determination and keep shuffling around just which 10% you are
willing to let fall apart.


Too many people try to solve the immediate problem, without asking 
themselves what the real problem is.


If you work out what the state table is, it's fine solving just your bit 
of it. But if you don't know what the state table is, (trying to) solve 
your bit just leaves a big mess for the next guy who needs a different 
bit solved.


Cheers,
Wol



Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a compiler 
for compilation.


b) who says .h files don't produce executable code? They often contain 
code, sometimes entire functions.


I understand the equivalence exactly - it's what you DO to the file.

You're thinking "what you *should* put in the file". Since when have 
people done what they *should*?


Cheers,
Wol



Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 14:36, David Kastrup wrote:

antlists  writes:


On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a
compiler for compilation.

b) who says .h files don't produce executable code? They often contain
code, sometimes entire functions.


The point of .h files is that they are intended to be included by more
than one compilation unit resulting in an executable.


Which is exactly how I use .ily files ...


As such, they are limited with regard to the code they can contain.
They can contain

a) inline function definitions: those can occur in multiple compilation
units as long as they are identical.


You're describing the way I define variables that contain all my notes. 
You're also describing how I define the musical structure.



b) static inline: do not even need to be identical, are per-unit.
c) static data definitions, are per-unit.
d) template function definitions


I redefine the header function - I've NEVER seen a header laid out the 
way lilypond does it, apart from parts produced by lilypond ...


Plus I have my own dynamics definition file that extends lilypond's ones


I don't think that .ly/.ily is all that comparable here...

The way I use .ily files EXACTLY matches your definition of a .h file... 
how on earth do you use them?


Cheers,
Wol



Re: Identify included files

2020-05-21 Thread antlists

On 21/05/2020 16:36, David Wright wrote:

On Thu 21 May 2020 at 13:57:00 (+0100), antlists wrote:

On 21/05/2020 01:49, David Wright wrote:

I don't understand your equivalence between .ily and .h files. The
.ily file(s) can contain just as much code as the .ly file(s), whereas
.h files don't contain any code at all (in the sense of producing
executable code for the next stage.


a) just like .h files, .ily files can't be passed directly to a
compiler for compilation.


Why do you say that?


Because while it may not be globally true, I have tried accidentally to 
do things like "lilypond voiceTrombone.ily" and it blew up quite 
spectacularly. I would expect most of mine, and in truth most other 
peoples', .ily files to blow up if fed straight to lilypond.


And if they do compile, the output probably isn't much use ... :-)



b) who says .h files don't produce executable code? They often contain
code, sometimes entire functions.

I understand the equivalence exactly - it's what you DO to the file.


Good, that means I have a second source of edification as to what the
intent of this analysis is.


You're thinking "what you *should* put in the file". Since when have
people done what they *should*?


Letting that pass, let's say we have a source file foo.c and it needs
an extraordinary quantity of functionality that's contained in bar.c.
We put the latter's function declarations into bar.h and compile
bar.{c,h}¹ into bar.o.


Does bar.c contain a main{} definition?


Now we can compile foo.c (which #includes bar.h) over and over while
debugging it, all without ever recompiling bar.c. foo.c knows all it
needs to know about bar.c because of bar.h's declarations.


Can you now link bar.o into foo? I honestly don't know - I don't know 
how a linker will behave if fed two main{} functions ... ?


I now have a suite.ly that typesets my Suite for flute and piano.
It \includes nine files: flute{I,II,III}.ily, piano{I,II,III}.ily
(the notes), and flute-part.ily, piano-part.ily and complete-score.ily,
(my \score templates). It also \includes {marks,dyns,fingers}.ily that
contain LP code for my preferred styles of markings, dynamics and fingering.

I have a file, suite.dep, which contains the information that suite.ly
depends on these files to produce three targets, {flute,piano,suite}.pdf
The same file might also indicate that I need just flute{I,II,III}.ily,
flute-part.ily and {marks,dyns,fingers}.ily for just a flute.pdf.

What do I write in a top-level theFlute.ly file to produce this
flute.pdf and how does it benefit from the suite.sep information?
How do I use this information profitably, in the way that bar.h did?

¹ I'm abbreviating with shell's "brace expansion" notation.

Cheers,
David.

Now we get to the meat of the matter. You've put bar.c's *declarations* 
into bar.h. Does lilypond even have declarations? Also, it's perfectly 
normal practice to put *definitions* in .h files - static variables, 
macros, inline functions, etc etc.


I put most of my lilypond variable *definitions* into .ily files. Yup, 
.h files *tend* to contain declarations not definitions, but as I say, I 
don't think lilypond syntax has  declarations?


So yes, am I right in thinking you view .ily files as closer to .o 
files? With lilypond closer to a linker than a compiler?


At the end of the day, I see it as .h files can contain declarations, 
.ily files contain declarations. .h files are included, .ily files are 
included. Some languages (like lilypond) are monolithic and don't really 
have the concept of libraries. So I find it extremely easy to view 
.ly/.ily as being similar to .c/.h. Not the same, because lilypond is 
not gcc ... :-)


There's no one absolute view - you see things different to me, doesn't 
mean you (or me) is right.


Cheers,
Wol



Re: show key signature but also alterations

2020-05-21 Thread antlists

n 21/05/2020 07:35, Frédéric wrote:

Hi,
I'm writing a scale book. I would like to have the key signature but
also an accidentals in front of each note. For example, in d \major, I
would like to print f# c# as key signature and a # in front of each f
and c.
I see 2 possibilities:
1. define a custom Key_engraver which just prints the key and do not
set the alterations.
2. define a special accidental rule that considers that the key
signature is blank

However, I was not able to do any of those.

Any idea?


Not quite what you asked for, but pretty much what you want?

\score {
   \key bf \major
   bf? c d ef? f g a bf?
}

Is that any good?

Cheers,
Wol



Re: Identify included files

2020-05-23 Thread antlists

On 23/05/2020 06:06, Michael Gerdau wrote:



Big deal. I won't ask what's in voiceTrombone.ily.


A variable declaration. You know - EXACTLY THE SAME as C programmers
often stick in .h files ...


I don’t think that’s correct.

For one according to my understanding LP has no variable declarations 
whatsoever, only definitions.


I think I'm getting confused :-) no change there :-)


For two LP allows for an arbitrary number of definitions of the same variable, 
the latest (as of the parser) overriding any previous. In C there’s just one 
definition and an arbitrary number of repetitions of the same declaration.


int i = 1;
enum something = {
  a = 1;
  b = 2;
  c = 3;
}

voiceTromboneI = \relative c { c d e f g a b c }

Forgive my rusted solid C syntax - I can't remember it properly :-)

The two languages may be different, but my mental view of the Computer 
Science behind them tells me to treat them the same. I declare them in 
an include file, and use them where I need them.


(Whether the language treats them as such, the theory says they are 
global constants...)


Cheers,
Wol



Re: registering a composition

2020-05-23 Thread antlists

On 22/05/2020 13:26, Gilles Sadowski wrote:

IIUC, CC licences aim to protect against others making money from
your work.  How is "ASCAP not being happy" related to that?




Unless I'm mistaken, LilyPond (GNU) and CC belong to the "eco-system"
where sharing is the norm (to enhance the common cultural pool) while
making it hard for "free-riders".  Using the tools offered by that alternate
system, and then bow to the arguments of those who smear it seems a
contradiction.

You're correct that GNU and CC belong to the eco-system where sharing is 
the norm, but NEITHER have any objection to others making making money 
(yes they do both object to free-riders).


CC has an *optional* clause that forbids commercial activity (I use it 
on my photos), and GNU forbids charging for THE SOFTWARE. But CC doesn't 
forbid commercial activity by default, and GNU permits charging for 
services, such as supplying the software, supporting the software, and 
anything like that.


Cheers,
Wol



Re: registering a composition

2020-05-23 Thread antlists

On 23/05/2020 20:21, Valentin Villenave wrote:

I’m not saying the world is a nice place (it isn’t); you should, at
the very least, secure*your*  copyright by having a solid proof of
anteriority, as we discussed.  What I’m saying is that you shouldn’t
overestimate the possible threat to your work if you were to publish
it freely, nor the amount and quality of “protection” you’ll get from
any RMO out there.


for the sake of a few pennies, there's an easy way to prove the date. 
Used, I believe, by some law firm in America for its legal documents, 
and easy enough to do here in England too.


Put all of your stuff on a CD. Now run a program that generates an MD5 
checksum or whatever it is, and save both the command and output to a 
text file. (I'd throw in a listing of the CD too.) Print this, as an 
advert, in a legal newspaper such as - in London - Lloyds Gazette.


That CD can now be copied freely, the MD5 sum won't change. And the 
advert proves that it was in existence on the date of the newspaper. You 
don't even need to save a copy of the newspaper - the fact that it is a 
newspaper of legal announcements means that there will be loads of 
copies kept, probably a lot of them by courts themselves!


Cheers,
Wol



Re: registering a composition

2020-05-24 Thread antlists

On 24/05/2020 11:59, David Kastrup wrote:

Wols Lists  writes:


On 24/05/20 01:08, Carl Sorensen wrote:

Actually, GNU allows charging for the software.  From the Preamble to the GNU 
GPL:

"When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and
charge for them if you wish)"


You have freedom to charge for the SERVICE of DISTRIBUTING the software
(which I said :-), not the freedom of charging for the software itself.


That is like saying I can charge for the service of distributing the
contents of a book, not for the contents themselves.


Exactly so - you are charging for the service of putting the words on 
paper, and for the paper and postage etc etc.


What is the "contents themselves" without a means of dissemination, a
medium?


You are not charging for the words themselves, and more importantly, you 
are not charging for work of arranging those words in that specific order!





Yes, I know I'm being pedantic, but when you're dealing with the law
pedanticism matters :-)

(GPL v2 contains some bugs, and some people actively exploit those bugs
as features ...)


A license does not contain "bugs".  Pedanticism does not mean using
words with a different meaning than anybody else.  It means using them
more carefully according to their agreed-upon meaning.


So you don't understand the difference between the story, and the book?

If I walk into a bookshop, the could easily be a shelf that has just one 
story on it, "The Half Blood Prince" lets say. There could be three or 
four different editions, and maybe 10 copies of each. BUT THERE IS ONLY 
ONE STORY.


In the same vein, I can take GPL software written by other people, 
create my own edition, and copy it on to CD. I can sell that CD, 
charging for for the physical embodiment and my work in creating said 
embodiment, but I cannot - MUST NOT - charge for the software itself. 
That is basic GPL 101.


As for bugs in the GPL, are you saying that software doesn't contain 
bugs? Just as software DOES contain bugs, so do legal documents, 
including the GPL! And whether you call them bugs or features, I can 
list at least two bugs in v2, which v3 was intended to correct.


Bug 1 - the revocation of the licence - can you cure a breach of v2 by 
simply downloading another copy? PEOPLE ARGUE - WITH REASON - BOTH WAYS. 
The new language in v3 makes it quite clear that you can't get round a 
revocation by obtaining a new copy, but also that if you do try and 
comply with the licence in good faith then it isn't revoked.


Bug 2 - if you make software available on the web as two separate 
archives, one binary and one source, this triggers the binary 
distribution clause of v2. So if I make the source available, and offer 
a pre-compiled binary as a convenience, I'm forced to keep the source 
available for three years? THAT'S NOT FAIR. So v3 makes it clear that if 
*you* *choose* not to avail yourself of the source at the same time as 
the binary, then it's *your* problem - you can't come back to me later 
and demand the source.


These are bugs, according to the authors of the GPL, hence v3 aiming to 
correct them.


Cheers,
Wol



Re: Getting started with Scheme

2020-05-26 Thread antlists

On 23/05/2020 11:37, Kevin Barry wrote:

My copy of windows doesn’t have a*Start*  menu: so that’s another
instruction that is meaningless.



OK. Is there a common way to accomplish the old Start -> Run -> type in
the name of a program?

Windows 10 has a (sort of) start menu - click on the windows icon in the 
bottom left. This brings up a search bar, into which you can type a 
program name. It's a complete pain in the arse because it seems to think 
you want to do everything on the web, but you can force it to search 
your computer, not everyone else's ...


If you just want to run a program that's in your search path, it's been 
the same since Windows 7 or even earlier - -R.


Cheers,
Wol



Re: Harmonics in tablature

2020-06-30 Thread antlists

On 29/06/2020 10:30, Valentin Petzel wrote:

3) Forcing a string number can be done manually easily (though this is not
good if the tuning changes at some point). But in code it is quite a bit more
effort to achieve the same result, because we then would need to read the
string tunings from the context and determine for each single note on which
string that is. By simply setting minimumFret to an appropriate value (sorry
again), we can achieve the same result without coding the same thing multiple
times. Only problem is that doing it this way will override minimumFret
directions done before.


Not that I have a clue what you're talking about here but ...

You're aware that it's not uncommon to play lute music on guitar? And 
that guitars are then tuned to lute pitch with the 3rd g string tuned to f#?


And I occasionally play harmonics on a fretted not open guitar string.

(Off-topic - I went round my Aunt's once and she showed me some music 
her guitar teacher had given her, saying it was really hard. I spotted 
it was lute music and said I thought I could sight read it. She was 
amaZed so I retuned the guitar and struggled through it. So that was a 
trick she taught her guitar tutor ...)


It sounds to me like this might impact what you're doing (or it might not).

Cheers,
Wol



Re: Naming RFC: Properties, property sets, presets

2020-07-15 Thread antlists

On 15/07/2020 12:08, Urs Liska wrote:

Out of curiousity: How do you feel about the use of "preset" in
synthesizers, radios or audio processors like equalizers or effects (to
name just a few I know of)?


As I understand what's going on, a preset with synthesizers et al is a 
"preset list of defaults", ie if I select a preset, it sets EVERYTHING up.


As I understand your usage, you have what I think of as a preset, and 
then you are applying what you call a preset, that modifies SOME of the 
settings.


It's that that's jarring - to me a preset is an initial setup that you 
can modify. As I understand you, you're using it as a bunch of settings 
that change part of an initial setup.


I'm not saying your usage is wrong, it's just that what is correct and 
what people actually do doesn't always match up ... :-)


Cheers,
Wol



Re: What happened to INSTALL.txt?

2020-07-30 Thread antlists

On 30/07/2020 17:25, H. S. Teoh wrote:

On Mon, Jul 27, 2020 at 08:30:34AM -0700, Knute Snortum wrote:

Well it looks like README.git should just contain this:
Instructions for compiling LilyPond from source files can be found
online at:

   
[1]https://lilypond.org/doc/v2.21/Documentation/contributor/index_17#Compiling


Sounds like a good idea.


Does it? You're assuming internet access ... :-(

Okay, most people will have it, but not all, and if all it needs is to 
run ./configure, then that's what should be in README.git.


Chers,
Wol



Re: macro for \once\override

2020-08-28 Thread antlists

On 28/08/2020 20:42, Werner LEMBERG wrote:



Well, we have to make a compromise.  The PDF document has a small line
width, and you can't scroll horizontally...

Theoretically, the snippet could be printed with a smaller font size,
but this doesn't look very pretty IMHO.  I consider the `\oo`
shorthand both innocuous and simple enough for a snippet.



My preference is the one that you said is inappropriate:

\once \override
   Very.Long.Grob.PropertyToBeChanged = foo

If we introduce oo, then that adds extra lines to the snippet, and
it confuses the override (which is the purpose of the snippet) with
the convenience function (which is not necessary for the operation
of the snippet).


If you have to split 20 very long `\once\override` line this way, it's
(a) very hard to read, and (b) much longer than the few lines
introducing the little function.


I think that the benefit of the improvement in the typography is
outweighed by the increased difficulty of understanding the snippet.


I disagree.  There are snippets with *extremely* sophisticated Scheme
code.  What I'm going to introduce is very basic.

Complex or basic, if it's extraneous to the example, then you don't want 
it. And especially, if the intent is show the use of \once \override, 
using an abbreviation for it obscures the whole point of the example.


Some of us have great difficulty getting to grips with Scheme :-) ANY 
use of it unnecessarily is an obstacle to understanding, sorry.


Cheers,
Wol



Re: Dynamics context

2020-09-08 Thread antlists

On 07/09/2020 17:01, Martín Rincón Botero wrote:
I wanted to ask if using the Dynamics context is the simplest way 
available in Lilypond for achieving this kind of vertically aligned 
dynamics. The huge drawback of the Dynamics context is that it disrupts 
the syntax, since dynamics can’t be used next to the first note they’re 
attached to, but instead they need a separate variable, reducing 
readability of the actual “music”.


Just to throw my two-pennorth in, while I didn't know about the dynamics 
context, I've started separating dynamics out ...


I do band parts, and if the dynamics are replicated across, say, all 
trombones I find it easier to have the notes in one variable, the 
dynamics in another, and to merge them for each part. Especially as, 
although I haven't really been doing scores, I can then merge all the 
trombone parts, and the dynamics, to put them on one line of the score.


It's not unusual for different instruments to have different dynamics, 
as usually the cornets have the melody in the first section, then the 
bass instruments in the trio, often with the middle instruments such as 
trombones and euphs having a middle section. So whoever's got the melody 
might be ff, with the others p underneath.


At the end of the day, horses for courses and if it doesn't work for you 
then fine. But it does work for people like me :-)


Cheers,
Wol



Re: adding chordmode chord modifiers

2020-09-08 Thread antlists

On 08/09/2020 03:21, Randy Josleyn wrote:


(By the way, I switched to a daily digest for lilypond-user emails and 
I'm not sure about how replies work from them. I've made mistakes with 
how replies to a list work before, so I apologize if I've done it again.)


I don't know how it works, but I know one email client I used had the 
ability to receive a digest and break it up into individual emails.


Or do what I do and just have rules that filter lists into their own 
folder. You can then go in when you want to peruse them all one by one 
(little hint - turn off email notification then you're less tempted 
every time one comes in :-)


Cheers,
Wol



Re: Forzando in Lilypond 2.20

2020-10-01 Thread antlists

On 01/10/2020 19:27, Carl Sorensen wrote:

Variables can only be defined at top level, not inside a score.

https://lilypond.org/doc/v2.20/Documentation/notation/file-structure

I just shove all of this sort of stuff in an include file, and include 
it at the top.


I've come across things like sffz and so on, so as I come across them 
they go in this include file and they're there for next time I need them.


Cheers,
Wol



Re: Forzando in Lilypond 2.20

2020-10-03 Thread antlists

On 03/10/2020 03:32, Mike Dean wrote:
Not really sure how to get the fermata over the repeat bar line rather 
than over the clef on the next line


Isn't this the default behaviour of \uFermata and friends?

Sorry I can't from memory be more specific, but I know my battle with 
fermatas was getting them to go over notes, rather than sticking 
themselves ove barlines where they wanted to be ...


Oh - just noticed you said "on the next line" - which might be the 
problem - it's put it over the "start" of the bar rather than the end. 
That might be a fruitful line of enquiry ...


Cheers,
Wol



Re: Repeated durations: pitches vs rests

2021-02-22 Thread antlists

On 22/02/2021 06:02, Andrew Bernard wrote:
Its not a bug. It's just the syntax. A 16 without a note will produce a 
note, not a rest, even after a rest. There would be a dozen different 
possibilities for syntax, but that's how it is.


Principle of least surprise. As a player, a rest is a note without 
sound, as a programmer I think it should go back to whatever was most 
recently made explicit (ie the rest).


Is it that hard to make the computer program emit an r for a rest? 
People don't normally put ties on rests - does not quite make sense, as 
a ties means hold the note and don't articulate, whereas silence cant be 
articulated anýway.


How easy is it to make the program just not take advantage of this 
shortcut? Just emit the note every time. I've been using lilypond for 
over 15 years and I think this is a pretty recent addition.


Andrew


Cheers,
Wol



Re: Guitar Tab / Bends

2021-03-12 Thread antlists
If you're into guitar stuff, there's something else you might be 
interested in cleaning up and getting working ...


I wrote a capo feature, but it sort of fell by the wayside. If you're 
using chord notation, it puts "Capo G" or whatever at the start of the 
piece, and transposes the chord and puts it in brackets after the main 
chord.


I think I can find it and pass it over to you - I'm sure I've got the 
patch files, and the feature branch is, I think, still there but 
moribund - if you search for "guitar capo" on the list, you might find 
it. As I remember it really just needs cleaning up - unfortunately my 
scheme-fu wasn't up to it.


Cheers,
Wol

On 12/03/2021 02:56, David Stocker wrote:
I will look into this and read back up on the contributing docs. It's 
been a while, but since I do software every day now, I hope learning 
will be quicker! (probably not 😉)


On 3/11/2021 5:50 PM, Federico Bruni wrote:

This is a great news!

Yes, the development is still active. I guess you'd better subscribe 
to lilypond-devel for questions about development.


Can I suggest something to work on? :-)
You may remember that Marc Hohl bend.ly file had bending notation for 
both Staff and TabStaff.


Harm's implementation is more powerful.. see this commit:
https://gitlab.com/lilypond/lilypond/-/commit/376a8c362fea5b754ff383dd62f2664f8dea13bb 



but it lacks the bending notation on Staff.




Re: why Kieren is a \relative evangelist [was “Re: Nested transposition"]

2021-03-17 Thread antlists

On 17/03/2021 08:23, Michael Gerdau wrote:

I don't have any of the show stopper Kieren is so evangelistic about and very clearly find 
\relative easier to enter via a normal keyboard by a long shot. Entering all those "'" 
(requires SHIFT on a german keyboard) and "," is not at all fluent.


Well, I'm a "hunt-n-peck" one-fingered pianist, so I guess I'd find 
using a midi keyboard MUCH harder than a computer one (as a guitarist, I 
found that was great for improving my typing skills :-)


imho the near universality of keyboard competence defines Western Music 
as "can be played on a piano" and has severely damaged our understanding 
of what music actually is. Musicians like me who can't play piano are 
very rare ...


And why would a copyist be able to play keyboard?


I also find reading \relative much easier but that my be depending on what 
you're used to.


likewise


I seldom use transpose and I know of no case where I have nested transpose. 
With unnested transpose I have not yet had a problem. And frescobaldi does very 
easily transform from \relative to \absolute, should I ever need it.


Well, as a trombonist who plays in both brass and concert bands (and 
used to play in an orchestra), I use transpose all the time, and never 
had any trouble.


Therefor my conclusion is:
Kieren surely has good reason to prefer \absolute, but deriving that \relative 
is inferior and should be avoided is overdoing it IMO.


Agreed. Okay, my instrument wouldn't use much by way of octave 
modifiers, but I'd hate to be writing a piccolo trumpet part ...


Cheers,
Wol



Re: why Kieren is a \relative evangelist [was “Re: Nested transposition"]

2021-03-21 Thread antlists

On 19/03/2021 16:43, H. S. Teoh wrote:

It's somewhat mitigated by inserting octave checks every so often (say,
at the start of every section), so that when it does go wrong, there's a
warning, and the problem only propagates up to the next octave check
rather than the rest of the piece.


:-)

And Han Wen wrote the original octave check for me! Because I think I 
had exactly the problem Kieren is moaning about - I put a fragment of 
music in a variable, and because it started and finished over a 5th 
apart, I had great difficulty getting the phrase to repeat correctly. 
That was back in the 2.4/2.6 days ...


Cheers,
Wol



Re: AW: Custom Format

2021-03-31 Thread antlists

On 31/03/2021 20:20, Callum Cassidy-Nolan wrote:
You are correct, there is no distinction between these two notes, 
because in terms of pitch they are the same.


Actually, they're not ...

If you're talking about "well-tempered" instruments - basically keyboard 
- then IN PRACTICE they are the same note, but the whole well-tempered 
system is a bodge to make sure instruments sound "okay" in any modern scale.


As soon as you move to instruments capable of playing any pitch (the 
violin family, the trombone family, probably others I've missed) or 
"bending" notes - basically all the wind instruments - then you'll find 
they tend to play circle of fourths or fifths, and not well-tempered, 
and d# and eb are most definitely different notes (although very close).


Cheers,
Wol



Re: AW: Custom Format

2021-04-01 Thread antlists

On 01/04/2021 09:50, Kevin Barry wrote:

On Wed, Mar 31, 2021 at 11:47:05PM +0100, antlists wrote:

On 31/03/2021 20:20, Callum Cassidy-Nolan wrote:

You are correct, there is no distinction between these two notes,
because in terms of pitch they are the same.


Actually, they're not ...

If you're talking about "well-tempered" instruments - basically keyboard -
then IN PRACTICE they are the same note, but the whole well-tempered system
is a bodge to make sure instruments sound "okay" in any modern scale.

I assume by "well-tempered" you mean equally tempered.


Isn't Bach's 48 called "The WELL-tempered Klavier"?


There seems to be a common misconception that the tuning systems that
preceeded equal temperament were somehow satisfactory for a single
scale, and that we needed equal temperament only to overcome that
problem, but that is not the case. Even if you try to only tune the
seven white notes, it is not possible to both have acoustically correct
thirds and fifths. Equal temperament may have made it possible to use
all keys equally, but that's not why it was adopted. Even for a single
scale it is better than the alternatives.

That's why, as soon as the mathematics (root extractions) required for
tempered tuning were discovered, it rapidly became the standard.


As soon as you move to instruments capable of playing any pitch (the violin
family, the trombone family, probably others I've missed) or "bending" notes
- basically all the wind instruments - then you'll find they tend to play
circle of fourths or fifths, and not well-tempered, and d# and eb are most
definitely different notes (although very close).

The issue of black notes is a red herring.  Even if you restrict
yourself to one pitch, "A" let's say, you will find that there isn't a
single correct value for it. The A which is a major third above F is not
the same pitch as the A that is fourth fifths (less two octaves) from F
(if anyone interested is reading this, I urge you to try the math for
yourself - it's usually quite a surprise to everyone the first time). So
even if you just want to tune two white notes you run into problems.

And here you prove my point. You seem to be talking about keyboard 
instruments. I play brass. There's no such thing as "well-tempered" for 
brass instruments - with just four or five adjustment points there's no 
way you can adjust the 36 or so notes that your instrument typically 
produces (and a good player can probably get more notes than that out of 
it).


As for the tuning systems before equal temperament, which instruments 
would they have applied to? Brass, strings, which are incapable of equal 
temperament!


Apart from the organ (which I was shocked to discover, in its MODERN 
form, first appeared about 600BC!!!), equal temperament appeared, I 
believe, at about the same time as instruments capable of taking 
advantage of it such as the ?clavichord, harpsichord, spinet, 
forte-piano etc.


Cheers,
Wol



Re: Concert pitch question (confused ex-tuba player)

2021-09-17 Thread antlists

On 17/09/2021 22:09, Kenneth Wolcott wrote:

   I know, as an ex-tuba player (and a very low-level amatuer tuba
player), that tuba and trombone (bassoon?) don't require transposition
as they are already in concert pitch (I never played a tuba in the key
of C, F or Eb). 


Tuba and trombone don't need transposition? OH YES THEY DO!

I believe (or rather, I know for the trombone and believe for the tuba) 
that in the ORCHESTRA they are written in bass clef in concert pitch. So 
an orchestral trombone is a "Bb trombone in C".


But in a brass band, they are written in treble clef, and a written C is 
the instrument's fundamental harmonic, so a band trombone - despite 
being the exact same instrument - is a "Bb trombone in Bb" (and of 
course there's an exception to every rule - the bass trombone is 
written, in concert, in bass clef!)


So the simple rule when describing an instrument is, if the note is 
BEFORE the instrument name, it describes the fundamental of the 
instrument - Bb trombone, Eb trombone, F horn, Bb/F trombone. If the 
note comes AFTER the instrument, it denotes the note that actually 
sounds when you play a written C - bass clef trombone in C plays a C 
when you read a C, treble clef trombone in Bb plays a Bb when you read a C.
Note that the pitch after the instrument name should ONLY EVER be the 
fundamental, or C.


As a trombone player in both brass and concert bands, who reads both 
bass and treble clef, I always transpose my music on input into concert 
pitch. So if I've got a bass clef part, I enclose the music in 
"\transpose c c {}". And if I've got a treble clef part I enclose it in 
"\transpose c'' bf {}" (that takes it down a ninth, not a second).


Then when I output it, likewise I wrap it again in "\transpose c c {}" 
for bass clef, or "\transpose c' bf {}" for treble_8 clef (note I 
transpose treble clef an octave and the music a second here).


> However most of the other wind instruments of an
> orchestra are not in concert pitch.  So when there is a trumpet in Bb,
> it certainly is not the same as a tuba in Bb, correct?  What about
> Horn in F?

APART FROM OCTAVE a trumpet in Bb IS the same as a tuba in Bb - or any 
other instrument in Bb for that matter, eg clarinet.


And I can't think of anything else in F, but if a guy with a Bb/F 
trombone played with the trigger down all the time, it would be exactly 
the same as the horn in F.


> What happens when the overall pitch of the piece in
> question is not C Major?

Irrelevant. If I'm playing a piece in concert C, in treble clef, I have 
to revert the two flats introduced by the transposition, so my music is 
in the key of D with two sharps.


And bear in mind that, unlike some other music software, lilypond 
"thinks" internally in terms of pitch, not "position in the scale", so 
when you transpose lilypond will worry about accidentals and key 
signatures. Just make sure that on output, you include the key signature 
INSIDE the transpose, so that gets transposed too.


Cheers,
Wol



Re: Concert pitch question (confused ex-tuba player)

2021-09-17 Thread antlists

On 17/09/2021 23:11, antlists wrote:
Then when I output it, likewise I wrap it again in "\transpose c c {}" 
for bass clef, or "\transpose c' bf {}" for treble_8 clef (note I 
transpose treble clef an octave and the music a second here).


Whoops - should read "\transpose bf c' {}" here ... print C on the music 
for a concert Bb ...


Cheers,
Wol



Re: Concert pitch question (confused ex-tuba player)

2021-09-17 Thread antlists

On 17/09/2021 22:58, Michael Seifert wrote:

Trombone player here.

You and I play instruments that are in concert pitch.  This means that when 
you & I look at a C printed on the page, and move our fingers/slide/lips to 
play it, a C comes out of our horns.


Nitpick here - our instruments belong to the trumpet family, not the 
horn ...



Finally, note that trumpet players are perfectly used to this 
transposition, to the extent that “C trumpet” parts (i.e. trumpet parts in 
concert pitch) are a rarity and a nuisance, particularly if you’re not used to 
older orchestral repertoire.


Unless you really do have a C trumpet - I believe they do exist.


 If you’re planning to give this part to a trumpet player, leave it as it is;  
they’ll know what to do with it.  Horns are more used to doing weird 
transpositions on the fly, but “Horn in F” is still the most common, so there’s 
no real need to transpose this for them either.  The only reason to transpose 
these parts into concert pitch would be to play it with other concert-pitch 
instruments (like other low brass players.)

Note that I believe this slightly odd setup historically comes from the 
fact that the trombone (or rather sackbut) was written in concert 
because it could play chromatically since before the dawn of "classical" 
music, while most brass instruments could only play arpeggios until the 
end of the true classical era (Mozart's horn concertos were written for 
natural horn), and so were written in the key of C for convenience.


And it is now useful in that let's take a trumpet player - they can in 
the middle of a piece switch between Bb trumpet/cornet, D trumpet 
(popular with Handel, or was it Haydn), and repiano (Eb) cornet, without 
having to remember which fingering goes with which written note - the 
music has been transposed so C is always the open note.


And that's why brass bands are all written as transposing treble clef. 
It's normal over a career for players to switch between instruments, or 
play a couple of different instruments (eg Bb/Eb cornets) in a single 
concert. That way they don't have to relearn the fingering every time 
they switch instruments - and that includes the trombones! (Bass 
trombone excepted.)


Cheers,
Wol



Re: Musical Theatre-Style Bar Numbers

2021-09-20 Thread antlists




On 20/09/2021 04:38, Calvin Ransom wrote:

Hello everyone,
I’m transposing a musical theatre book and sometimes the bar numbers 
contain letters then go back to normal numbering.

Here is an example for the Bar Numbering that I am looking for:

1 2 3 3a 3b 3c 4 5 6

Does anyone know how to do this?


It is documented. Off the top of my head it's something like

\mark \default % 1
\mark \default % 2
\mark \default % 3
\mark "3a"
\mark "3b"
\mark "3c"
\mark \default % 4

Cheers,
Wol