denemo-devel
[Top][All Lists]
Advanced

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

Re: [Denemo-devel] Something weird with the playback region


From: Richard Shann
Subject: Re: [Denemo-devel] Something weird with the playback region
Date: Thu, 27 Apr 2017 09:39:49 +0100

On Thu, 2017-04-27 at 10:25 +0200, Johan Vromans wrote:
> On Thu, 27 Apr 2017 08:18:37 +0100, Richard Shann <address@hidden>
> wrote:
> 
> > Actually, to reliably restore the cursor position after (d-Play) has
> > finished playing you need to do this
> 
> I used "Play From Cursor To End" as a starting point:
> 
>   ;Play from Cusor to End
>   (d-PushPosition)
>   (DenemoSetPlaybackStart)
>   (d-MoveToEnd)
>   (d-MoveCursorRight)
>   (DenemoSetPlaybackEnd)
>   (DenemoGoForward)
>   (d-PopPosition)
>   (d-OneShotTimer 500 "(d-Play)")
> 
> I figured that removing (DenemoSetPlaybackStart) would be all that is
> needed. And indeed it seems to do what I want: It leaves the PlaybackStart
> and Cursor where it is,

I don't think it will leave the cursor where it is if the play finishes
too far away from the cursor position.

>  moves PlaybackEnd to the end of the song, and plays
> the part between PlaybackStart and End.
> 
> I do not understand the need for DenemoGoForward

DenemoGoForward moves the end-of-play forward in time.

I think this is needed because if you set the playback end at the cursor
in some cases it is not actually the end of the piece (I'm not sure when
this might happen).

>  and d-OneShotTimer.

The one shot timer delays the start of the play for 500 ms. I don't
recall the details, but it may be that what would be better is

(d-PushPosition)
(d-Play "(d-PopPosition)")


> 
> As usual, the first time one tries something like this you run into all
> kinds of complications...
> 
> From http://www.denemo.org/scripting/ :
> 
>   * Right click on any button

this is referring to buttons in palettes.

> 
> So I tried "Play" (triangle) from Playback Control and found out that
> apparently most buttons cannot be right-clicked. 

Playback Control (and MIDI-in controls) are built-in coded in C, they
aren't palettes.

> I ended up making a new
> entry in the Playback pallette (which is different from Playback Control,
> Playback menu, and Playback view -- confusing).
> 
> From the manual, 25.1 :
> 
>   To choose a shortcut for a menu item, select the item (it becomes
>   highlighted) and press the key that you want to become the shortcut.
> 
> Apparently this does not work for pallette items?

correct. You *can* activate a palette button from the keyboard, you
press "p" and the (first few) letters of the label of the button
followed by Return.

Or, you can create a command from the script you have stored in a
palette button (right click the palette button get the script into the
scheme window, then right click the menu item where you want the new
command to appear and follow the prompts. You have to be careful to
dismiss the popup menu otherwise as you start typing the key presses
start getting assigned to the menu item you right clicked - clunky,
messy... :( )
Once you have created a command, you can give it a single key short cut,
whereas the shortest shortcut for a palette button you can arrange is
three keypresses ("p" for activate palette button, <first letter of
label> for the button and Return).

Richard





reply via email to

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