denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Denemo-devel] Automatic movement numeration part 1


From: Haris Brković
Subject: [Denemo-devel] Automatic movement numeration part 1
Date: Tue, 28 Feb 2017 19:43:08 +0100

I was off few days. But I wanted to summarise this idea of automatic numeration 
for other Denemo users.
So this is script I will use these days for my automatic numeration.
(d-InstrumentName (number->string (d-GetMovement)))  (while (d-NextMovement)
        (d-InstrumentName (number->string (d-GetMovement)))) (d-ScoreIndent 0) 
(d-SetSaved #f)
Thank you Richard for everything.
Of course I have more needs for numeration and I will ask about them in these 
next days if you dont mind. Although I feel little selfish to bother Richard 
and Denemo community with ideas which are maybe not useful  for everyone.
SIncerely, 
Haris
-----Original Message-----
From: Richard Shann [mailto:address@hidden 
Sent: Saturday, February 25, 2017 10:15 AM
To: Haris Brković <address@hidden>
Cc: 'denemo-devel' <address@hidden>
Subject: Re: [Denemo-devel] Problem with Score Title and question about 
automatic movement numeration

On Sat, 2017-02-25 at 02:26 +0100, Haris Brković wrote:
> I made it with my automatic numeration.
> (d-InstrumentName  (string-append "\n\"  " (number->string 
> (d-GetMovement)) "\"\n" )) (while (d-NextMovement)
>       (d-InstrumentName 
>               (string-append "\n\"" (number->string (d-GetMovement)) 
> "\"\n"))) If 
> I have for example 13 movements, I click on 1st and Denemo numerate 
> everything. Even if I swap for example 7th and 8th then typesetter shows: 
> 1,2,3,4,5,6,8,7...
> I click on 1st and numerate then everything is nicely numerated. This is what 
> I wanted. In the first line you can see I made space as workaround to first 
> movement indent cause its is allways different then others movements.

The reason it is different is because in the file as you originally sent it you 
have the indent for the whole score set and then on the first movement (only) 
you have the indent for the movement set.
So the first movement uses the value for the movement-indent, the rest used the 
score-indent. Since they are both set to 0 it looks ok.
When you run (d-InstrumentName ...) the script tries to guess how much indent 
you may need and sets the score-indent to that value. But because you have the 
movement-indent set on the first movement, that one does not change.

For your purposes you do not want this guessing of the indent, so you should 
delete the movement-indent(*) from movement 1 and use


(d-InstrumentName (number->string (d-GetMovement)))  (while (d-NextMovement)
        (d-InstrumentName (number->string (d-GetMovement)))) (d-ScoreIndent 0) 
(d-SetSaved #f)

If the value 0 looks a bit cramped (it is eating into the margin I
think) then you can use say (d-ScoreIndent 5) or even more if you have more 
than a hundred movements giving three digits at the start.
Note I added (d-SetSaved #f) which tells Denemo you have changed the score (so, 
it is false that it is saved).

This script can be improved by avoiding repeating the code setting the 
instrument name, and you can put

(while (d-PreviousMovement))

which will move to the first movement, avoiding the danger that one day you run 
your command with the cursor in the 10th movement, and don't notice that the 
earlier movements haven't been renumbered.

Richard
(*) To delete the movement indent you have to use the Movement Properties 
Editor, find the Indent directive and click Delete. This a bug really, when you 
run the movement indent command it should give the option of deleting the 
movement indent - at the moment you can only set it to some value.

>  Line: append "\n\"  ". So I did it as workaround, and it looks so nice. 
> Thank you Richard. Its possible I am totally wrong with this script so please 
> correct me if necessary.
> Sincerely,
> Haris
> 
> 
> -----Original Message-----
> From: Richard Shann [mailto:address@hidden
> Sent: Friday, February 24, 2017 10:46 PM
> To: Haris Brković <address@hidden>
> Cc: 'denemo-devel' <address@hidden>
> Subject: Re: [Denemo-devel] Problem with Score Title and question 
> about automatic movement numeration
> 
> On Fri, 2017-02-24 at 21:33 +0000, Richard Shann wrote:
> > On Fri, 2017-02-24 at 21:15 +0100, Haris Brković wrote:
> > > Sorry, I sent wrong information. InstrumentName is from 
> > > Staff/Voices-StaffProperties-Instrument Name in the object menu.
> > 
> > I'm not quite sure what this is in reply to (*) but if you want to 
> > put the movement number at the beginning of the staff then that is 
> > easier
> > 
> > (d-InstrumentName  (string-append "Piece Number " (number->string
> > (d-GetMovement)) ))
> > 
> > 
> > You may need to adjust the indent...
> 
> There are two indent commands, one for the whole score and another on a 
> per-movement basis. (d-InstrumentName ...) affects the ScoreIndent I'm not 
> sure if that is good enough - it may be better to set the movement indent...
> 
> Richard
> 
> 
> 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]